packaging 0.106.0 → 0.106.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -4
  3. data/lib/packaging/archive.rb +2 -2
  4. data/lib/packaging/artifactory/extensions.rb +1 -0
  5. data/lib/packaging/artifactory.rb +27 -23
  6. data/lib/packaging/config/params.rb +191 -193
  7. data/lib/packaging/config/validations.rb +0 -2
  8. data/lib/packaging/config.rb +8 -8
  9. data/lib/packaging/deb/repo.rb +11 -14
  10. data/lib/packaging/gem.rb +2 -2
  11. data/lib/packaging/metrics.rb +7 -7
  12. data/lib/packaging/nuget.rb +0 -1
  13. data/lib/packaging/paths.rb +11 -13
  14. data/lib/packaging/platforms.rb +10 -6
  15. data/lib/packaging/repo.rb +11 -12
  16. data/lib/packaging/retrieve.rb +1 -1
  17. data/lib/packaging/rpm/repo.rb +8 -8
  18. data/lib/packaging/sign/dmg.rb +8 -7
  19. data/lib/packaging/sign/ips.rb +64 -32
  20. data/lib/packaging/sign/msi.rb +48 -48
  21. data/lib/packaging/sign/rpm.rb +1 -1
  22. data/lib/packaging/sign.rb +0 -1
  23. data/lib/packaging/tar.rb +2 -4
  24. data/lib/packaging/util/date.rb +0 -1
  25. data/lib/packaging/util/distribution_server.rb +2 -2
  26. data/lib/packaging/util/execution.rb +2 -4
  27. data/lib/packaging/util/file.rb +2 -3
  28. data/lib/packaging/util/git.rb +1 -3
  29. data/lib/packaging/util/git_tags.rb +3 -3
  30. data/lib/packaging/util/gpg.rb +3 -4
  31. data/lib/packaging/util/jenkins.rb +0 -3
  32. data/lib/packaging/util/misc.rb +1 -1
  33. data/lib/packaging/util/net.rb +25 -22
  34. data/lib/packaging/util/repo.rb +0 -1
  35. data/lib/packaging/util/serialization.rb +1 -2
  36. data/lib/packaging/util/ship.rb +3 -3
  37. data/lib/packaging/util/sign.rb +8 -8
  38. data/lib/packaging/util/tool.rb +1 -4
  39. data/lib/packaging/util/version.rb +1 -5
  40. data/lib/packaging/util.rb +1 -1
  41. data/lib/packaging.rb +1 -2
  42. data/spec/lib/packaging/platforms_spec.rb +1 -1
  43. data/spec/lib/packaging/sign_spec.rb +1 -1
  44. data/spec/lib/packaging/util/git_spec.rb +2 -2
  45. data/spec/lib/packaging/util/git_tag_spec.rb +5 -5
  46. data/tasks/30_metrics.rake +2 -2
  47. data/tasks/apple.rake +8 -14
  48. data/tasks/archive.rake +1 -2
  49. data/tasks/deb.rake +7 -8
  50. data/tasks/doc.rake +5 -3
  51. data/tasks/education.rake +2 -4
  52. data/tasks/gem.rake +20 -12
  53. data/tasks/jenkins.rake +27 -15
  54. data/tasks/jenkins_dynamic.rake +10 -10
  55. data/tasks/mock.rake +8 -9
  56. data/tasks/nightly_repos.rake +14 -14
  57. data/tasks/pe_ship.rake +10 -17
  58. data/tasks/retrieve.rake +2 -2
  59. data/tasks/rpm.rake +1 -1
  60. data/tasks/ship.rake +6 -6
  61. data/tasks/sign.rake +5 -5
  62. data/tasks/tar.rake +2 -3
  63. data/tasks/update.rake +2 -2
  64. data/tasks/vendor_gems.rake +5 -7
  65. data/tasks/version.rake +2 -2
  66. metadata +42 -42
data/tasks/mock.rake CHANGED
@@ -37,17 +37,16 @@ def mock_artifact(mock_config, cmd_args, mockfile)
37
37
 
38
38
  # Return a FileList of the build artifacts
39
39
  return FileList[File.join(result_dir, '*.rpm')]
40
-
41
40
  rescue RuntimeError => error
42
41
  build_log = File.join(result_dir, 'build.log')
43
42
  root_log = File.join(result_dir, 'root.log')
44
43
  content = File.read(build_log) if File.readable?(build_log)
45
44
 
46
45
  if File.readable?(root_log)
47
- $stderr.puts File.read(root_log)
46
+ warn File.read(root_log)
48
47
  end
