simp-rake-helpers 5.2.0 → 5.3.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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cd72175666f147fd150435496fed0093586b507af569c4682afa713f12fb251f
|
4
|
+
data.tar.gz: 21b5c168ec65c56a9081d3b5a53d80f53fe96ec9b8e48b988c47f025d8476f29
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 50fc2bed131761ed25041f17ed4455bfe270d96d9c9e42e456ebf3ad870cf2cdb9c936af6ece47cbb98aea65d7ee9bc12429eab9e40f9c4017bcd396564ee68b
|
7
|
+
data.tar.gz: 08206ff2084e66f5544751d3bc6f9430437c6b2fee09d3df4665878d1c7dd97b847e075dc86eabe30f02189d0549b9acadab6bdede251c0996af4f4f46fdfdef
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
### 5.3.0 / 2018-02-02
|
2
|
+
* Add ability to specify external, non-module, RPM dependencies for
|
3
|
+
a checked-out repo from `simp-core/build/rpm/dependencies.yaml`
|
4
|
+
|
1
5
|
### 5.2.0 / 2017-12-20
|
2
6
|
* Create pkg:create_tag_changelog, which is a more thorough version
|
3
7
|
of Simp::Rake::Pupmod::Helpers changelog_annotation task.
|
@@ -119,6 +119,29 @@ module Simp::Rake::Build::RpmDeps
|
|
119
119
|
rpm_metadata_content.flatten
|
120
120
|
end
|
121
121
|
|
122
|
+
# Generate 'Requires' lines from each dependency specified in the
|
123
|
+
# ext_deps_list array
|
124
|
+
#
|
125
|
+
# returns array of strings, each of which is a 'Requires' line
|
126
|
+
# for use in an RPM spec file
|
127
|
+
#
|
128
|
+
# +ext_deps_list+:: Array of dependency Hashes. The key of each
|
129
|
+
# dependency Hash the name of the dependency package and its value
|
130
|
+
# is a Hash containing the version info. For example,
|
131
|
+
# [ 'package1' => { :min => '1.0.0' },
|
132
|
+
# 'package2' => { :min => '3.1-1', :max => '4.0' } ]
|
133
|
+
def self.generate_external_rpm_requires(ext_deps_list)
|
134
|
+
requires = []
|
135
|
+
|
136
|
+
ext_deps_list.each do |pkg_name, options|
|
137
|
+
requires << "Requires: #{pkg_name} >= #{options[:min]}"
|
138
|
+
if options[:max]
|
139
|
+
requires << "Requires: #{pkg_name} < #{options[:max]}"
|
140
|
+
end
|
141
|
+
end
|
142
|
+
requires
|
143
|
+
end
|
144
|
+
|
122
145
|
# Generate 'Requires' lines from each dependency specified in the
|
123
146
|
# module_metadata hash
|
124
147
|
#
|
@@ -174,6 +197,8 @@ module Simp::Rake::Build::RpmDeps
|
|
174
197
|
# * 'Requires' lines for any requires specified in the
|
175
198
|
# module_rpm_meta hash, where the versions for those
|
176
199
|
# dependencies are pulled from module_metadata.
|
200
|
+
# * 'Requires' line(s) for any external dependencies specified
|
201
|
+
# in the module_rpm_meta hash.
|
177
202
|
#
|
178
203
|
# Otherwise, the generated 'requires' file will contain
|
179
204
|
# "Requires" lines for each dependency specified module_metadata.
|
@@ -200,6 +225,10 @@ module Simp::Rake::Build::RpmDeps
|
|
200
225
|
rpm_metadata_content += generate_module_rpm_requires(module_metadata)
|
201
226
|
end
|
202
227
|
|
228
|
+
if module_rpm_meta and module_rpm_meta[:external_dependencies]
|
229
|
+
rpm_metadata_content += generate_external_rpm_requires(module_rpm_meta[:external_dependencies])
|
230
|
+
end
|
231
|
+
|
203
232
|
rpm_metadata_file = File.join(dir, 'build', 'rpm_metadata', 'requires')
|
204
233
|
|
205
234
|
unless rpm_requires_up_to_date?(rpm_metadata_content, rpm_metadata_file)
|
@@ -22,6 +22,12 @@
|
|
22
22
|
- 'pupmod-ceritsc-yum'
|
23
23
|
- 'pupmod-richardc-datacat'
|
24
24
|
:release: '2017.0'
|
25
|
+
:external_dependencies:
|
26
|
+
'rubygem-puppetserver-toml':
|
27
|
+
:min: '0.1.2'
|
28
|
+
'rubygem-puppetserver-blackslate':
|
29
|
+
:min: '2.1.2.4-1'
|
30
|
+
:max: '2.2.0.0'
|
25
31
|
'release_only_mod':
|
26
32
|
:release: '2017.2'
|
27
33
|
'obsoletes_too_new_mod':
|
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'simp/rake/build/rpmdeps'
|
2
2
|
require 'spec_helper'
|
3
|
+
require 'tmpdir'
|
3
4
|
require 'yaml'
|
4
5
|
|
5
6
|
describe 'Simp::Rake::Build::RpmDeps#get_version_requires' do
|
@@ -81,7 +82,7 @@ EOM
|
|
81
82
|
end
|
82
83
|
end
|
83
84
|
|
84
|
-
context 'managed component with a subset of metadata.json
|
85
|
+
context 'managed component with a subset of metadata.json deps, external deps and a release' do
|
85
86
|
it 'should generate both a requires file and a release file from dependencies.yaml' do
|
86
87
|
mod_dir = File.join(@tmp_dir, 'files', 'managed_mod')
|
87
88
|
Simp::Rake::Build::RpmDeps::generate_rpm_meta_files(mod_dir, rpm_metadata)
|
@@ -97,6 +98,9 @@ Requires: pupmod-ceritsc-yum >= 0.9.6
|
|
97
98
|
Requires: pupmod-ceritsc-yum < 1.0.0
|
98
99
|
Requires: pupmod-richardc-datacat >= 0.6.2
|
99
100
|
Requires: pupmod-richardc-datacat < 1.0.0
|
101
|
+
Requires: rubygem-puppetserver-toml >= 0.1.2
|
102
|
+
Requires: rubygem-puppetserver-blackslate >= 2.1.2.4-1
|
103
|
+
Requires: rubygem-puppetserver-blackslate < 2.2.0.0
|
100
104
|
EOM
|
101
105
|
actual = IO.read(requires_file)
|
102
106
|
expect(actual).to eq expected
|
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.
|
4
|
+
version: 5.3.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:
|
12
|
+
date: 2018-02-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -608,7 +608,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
608
608
|
version: '0'
|
609
609
|
requirements: []
|
610
610
|
rubyforge_project:
|
611
|
-
rubygems_version: 2.7.
|
611
|
+
rubygems_version: 2.7.6
|
612
612
|
signing_key:
|
613
613
|
specification_version: 4
|
614
614
|
summary: SIMP rake helpers
|