packaging 0.99.77 → 0.99.78

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 365629e0e3cba195de934ccd1cee9ecff5c7ed684ac79e4befc883420037b191
4
- data.tar.gz: 2498029caf73135b3ee7c5a2704e310ae6398c4eb7716c3687db487fc827dc0d
3
+ metadata.gz: 0340bf3301e12ac79afefe26c69ef76c9b826e03804d114fa00be1e94c558214
4
+ data.tar.gz: d79eb4d7206d75e38011f783890e8288f4ee12dfefba2c990e511ccbe508e847
5
5
  SHA512:
6
- metadata.gz: 4a73420699b6ce732c52c527468c5b9cef405c0565aab9b33c3e592109ddee4aa965f162b4d3950a7900584994dba2994cc07602d75e36b0a53bf8dbbfcd23ec
7
- data.tar.gz: f871e9711752e70ac48956663402fa3f0cdf2693ae08eff8aa0ac59384a0081e1dd27fdbac01a3a17964de4a135a9ded98d381808cace9d9dd62c6ac37d20a8d
6
+ metadata.gz: 25a54450f869fc920f1308d6446b255ebc9571397df63323d242f0270072a72f68d8febb44feb07c7e12d780656b0d18349f7f389a54bbdf54f970990b2451fb
7
+ data.tar.gz: 63ba12e182757008a631ee76551aa43570b97c5ba96787d83dbe1d5b3b5b5808a3a2fb9c2e26e1252febbad15855c4463c1fe531ffbc0dc7604ec9a79a2e52d5
@@ -46,6 +46,14 @@ module Pkg
46
46
  source_package_formats: DEBIAN_SOURCE_FORMATS,
47
47
  repo: true,
48
48
  },
49
+ '11' => {
50
+ codename: 'bullseye',
51
+ architectures: ['amd64'],
52
+ source_architecture: 'source',
53
+ package_format: 'deb',
54
+ source_package_formats: DEBIAN_SOURCE_FORMATS,
55
+ repo: true,
56
+ },
49
57
  },
50
58
 