49
48
  if content and content.lines.count > 2
50
- $stderr.puts content
49
+ warn content
51
50
  end
52
51
 
53
52
  # Any useful info has now been gleaned from the logs in the case of a
@@ -99,7 +98,7 @@ def mock_el_family(mock_config)
99
98
  family = mock_config.match(/^pupent-(\d\.\d-)?([a-z]+)([0-9]+)-(.*)$/)[2]
100
99
  else
101
100
  first, second = mock_config.split('-')
102
- if first == 'el' || first == 'fedora'
101
+ if ['el', 'fedora'].include?(first)
103
102
  family = first
104
103
  elsif first == 'pl'
105
104
  if second.match(/^\d+$/)
@@ -122,7 +121,7 @@ def mock_el_ver(mock_config)
122
121
  version = mock_config.match(/^pupent-(\d\.\d-)?([a-z]+)([0-9]+)-(.*)$/)[3]
123
122
  else
124
123
  first, second, third = mock_config.split('-')
125
- if (first == 'el' || first == 'fedora') || (first == 'pl' && second.match(/^\d+$/))
124
+ if ['el', 'fedora'].include?(first) || (first == 'pl' && second.match(/^\d+$/))
126
125
  version = second
127
126
  else
128
127
  version = third
@@ -138,11 +137,11 @@ end
138
137
  def rpm_family_and_version
139
138
  if Pkg::Config.vanagon_project
140
139
  Pkg::Config.rpm_targets.split(' ').map do |target|
141
- rpm_el_family, rpm_el_version, arch = target.split('-')
140
+ rpm_el_family, rpm_el_version, = target.split('-')
142
141
  "#{rpm_el_family}-#{rpm_el_version}"
143
142
  end
144
143
  else
145
- Pkg::Config.final_mocks.split.map { |mock| "#{mock_el_family(mock)}-#{mock_el_ver(mock) }" }
144
+ Pkg::Config.final_mocks.split.map { |mock| "#{mock_el_family(mock)}-#{mock_el_ver(mock)}" }
146
145
  end
147
146
  end
148
147
 
@@ -174,7 +173,7 @@ def mock_defines(mock_config)
174
173
  version = mock_el_ver(mock_config)
175
174
  defines = ""
176
175
  if version =~ /^(4|5)$/ or family == "sles"
