simp-rake-helpers 5.13.2 → 5.16.0

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: 34a577aa7249f7f21146cedc2a72eb0c922ade1d4cf12ec152097297d8c36ec9
4
- data.tar.gz: 7cdefe54c3206c33da6fab2a1bdefb7e68ea1806f2905405a0edc3c4b6a6cce1
3
+ metadata.gz: 37092929f65e40c37650e9d14f8355dc1fddafd1355e05a08ac26ac033f3bb30
4
+ data.tar.gz: 7dde697dd869d589a28b58e8503f7e69fbab85a33acdeb2d3213122b257fd4f1
5
5
  SHA512:
6
- metadata.gz: 063ea6a2ab7f471532b948400460587835b3e98497a33c682113cd216216fb0e362ed24f301edff42972ea79903c28ae8cdad81b56e6cc8834fc4ad48d19ee76
7
- data.tar.gz: 2d05c1877803b352a2c85cf473c8a79b520159d23e023c9b69c13776e8d59209f79d13ae2eadb674bbf0aa96d71c00af168269f6914334f35db802c28609c637
6
+ metadata.gz: a314be69fcde5bb3661abdccce49623d6a1fa93065bf32ac6e44a1db22cf5547808284cde80093cdbfd8d90e0b97e13f9b3489dbe62502ff3d9471fe55d24502
7
+ data.tar.gz: 93658197582ab5a656751f5c1ddffcf971c204ce89478d4b3f8df753f792fe479653369213df4c00a053376035eb1582caeca21322bcd8df1a0c5e91ea7d7235
data/CHANGELOG.md CHANGED
@@ -1,3 +1,24 @@
1
+ ### 5.16.0 / 2022-06-24
2
+ - Added
3
+ - The `puppet-lint-optional_default-check` was added to prevent setting
4
+ `Optional` parameters with default values.
5
+
6
+ ### 5.15.0 / 2022-06-03
7
+ - Added
8
+ - Users now have the ability to set version limits in the `dependencies.yaml`
9
+ file that will override those in the `metadata.json`
10
+
11
+ ### 5.14.0 / 2022-05-14
12
+ - Added
13
+ - Run `implantisomd5` after the ISO has been created so that it can be
14
+ validated by the installer at runtime.
15
+
16
+ ### 5.13.3 / 2022-05-20
17
+ - Fixed:
18
+ - Changed default RPM installed file permissions to 0644/0755
19
+ - The tarball unpack exclusions were too aggressive. The `SIMP/GPGKEYS`
20
+ directory is now preserved properly.
21
+
1
22
  ### 5.13.2 / 2022-05-13
2
23
  - Fixed:
3
24
  - SIMP_BUILD_reposync_only now properly unpacks the tarball
data/Gemfile CHANGED
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # SIMP_GEM_SERVERS | a space/comma delimited list of rubygem servers
4
4
  # PUPPET_VERSION | specifies the version of the puppet gem to load
5
- puppetversion = ENV.key?('PUPPET_VERSION') ? "#{ENV['PUPPET_VERSION']}" : '~> 6'
5
+ puppetversion = ENV.key?('PUPPET_VERSION') ? "#{ENV['PUPPET_VERSION']}" : '~> 7'
6
6
  gem_sources = ENV.key?('SIMP_GEM_SERVERS') ? ENV['SIMP_GEM_SERVERS'].split(/[, ]+/) : ['https://rubygems.org']
7
7
 
8
8
  gem_sources.each { |gem_source| source gem_source }
@@ -11,7 +11,6 @@ gemspec
11
11
 
12
12
  gem 'simp-build-helpers'
13
13
  gem 'simp-beaker-helpers'
14
- gem 'beaker-puppet_install_helper'
15
14
  gem 'rake', '>= 12.3.3'
16
15
  gem 'beaker-docker'
17
16
 
@@ -38,6 +38,7 @@ module Simp::Rake::Build
38
38
  'gpg',
39
39
  'grep',
40
40
  'gzip',
41
+ 'implantisomd5',
41
42
  'install',
42
43
  'isoinfo',
43
44
  'm4',
@@ -139,6 +140,7 @@ module Simp::Rake::Build
139
140
  :key_name => ENV['SIMP_BUILD_signing_key'] || 'dev'
140
141
  )
141
142
 
143
+ reposync_only = ENV.fetch('SIMP_BUILD_reposync_only', 'no') == 'yes'
142
144
  iso_paths = File.expand_path(args[:iso_paths])
143
145
  target_release = args[:release]
144
146
  do_checksum = (args.do_checksum = ~ /^$/ ? 'false' : args.do_checksum)
@@ -268,7 +268,7 @@ module Simp::Rake::Build
268
268
  puts
269
269
 
270
270
  # Only add the ISO modifications
