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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 18b6148ea6854b0af11edd1afc39b4d12b760d1b693d5888df7a16d91369d1cf
4
- data.tar.gz: ffd66cbcfde12c1726f4fde3f8b47ce73dd0c36eb1ebef7de2a109afc5f62815
3
+ metadata.gz: b8cc16c62b759b319b58033ee7678d1767aa098f9190c50f38aeaa429694da3d
4
+ data.tar.gz: 76da97ad501ca7828a7c0b2bd84de02d50bd9d9933b2c1ea47830cb5f3a54b15
5
5
  SHA512:
6
- metadata.gz: 6e9f3ab7772900fbcda08a306309327c5c7d30807d9970f0cef1e5c69a82740ef2508f484ae24e6a0d0f6b8706460795e940526b68652dba78f7ce3db004aa87
7
- data.tar.gz: 899baac946060716d44ccf74d0db1acab58ed9b7d1a4cf19f9ef13d26c6a2f93b7e1ed6e682aac6a476957a3b406f08b690f30a13aea24c12a4c8fb9ad585ead
6
+ metadata.gz: 8585884b1b10d700ed6f913a40776ba50b98f58905ba83611e9cef0dece134f2aba5c9c831e1515902f98a0b9f40b6104dbbcf35f5f472270702bc9c421177e1
7
+ data.tar.gz: 2a4ed2747d026f60da0e6e45c0f969d5baac20492659030cb78b6839074f74df4ca8e631c2772a72bdc3593246c1ad70b2c5dea3a8679a10aa8371e784c6c040
data/Gemfile CHANGED
@@ -9,4 +9,5 @@ gem "rake", "~> 13.0"
9
9
 
10
10
  gem "rspec", "~> 3.0"
11
11
 
12
+ #gem "git_cli", git: "git_cli", branch: "master"
12
13
 
data/Gemfile.lock CHANGED
@@ -1,10 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- release-gem (0.1.22)
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 (0.8.1)
15
+ colorize (1.1.0)
17
16
  diff-lcs (1.5.0)
18
- git_cli (0.12.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.1)
29
+ rspec-core (3.12.2)
32
30
  rspec-support (~> 3.12.0)
33
- rspec-expectations (3.12.2)
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.5)
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.0)
37
+ rspec-support (3.12.1)
40
38
  teLogger (0.2.2)
41
- toolrack (0.22.1)
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
- FileUtils.mv(gs, "#{gs}.bak")
117
- @backupFiles[gs] = "#{gs}.bak"
115
+ if (cont =~ /spec.add_development_dependency 'release-gem'/) == nil
116
+ lastEnd = cont.rindex("end")
118
117
 
119
- File.open(gs, "w") do |f|
120
- f.write cont[0...lastEnd]
121
- f.puts " spec.add_development_dependency 'release-gem'"
122
- f.puts "end"
123
- end
124
- block.call(:gemspec_updated, name: @name, gemspec: gs ) if block
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 = Gvcs::Workspace.new(root)
17
+ @ws = GitCli::Workspace.new(root)
19
18
 
20
19
  oopts = opts || {}
21
20
  @ui = oopts[:ui]
22
21
  @engine = oopts[:engine]
23
- st, path = @ws.workspace_root
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
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Release
4
4
  module Gem
5
- VERSION = "0.1.22"
5
+ VERSION = "0.1.30"
6
6
  end
7
7
  end
@@ -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
- gem_cli_push(version: ver)
31
- gem_cli_install(version: ver)
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
- vcs_add_to_staging_if_commit_before("Gemfile.lock")
35
- vcs_add_to_staging(value(:version_file_path))
36
-
37
- vcs_commit("Commit after gem version #{ver} built")
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.22
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-04-10 00:00:00.000000000 Z
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.10
158
- signing_key:
143
+ rubygems_version: 3.4.6
144
+ signing_key:
159
145
  specification_version: 4
160
146
  summary: ''
161
147
  test_files: []