packaging 0.108.1 → 0.109.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +0 -2
- data/lib/packaging/artifactory.rb +15 -10
- data/lib/packaging/config/validations.rb +1 -1
- data/lib/packaging/config.rb +5 -5
- data/lib/packaging/deb/repo.rb +4 -4
- data/lib/packaging/nuget.rb +1 -1
- data/lib/packaging/paths.rb +4 -3
- data/lib/packaging/rpm/repo.rb +26 -8
- data/lib/packaging/sign/msi.rb +6 -8
- data/lib/packaging/sign/rpm.rb +8 -6
- data/lib/packaging/util/execution.rb +1 -1
- data/lib/packaging/util/ezbake.rb +1 -1
- data/lib/packaging/util/file.rb +4 -6
- data/lib/packaging/util/net.rb +8 -12
- data/lib/packaging/util/ship.rb +17 -7
- data/lib/packaging/util/tool.rb +1 -1
- data/lib/packaging/util/version.rb +7 -5
- data/spec/lib/packaging/config_spec.rb +300 -279
- data/spec/lib/packaging/deb/repo_spec.rb +138 -76
- data/spec/lib/packaging/deb_spec.rb +28 -25
- data/spec/lib/packaging/repo_spec.rb +52 -31
- data/spec/lib/packaging/rpm/repo_spec.rb +109 -71
- data/spec/lib/packaging/sign_spec.rb +22 -43
- data/spec/lib/packaging/tar_spec.rb +48 -44
- data/spec/lib/packaging/util/execution_spec.rb +32 -32
- data/spec/lib/packaging/util/file_spec.rb +112 -75
- data/spec/lib/packaging/util/gpg_spec.rb +24 -19
- data/spec/lib/packaging/util/jenkins_spec.rb +79 -48
- data/spec/lib/packaging/util/misc_spec.rb +13 -8
- data/spec/lib/packaging/util/net_spec.rb +193 -152
- data/spec/lib/packaging/util/rake_utils_spec.rb +24 -18
- data/spec/lib/packaging_spec.rb +7 -9
- data/tasks/apple.rake +7 -8
- data/tasks/deb.rake +1 -1
- data/tasks/fetch.rake +2 -2
- data/tasks/mock.rake +3 -3
- data/tasks/nightly_repos.rake +11 -9
- data/tasks/rpm.rake +2 -3
- data/tasks/ship.rake +4 -2
- data/tasks/sign.rake +8 -10
- data/tasks/z_data_dump.rake +3 -3
- metadata +48 -35
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 11bd7673d3f37ddab90b44202787f13882b390ffb4acbb858b3161166f0d2d0e
|
4
|
+
data.tar.gz: 4623cd4dd183c885ac2984fcb31d403629b2a8e1b294fade1ee918862a978f04
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b495a1512b62e06c39405daaa6a89c09dcea8350006ef6321af2084f01e04b6c97dd41f80bb8ec8592d7b4fe875b1491ae5deee1b45b4bdb99b6888a586dfbee
|
7
|
+
data.tar.gz: f448461101f22184101346cddba0650932796d4dff63fc7ce716f13592c29ff1c417f5908226c3184095067c6aecb32dff6cf069d9274d701c5e559aa0e73079
|
data/README.md
CHANGED
@@ -1,7 +1,5 @@
|
|
1
1
|
# Packaging
|
2
2
|
|
3
|
-
[![Build Status](https://travis-ci.org/puppetlabs/packaging.png?branch=master)](https://travis-ci.org/puppetlabs/packaging)
|
4
|
-
|
5
3
|
This is a repository for packaging automation for Puppet software.
|
6
4
|
The goal is to abstract and automate packaging processes beyond individual
|
7
5
|
software projects to a level where this repo can be cloned inside any project
|
@@ -192,18 +192,23 @@ module Pkg
|
|
192
192
|
properties_hash
|
193
193
|
end
|
194
194
|
|
195
|
-
#
|
195
|
+
# Return a list of artifact paths for package. Returns empty array if none.
|
196
|
+
def artifact_paths(package)
|
197
|
+
check_authorization
|
198
|
+
Artifactory::Resource::Artifact.search(
|
199
|
+
name: File.basename(package),
|
200
|
+
artifactory_uri: @artifactory_uri
|
201
|
+
)
|
202
|
+
end
|
203
|
+
|
204
|
+
# Check if a package exists on artifactory
|
196
205
|
# @param package [String] The full relative path to the package to be
|
197
206
|
# checked, relative from the current working directory
|
198
|
-
# Return true if package already exists on artifactory
|
207
|
+
# Return true if package already exists on artifactory.
|
208
|
+
# #artifact_paths, above, is more useful since it will inform where they are.
|
209
|
+
# This is kept for backward compatibility.
|
199
210
|
def package_exists_on_artifactory?(package)
|
200
|
-
|
201
|
-
artifact = Artifactory::Resource::Artifact.search(name: File.basename(package), :artifactory_uri => @artifactory_uri)
|
202
|
-
if artifact.empty?
|
203
|
-
return false
|
204
|
-
else
|
205
|
-
return true
|
206
|
-
end
|
211
|
+
artifact_paths(package).any?
|
207
212
|
end
|
208
213
|
|
209
214
|
# @param package [String] The full relative path to the package to be
|
@@ -231,7 +236,7 @@ module Pkg
|
|
231
236
|
# @return [String] The contents of the YAML file
|
232
237
|
def retrieve_yaml_data(pkg, ref)
|
233
238
|
yaml_url = "#{@artifactory_uri}/#{DEFAULT_REPO_TYPE}/#{DEFAULT_REPO_BASE}/#{pkg}/#{ref}/#{ref}.yaml"
|
234
|
-
URI.
|
239
|
+
URI.parse(yaml_url).read
|
235
240
|
rescue StandardError
|
236
241
|
raise "Failed to load YAML data for #{pkg} at #{ref} from #{yaml_url}!"
|
237
242
|
end
|
data/lib/packaging/config.rb
CHANGED
@@ -5,8 +5,8 @@ module Pkg
|
|
5
5
|
# have it set via accessors, and serialize it back to yaml for easy transport.
|
6
6
|
#
|
7
7
|
class Config
|
8
|
-
require 'packaging/config/params
|
9
|
-
require 'packaging/config/validations
|
8
|
+
require 'packaging/config/params'
|
9
|
+
require 'packaging/config/validations'
|
10
10
|
require 'yaml'
|
11
11
|
|
12
12
|
class << self
|
@@ -79,7 +79,7 @@ module Pkg
|
|
79
79
|
Pkg::Util::Net.check_host_ssh([self.builds_server]).empty?
|
80
80
|
|
81
81
|
dir = "/opt/jenkins-builds/#{self.project}/#{self.ref}"
|
82
|
-
cmd = "if [ -s \"#{dir}/artifacts\" ]; then cd #{dir};"\
|
82
|
+
cmd = "if [ -s \"#{dir}/artifacts\" ]; then cd #{dir};" \
|
83
83
|
"find ./artifacts -mindepth 2 -type f; fi"
|
84
84
|
artifacts, = Pkg::Util::Net.remote_execute(
|
85
85
|
self.builds_server,
|
@@ -132,12 +132,12 @@ module Pkg
|
|
132
132
|
|
133
133
|
case package_format
|
134
134
|
when 'deb'
|
135
|
-
repo_config = "../repo_configs/deb/pl-#{self.project}-#{self.ref}-"\
|
135
|
+
repo_config = "../repo_configs/deb/pl-#{self.project}-#{self.ref}-" \
|
136
136
|
"#{Pkg::Platforms.get_attribute(tag, :codename)}.list"
|
137
137
|
when 'rpm'
|
138
138
|
# Using original_tag here to not break legacy fedora repo targets
|
139
139
|
unless tag.include? 'aix'
|
140
|
-
repo_config = "../repo_configs/rpm/pl-#{self.project}-"\
|
140
|
+
repo_config = "../repo_configs/rpm/pl-#{self.project}-" \
|
141
141
|
"#{self.ref}-#{original_tag}.repo"
|
142
142
|
end
|
143
143
|
when 'swix', 'svr4', 'ips', 'dmg', 'msi'
|
data/lib/packaging/deb/repo.rb
CHANGED
@@ -93,7 +93,7 @@ module Pkg::Deb::Repo
|
|
93
93
|
|
94
94
|
artifact_paths.each do |path|
|
95
95
|
platform_tag = Pkg::Paths.tag_from_artifact_path(path)
|
96
|
-
platform, version, = Pkg::Platforms.
|
96
|
+
platform, version, = Pkg::Platforms.parse_platform_tag(platform_tag)
|
97
97
|
codename = Pkg::Platforms.codename_for_platform_version(platform, version)
|
98
98
|
arches = Pkg::Platforms.arches_for_codename(codename)
|
99
99
|
|
@@ -224,10 +224,10 @@ SignWith: #{Pkg::Config.gpg_key}"
|
|
224
224
|
|
225
225
|
options << '--dry-run' if dryrun
|
226
226
|
options << path
|
227
|
-
if
|
228
|
-
options << "#{destination}:#{dest_path.parent}"
|
229
|
-
else
|
227
|
+
if destination.nil?
|
230
228
|
options << dest_path.parent.to_s
|
229
|
+
else
|
230
|
+
options << "#{destination}:#{dest_path.parent}"
|
231
231
|
end
|
232
232
|
options.join("\s")
|
233
233
|
end
|
data/lib/packaging/nuget.rb
CHANGED
@@ -23,7 +23,7 @@ module Pkg::Nuget
|
|
23
23
|
form_data = ["-H 'Authorization: Basic #{authentication}'", "-f"]
|
24
24
|
packages.each do |pkg|
|
25
25
|
puts "Working on package #{pkg}"
|
26
|
-
projname, version = File.basename(pkg).match(/^(.*)-([\d
|
26
|
+
projname, version = File.basename(pkg).match(/^(.*)-([\d+.]+)\.nupkg$/).captures
|
27
27
|
package_form_data = ["--upload-file #{pkg}"]
|
28
28
|
package_path = "#{projname}/#{version}/#{File.basename(pkg)}"
|
29
29
|
stdout = ''
|
data/lib/packaging/paths.rb
CHANGED
@@ -23,7 +23,7 @@ module Pkg::Paths
|
|
23
23
|
# Given a path to an artifact, divine the appropriate platform tag associated
|
24
24
|
# with the artifact and path
|
25
25
|
def tag_from_artifact_path(path)
|
26
|
-
platform = Pkg::Platforms.supported_platforms.find { |p| path =~ /(\/|\.)#{p}[
|
26
|
+
platform = Pkg::Platforms.supported_platforms.find { |p| path =~ /(\/|\.)#{p}[^.]/ }
|
27
27
|
platform = 'windowsfips' if path =~ /windowsfips/
|
28
28
|
|
29
29
|
codename = Pkg::Platforms.codenames.find { |c| path =~ /\/#{c}/ }
|
@@ -318,7 +318,8 @@ module Pkg::Paths
|
|
318
318
|
|
319
319
|
# For repos prior to puppet7, the puppet version was part of the repository
|
320
320
|
# For example: /opt/repository/apt/pool/bionic/puppet6/p/puppet-agent
|
321
|
-
if %w[
|
321
|
+
if %w[puppet8 puppet8-nightly
|
322
|
+
puppet7 puppet7-nightly
|
322
323
|
puppet6 puppet6-nightly
|
323
324
|
puppet5 puppet5-nightly
|
324
325
|
puppet puppet-nightly
|
@@ -349,7 +350,7 @@ module Pkg::Paths
|
|
349
350
|
def debian_component_from_path(path)
|
350
351
|
# substitute '.' and '/' since those aren't valid characters for debian components
|
351
352
|
matches = path.match(/(\d+\.\d+|master|main)\/(\w+)/)
|
352
|
-
regex_for_substitution = /[
|
353
|
+
regex_for_substitution = /[.\/]/
|
353
354
|
fail "Error: Could not determine Debian Component from path #{path}" if matches.nil?
|
354
355
|
base_component = matches[1]
|
355
356
|
component_qualifier = matches[2]
|
data/lib/packaging/rpm/repo.rb
CHANGED
@@ -8,17 +8,35 @@ module Pkg::Rpm::Repo
|
|
8
8
|
"http://#{Pkg::Config.builds_server}/#{Pkg::Config.project}/#{Pkg::Config.ref}"
|
9
9
|
end
|
10
10
|
|
11
|
-
def ship_repo_configs(
|
12
|
-
|
13
|
-
|
11
|
+
def ship_repo_configs(repo_configs_directory = 'repo_configs')
|
12
|
+
local_repos_path = File.join('pkg', repo_configs_directory, 'rpm')
|
13
|
+
|
14
|
+
remote_repos_path = File.join(
|
15
|
+
Pkg::Config.jenkins_repo_path,
|
16
|
+
Pkg::Config.project,
|
17
|
+
Pkg::Config.ref,
|
18
|
+
repo_configs_directory,
|
19
|
+
'rpm'
|
20
|
+
)
|
21
|
+
|
22
|
+
if !Dir.exist?(local_repos_path) || Dir.empty?(local_repos_path)
|
23
|
+
warn "No repo_configs found in \"#{Dir.pwd}/#{local_repos_path}\". " \
|
24
|
+
'Skipping repo shipping.'
|
14
25
|
return
|
15
26
|
end
|
16
27
|
|
17
|
-
Pkg::Util::RakeUtils.invoke_task(
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
28
|
+
Pkg::Util::RakeUtils.invoke_task('pl:fetch')
|
29
|
+
Pkg::Util::Net.remote_execute(
|
30
|
+
Pkg::Config.distribution_server,
|
31
|
+
"mkdir -p #{remote_repos_path}"
|
32
|
+
)
|
33
|
+
|
34
|
+
Pkg::Util::Execution.retry_on_fail(times: 3) do
|
35
|
+
Pkg::Util::Net.rsync_to(
|
36
|
+
"#{local_repos_path}/",
|
37
|
+
Pkg::Config.distribution_server,
|
38
|
+
remote_repos_path
|
39
|
+
)
|
22
40
|
end
|
23
41
|
end
|
24
42
|
|
data/lib/packaging/sign/msi.rb
CHANGED
@@ -66,14 +66,12 @@ module Pkg::Sign::Msi
|
|
66
66
|
|
67
67
|
# Download the signed msis
|
68
68
|
msis.each do |msi|
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
fail "There was an error retrieving the signed msi:#{msi}.\n#{e}"
|
76
|
-
end
|
69
|
+
signed_msi = signed_bucket.file(signed_msis[msi])
|
70
|
+
signed_msi.download(msi)
|
71
|
+
rescue StandardError => e
|
72
|
+
delete_tosign_msis(tosign_bucket, msis)
|
73
|
+
delete_signed_msis(signed_bucket, signed_msis)
|
74
|
+
fail "There was an error retrieving the signed msi:#{msi}.\n#{e}"
|
77
75
|
end
|
78
76
|
|
79
77
|
# Cleanup buckets
|
data/lib/packaging/sign/rpm.rb
CHANGED
@@ -86,11 +86,14 @@ module Pkg::Sign::Rpm
|
|
86
86
|
end
|
87
87
|
|
88
88
|
def passphrase_fd_flag
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
89
|
+
# We use passphrase caching on GPG >= 2.1, so no passphrase-fd is needed.
|
90
|
+
return '' unless gpg_version_older_than_21?
|
91
|
+
|
92
|
+
# If the user has provided us their gpg agent setup, don't muck with it.
|
93
|
+
return '' if Pkg::Util.boolean_value(ENV['RPM_GPG_AGENT'])
|
94
|
+
|
95
|
+
# Assume our old setup where expect is providing input on fd 3
|
96
|
+
return '--passphrase-fd 3'
|
94
97
|
end
|
95
98
|
|
96
99
|
def define_gpg_check_password_cmd
|
@@ -101,7 +104,6 @@ module Pkg::Sign::Rpm
|
|
101
104
|
end
|
102
105
|
end
|
103
106
|
|
104
|
-
|
105
107
|
def signed?(rpm)
|
106
108
|
# This should allow the `Pkg::Util::Gpg.key` method to fail if gpg_key is
|
107
109
|
# not set, before shelling out. We also only want the short key, all
|
@@ -71,7 +71,7 @@ module Pkg::Util::Execution
|
|
71
71
|
break
|
72
72
|
rescue StandardError => err
|
73
73
|
puts "An error was encountered evaluating block. Retrying.."
|
74
|
-
exception = err.to_s
|
74
|
+
exception = "#{err.to_s}\n#{err.backtrace.join("\n")}"
|
75
75
|
end
|
76
76
|
end
|
77
77
|
else
|
data/lib/packaging/util/file.rb
CHANGED
@@ -58,7 +58,7 @@ module Pkg::Util::File
|
|
58
58
|
|
59
59
|
def erb_string(erbfile, b = binding)
|
60
60
|
template = File.read(erbfile)
|
61
|
-
message = ERB.new(template,
|
61
|
+
message = ERB.new(template, trim_mode: "-")
|
62
62
|
message.result(b)
|
63
63
|
end
|
64
64
|
|
@@ -98,7 +98,7 @@ module Pkg::Util::File
|
|
98
98
|
Dir.chdir(Pkg::Config.project_root) do
|
99
99
|
file_patterns.each do |pattern|
|
100
100
|
if File.directory?(pattern) and !Pkg::Util::File.empty_dir?(pattern)
|
101
|
-
install << Dir[pattern
|
101
|
+
install << Dir["#{pattern}/**/*"]
|
102
102
|
else
|
103
103
|
install << Dir[pattern]
|
104
104
|
end
|
@@ -146,8 +146,8 @@ module Pkg::Util::File
|
|
146
146
|
team_data_branch = Pkg::Config.team
|
147
147
|
|
148
148
|
if Pkg::Config.build_pe
|
149
|
-
project_data_branch =
|
150
|
-
team_data_branch =
|
149
|
+
project_data_branch = "pe-#{project_data_branch}" unless project_data_branch =~ /^pe-/
|
150
|
+
team_data_branch = "pe-#{team_data_branch}" unless team_data_branch =~ /^pe-/
|
151
151
|
end
|
152
152
|
|
153
153
|
# Remove .packaging directory from old-style extras loading
|
@@ -189,7 +189,6 @@ module Pkg::Util::File
|
|
189
189
|
# PL Release team
|
190
190
|
def load_extras(temp_directory)
|
191
191
|
unless ENV['PARAMS_FILE'] && ENV['PARAMS_FILE'] != ''
|
192
|
-
temp_directory = temp_directory
|
193
192
|
raise "load_extras requires a directory containing extras data" if temp_directory.nil?
|
194
193
|
Pkg::Config.config_from_yaml("#{temp_directory}/#{Pkg::Config.builder_data_file}")
|
195
194
|
|
@@ -200,4 +199,3 @@ module Pkg::Util::File
|
|
200
199
|
end
|
201
200
|
end
|
202
201
|
end
|
203
|
-
|
data/lib/packaging/util/net.rb
CHANGED
@@ -7,7 +7,7 @@ module Pkg::Util::Net
|
|
7
7
|
def fetch_uri(uri, target)
|
8
8
|
require 'open-uri'
|
9
9
|
if Pkg::Util::File.file_writable?(File.dirname(target))
|
10
|
-
File.open(target, 'w') { |f| f.puts(URI.
|
10
|
+
File.open(target, 'w') { |f| f.puts(URI.parse(uri).read) }
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
@@ -33,11 +33,9 @@ module Pkg::Util::Net
|
|
33
33
|
def check_host_ssh(hosts)
|
34
34
|
errs = []
|
35
35
|
Array(hosts).flatten.each do |host|
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
errs << host
|
40
|
-
end
|
36
|
+
remote_execute(host, 'exit', { extra_options: '-oBatchMode=yes' })
|
37
|
+
rescue StandardError
|
38
|
+
errs << host
|
41
39
|
end
|
42
40
|
return errs
|
43
41
|
end
|
@@ -51,12 +49,10 @@ module Pkg::Util::Net
|
|
51
49
|
def check_host_gpg(hosts, gpg)
|
52
50
|
errs = []
|
53
51
|
Array(hosts).flatten.each do |host|
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
errs << host
|
59
|
-
end
|
52
|
+
remote_execute(host, "gpg --list-secret-keys #{gpg} > /dev/null 2&>1",
|
53
|
+
{ extra_options: '-oBatchMode=yes' })
|
54
|
+
rescue StandardError
|
55
|
+
errs << host
|
60
56
|
end
|
61
57
|
return errs
|
62
58
|
end
|
data/lib/packaging/util/ship.rb
CHANGED
@@ -377,7 +377,7 @@ module Pkg::Util::Ship
|
|
377
377
|
FileUtils.cp(ezbake_manifest, File.join(local_directory, "#{Pkg::Config.ref}.ezbake.manifest"))
|
378
378
|
end
|
379
379
|
ezbake_yaml = File.join("ext", "ezbake.manifest.yaml")
|
380
|
-
if File.
|
380
|
+
if File.exist?(ezbake_yaml)
|
381
381
|
FileUtils.cp(ezbake_yaml, File.join(local_directory, "#{Pkg::Config.ref}.ezbake.manifest.yaml"))
|
382
382
|
end
|
383
383
|
|
@@ -478,7 +478,8 @@ module Pkg::Util::Ship
|
|
478
478
|
def ship_to_artifactory(local_directory = 'pkg')
|
479
479
|
Pkg::Util::File.fetch
|
480
480
|
unless Pkg::Config.project
|
481
|
-
fail
|
481
|
+
fail 'Project missing. Set it with the "project" key in build_defaults.yaml or ' \
|
482
|
+
'with the "PROJECT_OVERRIDE" environment variable.'
|
482
483
|
end
|
483
484
|
artifactory = Pkg::ManageArtifactory.new(Pkg::Config.project, Pkg::Config.ref)
|
484
485
|
|
@@ -492,14 +493,23 @@ module Pkg::Util::Ship
|
|
492
493
|
a <=> b
|
493
494
|
end
|
494
495
|
end
|
496
|
+
|
495
497
|
artifacts.each do |artifact|
|
496
|
-
|
497
|
-
|
498
|
-
elsif artifactory.package_exists_on_artifactory?(artifact)
|
499
|
-
warn "Attempt to upload '#{artifact}' failed. Package already exists!"
|
500
|
-
else
|
498
|
+
# Always ship .yaml and .jsons even if they already exist
|
499
|
+
if %w[.yaml .json].include? File.extname(artifact)
|
501
500
|
artifactory.deploy_package(artifact)
|
501
|
+
next
|
502
502
|
end
|
503
|
+
|
504
|
+
# Warn against anything that already exists
|
505
|
+
existing = artifactory.artifact_paths(artifact)
|
506
|
+
if existing.any?
|
507
|
+
warn "Uploading '#{artifact}' to Artifactory refused. " \
|
508
|
+
"Package already exists here: #{existing.join(', ')}"
|
509
|
+
next
|
510
|
+
end
|
511
|
+
|
512
|
+
artifactory.deploy_package(artifact)
|
503
513
|
end
|
504
514
|
end
|
505
515
|
end
|
data/lib/packaging/util/tool.rb
CHANGED
@@ -93,7 +93,7 @@ module Pkg::Util::Version
|
|
93
93
|
end
|
94
94
|
|
95
95
|
if new_version.include?('dirty')
|
96
|
-
new_version = new_version.sub(/\.?dirty/, '')
|
96
|
+
new_version = "#{new_version.sub(/\.?dirty/, '')}dirty"
|
97
97
|
end
|
98
98
|
|
99
99
|
new_version.split('-')
|
@@ -143,9 +143,11 @@ module Pkg::Util::Version
|
|
143
143
|
#
|
144
144
|
def versionbump(workdir = nil)
|
145
145
|
version = ENV['VERSION'] || Pkg::Config.version.to_s.strip
|
146
|
-
new_version =
|
146
|
+
new_version = "\"#{version}\""
|
147
147
|
|
148
|
+
# rubocop:disable Style/StringConcatenation
|
148
149
|
version_file = "#{workdir ? workdir + '/' : ''}#{Pkg::Config.version_file}"
|
150
|
+
# rubocop:enable Style/StringConcatenation
|
149
151
|
|
150
152
|
# Read the previous version file in...
|
151
153
|
contents = IO.read(version_file)
|
@@ -160,7 +162,7 @@ module Pkg::Util::Version
|
|
160
162
|
puts "Updating #{old_version} to #{new_version} in #{version_file}"
|
161
163
|
if contents =~ /@DEVELOPMENT_VERSION@/
|
162
164
|
contents.gsub!('@DEVELOPMENT_VERSION@', version)
|
163
|
-
elsif contents =~ /version\s*=\s*[
|
165
|
+
elsif contents =~ /version\s*=\s*['"]DEVELOPMENT['"]/
|
164
166
|
contents.gsub!(/version\s*=\s*['"]DEVELOPMENT['"]/, "version = '#{version}'")
|
165
167
|
elsif contents =~ /VERSION = #{old_version}/
|
166
168
|
contents.gsub!("VERSION = #{old_version}", "VERSION = #{new_version}")
|
@@ -179,8 +181,8 @@ module Pkg::Util::Version
|
|
179
181
|
#
|
180
182
|
# @param json_data [hash] json data hash containing the ref to check
|
181
183
|
def report_json_tags(json_data)
|
182
|
-
puts
|
183
|
-
puts
|
184
|
+
puts "component: #{File.basename(json_data['url'])}"
|
185
|
+
puts "ref: #{json_data['ref'].to_s}"
|
184
186
|
if Pkg::Util::Git.remote_tagged?(json_data['url'], json_data['ref'].to_s)
|
185
187
|
tagged = 'Tagged? [ Yes ]'
|
186
188
|
else
|