retag 0.1.8 → 0.1.10.93067

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: '08fafd02b0f8303e61cf27f338a7f06cf0c15ddd3c0d3f46d90ef5cd3af70736'
4
- data.tar.gz: 1cf4a60243193e23ebceb8e039c1cee3995f1511eb627fbe782a05dbcd9ab508
3
+ metadata.gz: 5bd0921db700edcd1745c5978064f4dd5a1475b36fb1b59c16f2d48554d4db3c
4
+ data.tar.gz: '08a695eb682237fc96392abbedc73abbcebbf417c04b3ce6eee61094d673a8dc'
5
5
  SHA512:
6
- metadata.gz: b6bb908c029857da4d61be1c4ff47a13a2addd99966a41206b4326a961c675f5b0a4ec51a865b6a56f3cd1389238c8694d5cbe2a5a5f0ed435c3ff424ef1ce81
7
- data.tar.gz: bc4dfbcdabf013a4f9e1c981d272a212712471e5ac4697a0343c47c220e9464e416ed4f0fe386ecb6c50d4a274e13bb23569e5797917e364f4a66e78ba2e2ba6
6
+ metadata.gz: b3e4e328a977e9eccf1610ba38f6ddb3cef283c6ec7bc8bdcc818fb401d0d65e3f2877ecb717af7f3bd6ded02ef8eb7cc6e97236ebe4f5f08e2469140ac321f5
7
+ data.tar.gz: c46f3dca15d4ac1138a81d50dc0a8b4a704d560f56ac1d3c2024e896a317f62a07b7df331e2ab71b6a02572e7cbe3afe0cdb53c23447db33d9570a3d0945ae9d
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- retag (0.1.6)
4
+ retag (0.1.10.93067)
5
5
  activesupport (~> 6.0)
6
6
  colorize
7
7
  gitlab
@@ -13,7 +13,7 @@ PATH
13
13
  GEM
14
14
  remote: https://rubygems.org/
15
15
  specs:
16
- activesupport (6.1.4.4)
16
+ activesupport (6.1.6.1)
17
17
  concurrent-ruby (~> 1.0, >= 1.0.2)
18
18
  i18n (>= 1.6, < 2)
19
19
  minitest (>= 5.1)
@@ -24,7 +24,7 @@ GEM
24
24
  ansi (1.5.0)
25
25
  ast (2.4.2)
26
26
  colorize (0.8.1)
27
- concurrent-ruby (1.1.9)
27
+ concurrent-ruby (1.1.10)
28
28
  crack (0.4.5)
29
29
  rexml
30
30
  diff-lcs (1.5.0)
@@ -36,9 +36,9 @@ GEM
36
36
  httparty (0.20.0)
37
37
  mime-types (~> 3.0)
38
38
  multi_xml (>= 0.5.2)
39
- i18n (1.8.11)
39
+ i18n (1.12.0)
40
40
  concurrent-ruby (~> 1.0)
41
- json (2.6.1)
41
+ json (2.6.2)
42
42
  mime-types (3.4.1)
43
43
  mime-types-data (~> 3.2015)
44
44
  mime-types-data (3.2022.0105)
@@ -92,7 +92,7 @@ GEM
92
92
  terminal-table (3.0.2)
93
93
  unicode-display_width (>= 1.1.1, < 3)
94
94
  thor (1.2.1)
95
- tzinfo (2.0.4)
95
+ tzinfo (2.0.5)
96
96
  concurrent-ruby (~> 1.0)
97
97
  unicode-display_width (2.1.0)
98
98
  uri (0.11.0)
@@ -101,7 +101,7 @@ GEM
101
101
  crack (>= 0.3.2)
102
102
  hashdiff (>= 0.4.0, < 2.0.0)
103
103
  yaml (0.2.0)
104
- zeitwerk (2.5.3)
104
+ zeitwerk (2.6.0)
105
105
 
106
106
  PLATFORMS
107
107
  x86_64-linux
data/bin/retag CHANGED
@@ -41,6 +41,10 @@ class RepoCommand < Thor
41
41
  # Success: there is no such tag
42
42
  end if opts['force']
43
43
 
44
+ $logger.info ">>> Repo #{project}"
45
+ $logger.info " From ".ljust(5) + "[#{options['ref'].colorize(:yellow)}]".ljust(35)
46
+ $logger.info " To ".ljust(5) + "[#{tag.colorize(:yellow)}]".ljust(35)
47
+
44
48
  puts Gitlab.client.create_tag(project, tag, options['ref'], options['message']).inspect
45
49
  end
46
50
 
@@ -57,7 +61,10 @@ class RepoCommand < Thor
57
61
  type: :string,
58
62
  desc: "description Markdown"
59
63
  def release(project, tag)
60
- Gitlab.client.create_project_release(project, name: tag, tag_name: tag, description: options['description'], ref: options['ref'])
64
+ $logger.info ">>> Repo #{project}"
65
+ $logger.info " From ".ljust(5) + "[#{options['ref'].colorize(:yellow)}]".ljust(35)
66
+ $logger.info " To ".ljust(5) + "[#{tag.colorize(:yellow)}]".ljust(35)
67
+ Gitlab.client.create_project_release(project, name: tag, tag_name: tag, description: options['description']&.strip, ref: options['ref'])
61
68
  end
