Convert from running ciinabox-ecs as rake tasks to gem #107
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.
Allow running ciinabox-ecs as a gem
By embedding gem version if root stack template, and outputting as stack parameter, mass management of ciinabox-ecs installations becomes easier (versions are tracked). If Rakefile method is used rather than gem, short git sha1 will be embedded and outputted as ciinabox version. Aside from binary version, vanity version number coming out of ciinabox config is rendered into template description as well.
Cli commands structure
Gem is not full replacement of Rake tasks, but mere wrapper around them. It improves usability by allowing user to run command from ciinaboxes directory, without the need to specify it explicitly through
CIINABOXES_DIR
variable or relying on defaultciinaboxes
dir. Ciinabox name is always taken as last argument of cli command, withinstall
andfull_install
commands being without ciinabox argument.E.g.
ciinabox-ecs generate deploy update myciinabox
will result in following rake equiqalentGeneric cli structure would be
ciinabox-ecs action1 action2 .. actionN ciinabox_name
Help can be obtained by running
ciinabox-ecs help
As for CIINABOXES_DIR and CIINABOX environment variables, they are still taken in account when running gem. In case CIINABOX environment variable is present, there is no need to specify ciinabox name as last argument, as it will be automatically assumed from environment.
Artifactory service
As work on artifactory service was done and tested in parallel with conversion to gem, this PR includes documentation and code for that service.