Class: Release
Constant Summary
collapse
- DEFAULT_COMMIT_MESSAGE =
'preparing for release [CI SKIP]'
Releasetool::Util::DIR, Releasetool::Util::RELEASE_MARKER_FILE, Releasetool::Util::TEMPLATE_FILE, Releasetool::Util::VERSION_FILE
Instance Method Summary
collapse
#guarded_system, #remove_stored_version, #stored_version
Instance Method Details
#abort ⇒ Object
99
100
101
|
# File 'lib/tasks/release_thor.rb', line 99
def abort
remove_stored_version
end
|
#commit(version = nil) ⇒ Object
#latest ⇒ Object
23
24
25
|
# File 'lib/tasks/release_thor.rb', line 23
def latest
puts previous_version
end
|
#list ⇒ Object
13
14
15
|
# File 'lib/tasks/release_thor.rb', line 13
def list
system("git for-each-ref --sort='*authordate' --format='%(taggerdate:short) | %(tag) | %(contents)' refs/tags")
end
|
#log(*args) ⇒ Object
33
34
35
36
|
# File 'lib/tasks/release_thor.rb', line 33
def log(*args)
= " #{args.join(" ")}" if args.length > 0
guarded_system("git log #{previous_version}..#{}")
end
|
#push(version = nil) ⇒ Object
88
89
90
91
92
93
|
# File 'lib/tasks/release_thor.rb', line 88
def push(version=nil)
version ||= stored_version
guarded_system("git push")
guarded_system("git push origin #{version}")
remove_stored_version
end
|
#start(specified_version = nil) ⇒ Object
49
50
51
52
53
54
55
56
57
58
|
# File 'lib/tasks/release_thor.rb', line 49
def start(specified_version=nil)
if File.exists?(RELEASE_MARKER_FILE)
raise Thor::Error.new("Can't start when already started on a version. release abort or release finish")
end
version = next_version(specified_version)
File.open(RELEASE_MARKER_FILE, 'w') do |f|
f.write(version)
end
Releasetool::Release.new(version, previous: previous_version).prepare(edit: options[:edit])
end
|
#tag(version = nil) ⇒ Object
78
79
80
81
|
# File 'lib/tasks/release_thor.rb', line 78
def tag(version=nil)
version ||= stored_version
guarded_system("git tag -a #{version}")
end
|