release-gem 0.1.22 → 0.1.30
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -0
- data/Gemfile.lock +10 -12
- data/lib/release/gem/gem_action.rb +3 -3
- data/lib/release/gem/gem_cli_action.rb +4 -0
- data/lib/release/gem/release_infector.rb +15 -9
- data/lib/release/gem/vcs_action.rb +2 -18
- data/lib/release/gem/vcs_cli_action.rb +1 -1
- data/lib/release/gem/version.rb +1 -1
- data/templates/standard_cli_flow.rb +22 -7
- metadata +6 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b8cc16c62b759b319b58033ee7678d1767aa098f9190c50f38aeaa429694da3d
|
4
|
+
data.tar.gz: 76da97ad501ca7828a7c0b2bd84de02d50bd9d9933b2c1ea47830cb5f3a54b15
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8585884b1b10d700ed6f913a40776ba50b98f58905ba83611e9cef0dece134f2aba5c9c831e1515902f98a0b9f40b6104dbbcf35f5f472270702bc9c421177e1
|
7
|
+
data.tar.gz: 2a4ed2747d026f60da0e6e45c0f969d5baac20492659030cb78b6839074f74df4ca8e631c2772a72bdc3593246c1ad70b2c5dea3a8679a10aa8371e784c6c040
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
release-gem (0.1.
|
4
|
+
release-gem (0.1.30)
|
5
5
|
colorize
|
6
6
|
git_cli
|
7
|
-
gvcs
|
8
7
|
teLogger
|
9
8
|
toolrack
|
10
9
|
tty-command
|
@@ -13,13 +12,12 @@ PATH
|
|
13
12
|
GEM
|
14
13
|
remote: https://rubygems.org/
|
15
14
|
specs:
|
16
|
-
colorize (
|
15
|
+
colorize (1.1.0)
|
17
16
|
diff-lcs (1.5.0)
|
18
|
-
git_cli (0.
|
17
|
+
git_cli (0.13.6)
|
19
18
|
ptools (~> 1.4.0)
|
20
|
-
teLogger
|
21
|
-
toolrack
|
22
|
-
gvcs (0.1.2)
|
19
|
+
teLogger (> 0.2)
|
20
|
+
toolrack (> 0.23)
|
23
21
|
pastel (0.8.0)
|
24
22
|
tty-color (~> 0.5)
|
25
23
|
ptools (1.4.3)
|
@@ -28,17 +26,17 @@ GEM
|
|
28
26
|
rspec-core (~> 3.12.0)
|
29
27
|
rspec-expectations (~> 3.12.0)
|
30
28
|
rspec-mocks (~> 3.12.0)
|
31
|
-
rspec-core (3.12.
|
29
|
+
rspec-core (3.12.2)
|
32
30
|
rspec-support (~> 3.12.0)
|
33
|
-
rspec-expectations (3.12.
|
31
|
+
rspec-expectations (3.12.3)
|
34
32
|
diff-lcs (>= 1.2.0, < 2.0)
|
35
33
|
rspec-support (~> 3.12.0)
|
36
|
-
rspec-mocks (3.12.
|
34
|
+
rspec-mocks (3.12.6)
|
37
35
|
diff-lcs (>= 1.2.0, < 2.0)
|
38
36
|
rspec-support (~> 3.12.0)
|
39
|
-
rspec-support (3.12.
|
37
|
+
rspec-support (3.12.1)
|
40
38
|
teLogger (0.2.2)
|
41
|
-
toolrack (0.
|
39
|
+
toolrack (0.23.2)
|
42
40
|
tty-color (0.6.0)
|
43
41
|
tty-command (0.10.1)
|
44
42
|
pastel (~> 0.8)
|
@@ -362,15 +362,15 @@ module Release
|
|
362
362
|
credFile = File.join(Dir.home,".local","share","gem","credentials")
|
363
363
|
end
|
364
364
|
|
365
|
-
raise GemActionError, "Credential file not found at '#{credFile}'" if not File.exist?(credFile)
|
365
|
+
raise GemActionError, "Credential file not found at '#{credFile}'. Please at least perform an 'gem push' at command line to setup the credential file." if not File.exist?(credFile)
|
366
366
|
|
367
367
|
cred = nil
|
368
368
|
File.open(credFile,"r") do |f|
|
369
369
|
cred = YAML.load(f.read)
|
370
370
|
end
|
371
371
|
|
372
|
-
raise GemActionError, "Credential file is empty" if is_empty?(cred)
|
373
|
-
raise GemActionError, "No credential created yet for rubygems." if is_empty?(cred.keys)
|
372
|
+
raise GemActionError, "Credential file is empty. Please at least perform an 'gem push' at command line to setup the credential file." if is_empty?(cred)
|
373
|
+
raise GemActionError, "No credential created yet for rubygems. Please at least perform an 'gem push' at command line to setup the credential file." if is_empty?(cred.keys)
|
374
374
|
|
375
375
|
cred
|
376
376
|
end
|
@@ -42,6 +42,10 @@ module Release
|
|
42
42
|
when :gemspec_updated
|
43
43
|
v = args.first
|
44
44
|
@pmt.say pmsg("\n Gemspec file of GEM '#{v[:name]}' updated with release-gem gem")
|
45
|
+
|
46
|
+
when :gemspec_already_has_gem
|
47
|
+
v = args.first
|
48
|
+
@pmt.say pmsg("\n Gemspec file of GEM '#{v[:name]}' already has release-gem gem included. Skipped")
|
45
49
|
|
46
50
|
when :adding_to_rackfile
|
47
51
|
v = args.first
|
@@ -111,18 +111,24 @@ module Release
|
|
111
111
|
end
|
112
112
|
|
113
113
|
cont = File.read(gs)
|
114
|
-
lastEnd = cont.rindex("end")
|
115
114
|
|
116
|
-
|
117
|
-
|
115
|
+
if (cont =~ /spec.add_development_dependency 'release-gem'/) == nil
|
116
|
+
lastEnd = cont.rindex("end")
|
118
117
|
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
118
|
+
FileUtils.mv(gs, "#{gs}.bak")
|
119
|
+
@backupFiles[gs] = "#{gs}.bak"
|
120
|
+
|
121
|
+
File.open(gs, "w") do |f|
|
122
|
+
f.write cont[0...lastEnd]
|
123
|
+
f.puts " spec.add_development_dependency 'release-gem'"
|
124
|
+
f.puts "end"
|
125
|
+
end
|
126
|
+
block.call(:gemspec_updated, name: @name, gemspec: gs ) if block
|
125
127
|
|
128
|
+
else
|
129
|
+
block.call(:gemspec_already_has_gem, name: @name, gemspec: gs) if block
|
130
|
+
end
|
131
|
+
|
126
132
|
end # add_to_gemspec
|
127
133
|
|
128
134
|
def activate_rakefile(&block)
|
@@ -1,5 +1,4 @@
|
|
1
1
|
|
2
|
-
require 'gvcs'
|
3
2
|
require 'git_cli'
|
4
3
|
|
5
4
|
module Release
|
@@ -15,29 +14,14 @@ module Release
|
|
15
14
|
|
16
15
|
def initialize(root, opts = { })
|
17
16
|
raise VcsActionError, "root cannot be null" if is_empty?(root)
|
18
|
-
@ws =
|
17
|
+
@ws = GitCli::Workspace.new(root)
|
19
18
|
|
20
19
|
oopts = opts || {}
|
21
20
|
@ui = oopts[:ui]
|
22
21
|
@engine = oopts[:engine]
|
23
|
-
|
24
|
-
|
25
|
-
#@gitDir = File.join(path.strip,".git")
|
26
|
-
#p @gitDir
|
27
|
-
#@gitBack = File.join(path.strip,".git_bak")
|
28
|
-
#p @gitBack
|
22
|
+
path = @ws.workspace_root
|
29
23
|
end
|
30
24
|
|
31
|
-
#def enable_dev_mode
|
32
|
-
# FileUtils.cp_r(@gitDir,@gitBack, remove_destination: true)
|
33
|
-
#end
|
34
|
-
|
35
|
-
#def dev_mode_end
|
36
|
-
# if File.exist?(@gitBack)
|
37
|
-
# FileUtils.mv(@gitBack, @gitDir)
|
38
|
-
# end
|
39
|
-
#end
|
40
|
-
|
41
25
|
def exec(&block)
|
42
26
|
instance_eval(&block) if block
|
43
27
|
end
|
@@ -544,7 +544,7 @@ module Release
|
|
544
544
|
val = args.first
|
545
545
|
sel = @prmt.select(pmsg("\n Please select one of the remote config below : ")) do |m|
|
546
546
|
val.each do |k,v|
|
547
|
-
m.choice k, k
|
547
|
+
m.choice "#{k} [#{v["push"]}]", k
|
548
548
|
end
|
549
549
|
m.choice "Skip pushing source code", :skip
|
550
550
|
m.choice "Abort", :abort
|
data/lib/release/gem/version.rb
CHANGED
@@ -27,18 +27,33 @@ Release::Gem.engine(:gem, root: Dir.getwd) do
|
|
27
27
|
|
28
28
|
if st
|
29
29
|
# step 4, push the gem to rubygems
|
30
|
-
|
31
|
-
|
30
|
+
# rescue here because if it failed, still should proceed
|
31
|
+
begin
|
32
|
+
gem_cli_push(version: ver)
|
33
|
+
rescue Exception => ex
|
34
|
+
STDERR.puts "\n -- Failed pushing Gem. Error was : #{ex.message}".red
|
35
|
+
end
|
36
|
+
|
37
|
+
# rescue here because if it failed, still should proceed
|
38
|
+
begin
|
39
|
+
gem_cli_install(version: ver)
|
40
|
+
rescue Exception => ex
|
41
|
+
STDERR.puts "\n -- Failed install the Gem onto local system. Error was : #{ex.message}".red
|
42
|
+
end
|
32
43
|
end
|
33
44
|
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
45
|
+
# This is another block of work that can resume even failed
|
46
|
+
begin
|
47
|
+
vcs_add_to_staging_if_commit_before("Gemfile.lock")
|
48
|
+
vcs_add_to_staging(value(:version_file_path))
|
49
|
+
vcs_commit("Commit after gem version #{ver} built")
|
50
|
+
rescue Exception => ex
|
51
|
+
STDERR.puts "\n -- Failed to perform post commit after gem built. Error was : #{ex.message}".red
|
52
|
+
end
|
38
53
|
|
54
|
+
# If tagging error no need to push
|
39
55
|
# step 7 : tag the source code
|
40
56
|
vcs_cli_tag( tag: ver )
|
41
|
-
|
42
57
|
# step 8 : Push the source code
|
43
58
|
vcs_cli_push
|
44
59
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: release-gem
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.30
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-10-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: toolrack
|
@@ -80,20 +80,6 @@ dependencies:
|
|
80
80
|
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: gvcs
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ">="
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
|
-
type: :runtime
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - ">="
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
83
|
- !ruby/object:Gem::Dependency
|
98
84
|
name: git_cli
|
99
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -139,7 +125,7 @@ files:
|
|
139
125
|
homepage: ''
|
140
126
|
licenses: []
|
141
127
|
metadata: {}
|
142
|
-
post_install_message:
|
128
|
+
post_install_message:
|
143
129
|
rdoc_options: []
|
144
130
|
require_paths:
|
145
131
|
- lib
|
@@ -154,8 +140,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
154
140
|
- !ruby/object:Gem::Version
|
155
141
|
version: '0'
|
156
142
|
requirements: []
|
157
|
-
rubygems_version: 3.4.
|
158
|
-
signing_key:
|
143
|
+
rubygems_version: 3.4.6
|
144
|
+
signing_key:
|
159
145
|
specification_version: 4
|
160
146
|
summary: ''
|
161
147
|
test_files: []
|