51
59
  'el' => {
@@ -1,41 +1,71 @@
1
1
  module Pkg::Sign::Dmg
2
2
  module_function
3
3
 
4
- def sign(target_dir = 'pkg')
5
- use_identity = "-i #{Pkg::Config.osx_signing_ssh_key}" unless Pkg::Config.osx_signing_ssh_key.nil?
6
-
7
- if Pkg::Config.osx_signing_server =~ /@/
8
- host_string = "#{Pkg::Config.osx_signing_server}"
9
- else
10
- host_string = "#{ENV['USER']}@#{Pkg::Config.osx_signing_server}"
4
+ def sign(pkg_directory = 'pkg')
5
+ use_identity = ''
6
+ unless Pkg::Config.osx_signing_ssh_key.nil?
7
+ use_identity = "-i #{Pkg::Config.osx_signing_ssh_key}"
11
8
  end
9
+
10
+ host_string = "#{ENV['USER']}@#{Pkg::Config.osx_signing_server}"
11
+ host_string = "#{Pkg::Config.osx_signing_server}" if Pkg::Config.osx_signing_server =~ /@/
12
+
12
13
  ssh_host_string = "#{use_identity} #{host_string}"
13
14
  rsync_host_string = "-e 'ssh #{use_identity}' #{host_string}"
14
15
 
15
- work_dir = "/tmp/#{Pkg::Util.rand_string}"
16
- mount = File.join(work_dir, "mount")
17
- signed = File.join(work_dir, "signed")
18
- Pkg::Util::Net.remote_execute(ssh_host_string, "mkdir -p #{mount} #{signed}")
19
- dmgs = Dir.glob("#{target_dir}/apple/**/*.dmg")
20
- Pkg::Util::Net.rsync_to(dmgs.join(" "), rsync_host_string, work_dir)
21
- Pkg::Util::Net.remote_execute(ssh_host_string, %Q[for dmg in #{dmgs.map { |d| File.basename(d, ".dmg") }.join(" ")}; do
22
- /usr/bin/hdiutil attach #{work_dir}/$dmg.dmg -mountpoint #{mount} -nobrowse -quiet ;
23
- /usr/bin/security -q unlock-keychain -p "#{Pkg::Config.osx_signing_keychain_pw}" "#{Pkg::Config.osx_signing_keychain}" ;
24
- for pkg in $(ls #{mount}/*.pkg | xargs -n 1 basename); do
25
- if /usr/sbin/pkgutil --check-signature #{mount}/$pkg ; then
26
- echo "$pkg is already signed, skipping . . ." ;
27
- cp #{mount}/$pkg #{signed}/$pkg ;
28
- else
29
- /usr/bin/productsign --keychain "#{Pkg::Config.osx_signing_keychain}" --sign "#{Pkg::Config.osx_signing_cert}" #{mount}/$pkg #{signed}/$pkg ;
30
- fi
31
- done
32
- /usr/bin/hdiutil detach #{mount} -quiet ;
33
- /bin/rm #{work_dir}/$dmg.dmg ;
34
- /usr/bin/hdiutil create -volname $dmg -srcfolder #{signed}/ #{work_dir}/$dmg.dmg ;
35
- /bin/rm #{signed}/* ; done])
36
- dmgs.each do | dmg |
37
- Pkg::Util::Net.rsync_from("#{work_dir}/#{File.basename(dmg)}", rsync_host_string, File.dirname(dmg))
16
+ remote_working_directory = "/tmp/#{Pkg::Util.rand_string}"
17
+ dmg_mount_point = File.join(remote_working_directory, "mount")
18
+ signed_items_directory = File.join(remote_working_directory, "signed")
19
+
20
+ dmgs = Dir.glob("#{pkg_directory}/{apple,mac,osx}/**/*.dmg")
21
+ if dmgs.empty?
22
+ $stderr.puts "Error: no dmgs found in #{pkg_directory}/{apple,mac,osx}."
23
+ exit 1
24
+ end
25
+
26
+ dmg_basenames = dmgs.map { |d| File.basename(d, '.dmg') }.join(' ')
27
+
28
+ sign_package_command = %W[
29
+ for dmg in #{dmg_basenames}; do
30
+ /usr/bin/hdiutil attach #{remote_working_directory}/$dmg.dmg
31
+ -mountpoint #{dmg_mount_point} -nobrowse -quiet ;
32
+
33
+ /usr/bin/security -q unlock-keychain
34
+ -p "#{Pkg::Config.osx_signing_keychain_pw}" "#{Pkg::Config.osx_signing_keychain}" ;
35
+
36
+ for pkg in #{dmg_mount_point}/*.pkg; do
37
+ pkg_basename=$(basename $pkg) ;
38
+ if /usr/sbin/pkgutil --check-signature $pkg ; then
39
+ echo "Warning: $pkg is already signed, skipping" ;
40
+ cp $pkg #{signed_items_directory}/$pkg_basename ;
41
+ continue ;
42
+ fi ;
43
+
44
+ /usr/bin/productsign --keychain "#{Pkg::Config.osx_signing_keychain}"
45
+ --sign "#{Pkg::Config.osx_signing_cert}"
46
+ $pkg #{signed_items_directory}/$pkg_basename ;
47
+ done ;
48
+
49
+ /usr/bin/hdiutil detach #{dmg_mount_point} -quiet ;
50
+ /bin/rm #{remote_working_directory}/$dmg.dmg ;
51
+ /usr/bin/hdiutil create -volname $dmg
52
+ -srcfolder #{signed_items_directory}/ #{remote_working_directory}/$dmg.dmg ;
53
+ /bin/rm #{signed_items_directory}/* ;
54
+ done
55
+ ].join(' ')
56
+
57
+ Pkg::Util::Net.remote_execute(ssh_host_string,
58
+ "mkdir -p #{dmg_mount_point} #{signed_items_directory}")
59
+
60
+ Pkg::Util::Net.rsync_to(dmgs.join(' '), rsync_host_string, remote_working_directory)
61
+
62
+ Pkg::Util::Net.remote_execute(ssh_host_string, sign_package_command)
63
+
64
+ dmgs.each do |dmg|
65
+ Pkg::Util::Net.rsync_from(
66
+ "#{remote_working_directory}/#{File.basename(dmg)}", rsync_host_string, File.dirname(dmg))
38
67
  end
39
- Pkg::Util::Net.remote_execute(ssh_host_string, "if [ -d '#{work_dir}' ]; then rm -rf '#{work_dir}'; fi")
68
+
69
+ Pkg::Util::Net.remote_execute(ssh_host_string, "rm -rf '#{remote_working_directory}'")
40
70
  end
41
71
  end
@@ -36,7 +36,7 @@ describe 'Pkg::Platforms' do
36
36
 
37
37
  describe '#codenames' do
38
38
  it 'should return all codenames for a given platform' do
39
- codenames = ['focal', 'bionic', 'buster', 'cosmic', 'jessie', 'stretch', 'trusty', 'xenial']
39
+ codenames = ['focal', 'bionic', 'bullseye', 'buster', 'cosmic', 'jessie', 'stretch', 'trusty', 'xenial']
40
40
  expect(Pkg::Platforms.codenames).to match_array(codenames)
41
41
  end
42
42
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: packaging
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.99.77
4
+ version: 0.99.78
5
5
  platform: ruby
6
6
  authors:
7
7
  - Puppet Labs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-01 00:00:00.000000000 Z
11
+ date: 2021-06-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -260,28 +260,28 @@ signing_key:
260
260
  specification_version: 4
261
261
  summary: Puppet Labs' packaging automation
262
262
  test_files:
263
- - spec/lib/packaging_spec.rb
264
263
  - spec/lib/packaging/sign_spec.rb
265
- - spec/lib/packaging/paths_spec.rb
266
- - spec/lib/packaging/artifactory_spec.rb
267
- - spec/lib/packaging/tar_spec.rb
268
- - spec/lib/packaging/deb_spec.rb
264
+ - spec/lib/packaging/rpm/repo_spec.rb
269
265
  - spec/lib/packaging/retrieve_spec.rb
270
266
  - spec/lib/packaging/deb/repo_spec.rb
271
- - spec/lib/packaging/platforms_spec.rb
272
- - spec/lib/packaging/util/execution_spec.rb
267
+ - spec/lib/packaging/tar_spec.rb
273
268
  - spec/lib/packaging/util/jenkins_spec.rb
274
269
  - spec/lib/packaging/util/gpg_spec.rb
275
- - spec/lib/packaging/util/git_tag_spec.rb
276
- - spec/lib/packaging/util/misc_spec.rb
277
- - spec/lib/packaging/util/os_spec.rb
278
270
  - spec/lib/packaging/util/rake_utils_spec.rb
279
- - spec/lib/packaging/util/net_spec.rb
271
+ - spec/lib/packaging/util/misc_spec.rb
280
272
  - spec/lib/packaging/util/file_spec.rb
281
273
  - spec/lib/packaging/util/version_spec.rb
274
+ - spec/lib/packaging/util/os_spec.rb
282
275
  - spec/lib/packaging/util/git_spec.rb
276
+ - spec/lib/packaging/util/net_spec.rb
283
277
  - spec/lib/packaging/util/ship_spec.rb
284
- - spec/lib/packaging/config_spec.rb
285
- - spec/lib/packaging/rpm/repo_spec.rb
286
- - spec/lib/packaging/repo_spec.rb
278
+ - spec/lib/packaging/util/execution_spec.rb
279
+ - spec/lib/packaging/util/git_tag_spec.rb
287
280
  - spec/lib/packaging/gem_spec.rb
281
+ - spec/lib/packaging/deb_spec.rb
282
+ - spec/lib/packaging/repo_spec.rb
283
+ - spec/lib/packaging/platforms_spec.rb
284
+ - spec/lib/packaging/artifactory_spec.rb
285
+ - spec/lib/packaging/config_spec.rb
286
+ - spec/lib/packaging/paths_spec.rb
287
+ - spec/lib/packaging_spec.rb