271
- system(%(tar --no-same-permissions --exclude="SIMP" -C #{dir} -xzf #{tball}))
271
+ system(%(tar --no-same-permissions --exclude="*.rpm" -C #{dir} -xzf #{tball}))
272
272
  else
273
273
  # Add the SIMP code and ISO modifications
274
274
  system("tar --no-same-permissions -C #{dir} -xzf #{tball}")
@@ -449,7 +449,10 @@ module Simp::Rake::Build
449
449
  end # End of tarfiles loop
450
450
 
451
451
  # If we got here and didn't generate any ISOs, something went horribly wrong
452
- fail('Error: No ISO was built!') unless @simp_output_iso
452
+ fail('Error: No ISO was built!') unless ( @simp_output_iso && File.exist?(@simp_output_iso) )
453
+
454
+ # Embed the validation checksum
455
+ system("implantisomd5 --supported-iso #{@simp_output_iso}")
453
456
  end
454
457
 
455
458
  =begin
@@ -89,12 +89,40 @@ module Simp::Rake::Build::RpmDeps
89
89
  #
90
90
  # +requires_list+:: list of package this module should require
91
91
  # from the 'dependencies.yaml'
92
+ #
93
+ # * If the entry is an Array, the second value will be treated as the
94
+ # minimum version and the third as the maximum version
95
+ # * If you specify your own limiters, it will put them in place verbatim
96
+ # * Examples:
97
+ # * ['rpm-name', '1.2.3']
98
+ # * Requires rpm-name >= 1.2.3
99
+ # * ['rpm-name', '1.2.3', '2.0.0']
100
+ # * Requires rpm-name >= 1.2.3
101
+ # * Requires rpm-name < 2.0.0
102
+ # * ['rpm-name', '> 1.2.3', '<= 2.0.0']
103
+ # * Requires rpm-name > 1.2.3
104
+ # * Requires rpm-name <= 2.0.0
92
105
  # +module_metadata+:: Hash containing the contents of the
93
106
  # module's 'metadata.json' file
94
107
  def self.generate_custom_rpm_requires(requires_list, module_metadata)
95
108
  rpm_metadata_content = []
96
109
 
97
- requires_list.each do |pkg|
110
+ requires_list.each do |pkg_to_modify|
111
+ pkg = pkg_to_modify
112
+ min_version = nil
113
+ max_version = nil
114
+
115
+ pkg, min_version, max_version = pkg if pkg.is_a?(Array)
116
+
117
+ rpm_version_chars = ['<','>','=']
118
+
119
+ if min_version && rpm_version_chars.none? { |x| min_version.include?(x) }
120
+ min_version = ">= #{min_version}"
121
+ end
122
+ if max_version && rpm_version_chars.none? { |x| max_version.include?(x) }
123
+ max_version = "< #{max_version}"
124
+ end
125
+
98
126
  pkg_parts = pkg.split(%r(-|/))[-2..-1]
99
127
 
100
128
  # Need to cover all base cases
@@ -118,12 +146,18 @@ module Simp::Rake::Build::RpmDeps
118
146
  dep_version = dep_info.first['version_requirement']
119
147
  end
120
148
 
121
- begin
122
- rpm_metadata_content << get_version_requires(pkg, dep_version)
123
- rescue SIMPRpmDepVersionException
124
- err_msg = "Unable to parse #{short_names.first} dependency" +
125
- " version '#{dep_version}'"
126
- raise SIMPRpmDepException.new(err_msg)
149
+ # Use the version specified in the config file if it exists
150
+ if min_version || max_version
151
+ rpm_metadata_content << "Requires: #{pkg} #{min_version}" if min_version
152
+ rpm_metadata_content << "Requires: #{pkg} #{max_version}" if max_version
153
+ else
154
+ begin
155
+ rpm_metadata_content << get_version_requires(pkg, dep_version)
156
+ rescue SIMPRpmDepVersionException
157
+ err_msg = "Unable to parse #{short_names.first} dependency" +
158
+ " version '#{dep_version}'"
159
+ raise SIMPRpmDepException.new(err_msg)
160
+ end
127
161
  end
128
162
  end
129
163
  rpm_metadata_content.flatten
@@ -587,7 +587,7 @@ mkdir -p %{buildroot}/%{prefix}
587
587
 
588
588
 
589
589
  %files
590
- %defattr(0640,root,root,0750)
590
+ %defattr(0644,root,root,0755)
591
591
  %{prefix}/%{module_name}
592
592
 
593
593
  %changelog
@@ -587,7 +587,7 @@ mkdir -p %{buildroot}/%{prefix}
587
587
 
588
588
 
589
589
  %files
590
- %defattr(0640,root,root,0750)
590
+ %defattr(0644,root,root,0755)
591
591
  %{prefix}/%{module_name}
592
592
 
593
593
  %changelog
@@ -2,5 +2,5 @@ module Simp; end
2
2
  module Simp::Rake; end
3
3
 
4
4
  class Simp::Rake::Helpers
5
- VERSION = '5.13.2'
5
+ VERSION = '5.16.0'
6
6
  end
@@ -56,7 +56,7 @@ class Simp::Rake::Pupmod::Helpers < ::Rake::TaskLib
56
56
  begin
57
57
  require 'puppet_blacksmith/rake_tasks'
58
58
  Blacksmith::RakeTask.new do |t|
59
- t.tag_pattern = "%s" # Use tage format "X.Y.Z" instead of "vX.Y.Z"
59
+ t.tag_pattern = "%s" # Use tag format "X.Y.Z" instead of "vX.Y.Z"
60
60
  end
61
61
  rescue LoadError
62
62
  end
@@ -290,7 +290,7 @@ class Simp::Rake::Pupmod::Helpers < ::Rake::TaskLib
290
290
  # That will give Travis a way of warning us if the changelog
291
291
  # will prevent the rpm from building.
292
292
  task :changelog_annotation, [:quiet] do |t,args|
293
- warning('DEPRECATED: use pkg:create_tag_changelog')
293
+ warn('DEPRECATED: use pkg:create_tag_changelog')
294
294
  quiet = true if args[:quiet].to_s == 'true'
295
295
  puts changelog_annotation( quiet )
296
296
  end
@@ -333,7 +333,7 @@ class Simp::Rake::Pupmod::Helpers < ::Rake::TaskLib
333
333
  - doc directory
334
334
  EOM
335
335
  task :compare_latest_tag, [:tags_source, :ignore_owner, :verbose] do |t,args|
336
- warning('DEPRECATED: use pkg:compare_latest_tag')
336
+ warn('DEPRECATED: use pkg:compare_latest_tag')
337
337
  require 'json'
338
338
 
339
339
  tags_source = args[:tags_source].nil? ? 'origin' : args[:tags_source]
@@ -20,7 +20,7 @@
20
20
  # does NOT include puppetlabs/apt
21
21
  - 'pupmod-puppetlabs-stdlib'
22
22
  - 'pupmod-ceritsc-yum'
23
- - 'pupmod-richardc-datacat'
23
+ - ['pupmod-richardc-datacat', '1.2.3', '<=3.4.5']
24
24
  :release: '2017.0'
25
25
  :external_dependencies:
26
26
  'rubygem-puppetserver-toml':
@@ -105,8 +105,8 @@ Requires: pupmod-puppetlabs-stdlib >= 3.2.0
105
105
  Requires: pupmod-puppetlabs-stdlib < 5.0.0
106
106
  Requires: pupmod-ceritsc-yum >= 0.9.6
107
107
  Requires: pupmod-ceritsc-yum < 1.0.0
108
- Requires: pupmod-richardc-datacat >= 0.6.2
109
- Requires: pupmod-richardc-datacat < 1.0.0
108
+ Requires: pupmod-richardc-datacat >= 1.2.3
109
+ Requires: pupmod-richardc-datacat <=3.4.5
110
110
  Requires: rubygem-puppetserver-toml >= 0.1.2
111
111
  Requires: rubygem-puppetserver-blackslate >= 2.1.2.4-1
112
112
  Requires: rubygem-puppetserver-blackslate < 2.2.0.0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simp-rake-helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.13.2
4
+ version: 5.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Tessmer
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-05-13 00:00:00.000000000 Z
12
+ date: 2022-06-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: simp-beaker-helpers
@@ -17,14 +17,14 @@ dependencies:
17
17
  requirements:
18
18
  - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: '1.11'
20
+ version: '1.24'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: '1.11'
27
+ version: '1.24'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: bundler
30
30
  requirement: !ruby/object:Gem::Requirement
@@ -105,20 +105,40 @@ dependencies:
105
105
  - - "<"
106
106
  - !ruby/object:Gem::Version
107
107
  version: '3.0'
108
+ - !ruby/object:Gem::Dependency
109
+ name: puppet-lint-optional_default-check
110
+ requirement: !ruby/object:Gem::Requirement
111
+ requirements:
112
+ - - ">="
113
+ - !ruby/object:Gem::Version
114
+ version: '1.0'
115
+ - - "<"
116
+ - !ruby/object:Gem::Version
117
+ version: '2.0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '1.0'
125
+ - - "<"
126
+ - !ruby/object:Gem::Version
127
+ version: '2.0'
108
128
  - !ruby/object:Gem::Dependency
109
129
  name: puppetlabs_spec_helper
110
130
  requirement: !ruby/object:Gem::Requirement
111
131
  requirements:
112
132
  - - "~>"
113
133
  - !ruby/object:Gem::Version
114
- version: '2.0'
134
+ version: '4.0'
115
135
  type: :runtime
116
136
  prerelease: false
117
137
  version_requirements: !ruby/object:Gem::Requirement
118
138
  requirements:
119
139
  - - "~>"
120
140
  - !ruby/object:Gem::Version
121
- version: '2.0'
141
+ version: '4.0'
122
142
  - !ruby/object:Gem::Dependency
123
143
  name: parallel
124
144
  requirement: !ruby/object:Gem::Requirement