Add CLI argument support to hack Nix app#7111
Merged
negz merged 1 commit intocrossplane:mainfrom Feb 4, 2026
Merged
Conversation
phisco
approved these changes
Feb 4, 2026
The hack app previously used environment variables HACK_CROSSPLANE_ARGS and HACK_CROSSPLANE_VALUES for configuration. These were undiscoverable without reading the source code, and there was no --help support. This commit replaces environment variables with CLI arguments using docopts, which parses arguments from a docstring. The help text serves as both documentation and the parser specification, keeping them in sync automatically. Usage: nix run .#hack -- --help nix run .#hack -- --args="--debug,--enable-operations" nix run .#hack -- --values ./my-values.yaml Signed-off-by: Nic Cope <nicc@rk0n.org>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of your changes
The
hackNix app used environment variablesHACK_CROSSPLANE_ARGSandHACK_CROSSPLANE_VALUESfor configuration. These were undiscoverable without reading the source code, and there was no--helpsupport.This PR replaces environment variables with CLI arguments using docopts. The help text serves as both documentation and the parser specification, so they stay in sync automatically.
I have:
./nix.sh flake checkto ensure this PR is ready for review.Added or updated unit tests.Added or updated e2e tests.Linked a PR or a docs tracking issue to document this change.Addedbackport release-x.ylabels to auto-backport this PR.Followed the API promotion workflow if this PR introduces, removes, or promotes an API.