simp-rake-helpers 5.2.0 → 5.3.0
Sign up to get free protection for your applications and to get access to all the features.
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
|