3
3
require 'English'
4
4
require 'rake/testtask'
5
5
require 'rake/packagetask'
6
+ require_relative 'lib/autosparkle/metadata'
6
7
7
8
############# Common #############
8
9
desc 'Build the gem'
@@ -11,11 +12,6 @@ task :build do
11
12
raise 'Gem build failed' unless $CHILD_STATUS. success?
12
13
end
13
14
14
- def retrieve_gem_version
15
- gemspec_content = File . read ( 'autosparkle.gemspec' )
16
- gemspec_content . match ( /spec\. version\s *=\s *['"]([^'"]+)['"]/ ) [ 1 ]
17
- end
18
-
19
15
############# CI #############
20
16
desc 'Check Ruby files for syntax errors'
21
17
task :syntax do
@@ -45,14 +41,11 @@ task :bump_version do
45
41
method = ENV . fetch ( 'METHOD' , nil )
46
42
raise 'You must specify the method (major, minor, patch)' unless method
47
43
48
- # Read the gemspec file
49
- gemspec_file = 'autosparkle.gemspec'
50
- gemspec_content = File . read ( gemspec_file )
44
+ metadata_file_path = 'lib/autosparkle/metadata.rb'
45
+ metadata_content = File . read ( metadata_file_path )
51
46
52
47
new_version = nil
53
-
54
- # Update the version line
55
- new_gemspec_content = gemspec_content . gsub ( /(spec\. version\s *=\s *['"])([^'"]+)(['"])/ ) do
48
+ new_metadata_content = metadata_content . gsub ( /(VERSION = ')([^']+)(')/ ) do
56
49
prefix = Regexp . last_match ( 1 )
57
50
current_version = Regexp . last_match ( 2 )
58
51
suffix = Regexp . last_match ( 3 )
@@ -75,10 +68,9 @@ task :bump_version do
75
68
"#{ prefix } #{ new_version } #{ suffix } "
76
69
end
77
70
78
- # Write the updated content back to the file
79
- File . write ( gemspec_file , new_gemspec_content )
71
+ File . write ( metadata_file_path , new_metadata_content )
80
72
81
- puts "Bumped version to #{ new_version } "
73
+ puts "Version updated to #{ new_version } "
82
74
end
83
75
84
76
desc 'Push the new version to the repository'
@@ -91,7 +83,7 @@ task :push_version do
91
83
system 'git pull origin develop'
92
84
system 'git checkout develop'
93
85
system 'git add autosparkle.gemspec'
94
- system "git commit -m 'Bump version to #{ retrieve_gem_version } '"
86
+ system "git commit -m 'Bump version to #{ Autosparkle :: VERSION } '"
95
87
system 'git push origin develop'
96
88
97
89
# Retreive the last commit hash
0 commit comments