packaging 0.99.71 → 0.99.76
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 +4 -4
- data/README.md +1 -1
- data/lib/packaging/config.rb +26 -0
- data/lib/packaging/config/params.rb +12 -0
- data/lib/packaging/config/validations.rb +13 -0
- data/lib/packaging/gem.rb +14 -10
- data/lib/packaging/paths.rb +54 -9
- data/lib/packaging/platforms.rb +2 -2
- data/lib/packaging/sign/msi.rb +2 -3
- data/lib/packaging/util/git.rb +1 -1
- data/lib/packaging/util/net.rb +1 -1
- data/lib/packaging/util/ship.rb +20 -5
- data/spec/lib/packaging/paths_spec.rb +233 -114
- data/spec/lib/packaging/util/git_tag_spec.rb +1 -1
- data/spec/lib/packaging/util/ship_spec.rb +142 -72
- data/tasks/config.rake +5 -0
- data/tasks/fetch.rake +17 -14
- data/tasks/gem.rake +0 -10
- data/tasks/ship.rake +10 -28
- metadata +15 -14
|
@@ -17,7 +17,7 @@ describe "Pkg::Util::Git_tag" do
|
|
|
17
17
|
|
|
18
18
|
context "branch?" do
|
|
19
19
|
it "sets ref type as a branch when passed a branch" do
|
|
20
|
-
git_tag = Pkg::Util::Git_tag.new("git://github.com/puppetlabs/leatherman.git", "
|
|
20
|
+
git_tag = Pkg::Util::Git_tag.new("git://github.com/puppetlabs/leatherman.git", "main")
|
|
21
21
|
expect(git_tag.branch?).to eq(true)
|
|
22
22
|
end
|
|
23
23
|
end
|
|
@@ -2,88 +2,112 @@ require 'spec_helper'
|
|
|
2
2
|
|
|
3
3
|
describe '#Pkg::Util::Ship' do
|
|
4
4
|
describe '#collect_packages' do
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
msi_packages = %w[
|
|
6
|
+
pkg/windows/puppet6/puppet-agent-6.19.0-x64.msi
|
|
7
|
+
pkg/windows/puppet6/puppet-agent-6.19.0-x86.msi
|
|
8
|
+
pkg/windowsfips/puppet6/puppet-agent-6.19.0-x64.msi
|
|
9
|
+
pkg/windows/puppet6/puppet-agent-x86.msi
|
|
10
|
+
pkg/windowsfips/puppet6/puppet-agent-x64.msi
|
|
10
11
|
]
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
solaris_packages = %w[
|
|
13
|
+
pkg/solaris/10/puppet6/puppet-agent-6.9.0-1.sparc.pkg.gz
|
|
14
|
+
pkg/solaris/10/puppet6/puppet-agent-6.9.0-1.sparc.pkg.gz.asc
|
|
14
15
|
]
|
|
15
16
|
|
|
16
17
|
it 'returns an array of packages found on the filesystem' do
|
|
17
|
-
allow(Dir).to receive(:glob).with('pkg/**/*.
|
|
18
|
-
expect(Pkg::Util::Ship.collect_packages(['pkg/**/*.
|
|
18
|
+
allow(Dir).to receive(:glob).with('pkg/**/*.sparc*').and_return(solaris_packages)
|
|
19
|
+
expect(Pkg::Util::Ship.collect_packages(['pkg/**/*.sparc*'])).to eq(solaris_packages)
|
|
19
20
|
end
|
|
20
21
|
|
|
21
|
-
|
|
22
|
+
context 'excluding packages' do
|
|
22
23
|
before :each do
|
|
23
|
-
allow(Dir).to receive(:glob).with('pkg/**/*.msi').and_return(
|
|
24
|
+
allow(Dir).to receive(:glob).with('pkg/**/*.msi').and_return(msi_packages)
|
|
24
25
|
end
|
|
25
26
|
it 'correctly excludes any packages that match a passed excludes argument' do
|
|
26
|
-
expect(Pkg::Util::Ship.collect_packages(['pkg/**/*.msi'], ['puppet-agent-x(86|64).msi']))
|
|
27
|
+
expect(Pkg::Util::Ship.collect_packages(['pkg/**/*.msi'], ['puppet-agent-x(86|64).msi']))
|
|
28
|
+
.not_to include('pkg/windows/puppet6/puppet-agent-x86.msi')
|
|
29
|
+
expect(Pkg::Util::Ship.collect_packages(['pkg/**/*.msi'], ['puppet-agent-x(86|64).msi']))
|
|
30
|
+
.not_to include('pkg/windows/puppet6/puppet-agent-x64.msi')
|
|
27
31
|
end
|
|
28
32
|
it 'correctly includes packages that do not match a passed excluded argument' do
|
|
29
|
-
expect(Pkg::Util::Ship.collect_packages(['pkg/**/*.msi'],
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
'pkg/windows/puppet5/puppet-agent-1.4.1.2904.g8023dd1-x86.msi',
|
|
33
|
-
'pkg/windowsfips/puppet5/puppet-agent-1.4.1.2904.g8023dd1-x64.msi',
|
|
34
|
-
]
|
|
35
|
-
)
|
|
33
|
+
expect(Pkg::Util::Ship.collect_packages(['pkg/**/*.msi'],
|
|
34
|
+
['bogus-puppet-agent-x(86|64).msi']))
|
|
35
|
+
.to match_array(msi_packages)
|
|
36
36
|
end
|
|
37
37
|
end
|
|
38
38
|
|
|
39
|
-
it '
|
|
39
|
+
it 'returns an empty array when it cannot find any packages' do
|
|
40
40
|
allow(Dir).to receive(:glob).with('pkg/**/*.html').and_return([])
|
|
41
41
|
expect(Pkg::Util::Ship.collect_packages(['pkg/**/*.html'])).to be_empty
|
|
42
42
|
end
|
|
43
43
|
end
|
|
44
44
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
45
|
+
# Sample data for #reorganize_packages and #ship_pkgs specs
|
|
46
|
+
retrieved_packages = %w[
|
|
47
|
+
pkg/deb/bionic/puppet6/puppet-agent_6.19.0-1bionic_amd64.deb
|
|
48
|
+
pkg/el/7/puppet6/aarch64/puppet-agent-6.19.0-1.el7.aarch64.rpm
|
|
49
|
+
pkg/el/7/puppet6/ppc64le/puppet-agent-6.19.0-1.el7.ppc64le.rpm
|
|
50
|
+
pkg/el/7/puppet6/x86_64/puppet-agent-6.19.0-1.el7.x86_64.rpm
|
|
51
|
+
pkg/sles/12/puppet6/ppc64le/puppet-agent-6.19.0-1.sles12.ppc64le.rpm
|
|
52
|
+
pkg/sles/12/puppet6/x86_64/puppet-agent-6.19.0-1.sles12.x86_64.rpm
|
|
53
|
+
pkg/sles/15/puppet6/x86_64/puppet-agent-6.19.0-1.sles15.x86_64.rpm
|
|
54
|
+
pkg/apple/10.14/puppet6/x86_64/puppet-agent-6.19.0-1.osx10.14.dmg
|
|
55
|
+
pkg/apple/10.15/puppet6/x86_64/puppet-agent-6.19.0-1.osx10.15.dmg
|
|
56
|
+
pkg/fedora/32/puppet6/x86_64/puppet-agent-6.19.0-1.fc32.x86_64.rpm
|
|
57
|
+
pkg/windows/puppet-agent-6.19.0-x64.msi
|
|
58
|
+
pkg/windows/puppet-agent-6.19.0-x86.msi
|
|
59
|
+
pkg/windowsfips/puppet-agent-6.19.0-x64.msi
|
|
60
|
+
pkg/windows/puppet6/puppet-agent-x86.msi
|
|
61
|
+
pkg/windowsfips/puppet6/puppet-agent-x64.msi
|
|
62
|
+
]
|
|
63
|
+
|
|
64
|
+
# After reorganization, the packages should look like this.
|
|
65
|
+
# Beware apple->mac transforms.
|
|
66
|
+
expected_reorganized_packages = %w[
|
|
67
|
+
pkg/bionic/puppet6/puppet-agent_6.19.0-1bionic_amd64.deb
|
|
68
|
+
pkg/puppet6/el/7/aarch64/puppet-agent-6.19.0-1.el7.aarch64.rpm
|
|
69
|
+
pkg/puppet6/el/7/ppc64le/puppet-agent-6.19.0-1.el7.ppc64le.rpm
|
|
70
|
+
pkg/puppet6/el/7/x86_64/puppet-agent-6.19.0-1.el7.x86_64.rpm
|
|
71
|
+
pkg/puppet6/sles/12/ppc64le/puppet-agent-6.19.0-1.sles12.ppc64le.rpm
|
|
72
|
+
pkg/puppet6/sles/12/x86_64/puppet-agent-6.19.0-1.sles12.x86_64.rpm
|
|
73
|
+
pkg/puppet6/sles/15/x86_64/puppet-agent-6.19.0-1.sles15.x86_64.rpm
|
|
74
|
+
pkg/mac/puppet6/10.14/x86_64/puppet-agent-6.19.0-1.osx10.14.dmg
|
|
75
|
+
pkg/mac/puppet6/10.15/x86_64/puppet-agent-6.19.0-1.osx10.15.dmg
|
|
76
|
+
pkg/puppet6/fedora/32/x86_64/puppet-agent-6.19.0-1.fc32.x86_64.rpm
|
|
77
|
+
pkg/windows/puppet6/puppet-agent-6.19.0-x64.msi
|
|
78
|
+
pkg/windows/puppet6/puppet-agent-6.19.0-x86.msi
|
|
79
|
+
pkg/windowsfips/puppet6/puppet-agent-6.19.0-x64.msi
|
|
80
|
+
pkg/windows/puppet6/puppet-agent-x86.msi
|
|
81
|
+
pkg/windowsfips/puppet6/puppet-agent-x64.msi
|
|
82
|
+
]
|
|
65
83
|
|
|
66
84
|
describe '#reorganize_packages' do
|
|
67
|
-
|
|
85
|
+
# This is a sampling of packages found on builds.delivery.puppetlabs.net in
|
|
86
|
+
# '/opt/jenkins-builds/puppet-agent/<version>/artifacts'
|
|
87
|
+
# pl:jenkins:retrieve replaces 'artifacts' with 'pkg', so we pick up the
|
|
88
|
+
# action from that point by pretending that we've scanned the directory and
|
|
89
|
+
# made this list:
|
|
90
|
+
|
|
91
|
+
scratch_directory = Dir.mktmpdir
|
|
68
92
|
|
|
69
93
|
before :each do
|
|
70
|
-
allow(Pkg::Config).to receive(:repo_name).and_return('
|
|
71
|
-
expect(FileUtils).to receive(:cp).at_least(:once)
|
|
94
|
+
allow(Pkg::Config).to receive(:repo_name).and_return('puppet6')
|
|
95
|
+
expect(FileUtils).to receive(:cp).at_least(:once).and_return(true)
|
|
72
96
|
end
|
|
73
97
|
|
|
74
|
-
|
|
75
|
-
expect(FileUtils).to receive(:mkdir_p).at_least(:once)
|
|
76
|
-
Pkg::Util::Ship.reorganize_packages(local_pkgs, tmpdir)
|
|
77
|
-
end
|
|
98
|
+
original_packages = retrieved_packages
|
|
78
99
|
|
|
79
100
|
it 'leaves the old packages in place' do
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
101
|
+
reorganized_packages = Pkg::Util::Ship
|
|
102
|
+
.reorganize_packages(retrieved_packages, scratch_directory)
|
|
103
|
+
|
|
104
|
+
expect(retrieved_packages).to eq(original_packages)
|
|
83
105
|
end
|
|
84
106
|
|
|
85
|
-
it 'returns a list of
|
|
86
|
-
|
|
107
|
+
it 'returns a list of properly reorganized packages' do
|
|
108
|
+
reorganized_packages = Pkg::Util::Ship
|
|
109
|
+
.reorganize_packages(retrieved_packages, scratch_directory)
|
|
110
|
+
expect(reorganized_packages).to eq(expected_reorganized_packages)
|
|
87
111
|
end
|
|
88
112
|
end
|
|
89
113
|
|
|
@@ -92,38 +116,84 @@ new_pkgs = [
|
|
|
92
116
|
test_remote_path = '/opt/repository/yum'
|
|
93
117
|
|
|
94
118
|
it 'ships the packages to the staging server' do
|
|
95
|
-
allow(Pkg::Util::Ship)
|
|
96
|
-
|
|
119
|
+
allow(Pkg::Util::Ship)
|
|
120
|
+
.to receive(:collect_packages)
|
|
121
|
+
.and_return(retrieved_packages)
|
|
122
|
+
allow(Pkg::Util::Ship)
|
|
123
|
+
.to receive(:reorganize_packages)
|
|
124
|
+
.and_return(expected_reorganized_packages)
|
|
97
125
|
allow(Pkg::Util).to receive(:ask_yes_or_no).and_return(true)
|
|
98
126
|
# All of these expects must be called in the same block in order for the
|
|
99
127
|
# tests to work without actually shipping anything
|
|
100
|
-
expect(Pkg::Util::Net)
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
expect(Pkg::Util::Net)
|
|
105
|
-
|
|
106
|
-
|
|
128
|
+
expect(Pkg::Util::Net)
|
|
129
|
+
.to receive(:remote_ssh_cmd)
|
|
130
|
+
.with(test_staging_server, /#{test_remote_path}/)
|
|
131
|
+
.exactly(retrieved_packages.count).times
|
|
132
|
+
expect(Pkg::Util::Net)
|
|
133
|
+
.to receive(:rsync_to)
|
|
134
|
+
.with(anything, test_staging_server, /#{test_remote_path}/, anything)
|
|
135
|
+
.exactly(retrieved_packages.count).times
|
|
136
|
+
expect(Pkg::Util::Net)
|
|
137
|
+
.to receive(:remote_set_ownership)
|
|
138
|
+
.with(test_staging_server, 'root', 'release', anything)
|
|
139
|
+
.exactly(retrieved_packages.count).times
|
|
140
|
+
expect(Pkg::Util::Net)
|
|
141
|
+
.to receive(:remote_set_permissions)
|
|
142
|
+
.with(test_staging_server, '775', anything)
|
|
143
|
+
.exactly(retrieved_packages.count).times
|
|
144
|
+
expect(Pkg::Util::Net)
|
|
145
|
+
.to receive(:remote_set_permissions)
|
|
146
|
+
.with(test_staging_server, '0664', anything)
|
|
147
|
+
.exactly(retrieved_packages.count).times
|
|
148
|
+
expect(Pkg::Util::Net)
|
|
149
|
+
.to receive(:remote_set_immutable)
|
|
150
|
+
.with(test_staging_server, anything)
|
|
151
|
+
.exactly(retrieved_packages.count).times
|
|
152
|
+
expect(Pkg::Util::Ship.ship_pkgs(['pkg/**/*.rpm'], test_staging_server, test_remote_path))
|
|
153
|
+
.to eq(true)
|
|
107
154
|
end
|
|
108
155
|
|
|
109
156
|
it 'ships packages containing the string `pkg` to the right place' do
|
|
110
|
-
|
|
111
|
-
|
|
157
|
+
retrieved_package = 'pkg/el/7/puppet6/x86_64/puppet-agent-6.19.0-1.el7.x86_64.rpm'
|
|
158
|
+
reorganized_package = 'pkg/puppet6/el/7/x86_64/puppet-agent-6.19.0-1.el7.x86_64.rpm'
|
|
159
|
+
package_basename = File.basename(reorganized_package)
|
|
160
|
+
repository_base_path = '/opt/repository/yum/puppet6/el/7/x86_64'
|
|
161
|
+
|
|
162
|
+
allow(Pkg::Util::Ship).to receive(:collect_packages).and_return([retrieved_package])
|
|
163
|
+
allow(Pkg::Util::Ship).to receive(:reorganize_packages).and_return([reorganized_package])
|
|
112
164
|
allow(Pkg::Util).to receive(:ask_yes_or_no).and_return(true)
|
|
113
165
|
allow(Dir).to receive(:mktmpdir).and_return('/tmp/test')
|
|
166
|
+
|
|
114
167
|
# All of these expects must be called in the same block in order for the
|
|
115
168
|
# tests to work without actually shipping anything
|
|
116
|
-
expect(Pkg::Util::Net)
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
expect(Pkg::Util::Net)
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
expect(Pkg::Util::
|
|
169
|
+
expect(Pkg::Util::Net)
|
|
170
|
+
.to receive(:remote_ssh_cmd)
|
|
171
|
+
.with(test_staging_server, /#{test_remote_path}/)
|
|
172
|
+
expect(Pkg::Util::Net)
|
|
173
|
+
.to receive(:rsync_to)
|
|
174
|
+
.with(anything, test_staging_server, /#{test_remote_path}/, anything)
|
|
175
|
+
expect(Pkg::Util::Net)
|
|
176
|
+
.to receive(:remote_set_ownership)
|
|
177
|
+
.with(test_staging_server, 'root', 'release',
|
|
178
|
+
[repository_base_path, "#{repository_base_path}/#{package_basename}"])
|
|
179
|
+
expect(Pkg::Util::Net)
|
|
180
|
+
.to receive(:remote_set_permissions)
|
|
181
|
+
.with(test_staging_server, '775', anything)
|
|
182
|
+
expect(Pkg::Util::Net)
|
|
183
|
+
.to receive(:remote_set_permissions)
|
|
184
|
+
.with(test_staging_server, '0664', anything)
|
|
185
|
+
expect(Pkg::Util::Net)
|
|
186
|
+
.to receive(:remote_set_immutable)
|
|
187
|
+
.with(test_staging_server, anything)
|
|
188
|
+
expect(Pkg::Util::Ship.ship_pkgs(['pkg/**/*.rpm'], test_staging_server,
|
|
189
|
+
test_remote_path, excludes: ['puppet-agent']))
|
|
190
|
+
.to eq(true)
|
|
123
191
|
end
|
|
124
192
|
|
|
125
193
|
it 'returns false if there are no packages to ship' do
|
|
126
|
-
expect(Pkg::Util::Ship.ship_pkgs(['pkg/**/*.msi'],
|
|
194
|
+
expect(Pkg::Util::Ship.ship_pkgs(['pkg/**/*.msi'],
|
|
195
|
+
test_staging_server, test_remote_path))
|
|
196
|
+
.to eq(false)
|
|
127
197
|
end
|
|
128
198
|
end
|
|
129
199
|
end
|
data/tasks/config.rake
CHANGED
|
@@ -6,6 +6,11 @@ namespace :config do
|
|
|
6
6
|
end
|
|
7
7
|
end
|
|
8
8
|
|
|
9
|
+
desc "validate Pkg::Config values for this repo"
|
|
10
|
+
task :validate do
|
|
11
|
+
Pkg::Config.perform_validations
|
|
12
|
+
end
|
|
13
|
+
|
|
9
14
|
task :print_hosts => 'pl:fetch' do
|
|
10
15
|
Pkg::Util.filter_configs('host').each do |key, value|
|
|
11
16
|
puts "#{key}: #{value}"
|
data/tasks/fetch.rake
CHANGED
|
@@ -30,28 +30,31 @@ namespace :pl do
|
|
|
30
30
|
task :fetch do
|
|
31
31
|
# Remove .packaging directory from old-style extras loading
|
|
32
32
|
rm_rf "#{ENV['HOME']}/.packaging" if File.directory?("#{ENV['HOME']}/.packaging")
|
|
33
|
+
|
|
33
34
|
# Touch the .packaging file which is allows packaging to present remote tasks
|
|
34
35
|
touch "#{ENV['HOME']}/.packaging"
|
|
35
36
|
|
|
36
37
|
begin
|
|
37
|
-
|
|
38
|
-
%x(git clone #{data_repo} #{
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
38
|
+
build_data_directory = Pkg::Util::File.mktemp
|
|
39
|
+
%x(git clone #{data_repo} #{build_data_directory})
|
|
40
|
+
unless $?.success?
|
|
41
|
+
fail 'Error: could not fetch the build-data repo. Maybe you do not have the correct permissions?'
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
Dir.chdir(build_data_directory) do
|
|
45
|
+
[team_data_branch, project_data_branch].each do |branch|
|
|
46
|
+
%x(git checkout #{branch})
|
|
47
|
+
unless $?.success?
|
|
48
|
+
warn "Warning: no build_defaults found in branch '#{branch}' of '#{data_repo}'. Skipping."
|
|
49
|
+
next
|
|
48
50
|
end
|
|
51
|
+
Pkg::Util::RakeUtils.invoke_task('pl:load_extras', build_data_directory)
|
|
49
52
|
end
|
|
50
|
-
else
|
|
51
|
-
fail "There was an error attempting to fetch the build-data repo. Maybe you do not have the correct permissions?"
|
|
52
53
|
end
|
|
53
54
|
ensure
|
|
54
|
-
rm_rf
|
|
55
|
+
rm_rf build_data_directory
|
|
55
56
|
end
|
|
57
|
+
|
|
58
|
+
Pkg::Util::RakeUtils.invoke_task('config:validate')
|
|
56
59
|
end
|
|
57
60
|
end
|
data/tasks/gem.rake
CHANGED
|
@@ -150,20 +150,10 @@ namespace :package do
|
|
|
150
150
|
Pkg::Config.gemversion = Pkg::Util::Version.extended_dot_version
|
|
151
151
|
package_gem
|
|
152
152
|
end
|
|
153
|
-
|
|
154
|
-
# PA-3356: temporary task to ship puppet 7 nightly gem
|
|
155
|
-
# TODO: PA-3358 - remove when puppet 7 is officialy out
|
|
156
|
-
task :puppet_7_nightly_gem => ["clean"] do
|
|
157
|
-
Pkg::Config.gemversion = Pkg::Util::Version.extended_dot_version.gsub(/6\.\d+\.\d+/, '7.0.0')
|
|
158
|
-
package_gem
|
|
159
|
-
end
|
|
160
153
|
end
|
|
161
154
|
|
|
162
155
|
# An alias task to simplify our remote logic in jenkins.rake
|
|
163
156
|
namespace :pl do
|
|
164
157
|
task :gem => "package:gem"
|
|
165
158
|
task :nightly_gem => "package:nightly_gem"
|
|
166
|
-
# PA-3356: temporary task to ship puppet 7 nightly gem
|
|
167
|
-
# TODO: PA-3358 - remove when puppet 7 is officialy out
|
|
168
|
-
task :puppet_7_nightly_gem => "package:puppet_7_nightly_gem"
|
|
169
159
|
end
|
data/tasks/ship.rake
CHANGED
|
@@ -265,25 +265,6 @@ namespace :pl do
|
|
|
265
265
|
|
|
266
266
|
Pkg::Util::Net.remote_ssh_cmd(Pkg::Config.gem_host, command)
|
|
267
267
|
end
|
|
268
|
-
|
|
269
|
-
# PA-3356: temporary task to link puppet 7 nightly gem
|
|
270
|
-
# TODO: PA-3358 - remove when puppet 7 is officialy out
|
|
271
|
-
desc "Remotely link puppet 7 nightly shipped gems to latest versions on #{Pkg::Config.gem_host}"
|
|
272
|
-
task link_puppet_7_nightly_shipped_gems_to_latest: 'pl:fetch' do
|
|
273
|
-
Pkg::Config.gemversion = Pkg::Util::Version.extended_dot_version.gsub(/6\.\d+\.\d+/, '7.0.0')
|
|
274
|
-
|
|
275
|
-
remote_path = Pkg::Config.nonfinal_gem_path
|
|
276
|
-
gems = FileList['pkg/*.gem'].map! { |path| path.gsub!('pkg/', '') }
|
|
277
|
-
command = %(cd #{remote_path}; )
|
|
278
|
-
|
|
279
|
-
command += gems.map! do |gem_name|
|
|
280
|
-
%(sudo ln -sf #{gem_name} #{gem_name.gsub(Pkg::Config.gemversion, 'latest')})
|
|
281
|
-
end.join(';')
|
|
282
|
-
|
|
283
|
-
command += %(; sync)
|
|
284
|
-
|
|
285
|
-
Pkg::Util::Net.remote_ssh_cmd(Pkg::Config.gem_host, command)
|
|
286
|
-
end
|
|
287
268
|
end
|
|
288
269
|
|
|
289
270
|
desc "Ship mocked rpms to #{Pkg::Config.yum_staging_server}"
|
|
@@ -463,6 +444,16 @@ namespace :pl do
|
|
|
463
444
|
end
|
|
464
445
|
end
|
|
465
446
|
|
|
447
|
+
desc 'Create the rolling repo links'
|
|
448
|
+
task create_repo_links: 'pl:fetch' do
|
|
449
|
+
Pkg::Util::Ship.create_rolling_repo_links
|
|
450
|
+
end
|
|
451
|
+
|
|
452
|
+
desc 'Create rolling repo links for nightlies'
|
|
453
|
+
task create_nightly_repo_links: 'pl:fetch' do
|
|
454
|
+
Pkg::Util::Ship.create_rolling_repo_links(true)
|
|
455
|
+
end
|
|
456
|
+
|
|
466
457
|
desc 'Test out the ship requirements'
|
|
467
458
|
task ship_check: 'pl:fetch' do
|
|
468
459
|
errs = []
|
|
@@ -536,15 +527,6 @@ namespace :pl do
|
|
|
536
527
|
end
|
|
537
528
|
end
|
|
538
529
|
|
|
539
|
-
desc 'Create the rolling repo links'
|
|
540
|
-
task create_repo_links: 'pl:fetch' do
|
|
541
|
-
Pkg::Util::Ship.create_rolling_repo_links
|
|
542
|
-
end
|
|
543
|
-
|
|
544
|
-
desc 'Create rolling repo links for nightlies'
|
|
545
|
-
task create_nightly_repo_links: 'pl:fetch' do
|
|
546
|
-
Pkg::Util::Ship.create_rolling_repo_links(true)
|
|
547
|
-
end
|
|
548
530
|
end
|
|
549
531
|
|
|
550
532
|
# It is odd to namespace this ship task under :jenkins, but this task is
|
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.
|
|
4
|
+
version: 0.99.76
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Puppet Labs
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2021-03-01 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rspec
|
|
@@ -124,6 +124,7 @@ files:
|
|
|
124
124
|
- lib/packaging/artifactory/extensions.rb
|
|
125
125
|
- lib/packaging/config.rb
|
|
126
126
|
- lib/packaging/config/params.rb
|
|
127
|
+
- lib/packaging/config/validations.rb
|
|
127
128
|
- lib/packaging/deb.rb
|
|
128
129
|
- lib/packaging/deb/repo.rb
|
|
129
130
|
- lib/packaging/gem.rb
|
|
@@ -259,28 +260,28 @@ signing_key:
|
|
|
259
260
|
specification_version: 4
|
|
260
261
|
summary: Puppet Labs' packaging automation
|
|
261
262
|
test_files:
|
|
262
|
-
- spec/lib/
|
|
263
|
+
- spec/lib/packaging_spec.rb
|
|
263
264
|
- spec/lib/packaging/sign_spec.rb
|
|
265
|
+
- spec/lib/packaging/deb/repo_spec.rb
|
|
266
|
+
- spec/lib/packaging/retrieve_spec.rb
|
|
267
|
+
- spec/lib/packaging/paths_spec.rb
|
|
264
268
|
- spec/lib/packaging/platforms_spec.rb
|
|
265
269
|
- spec/lib/packaging/rpm/repo_spec.rb
|
|
270
|
+
- spec/lib/packaging/gem_spec.rb
|
|
271
|
+
- spec/lib/packaging/deb_spec.rb
|
|
266
272
|
- spec/lib/packaging/repo_spec.rb
|
|
267
273
|
- spec/lib/packaging/config_spec.rb
|
|
268
|
-
- spec/lib/packaging/
|
|
274
|
+
- spec/lib/packaging/util/misc_spec.rb
|
|
269
275
|
- spec/lib/packaging/util/execution_spec.rb
|
|
270
276
|
- spec/lib/packaging/util/gpg_spec.rb
|
|
277
|
+
- spec/lib/packaging/util/os_spec.rb
|
|
278
|
+
- spec/lib/packaging/util/version_spec.rb
|
|
271
279
|
- spec/lib/packaging/util/git_spec.rb
|
|
272
|
-
- spec/lib/packaging/util/jenkins_spec.rb
|
|
273
|
-
- spec/lib/packaging/util/rake_utils_spec.rb
|
|
274
280
|
- spec/lib/packaging/util/net_spec.rb
|
|
281
|
+
- spec/lib/packaging/util/rake_utils_spec.rb
|
|
282
|
+
- spec/lib/packaging/util/jenkins_spec.rb
|
|
275
283
|
- spec/lib/packaging/util/git_tag_spec.rb
|
|
276
|
-
- spec/lib/packaging/util/misc_spec.rb
|
|
277
284
|
- spec/lib/packaging/util/ship_spec.rb
|
|
278
285
|
- spec/lib/packaging/util/file_spec.rb
|
|
279
|
-
- spec/lib/packaging/util/version_spec.rb
|
|
280
|
-
- spec/lib/packaging/util/os_spec.rb
|
|
281
|
-
- spec/lib/packaging/paths_spec.rb
|
|
282
|
-
- spec/lib/packaging/deb_spec.rb
|
|
283
|
-
- spec/lib/packaging/retrieve_spec.rb
|
|
284
286
|
- spec/lib/packaging/tar_spec.rb
|
|
285
|
-
- spec/lib/packaging/
|
|
286
|
-
- spec/lib/packaging_spec.rb
|
|
287
|
+
- spec/lib/packaging/artifactory_spec.rb
|