177
- defines = %Q(--define "dist .#{family}#{version}" \
176
+ defines = %(--define "dist .#{family}#{version}" \
178
177
  --define "_source_filedigest_algorithm 1" \
179
178
  --define "_binary_filedigest_algorithm 1" \
180
179
  --define "_binary_payload w9.gzdio" \
@@ -318,7 +317,7 @@ end
318
317
  def randomize_mock_config_dir(mock_config, mockfile)
319
318
  # basedir will be the location of our temporary mock root
320
319
  basedir = Pkg::Util::File.mktemp
321
- chown("#{ENV['USER']}", "mock", basedir)
320
+ chown((ENV['USER']).to_s, "mock", basedir)
322
321
  # Mock requires the sticky bit be set on the basedir
323
322
  chmod(02775, basedir)
324
323
  mockfile ||= File.join('/', 'etc', 'mock', "#{mock_config}.cfg")
@@ -21,11 +21,11 @@ namespace :pl do
21
21
  remote_repo = Pkg::Util::Net.remote_unpack_git_bundle(signing_server, 'HEAD', nil, signing_bundle)
22
22
  build_params = Pkg::Util::Net.remote_buildparams(signing_server, Pkg::Config)
23
23
  Pkg::Util::Net.rsync_to('repos', signing_server, remote_repo)
24
- rake_command = <<-DOC
25
- cd #{remote_repo} ;
26
- #{Pkg::Util::Net.remote_bundle_install_command}
27
- bundle exec rake pl:jenkins:sign_repos GPG_KEY=#{Pkg::Util::Gpg.key} PARAMS_FILE=#{build_params}
28
- DOC
24
+ rake_command = <<~DOC
25
+ cd #{remote_repo} ;
26
+ #{Pkg::Util::Net.remote_bundle_install_command}
27
+ bundle exec rake pl:jenkins:sign_repos GPG_KEY=#{Pkg::Util::Gpg.key} PARAMS_FILE=#{build_params}
28
+ DOC
29
29
  Pkg::Util::Net.remote_execute(signing_server, rake_command)
30
30
  Pkg::Util::Net.rsync_from("#{remote_repo}/repos/", signing_server, target)
31
31
  Pkg::Util::Net.remote_execute(signing_server, "rm -rf #{remote_repo}")
@@ -54,7 +54,7 @@ DOC
54
54
  end
55
55
 
56
56
  # This task should be invoked after prepare_signed_repos, so that there are repos to pack up.
57
- task :pack_signed_repo, [:path_to_repo, :name_of_archive, :versioning] => ["pl:fetch"] do |t, args|
57
+ task :pack_signed_repo, %i[path_to_repo name_of_archive versioning] => ["pl:fetch"] do |t, args|
58
58
  # path_to_repo should be relative to ./pkg
59
59
  path_to_repo = args.path_to_repo or fail ":path_to_repo is a required argument for #{t}"
60
60
  name_of_archive = args.name_of_archive or fail ":name_of_archive is a required argument for #{t}"
@@ -62,13 +62,13 @@ DOC
62
62
  Pkg::Repo.create_signed_repo_archive(path_to_repo, name_of_archive, versioning)
63
63
  end
64
64
 
65
- task :pack_all_signed_repos_individually, [:name_of_archive, :versioning] => ["pl:fetch"] do |t, args|
65
+ task :pack_all_signed_repos_individually, %i[name_of_archive versioning] => ["pl:fetch"] do |t, args|
66
66
  name_of_archive = args.name_of_archive or fail ":name_of_archive is a required argument for #{t}"
67
67
  versioning = args.versioning or fail ":versioning is a required argument for #{t}"
68
68
  Pkg::Repo.create_all_repo_archives(name_of_archive, versioning)
69
69
  end
70
70
 
71
- task :prepare_signed_repos, [:target_host, :target_prefix, :versioning] => ["clean", "pl:fetch"] do |t, args|
71
+ task :prepare_signed_repos, %i[target_host target_prefix versioning] => ["clean", "pl:fetch"] do |t, args|
72
72
  target_host = args.target_host or fail ":target_host is a required argument to #{t}"
73
73
  target_prefix = args.target_prefix or fail ":target_prefix is a required argument for #{t}"
74
74
  versioning = args.versioning or fail ":versioning is a required argument for #{t}"
@@ -140,7 +140,7 @@ DOC
140
140
  end
141
141
  end
142
142
 
143
- task :deploy_signed_repos, [:target_host, :target_basedir, :foss_only] => "pl:fetch" do |t, args|
143
+ task :deploy_signed_repos, %i[target_host target_basedir foss_only] => "pl:fetch" do |t, args|
144
144
  target_host = args.target_host or fail ":target_host is a required argument to #{t}"
145
145
  target_basedir = args.target_basedir or fail ":target_basedir is a required argument to #{t}"
146
146
  include_paths = []
@@ -158,11 +158,11 @@ DOC
158
158
 
159
159
  # Get the directories together - we need to figure out which bits to ship based on the include_path
160
160
  # First we get the build itself
161
- Pkg::Util::Execution.capture3(%(find #{include_paths.map { |path| "pkg/#{Pkg::Config.project}/**/#{path}" }.join(' ') } | sort > include_file))
161
+ Pkg::Util::Execution.capture3(%(find #{include_paths.map { |path| "pkg/#{Pkg::Config.project}/**/#{path}" }.join(' ')} | sort > include_file))
162
162
  Pkg::Util::Execution.capture3(%(mkdir -p tmp && tar -T include_file -cf - | (cd ./tmp && tar -xf -)))
163
163
 
164
164
  # Then we find grab the appropriate meta-data only
165
- Pkg::Util::Execution.capture3(%(find #{include_paths.map { |path| "pkg/#{Pkg::Config.project}-latest/#{path}" unless path.include? "repos" }.join(' ') } | sort > include_file_latest))
165
+ Pkg::Util::Execution.capture3(%(find #{include_paths.map { |path| "pkg/#{Pkg::Config.project}-latest/#{path}" unless path.include? 'repos' }.join(' ')} | sort > include_file_latest))
166
166
 
167
167
  #include /repos in the include_file_latest so we correctly include the symlink in the final file list to ship
168
168
  Pkg::Util::Execution.capture3(%(echo "pkg/#{Pkg::Config.project}-latest/repos" >> include_file_latest))
@@ -173,7 +173,7 @@ DOC
173
173
  # First we ship the latest and clean up any repo-configs that are no longer valid with --delete-after
174
174
  Pkg::Util::Net.rsync_to("#{Pkg::Config.project}-latest", target_host, target_basedir, extra_flags: ["--delete-after", "--keep-dirlinks"])
175
175
  # Then we ship the sha version with default rsync flags
176
- Pkg::Util::Net.rsync_to("#{Pkg::Config.project}", target_host, target_basedir)
176
+ Pkg::Util::Net.rsync_to(Pkg::Config.project.to_s, target_host, target_basedir)
177
177
  end
178
178
 
179
179
  puts "'#{Pkg::Config.ref}' of '#{Pkg::Config.project}' has been shipped to '#{target_host}:#{target_basedir}'"
@@ -225,7 +225,7 @@ DOC
225
225
  # a github ref. Valid values are 'version' and 'ref'
226
226
  # @param pe_version the PE-version to deploy to.
227
227
  # ex: 2015.2
228
- task :link_signed_repos, [:target_host, :remote_dir, :versioning, :pe_version] => ["pl:fetch"] do |t, args|
228
+ task :link_signed_repos, %i[target_host remote_dir versioning pe_version] => ["pl:fetch"] do |t, args|
229
229
  target_host = args.target_host or fail ":target_host is a required argument for #{t}"
230
230
  remote_dir = args.remote_dir or fail ":remote_dir is a required argument for #{t}"
231
231
  versioning = args.versioning or fail ":versioning is a required argument for #{t}"
@@ -255,7 +255,7 @@ DOC
255
255
  Pkg::Util::RakeUtils.invoke_task("pl:jenkins:generate_signed_repos", 'nightly')
256
256
  end
257
257
 
258
- task :deploy_nightly_repos, [:target_host, :target_basedir] => ["pl:fetch"] do |t, args|
258
+ task :deploy_nightly_repos, %i[target_host target_basedir] => ["pl:fetch"] do |t, args|
259
259
  target_host = args.target_host or fail ":target_host is a required argument to #{t}"
260
260
  target_basedir = args.target_basedir or fail ":target_basedir is a required argument to #{t}"
261
261
  Pkg::Util::RakeUtils.invoke_task("pl:jenkins:prepare_signed_repos", target_host, 'nightly', 'ref')
data/tasks/pe_ship.rake CHANGED
@@ -74,7 +74,6 @@ if Pkg::Config.build_pe
74
74
  Rake::Task["pe:remote:apt"].reenable
75
75
  Rake::Task["pe:remote:apt"].invoke(target_path, dist)
76
76
  end
77
-
78
77
  end
79
78
  end
80
79
 
@@ -111,19 +110,15 @@ if Pkg::Config.build_pe
111
110
  end
112
111
 
113
112
  unless Dir["pkg/pe/deb/#{dist}/*_all.deb"].empty?
114
- Pkg::Platforms.arches_for_codename(dist).each do |arch|
115
- Pkg::Util::Net.rsync_to("pkg/pe/deb/#{dist}/*_all.deb", Pkg::Config.apt_host, "#{base_path}/#{dist}-#{arch}/")
113
+ Pkg::Platforms.arches_for_codename(dist).each do |a|
114
+ Pkg::Util::Net.rsync_to("pkg/pe/deb/#{dist}/*_all.deb", Pkg::Config.apt_host, "#{base_path}/#{dist}-#{a}/")
116
115
  end
117
116
  end
118
117
 
119
- unless Dir["pkg/pe/deb/#{dist}/*"].select { |i| i !~ /^.*\.deb$/ }.empty?
118
+ unless Dir["pkg/pe/deb/#{dist}/*"].reject { |i| i =~ /^.*\.deb$/ }.empty?
120
119
  # Ship source files to source dir, e.g. 'squeeze-source'
121
120
  Pkg::Util::Net.rsync_to("pkg/pe/deb/#{dist}/*", Pkg::Config.apt_host, "#{base_path}/#{dist}-source", extra_flags: ["--exclude '*.deb'", "--ignore-existing"])
122
121
  end
123
-
124
- files = Dir["pkg/pe/deb/#{dist}/*{_#{arch},all}.deb"].map { |f| "#{archive_path}/#{File.basename(f)}" }
125
-
126
- files += Dir["pkg/pe/deb/#{dist}/*"].select { |f| f !~ /^.*\.deb$/ }.map { |f| "#{base_path}/#{dist}-source/#{File.basename(f)}" }
127
122
  end
128
123
  end
129
124
  # If this is not a feature branch or release branch, we need to link the
@@ -137,14 +132,13 @@ if Pkg::Config.build_pe
137
132
  namespace :remote do
138
133
  desc "Update remote rpm repodata for PE on #{Pkg::Config.yum_host}"
139
134
  task :update_yum_repo => "pl:fetch" do
140
-
141
135
  # Paths to the repos.
142
136
  repo_base_path = Pkg::Config.yum_target_path
143
137
 
144
138
  # This entire command is going to be passed across SSH, but it's unwieldy on a
145
139
  # single line. By breaking it into a series of concatenated strings, we can maintain
146
140
  # a semblance of formatting and structure (nevermind readability).
147
- command = %(for dir in #{repo_base_path}/{#{rpm_family_and_version.join(",")}}-*; do)
141
+ command = %(for dir in #{repo_base_path}/{#{rpm_family_and_version.join(',')}}-*; do)
148
142
  command += %( sudo createrepo --checksum=sha --checkts --update --delta-workers=0 --quiet --database --update $dir; )
149
143
  command += %(done; )
150
144
  command += %(sync)
@@ -159,7 +153,7 @@ if Pkg::Config.build_pe
159
153
  incoming_dir or fail "Adding packages to apt repo requires an incoming directory"
160
154
  Pkg::Util::RakeUtils.invoke_task("pl:fetch")
161
155
 
162
- cmd = <<-eos
156
+ cmd = <<-COMMAND
163
157
  if ! flock --wait 1200 /opt/tools/aptly/db/LOCK --command /bin/true; then
164
158
  echo "Unable to acquire aptly lock, giving up" 1>&2
165
159
  exit 1
@@ -170,12 +164,12 @@ if Pkg::Config.build_pe
170
164
  else
171
165
  aptly publish repo -gpg-key=\"8BBEB79B\" #{Pkg::Config::pe_version}-#{dist} #{Pkg::Config::pe_version}
172
166
  fi
173
- eos
167
+ COMMAND
174
168
  stdout, stderr = Pkg::Util::Net.remote_execute(
175
- Pkg::Config.apt_host,
169
+ Pkg::Config.apt_host,
176
170
  cmd,
177
171
  { capture_output: true }
178
- )
172
+ )
179
173
 
180
174
  output = stdout.to_s + stderr.to_s
181
175
 
@@ -190,7 +184,6 @@ if Pkg::Config.build_pe
190
184
 
191
185
  puts "Cleaning up apt repo 'incoming' dir on #{Pkg::Config.apt_host}"
192
186
  Pkg::Util::Net.remote_execute(Pkg::Config.apt_host, "rm -r #{incoming_dir}")
193
-
194
187
  end
195
188
 
196
189
  # Throw more tires on the fire
@@ -200,7 +193,7 @@ if Pkg::Config.build_pe
200
193
  repo_base_path = Pkg::Config.yum_target_path
201
194
  feature_repo_path = Pkg::Config.yum_target_path(true)
202
195
  pkgs = FileList['pkg/pe/rpm/**/*.rpm'].select { |path| path.gsub!('pkg/pe/rpm/', '') }
203
- command = %(for pkg in #{pkgs.join(' ')}; do)
196
+ command = %(for pkg in #{pkgs.join(' ')}; do)
204
197
  command += %( sudo ln -f "#{repo_base_path}/$( dirname ${pkg} )/$( basename ${pkg} )" "#{feature_repo_path}/$( dirname ${pkg} )/" ; )
205
198
  command += %(done; )
206
199
  command += %(sync)
@@ -214,7 +207,7 @@ if Pkg::Config.build_pe
214
207
  base_path = Pkg::Config.apt_target_path
215
208
  feature_base_path = Pkg::Config.apt_target_path(true)
216
209
  pkgs = FileList["pkg/pe/deb/**/*.deb"].select { |path| path.gsub!('pkg/pe/deb/', '') }
217
- command = %(for pkg in #{pkgs.join(' ')}; do)
210
+ command = %(for pkg in #{pkgs.join(' ')}; do)
218
211
  command += %( sudo ln -f "#{base_path}/$( dirname ${pkg} )-amd64/$( basename ${pkg} )" "#{feature_base_path}/$( dirname ${pkg} )-amd64/" ; )
219
212
  command += %(done; )
220
213
  command += %(sync)
data/tasks/retrieve.rake CHANGED
@@ -13,7 +13,7 @@
13
13
  namespace :pl do
14
14
  namespace :jenkins do
15
15
  desc "Retrieve packages from the distribution server\. Check out commit to retrieve"
16
- task :retrieve, [:remote_target, :local_target] => 'pl:fetch' do |t, args|
16
+ task :retrieve, %i[remote_target local_target] => 'pl:fetch' do |t, args|
17
17
  unless Pkg::Config.project
18
18
  fail "You must set the 'project' in build_defaults.yaml or with the 'PROJECT_OVERRIDE' environment variable."
19
19
  end
@@ -37,7 +37,7 @@ if Pkg::Config.build_pe
37
37
  namespace :pe do
38
38
  namespace :jenkins do
39
39
  desc "Retrieve packages from the distribution server\. Check out commit to retrieve"
40
- task :retrieve, [:remote_target, :local_target] => 'pl:fetch' do |t, args|
40
+ task :retrieve, %i[remote_target local_target] => 'pl:fetch' do |t, args|
41
41
  unless Pkg::Config.project
42
42
  fail "You must set the 'project' in build_defaults.yaml or with the 'PROJECT_OVERRIDE' environment variable."
43
43
  end
data/tasks/rpm.rake CHANGED
@@ -47,7 +47,7 @@ def build_rpm(buildarg = "-bs")
47
47
  puts
48
48
  output = FileList['pkg/*/*.rpm']
49
49
  puts "Wrote:"
50
- output.each do | line |
50
+ output.each do |line|
51
51
  puts line
52
52
  end
53
53
  end
data/tasks/ship.rake CHANGED
@@ -123,7 +123,7 @@ namespace :pl do
123
123
  end
124
124
 
125
125
  desc "Update remote ips repository on #{Pkg::Config.ips_host}"
126
- task :update_ips_repo => 'pl:fetch' do
126
+ task :update_ips_repo => 'pl:fetch' do
127
127
  if Dir['pkg/ips/pkgs/**/*'].empty? && Dir['pkg/solaris/11/**/*'].empty?
128
128
  $stdout.puts "Error: there aren't any p5p packages in pkg/ips/pkgs or pkg/solaris/11."
129
129
  next
@@ -132,11 +132,11 @@ namespace :pl do
132
132
  source_dir = 'pkg/solaris/11/'
133
133
  source_dir = 'pkg/ips/pkgs/' unless Dir['pkg/ips/pkgs/**/*'].empty?
134
134
 
135
- tmpdir, _ = Pkg::Util::Net.remote_execute(
136
- Pkg::Config.ips_host,
135
+ tmpdir, = Pkg::Util::Net.remote_execute(
136
+ Pkg::Config.ips_host,
137
137
  'mktemp -d -p /var/tmp',
138
138
  { capture_output: true }
139
- )
139
+ )
140
140
  tmpdir.chomp!
141
141
 
142
142
  Pkg::Util::Net.rsync_to(source_dir, Pkg::Config.ips_host, tmpdir)
@@ -372,7 +372,8 @@ namespace :pl do
372
372
  desc "Ship nightly debs to #{Pkg::Config.apt_signing_server}"
373
373
  task ship_nightly_debs: 'pl:fetch' do
374
374
  Pkg::Util::Ship.ship_debs(
375
- 'pkg', Pkg::Config.nonfinal_apt_repo_staging_path, chattr: false, nonfinal: true)
375
+ 'pkg', Pkg::Config.nonfinal_apt_repo_staging_path, chattr: false, nonfinal: true
376
+ )
376
377
  end
377
378
 
378
379
  ## This is the new-style apt stager
@@ -635,7 +636,6 @@ namespace :pl do
635
636
  puts " * #{err}"
636
637
  end
637
638
  end
638
-
639
639
  end
640
640
 
641
641
  # It is odd to namespace this ship task under :jenkins, but this task is
data/tasks/sign.rake CHANGED
@@ -139,11 +139,11 @@ namespace :pl do
139
139
  remote_repo = Pkg::Util::Net.remote_unpack_git_bundle(Pkg::Config.signing_server, 'HEAD', nil, signing_bundle)
140
140
  build_params = Pkg::Util::Net.remote_buildparams(Pkg::Config.signing_server, Pkg::Config)
141
141
  Pkg::Util::Net.rsync_to(root_dir, Pkg::Config.signing_server, remote_repo)
142
- rake_command = <<-DOC
143
- cd #{remote_repo} ;
144
- #{Pkg::Util::Net.remote_bundle_install_command}
145
- bundle exec rake #{sign_tasks.map { |task| task + "[#{root_dir}]" }.join(" ")} PARAMS_FILE=#{build_params}
146
- DOC
142
+ rake_command = <<~DOC
143
+ cd #{remote_repo} ;
144
+ #{Pkg::Util::Net.remote_bundle_install_command}
145
+ bundle exec rake #{sign_tasks.map { |task| task + "[#{root_dir}]" }.join(' ')} PARAMS_FILE=#{build_params}
146
+ DOC
147
147
  Pkg::Util::Net.remote_execute(Pkg::Config.signing_server, rake_command)
148
148
  Pkg::Util::Net.rsync_from("#{remote_repo}/#{root_dir}/", Pkg::Config.signing_server, "#{root_dir}/")
149
149
  Pkg::Util::Net.remote_execute(Pkg::Config.signing_server, "rm -rf #{remote_repo}")
data/tasks/tar.rake CHANGED
@@ -1,7 +1,6 @@
1
1
  namespace :package do
2
2
  desc "Create a source tar archive"
3
3
  task :tar => [:clean] do
4
-
5
4
  if Pkg::Config.pre_tar_task
6
5
  Pkg::Util::RakeUtils.invoke_task(Pkg::Config.pre_tar_task)
7
6
  end
@@ -14,11 +13,11 @@ namespace :package do
14
13
  # by the tar class. Otherwise, we load what we consider to be the "default"
15
14
  # set, which is default for historical purposes.
16
15
  #
17
- tar.templates ||= Dir[File.join(Pkg::Config.project_root, "ext", "**", "*.erb")].select { |i| i !~ /ext\/packaging|ext\/osx/ }
16
+ tar.templates ||= Dir[File.join(Pkg::Config.project_root, "ext", "**", "*.erb")].reject { |i| i =~ /ext\/packaging|ext\/osx/ }
18
17
 
19
18
  tar.pkg!
20
19
 
21
- puts "Wrote #{`pwd`.strip}/pkg/#{Pkg::Config.project}-#{Pkg::Config.version}.tar.gz"
20
+ puts "Wrote #{%x(pwd).strip}/pkg/#{Pkg::Config.project}-#{Pkg::Config.version}.tar.gz"
22
21
  end
23
22
  end
24
23
 
data/tasks/update.rake CHANGED
@@ -5,8 +5,8 @@ namespace :package do
5
5
  remote = Pkg::Config.packaging_url.split(' ')[0]
6
6
  branch = Pkg::Config.packaging_url.split(' ')[1].split('=')[1]
7
7
  if branch.nil? or remote.nil?
8
- $stderr.puts "Couldn't parse the packaging repo URL from 'ext/build_defaults.yaml'."
9
- $stderr.puts "Normally this is a string in the format git@github.com:<User>/<packaging_repo> --branch=<branch>"
8
+ warn "Couldn't parse the packaging repo URL from 'ext/build_defaults.yaml'."
9
+ warn "Normally this is a string in the format git@github.com:<User>/<packaging_repo> --branch=<branch>"
10
10
  else
11
11
  Pkg::Util::Git.pull(remote, branch)
12
12
  end
@@ -8,7 +8,7 @@ if Pkg::Config.pre_tar_task
8
8
  require 'bundler'
9
9
 
10
10
  class UI
11
- LEVELS = %w(silent error warn confirm info debug)
11
+ LEVELS = %w[silent error warn confirm info debug]
12
12
 
13
13
  def warn(message, newline = nil)
14
14
  puts message
@@ -30,15 +30,13 @@ if Pkg::Config.pre_tar_task
30
30
  puts message
31
31
  end
32
32
 
33
- def confirm(message, newline = nil)
34
- end
33
+ def confirm(message, newline = nil); end
35
34
 
36
35
  def debug?
37
36
  true
38
37
  end
39
38
 
40
- def ask(message)
41
- end
39
+ def ask(message); end
42
40
 
43
41
  def quiet?
44
42
  false
@@ -54,12 +52,12 @@ if Pkg::Config.pre_tar_task
54
52
  end
55
53
 
56
54
  def silence
57
- old_level, @level = @level, "silent"
55
+ old_level = @level
56
+ @level = "silent"
58
57
  yield
59
58
  ensure
60
59
  @level = old_level
61
60
  end
62
-
63
61
  end
64
62
 
65
63
  class RGProxy < ::Gem::SilentUI
data/tasks/version.rake CHANGED
@@ -24,8 +24,8 @@ namespace :package do
24
24
  end
25
25
 
26
26
  # A set of tasks for printing the version
27
- [:version, :rpmversion, :rpmrelease, :debversion, :release].each do |task|
28
- task "#{task}" do
27
+ %i[version rpmversion rpmrelease debversion release].each do |task|
28
+ task task.to_s do
29
29
  $stdout.puts Pkg::Config.instance_variable_get("@#{task}")
30
30
  end
31
31
  end
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: packaging
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.106.0
4
+ version: 0.106.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Puppet Labs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-24 00:00:00.000000000 Z
11
+ date: 2022-04-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: pry-byebug
14
+ name: pry
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
@@ -25,47 +25,47 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rspec
28
+ name: pry-byebug
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 2.14.1
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 2.14.1
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rubocop
42
+ name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.24.1
47
+ version: 2.14.1
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.24.1
54
+ version: 2.14.1
55
55
  - !ruby/object:Gem::Dependency
56
- name: pry
56
+ name: rubocop
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: '0.49'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: '0.49'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: apt_stage_artifacts
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '2'
89
+ version: '3'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '2'
96
+ version: '3'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: csv
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -109,33 +109,33 @@ dependencies:
109
109
  - !ruby/object:Gem::Version
110
110
  version: 3.1.5
111
111
  - !ruby/object:Gem::Dependency
112
- name: release-metrics
112
+ name: rake
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - ">="
116
116
  - !ruby/object:Gem::Version
117
- version: '0'
117
+ version: '12.3'
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - ">="
123
123
  - !ruby/object:Gem::Version
124
- version: '0'
124
+ version: '12.3'
125
125
  - !ruby/object:Gem::Dependency
126
- name: rake
126
+ name: release-metrics
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - ">="
130
130
  - !ruby/object:Gem::Version
131
- version: '12.3'
131
+ version: '0'
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - ">="
137
137
  - !ruby/object:Gem::Version
138
- version: '12.3'
138
+ version: '0'
139
139
  description: Packaging automation written in Rake and Ruby. Easily build native packages
140
140
  for most platforms with a few data files and git.
141
141
  email: info@puppetlabs.com
@@ -296,27 +296,27 @@ specification_version: 4
296
296
  summary: Puppet Labs' packaging automation
297
297
  test_files:
298
298
  - spec/lib/packaging_spec.rb
299
+ - spec/lib/packaging/retrieve_spec.rb
300
+ - spec/lib/packaging/paths_spec.rb
299
301
  - spec/lib/packaging/platforms_spec.rb
302
+ - spec/lib/packaging/config_spec.rb
300
303
  - spec/lib/packaging/tar_spec.rb
301
- - spec/lib/packaging/rpm/repo_spec.rb
304
+ - spec/lib/packaging/repo_spec.rb
302
305
  - spec/lib/packaging/artifactory_spec.rb
303
- - spec/lib/packaging/gem_spec.rb
304
- - spec/lib/packaging/paths_spec.rb
305
- - spec/lib/packaging/sign_spec.rb
306
- - spec/lib/packaging/config_spec.rb
307
- - spec/lib/packaging/util/gpg_spec.rb
308
- - spec/lib/packaging/util/jenkins_spec.rb
309
- - spec/lib/packaging/util/net_spec.rb
310
- - spec/lib/packaging/util/git_tag_spec.rb
311
- - spec/lib/packaging/util/rake_utils_spec.rb
312
- - spec/lib/packaging/util/os_spec.rb
313
- - spec/lib/packaging/util/misc_spec.rb
314
- - spec/lib/packaging/util/execution_spec.rb
306
+ - spec/lib/packaging/deb_spec.rb
307
+ - spec/lib/packaging/deb/repo_spec.rb
315
308
  - spec/lib/packaging/util/git_spec.rb
316
- - spec/lib/packaging/util/ship_spec.rb
317
309
  - spec/lib/packaging/util/version_spec.rb
310
+ - spec/lib/packaging/util/os_spec.rb
311
+ - spec/lib/packaging/util/execution_spec.rb
318
312
  - spec/lib/packaging/util/file_spec.rb
319
- - spec/lib/packaging/deb_spec.rb
320
- - spec/lib/packaging/repo_spec.rb
321
- - spec/lib/packaging/retrieve_spec.rb
322
- - spec/lib/packaging/deb/repo_spec.rb
313
+ - spec/lib/packaging/util/git_tag_spec.rb
314
+ - spec/lib/packaging/util/rake_utils_spec.rb
315
+ - spec/lib/packaging/util/ship_spec.rb
316
+ - spec/lib/packaging/util/jenkins_spec.rb
317
+ - spec/lib/packaging/util/net_spec.rb
318
+ - spec/lib/packaging/util/misc_spec.rb
319
+ - spec/lib/packaging/util/gpg_spec.rb
320
+ - spec/lib/packaging/rpm/repo_spec.rb
321
+ - spec/lib/packaging/sign_spec.rb
322
+ - spec/lib/packaging/gem_spec.rb