Closed ChefAustin closed 2 years ago
On second thought, I am beginning to wonder if there might be even more value to be had by adding (in another PR) the capacity for all gd-config.rb
options to be passed in as CLI arguments.
Just wanted to get some thoughts from maintainers to see if this is something you would consider merging in.
@jaymzh :
Thanks!
Code looks fine. Feature seems reasonable, but please add some info to the
README.md
about the motivation here.
Done.
And yeah, the fact that there's config-file options that don't have command-line options is just an oversight, feel free.
Added CLI args for all available config file options.
Updated PR description to better describe changeset. Feel free to let me know if you hate my choice of shorthand-format CLI args (or I've mucked something up/overlooked anything amidst all my changes).
Thanks!
You can run rubocop with -a
to auto-fix all that ruby styling
@jaymzh Friendly bump on this one.
@jaymzh Thanks for merging.
Quick question: Does GD have a defined release cadence (i.e. can I expect a new release to be cut at any specific point in time)?
It does not. FB builds from main
internally. Usually once they've deployed it they'll get around to releasing it, but I still have access to make a release if that's important to you, I can follow up with the folks still there and check that's OK. But it's a crazy week for a bunch of other reasons, so maybe ping in a week or so if you want that.
Not important for me at the moment. I figured I will just add that detail into the contributing doc when I raise a future PR.
This pull request will make the following changes:
CONTRIBUTING.md
telling contributors to not bump Gem version in Gemspec filelib/grocery_delivery/config.rb
and CLI argument options inbin/grocery-delivery
repo_update
inlib/grocery_delivery/config.rb
;-U
or--no-repo-update
via CLI -- to allow the disablement of performing an update on the cookbook repository before invoking Grocery Delivery (works by skipping the call torepo.update
)repo.update
(withinbin/grocery-delivery
) to respect the new addition ofrepo_update
configuration optionREADME.md
explanation ofrepo_update
configuration option to include motivation behind it (as well as updated formatting ofConfig file
section withinREADME.md
to allow for readers to more easily understand: 1.) how each configuration option can be defined ingd-config.rb
2.) how each configuration option can be defined as CLI arguments 3.) default values for each config option 4.) data type used for each config option and 5.) any important notes about the config optionberks
,berks_bin
,berks_config
,rev_checkpoint
,cookbook_paths
,databag_path
,knife_bin
,knife_config
,master_path
,reponame
,plugin_path
,role_path
,role_type
,track_symlinks
,repo_url
,repo_update
,vcs_path
, andvcs_type
Context: This change is targeted at those that want to run Grocery Delivery within a container, in CI, or -- more generally -- in any environment whereby updating the cookbook repo is unnecessary. In some deployment workflows the build system already clones the repository's primary branch directly to the build host and then executes the build steps to deploy the cookbooks via a Grocery Delivery container. In such a deployment workflow, one could then configure their build/deployment process to copy the entire repo into the container (whereby Grocery Delivery would be invoked). When using this style of deployment workflow, there is no need to update the local clone of the cookbook repository to ensure it is up-to-date (furthermore, the host's container might not be configured to have access to the VCS).