BuildPromotionTool

The purpose of this tool is to automate semantic versioning updates to git tags. It will update the tag version number depending on the type of tag to be applied. The types of tags which can be applied are outlined in the config.yml file. A remote repository must exist in order to fetch all tags and to push new tags to the remote repository.

To apply the first deploy tag (a develop or 'dev' tag) , a search for all previously applied develop tags is conducted on the repository (local and remote). The tag version number is incremented, depending on the most recent develop tag version number, and on the type of version update selected (major, minor, or patch). Two develop tags cannot be applied to the same commit

To apply a later tag type (such as stage or test), a tag of the preceding tag type must have been applied to the commit e.g. to apply a 'test' tag, a 'dev' tag must exist on the commit. The tag number applied will match that of the preceding tag type.

Installation

Add the following line to your application's Gemfile:

gem 'build_promotion_tool'

And then execute:

$ bundle install

Or install it as:

$ gem install build_promotion_tool

Usage

First Deploy Step: Dev Tag - Run:

$ deploy dev

Later Deploy Steps: E.g. Test, Stage Tags - To see the list of tags which can be applied, the config.yml file should be reviewed - For example run:

$ deploy test

Development

After checking out the repo, run bin/setup to install dependencies.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.