Skip to content

Commit d5501e9

Browse files
committed
chore: add release script
1 parent 4c0d698 commit d5501e9

File tree

5 files changed

+19
-18
lines changed

5 files changed

+19
-18
lines changed

CHANGELOG.md

+1-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
1-
Do this to generate your change history
2-
3-
git log --pretty=format:' * %h - %s (%an, %ad)' vX.Y.Z..HEAD
4-
1+
<a name="v2.6.1"></a>
52
### 2.6.1 (2017-11-17)
63
* 141988f - fix: don't blow up if Access-Control-Request-Headers is not present in OPTIONS request (Beth Skurrie, Fri Nov 17 09:53:29 2017 +1100)
74

RELEASING.md

+2-14
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,5 @@
11
# Releasing
22

3-
1. Increment the version in `lib/pact/mock_service/version.rb`
4-
2. Update the `CHANGELOG.md` using:
3+
Run
54

6-
$ git log --pretty=format:' * %h - %s (%an, %ad)' vX.Y.Z..HEAD
7-
8-
3. Add files to git
9-
10-
$ git add CHANGELOG.md lib/pact/mock_service/version.rb
11-
$ git commit -m "chore(release): version $(ruby -r ./lib/pact/mock_service/version.rb -e "puts Pact::MockService::VERSION")"
12-
13-
4. Tag and push
14-
15-
$ VERSION=$(ruby -r ./lib/pact/mock_service/version.rb -e "puts Pact::MockService::VERSION")
16-
$ git tag -a v${VERSION} -m "chore(release): version ${VERSION}" && git push origin v${VERSION}
17-
$ unset VERSION
5+
script/release.sh [major|minor|patch] # default is minor

pact-mock_service.gemspec

+2
Original file line numberDiff line numberDiff line change
@@ -39,4 +39,6 @@ Gem::Specification.new do |gem|
3939
gem.add_development_dependency 'activesupport', '~> 5.1'
4040
gem.add_development_dependency 'faraday', '~> 0.12'
4141
gem.add_development_dependency 'octokit', '~> 4.7'
42+
gem.add_development_dependency 'conventional-changelog', '~> 1.3'
43+
gem.add_development_dependency 'bump', '~> 0.5'
4244
end

script/release.sh

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
#!/bin/sh
2+
set -e
3+
bundle exec bump ${1:-minor} --no-commit
4+
bundle exec rake generate_changelog
5+
git add CHANGELOG.md lib/pact/mock_service/version.rb
6+
git commit -m "chore(release): version $(ruby -r ./lib/pact/mock_service/version.rb -e "puts Pact::MockService::VERSION")" && git push
7+
bundle exec rake release

tasks/release.rake

+7
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
RELEASE_NOTES_TEMPLATE_PATH = "packaging/RELEASE_NOTES.md.template"
22
RELEASE_NOTES_PATH = "build/RELEASE_NOTES.md"
33

4+
require 'conventional_changelog'
5+
6+
task :generate_changelog do
7+
require 'pact/mock_service/version'
8+
ConventionalChangelog::Generator.new.generate! version: "v#{Pact::MockService::VERSION}"
9+
end
10+
411
desc 'Generate release notes'
512
task :generate_release_notes, [:tag] do | t, args |
613
require 'fileutils'

0 commit comments

Comments
 (0)