ros2 / sros2

tools to generate and distribute keys for SROS 2
Apache License 2.0
89 stars 44 forks source link

Specify Domain ID Through Command Line Argument #267

Closed danthony06 closed 2 years ago

danthony06 commented 3 years ago

Feature request

Feature description

Add the ability to specify the target domain through a command line argument, rather than environment variable. Currently, the domain ID for the configuration is set via reading an environment variable. This is clunky for automation and is harder to reproduce software between different developer's environments. Instead, it would be nice if this were set via a command line option to make it more explicit and easier to track.

Implementation considerations

It's currently set via an environment variable, but that is easy to forget about. A command line argument makes it explicit, but we can always use an environment variable as a fallback option.

ruffsl commented 3 years ago

I think adding support a user provided config file would offer a more comprehensive approach to customization of the security artifact generation. This could extend beyond just Domains ID, but also to certificate expiration dates, middleware presets, key storage formats, etc. A config file approach used by many other tools in the ros ecosystem, like rviz, ros1_bridge, colcon, would be familiar to many ROS users, and could be a bit more sustainable than adding ever more niche or middleware specific command line argument options.

This is sort of akin to what I tried before with keymint: