puppetlabs_spec_helper 2.16.0 → 3.0.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 +4 -4
- data/.rubocop.yml +2 -10
- data/.rubocop_todo.yml +3 -13
- data/.travis.yml +4 -14
- data/CHANGELOG.md +11 -0
- data/Gemfile +2 -9
- data/lib/puppetlabs_spec_helper/puppet_spec_helper.rb +1 -1
- data/lib/puppetlabs_spec_helper/puppetlabs_spec/puppet_internals.rb +2 -2
- data/lib/puppetlabs_spec_helper/rake_tasks.rb +36 -77
- data/lib/puppetlabs_spec_helper/version.rb +1 -1
- data/puppetlabs_spec_helper.gemspec +0 -1
- metadata +2 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ef65ff61efb2a4ba220a726fd2ac309dc077a37ba9a2a2951430cebdd449b3c3
|
4
|
+
data.tar.gz: e079aa402cc3c638d7fb0f9dae179afb884a894ba20334ce781289523177446c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 616b63b83dafabafeb3d6ece228f76d94f21ac01266093100fd8fa2c75b14a99c8e2fa5ba3bff1a6e0203a4321486fa2e3133aeb7edc35541d139e31ce1495b3
|
7
|
+
data.tar.gz: cb0399bf3984b9bab34d202819493c1829cabf6050f9f2d19ada65a41aaa268e7901e62382c77dfbaf948bff8bd944d42c80d25941a366115fdf79e67e9c5f93
|
data/.rubocop.yml
CHANGED
@@ -2,7 +2,7 @@ require: rubocop-rspec
|
|
2
2
|
inherit_from: .rubocop_todo.yml
|
3
3
|
|
4
4
|
AllCops:
|
5
|
-
TargetRubyVersion: 2.
|
5
|
+
TargetRubyVersion: 2.4
|
6
6
|
# let dependabot find the rough spots for us
|
7
7
|
NewCops: enable
|
8
8
|
Exclude:
|
@@ -16,10 +16,6 @@ AllCops:
|
|
16
16
|
- package-testing/vendor/**/*
|
17
17
|
- package-testing/vendor/**/.*
|
18
18
|
|
19
|
-
Layout/HeredocIndentation:
|
20
|
-
Description: The `squiggly` style would be preferable, but is only available from ruby 2.3. We'll enable this when we can.
|
21
|
-
Enabled: False
|
22
|
-
|
23
19
|
# Metrics, excludes complexity and sizing metrics for now, as ruby's defaults are very strict
|
24
20
|
Metrics/AbcSize:
|
25
21
|
Enabled: False
|
@@ -36,7 +32,7 @@ Metrics/ClassLength:
|
|
36
32
|
Metrics/CyclomaticComplexity:
|
37
33
|
Enabled: False
|
38
34
|
|
39
|
-
|
35
|
+
Metrics/LineLength:
|
40
36
|
Description: People have wide screens, use them.
|
41
37
|
Max: 200
|
42
38
|
|
@@ -147,10 +143,6 @@ Style/SymbolArray:
|
|
147
143
|
Layout/EndOfLine:
|
148
144
|
EnforcedStyle: lf
|
149
145
|
|
150
|
-
RSpec/FactoryBot/CreateList:
|
151
|
-
Description: produces lots of errors (not violations) with out code
|
152
|
-
Enabled: false
|
153
|
-
|
154
146
|
Style/AccessModifierDeclarations:
|
155
147
|
EnforcedStyle: inline
|
156
148
|
|
data/.rubocop_todo.yml
CHANGED
@@ -1,28 +1,19 @@
|
|
1
1
|
# This configuration was generated by
|
2
2
|
# `rubocop --auto-gen-config`
|
3
|
-
# on
|
3
|
+
# on 2021-02-09 10:30:38 +0000 using RuboCop version 0.57.2.
|
4
4
|
# The point is for the user to remove these configuration records
|
5
5
|
# one by one as the offenses are removed from the code base.
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
7
7
|
# versions of RuboCop, may require this file to be generated again.
|
8
8
|
|
9
|
-
# Offense count:
|
9
|
+
# Offense count: 1
|
10
10
|
# Cop supports --auto-correct.
|
11
11
|
# Configuration parameters: EnforcedStyleAlignWith, AutoCorrect, Severity.
|
12
12
|
# SupportedStylesAlignWith: keyword, variable, start_of_line
|
13
13
|
Layout/EndAlignment:
|
14
14
|
Exclude:
|
15
|
-
- 'lib/puppetlabs_spec_helper/rake_tasks.rb'
|
16
15
|
- 'spec/watchr.rb'
|
17
16
|
|
18
|
-
# Offense count: 1
|
19
|
-
# Cop supports --auto-correct.
|
20
|
-
# Configuration parameters: EnforcedStyle.
|
21
|
-
# SupportedStyles: auto_detection, squiggly, active_support, powerpack, unindent
|
22
|
-
Layout/IndentHeredoc:
|
23
|
-
Exclude:
|
24
|
-
- 'lib/puppetlabs_spec_helper/rake_tasks.rb'
|
25
|
-
|
26
17
|
# Offense count: 4
|
27
18
|
# Configuration parameters: AllowSafeAssignment.
|
28
19
|
Lint/AssignmentInCondition:
|
@@ -38,10 +29,9 @@ Lint/HandleExceptions:
|
|
38
29
|
- 'lib/puppetlabs_spec_helper/puppetlabs_spec/files.rb'
|
39
30
|
- 'lib/puppetlabs_spec_helper/rake_tasks.rb'
|
40
31
|
|
41
|
-
# Offense count:
|
32
|
+
# Offense count: 1
|
42
33
|
Lint/UselessAssignment:
|
43
34
|
Exclude:
|
44
|
-
- 'lib/puppetlabs_spec_helper/puppet_spec_helper.rb'
|
45
35
|
- 'lib/puppetlabs_spec_helper/puppetlabs_spec/puppet_internals.rb'
|
46
36
|
|
47
37
|
# Offense count: 2
|
data/.travis.yml
CHANGED
@@ -4,30 +4,20 @@ language: ruby
|
|
4
4
|
cache: bundler
|
5
5
|
before_install: bundle -v
|
6
6
|
script: bundle exec rake
|
7
|
-
|
7
|
+
jobs:
|
8
8
|
fast_finish: true
|
9
9
|
include:
|
10
10
|
- rvm: '2.7'
|
11
|
-
env: PUPPET_GEM_VERSION='https://github.com/puppetlabs/puppet.git#main'
|
11
|
+
env: PUPPET_GEM_VERSION='https://github.com/puppetlabs/puppet.git#main'
|
12
|
+
- rvm: '2.7'
|
13
|
+
env: PUPPET_GEM_VERSION='~> 7.0' COVERAGE=yes
|
12
14
|
- rvm: '2.6'
|
13
15
|
env: PUPPET_GEM_VERSION='~> 6.0' COVERAGE=yes
|
14
16
|
- rvm: '2.5'
|
15
17
|
env: PUPPET_GEM_VERSION='~> 6.0' COVERAGE=yes
|
16
18
|
- rvm: '2.4'
|
17
19
|
env: PUPPET_GEM_VERSION='~> 6.0' COVERAGE=yes
|
18
|
-
- rvm: '2.3'
|
19
|
-
env: PUPPET_GEM_VERSION='~> 6.0'
|
20
20
|
- rvm: '2.4'
|
21
21
|
env: PUPPET_GEM_VERSION='~> 5.0' COVERAGE=yes
|
22
|
-
- rvm: '2.3'
|
23
|
-
env: PUPPET_GEM_VERSION='~> 5.0'
|
24
|
-
- rvm: '2.1'
|
25
|
-
env: PUPPET_GEM_VERSION='~> 5.0'
|
26
|
-
- rvm: '2.4'
|
27
|
-
env: PUPPET_GEM_VERSION='~> 4.0' COVERAGE=yes
|
28
|
-
- rvm: '2.3'
|
29
|
-
env: PUPPET_GEM_VERSION='~> 4.0'
|
30
|
-
- rvm: '2.1'
|
31
|
-
env: PUPPET_GEM_VERSION='~> 4.0'
|
32
22
|
notifications:
|
33
23
|
email: false
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,16 @@
|
|
3
3
|
All significant changes to this repo will be summarized in this file.
|
4
4
|
|
5
5
|
|
6
|
+
## [v3.0.0](https://github.com/puppetlabs/puppetlabs_spec_helper/tree/v3.0.0) (2021-02-10)
|
7
|
+
|
8
|
+
[Full Changelog](https://github.com/puppetlabs/puppetlabs_spec_helper/compare/v2.16.0...v3.0.0)
|
9
|
+
|
10
|
+
**Implemented enhancements:**
|
11
|
+
|
12
|
+
- dropping rubies before 2.4 [\#332](https://github.com/puppetlabs/puppetlabs_spec_helper/pull/332) ([DavidS](https://github.com/DavidS))
|
13
|
+
- Remove i18n/gettext task [\#331](https://github.com/puppetlabs/puppetlabs_spec_helper/pull/331) ([DavidS](https://github.com/DavidS))
|
14
|
+
- Restructure PuppetLint rake tasks so they can be configurable [\#330](https://github.com/puppetlabs/puppetlabs_spec_helper/pull/330) ([nmaludy](https://github.com/nmaludy))
|
15
|
+
|
6
16
|
## [v2.16.0](https://github.com/puppetlabs/puppetlabs_spec_helper/tree/v2.16.0) (2021-01-18)
|
7
17
|
|
8
18
|
[Full Changelog](https://github.com/puppetlabs/puppetlabs_spec_helper/compare/v2.15.0...v2.16.0)
|
@@ -15,6 +25,7 @@ All significant changes to this repo will be summarized in this file.
|
|
15
25
|
|
16
26
|
**Merged pull requests:**
|
17
27
|
|
28
|
+
- Release prep for v2.16.0 [\#329](https://github.com/puppetlabs/puppetlabs_spec_helper/pull/329) ([DavidS](https://github.com/DavidS))
|
18
29
|
- Update pathspec requirement from ~\> 0.2.1 to \>= 0.2.1, \< 1.1.0 [\#328](https://github.com/puppetlabs/puppetlabs_spec_helper/pull/328) ([dependabot-preview[bot]](https://github.com/apps/dependabot-preview))
|
19
30
|
- Update rubocop requirement from = 0.49 to 0.57.2; prepare for future move to 1.3.1 [\#322](https://github.com/puppetlabs/puppetlabs_spec_helper/pull/322) ([dependabot-preview[bot]](https://github.com/apps/dependabot-preview))
|
20
31
|
|
data/Gemfile
CHANGED
@@ -22,10 +22,9 @@ gemspec
|
|
22
22
|
def infer_puppet_version
|
23
23
|
# Infer the Puppet Gem version based on the Ruby Version
|
24
24
|
ruby_ver = Gem::Version.new(RUBY_VERSION.dup)
|
25
|
+
return '~> 7.0' if ruby_ver >= Gem::Version.new('2.7.0')
|
25
26
|
return '~> 6.0' if ruby_ver >= Gem::Version.new('2.5.0')
|
26
|
-
|
27
|
-
|
28
|
-
'~> 4.0'
|
27
|
+
'~> 5.0'
|
29
28
|
end
|
30
29
|
|
31
30
|
group :development do
|
@@ -40,10 +39,4 @@ group :development do
|
|
40
39
|
end
|
41
40
|
end
|
42
41
|
|
43
|
-
# pin some gems for older ruby versions
|
44
|
-
gem 'fakefs', '<= 0.13.3' if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.4.0')
|
45
|
-
gem 'json_pure', '<=2.0.1' if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.0.0')
|
46
|
-
gem 'puppet-syntax', '<= 3' if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.4.0')
|
47
|
-
gem 'rack', '~> 1' if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.2.0')
|
48
|
-
|
49
42
|
# vim:filetype=ruby
|
@@ -47,7 +47,7 @@ require 'puppetlabs_spec_helper/puppetlabs_spec/files'
|
|
47
47
|
# to compatibility mode for older versions of puppet.
|
48
48
|
begin
|
49
49
|
require 'puppet/test/test_helper'
|
50
|
-
rescue LoadError
|
50
|
+
rescue LoadError
|
51
51
|
end
|
52
52
|
|
53
53
|
# This is just a utility class to allow us to isolate the various version-specific
|
@@ -12,7 +12,7 @@ module PuppetlabsSpec
|
|
12
12
|
def scope(parts = {})
|
13
13
|
RSpec.deprecate('scope', replacement: 'rspec-puppet 2.2.0 provides a scope property')
|
14
14
|
|
15
|
-
if
|
15
|
+
if %r{^2\.[67]}.match?(Puppet.version)
|
16
16
|
# loadall should only be necessary prior to 3.x
|
17
17
|
# Please note, loadall needs to happen first when creating a scope, otherwise
|
18
18
|
# you might receive undefined method `function_*' errors
|
@@ -23,7 +23,7 @@ module PuppetlabsSpec
|
|
23
23
|
scope_parent = parts[:parent] || scope_compiler.topscope
|
24
24
|
scope_resource = parts[:resource] || resource(type: :node, title: scope_compiler.node.name)
|
25
25
|
|
26
|
-
scope = if
|
26
|
+
scope = if %r{^2\.[67]}.match?(Puppet.version)
|
27
27
|
Puppet::Parser::Scope.new(compiler: scope_compiler)
|
28
28
|
else
|
29
29
|
Puppet::Parser::Scope.new(scope_compiler)
|
@@ -149,7 +149,7 @@ namespace :build do
|
|
149
149
|
require 'pdk/util'
|
150
150
|
require 'pdk/module/build'
|
151
151
|
|
152
|
-
path = PDK::Module::Build.invoke(:
|
152
|
+
path = PDK::Module::Build.invoke(force: true, 'target-dir': File.join(Dir.pwd, 'pkg'))
|
153
153
|
puts "Module built: #{path}"
|
154
154
|
rescue LoadError
|
155
155
|
_ = `pdk --version`
|
@@ -172,52 +172,34 @@ require 'puppet-lint/tasks/puppet-lint'
|
|
172
172
|
# Must clear as it will not override the existing puppet-lint rake task since we require to import for
|
173
173
|
# the PuppetLint::RakeTask
|
174
174
|
Rake::Task[:lint].clear
|
175
|
-
#
|
175
|
+
# Utilize PuppetLint global configuration so that these settings can be tweaked by
|
176
|
+
# spec_helper.rb in an individual module
|
176
177
|
PuppetLint.configuration.relative = true
|
177
|
-
PuppetLint
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
]
|
178
|
+
PuppetLint.configuration.ignore_paths ||= []
|
179
|
+
PuppetLint.configuration.ignore_paths << '.vendor/**/*.pp'
|
180
|
+
PuppetLint.configuration.ignore_paths << 'bundle/**/*.pp'
|
181
|
+
PuppetLint.configuration.ignore_paths << 'pkg/**/*.pp'
|
182
|
+
PuppetLint.configuration.ignore_paths << 'spec/**/*.pp'
|
183
|
+
PuppetLint.configuration.ignore_paths << 'tests/**/*.pp'
|
184
|
+
PuppetLint.configuration.ignore_paths << 'types/**/*.pp'
|
185
|
+
PuppetLint.configuration.ignore_paths << 'vendor/**/*.pp'
|
186
|
+
puppet_lint_disable_checks = %w[
|
187
|
+
80chars
|
188
|
+
140chars
|
189
|
+
class_inherits_from_params_class
|
190
|
+
class_parameter_defaults
|
191
|
+
disable_autoloader_layout
|
192
|
+
documentation
|
193
|
+
single_quote_string_with_variables
|
194
|
+
]
|
195
|
+
puppet_lint_disable_checks.each do |check|
|
196
|
+
PuppetLint.configuration.send("disable_#{check}")
|
197
197
|
end
|
198
|
+
PuppetLint::RakeTask.new(:lint)
|
198
199
|
|
199
200
|
desc 'Run puppet-lint and fix issues automatically'
|
200
201
|
PuppetLint::RakeTask.new(:lint_fix) do |config|
|
201
|
-
config.fail_on_warnings = true
|
202
202
|
config.fix = true
|
203
|
-
config.disable_checks = %w[
|
204
|
-
80chars
|
205
|
-
140chars
|
206
|
-
class_inherits_from_params_class
|
207
|
-
class_parameter_defaults
|
208
|
-
disable_autoloader_layout
|
209
|
-
documentation
|
210
|
-
single_quote_string_with_variables
|
211
|
-
]
|
212
|
-
config.ignore_paths = [
|
213
|
-
'.vendor/**/*.pp',
|
214
|
-
'bundle/**/*.pp',
|
215
|
-
'pkg/**/*.pp',
|
216
|
-
'spec/**/*.pp',
|
217
|
-
'tests/**/*.pp',
|
218
|
-
'types/**/*.pp',
|
219
|
-
'vendor/**/*.pp',
|
220
|
-
]
|
221
203
|
end
|
222
204
|
|
223
205
|
require 'puppet-syntax/tasks/puppet-syntax'
|
@@ -279,7 +261,7 @@ task :compute_dev_version do
|
|
279
261
|
# If the branch is a release branch we append an 'r' into the new_version,
|
280
262
|
# this is due to the release branch buildID conflicting with master branch when trying to push to the staging forge.
|
281
263
|
# More info can be found at https://tickets.puppetlabs.com/browse/FM-6170
|
282
|
-
new_version = if build = ENV['BUILD_NUMBER'] || ENV['TRAVIS_BUILD_NUMBER']
|
264
|
+
new_version = if build = (ENV['BUILD_NUMBER'] || ENV['TRAVIS_BUILD_NUMBER'])
|
283
265
|
if branch.eql? 'release'
|
284
266
|
'%s-%s%04d-%s' % [version, 'r', build, sha] # legacy support code # rubocop:disable Style/FormatStringToken
|
285
267
|
else
|
@@ -363,29 +345,6 @@ rescue LoadError
|
|
363
345
|
end
|
364
346
|
end
|
365
347
|
|
366
|
-
module_dir = Dir.pwd
|
367
|
-
locales_dir = File.absolute_path('locales', module_dir)
|
368
|
-
# if the task is allowed to run when the module does not have a locales directory,
|
369
|
-
# the task is run in the puppet gem instead and creates a POT there.
|
370
|
-
puts 'gettext-setup tasks will only be loaded if the locales/ directory is present' if Rake.verbose == true
|
371
|
-
if File.exist? locales_dir
|
372
|
-
begin
|
373
|
-
spec = Gem::Specification.find_by_name 'gettext-setup'
|
374
|
-
load "#{spec.gem_dir}/lib/tasks/gettext.rake"
|
375
|
-
# Initialization requires a valid locales directory
|
376
|
-
GettextSetup.initialize(locales_dir)
|
377
|
-
namespace :module do
|
378
|
-
desc 'Runs all tasks to build a modules POT file for internationalization'
|
379
|
-
task :pot_gen do
|
380
|
-
Rake::Task['gettext:pot'].invoke
|
381
|
-
Rake::Task['gettext:metadata_pot'].invoke("#{module_dir}/metadata.json")
|
382
|
-
end
|
383
|
-
end
|
384
|
-
rescue Gem::LoadError
|
385
|
-
puts 'No gettext-setup gem found, skipping GettextSetup config initialization' if Rake.verbose == true
|
386
|
-
end
|
387
|
-
end
|
388
|
-
|
389
348
|
def create_gch_task(changelog_user = nil, changelog_project = nil, changelog_since_tag = nil, changelog_tag_pattern = 'v%s')
|
390
349
|
if Bundler.rubygems.find_name('github_changelog_generator').any?
|
391
350
|
# needed a place to hide these methods
|
@@ -451,18 +410,18 @@ def create_gch_task(changelog_user = nil, changelog_project = nil, changelog_sin
|
|
451
410
|
else
|
452
411
|
desc 'Generate a Changelog from GitHub'
|
453
412
|
task :changelog do
|
454
|
-
raise
|
455
|
-
The changelog tasks depends on unreleased features of the github_changelog_generator gem.
|
456
|
-
Please manually add it to your .sync.yml for now, and run `pdk update`:
|
457
|
-
---
|
458
|
-
Gemfile:
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
MESSAGE
|
413
|
+
raise <<~MESSAGE
|
414
|
+
The changelog tasks depends on unreleased features of the github_changelog_generator gem.
|
415
|
+
Please manually add it to your .sync.yml for now, and run `pdk update`:
|
416
|
+
---
|
417
|
+
Gemfile:
|
418
|
+
optional:
|
419
|
+
':development':
|
420
|
+
- gem: 'github_changelog_generator'
|
421
|
+
git: 'https://github.com/skywinder/github-changelog-generator'
|
422
|
+
ref: '20ee04ba1234e9e83eb2ffb5056e23d641c7a018'
|
423
|
+
condition: "Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.2.2')"
|
424
|
+
MESSAGE
|
466
425
|
end
|
467
426
|
end
|
468
427
|
end
|
@@ -28,7 +28,6 @@ Gem::Specification.new do |spec|
|
|
28
28
|
|
29
29
|
spec.add_development_dependency 'bundler'
|
30
30
|
spec.add_development_dependency 'fakefs', ['>= 0.13.3', '< 2']
|
31
|
-
spec.add_development_dependency 'gettext-setup', '~> 0.29'
|
32
31
|
spec.add_development_dependency 'pry'
|
33
32
|
spec.add_development_dependency 'puppet'
|
34
33
|
spec.add_development_dependency 'rake', ['>= 10.0', '< 14']
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: puppetlabs_spec_helper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Puppet, Inc.
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2021-
|
12
|
+
date: 2021-02-10 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: mocha
|
@@ -127,20 +127,6 @@ dependencies:
|
|
127
127
|
- - "<"
|
128
128
|
- !ruby/object:Gem::Version
|
129
129
|
version: '2'
|
130
|
-
- !ruby/object:Gem::Dependency
|
131
|
-
name: gettext-setup
|
132
|
-
requirement: !ruby/object:Gem::Requirement
|
133
|
-
requirements:
|
134
|
-
- - "~>"
|
135
|
-
- !ruby/object:Gem::Version
|
136
|
-
version: '0.29'
|
137
|
-
type: :development
|
138
|
-
prerelease: false
|
139
|
-
version_requirements: !ruby/object:Gem::Requirement
|
140
|
-
requirements:
|
141
|
-
- - "~>"
|
142
|
-
- !ruby/object:Gem::Version
|
143
|
-
version: '0.29'
|
144
130
|
- !ruby/object:Gem::Dependency
|
145
131
|
name: pry
|
146
132
|
requirement: !ruby/object:Gem::Requirement
|