theforeman / theforeman/foremanctl
Differentiate between user supplied and stored user input
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 27
- Forks
- 47
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 40
Description
There are scenarios where parameters are not persisted and the code needs to differentiate between user supplied (via the CLI) and stored parameter values.
For example, when a user supplies custom certificates, the mode certificate_source: custom_server is stored but not the paths to the certificate and key files. These are copied the first time the user runs it so that they do not have to be persisted on disk in two locations. However, we want to also guard against the user instructing the CLI to use customer_server but forgetting to tell the CLI what the files are on first run.
See https://github.com/theforeman/foremanctl/pull/462#discussion_r3159023604 for context
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the CLI handling for certificate_source: custom_server and read the discussion linked from pull request 462 for the intended distinction between supplied and stored values. Trace the first-run certificate copy flow and define completion as rejecting custom_server when the required certificate and key paths were not supplied, while allowing stored configuration to be reused.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 45/100