62
69
  end
63
70
 
@@ -90,7 +97,11 @@ class DockerCommand < Thor
90
97
  tag = opts['suffix'].present? ? "#{tag}-#{opts['suffix']}" : tag
91
98
 
92
99
  image = ::Retag::Image.new(img, tag)
93
- image.retag!(opts['tag'])
100
+
101
+ $logger.info ">>> Image #{image.image}"
102
+ $logger.info " From ".ljust(5) + "[#{image.tag.colorize(:yellow)}]: ".ljust(35) + image.full
103
+ newimg = image.retag!(opts['tag'])
104
+ $logger.info " To ".ljust(5) + "[#{newimg.tag.colorize(:yellow)}]: ".ljust(35) + newimg.full
94
105
  end
95
106
 
96
107
  end
@@ -109,6 +120,11 @@ class ReleaseCommand < Thor
109
120
  required: false,
110
121
  desc: "Env: #{ENV_PREFIX}_RELEASE_NAME. Name of the current release"
111
122
 
123
+ option :manifest, default: './manifest.md',
124
+ required: false,
125
+ type: :string,
126
+ desc: "Output file for Markdown manifest of the release"
127
+
112
128
  def release(*_args)
113
129
  opts = options.to_h.dup
114
130
  $logger.level = :debug if opts['verbose']
@@ -128,6 +144,8 @@ class ReleaseCommand < Thor
128
144
 
129
145
  $logger.info "*** Starting '#{tag_message.colorize(mode: :bold)}'...".colorize(:cyan)
130
146
 
147
+ markdown = "## Services\n\n"
148
+
131
149
  services.each do |srv|
132
150
  $logger.tagged(srv.name.colorize(:yellow), "#{srv.revision.colorize(mode: :bold)}@#{srv.branch}") do
133
151
  $logger.info "#{'==>'.colorize(mode: :bold, color: :white)} Releasing service #{srv.name.colorize(mode: :bold)} from #{srv.repo.repo} at #{srv.branch.colorize(mode: :bold)}:".colorize(:green)
@@ -139,22 +157,28 @@ class ReleaseCommand < Thor
139
157
  $logger.info "From ".ljust(5) + "[#{img.tag.colorize(:yellow)}]: ".ljust(35) + img.full
140
158
  newimg = img.retag!(release)
141
159
  $logger.info "To ".ljust(5) + "[#{newimg.tag.colorize(:yellow)}]: ".ljust(35) + newimg.full
160
+
161
+ markdown += "* **Name**: `#{srv.name}`<br>**Version**: #{img.tag}<br>**Image**: #{newimg.full}\n"
142
162
  end
143
163
 
144
164
  $logger.info ">>> Repo #{srv.repo.repo}"
145
165
 
146
166
  $logger.shift do
147
167
  $logger.info "From ".ljust(5) + "[#{srv.revision.colorize(:yellow)}]: ".ljust(35) + "#{srv.repo.repo}~#{srv.revision}@#{srv.branch}"
148
- newimg = img.retag!(release)
168
+ srv.repo.tag!(release, message: tag_message)
149
169
  $logger.info "To ".ljust(5) + "[#{release.colorize(:yellow)}]: ".ljust(35) + "#{srv.repo.repo}~#{srv.revision}@#{release}"
150
170
  end
151
-
152
- srv.repo.tag!(release, message: tag_message)
171
+
153
172
  end
154
173
  end
155
174
  end
156
175
  end
157
176
 
177
+ File.write(opts['manifest'], markdown.strip)
178
+
179
+
180
+
181
+
158
182
  $logger.info "*** Completed '#{tag_message.colorize(mode: :bold)}'".colorize(:cyan)
159
183
 
160
184
  end
data/lib/retag/version.rb CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Retag
4
4
 
5
- VERSION = '0.1.8'
5
+ VERSION = '0.1.10'
6
6
 
7
7
  end
8
8
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: retag
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.10.93067
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samoilenko Yuri
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-21 00:00:00.000000000 Z
11
+ date: 2022-08-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -256,7 +256,7 @@ licenses:
256
256
  metadata:
257
257
  homepage_uri: https://github.com/RnD-Soft/retag
258
258
  source_code_uri: https://github.com/RnD-Soft/retag
259
- post_install_message:
259
+ post_install_message:
260
260
  rdoc_options: []
261
261
  require_paths:
262
262
  - lib
@@ -271,8 +271,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
271
271
  - !ruby/object:Gem::Version
272
272
  version: '0'
273
273
  requirements: []
274
- rubygems_version: 3.2.28
275
- signing_key:
274
+ rubygems_version: 3.0.3
275
+ signing_key:
276
276
  specification_version: 4
277
277
  summary: Retag is cli to manipulate docker images in handy way
278
278
  test_files: []