Fancy
This commit is contained in:
parent
5a1fdb7c7f
commit
5ec985b0df
|
@ -73,6 +73,11 @@ If you have vagrant available (this is temporary whilst I'm hacking on v5 suppor
|
|||
- `bundle exec rspec`
|
||||
|
||||
## Releasing
|
||||
- Update Changelog
|
||||
- Bump version in gemspec
|
||||
- Commit
|
||||
- Create tag `git tag v<version-number-in-gemspec>`
|
||||
- `bundle exec rake install_jars`
|
||||
- `bundle exec rake pre_release_checks`
|
||||
- `gem build logstash-output-jdbc.gemspec`
|
||||
- `gem push`
|
||||
|
|
19
Rakefile
19
Rakefile
|
@ -1,3 +1,4 @@
|
|||
# encoding: utf-8
|
||||
require 'logstash/devutils/rake'
|
||||
require 'jars/installer'
|
||||
require 'rubygems'
|
||||
|
@ -9,21 +10,29 @@ task :install_jars do
|
|||
Jars::Installer.new.vendor_jars!(false)
|
||||
end
|
||||
|
||||
def colourize(text, color_code)
|
||||
"\e[#{color_code}m#{text}\e[0m"
|
||||
end
|
||||
|
||||
desc 'Pre-release checks'
|
||||
task :pre_release_checks do
|
||||
|
||||
if `git status --porcelain`.chomp.length > 0
|
||||
raise "You have unstaged or uncommitted changes! Please only deploy from a clean working directory!"
|
||||
warn colourize(' ✘ ', 31) + 'You have unstaged or uncommitted changes! Please only release from a clean working directory!'
|
||||
else
|
||||
puts colourize(" ✔ ", 32) + ' No un-staged commits'
|
||||
end
|
||||
|
||||
spec = Gem::Specification::load("logstash-output-jdbc.gemspec")
|
||||
expected_tag_name = "v#{spec.version}"
|
||||
|
||||
current_tag_name = `git describe --exact-match --tags HEAD`.chomp
|
||||
if $? == 0
|
||||
raise "Expected git tag to be '#{expected_tag_name}', but got '#{current_tag_name}'." if current_tag_name != expected_tag_name
|
||||
current_tag_name = `git describe --exact-match --tags HEAD 2>&1`.chomp
|
||||
if $?.success? and current_tag_name == expected_tag_name
|
||||
puts colourize(' ✔ ', 32) + 'Tag matches current HEAD'
|
||||
elsif $?.success? and current_tag_name == expected_tag_name
|
||||
warn colourize(' ✘ ', 31) + "Expected git tag to be '#{expected_tag_name}', but got '#{current_tag_name}'."
|
||||
else
|
||||
raise "Expected git tag to be '#{expected_tag_name}, but got nothing."
|
||||
warn colourize(' ✘ ', 31) + "Expected git tag to be '#{expected_tag_name}, but got nothing."
|
||||
end
|
||||
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue
Block a user