From 74a6225ff38622dfc47b54a383797e2258db4d16 Mon Sep 17 00:00:00 2001 From: Lightning Date: Mon, 1 Jul 2024 18:32:21 +0200 Subject: [PATCH] pdksync_heads/main-0-g1829b3f --- .gitignore | 6 ++++ .pdkignore | 6 ++++ .rubocop.yml | 7 +++++ .vscode/extensions.json | 2 +- Gemfile | 28 ++++++++--------- metadata.json | 4 +-- spec/classes/foreman_networking_spec.rb | 42 +++++++++++++------------ spec/default_facts.yml | 8 ----- spec/spec_helper.rb | 5 +-- 9 files changed, 61 insertions(+), 47 deletions(-) diff --git a/.gitignore b/.gitignore index ac1ca8e..2bec5e1 100644 --- a/.gitignore +++ b/.gitignore @@ -26,5 +26,11 @@ .envrc /inventory.yaml /spec/fixtures/litmus_inventory.yaml +.resource_types +.modules +.task_cache.json +.plan_cache.json +.rerun.json +bolt-debug.log .rake_tasks .rvmrc diff --git a/.pdkignore b/.pdkignore index 7620ad1..a37c793 100644 --- a/.pdkignore +++ b/.pdkignore @@ -26,6 +26,12 @@ .envrc /inventory.yaml /spec/fixtures/litmus_inventory.yaml +.resource_types +.modules +.task_cache.json +.plan_cache.json +.rerun.json +bolt-debug.log /.fixtures.yml /Gemfile /.gitattributes diff --git a/.rubocop.yml b/.rubocop.yml index 5be1f9f..21b82b9 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -3,6 +3,7 @@ require: - rubocop-performance - rubocop-rspec AllCops: + NewCops: enable DisplayCopNames: true TargetRubyVersion: '2.6' Include: @@ -527,6 +528,8 @@ Lint/DuplicateBranch: Enabled: false Lint/DuplicateMagicComment: Enabled: false +Lint/DuplicateMatchPattern: + Enabled: false Lint/DuplicateRegexpCharacterClassElement: Enabled: false Lint/EmptyBlock: @@ -643,6 +646,8 @@ Style/ComparableClamp: Enabled: false Style/ConcatArrayLiterals: Enabled: false +Style/DataInheritance: + Enabled: false Style/DirEmpty: Enabled: false Style/DocumentDynamicEvalDefinition: @@ -711,6 +716,8 @@ Style/RedundantHeredocDelimiterQuotes: Enabled: false Style/RedundantInitialize: Enabled: false +Style/RedundantLineContinuation: + Enabled: false Style/RedundantSelfAssignmentBranch: Enabled: false Style/RedundantStringEscape: diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 2f1e4f7..6da8d47 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,6 +1,6 @@ { "recommendations": [ "puppet.puppet-vscode", - "rebornix.Ruby" + "Shopify.ruby-lsp" ] } diff --git a/Gemfile b/Gemfile index 2acc74f..be6d91c 100644 --- a/Gemfile +++ b/Gemfile @@ -20,32 +20,32 @@ group :development do gem "json", '= 2.6.1', require: false if Gem::Requirement.create(['>= 3.1.0', '< 3.1.3']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) gem "json", '= 2.6.3', require: false if Gem::Requirement.create(['>= 3.2.0', '< 4.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) gem "racc", '~> 1.4.0', require: false if Gem::Requirement.create(['>= 2.7.0', '< 3.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) + gem "deep_merge", '~> 1.2.2', require: false gem "voxpupuli-puppet-lint-plugins", '~> 5.0', require: false - gem "facterdb", '~> 1.18', require: false - gem "metadata-json-lint", '~> 3.0', require: false - gem "puppetlabs_spec_helper", '~> 6.0', require: false - gem "rspec-puppet-facts", '~> 2.0', require: false - gem "codecov", '~> 0.2', require: false + gem "facterdb", '~> 1.26', require: false + gem "metadata-json-lint", '~> 4.0', require: false + gem "rspec-puppet-facts", '~> 3.0', require: false gem "dependency_checker", '~> 1.0.0', require: false gem "parallel_tests", '= 3.12.1', require: false gem "pry", '~> 0.10', require: false - gem "simplecov-console", '~> 0.5', require: false + gem "simplecov-console", '~> 0.9', require: false gem "puppet-debugger", '~> 1.0', require: false - gem "rubocop", '= 1.48.1', require: false + gem "rubocop", '~> 1.50.0', require: false gem "rubocop-performance", '= 1.16.0', require: false gem "rubocop-rspec", '= 2.19.0', require: false - gem "puppet-strings", '~> 4.0', require: false gem "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw] + gem "rexml", '>= 3.0.0', '< 3.2.7', require: false gem "puppet-lint-i18n", require: false gem "github_changelog_generator", require: false, git: 'https://github.com/skywinder/github-changelog-generator', ref: '20ee04ba1234e9e83eb2ffb5056e23d641c7a018' if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.2.2') end -group :system_tests do - gem "puppet_litmus", '~> 1.0', require: false, platforms: [:ruby, :x64_mingw] - gem "serverspec", '~> 2.41', require: false -end -group :release_prep do +group :development, :release_prep do gem "puppet-strings", '~> 4.0', require: false - gem "puppetlabs_spec_helper", '~> 6.0', require: false + gem "puppetlabs_spec_helper", '~> 7.0', require: false +end +group :system_tests do + gem "puppet_litmus", '~> 1.0', require: false, platforms: [:ruby, :x64_mingw] + gem "CFPropertyList", '< 3.0.7', require: false, platforms: [:mswin, :mingw, :x64_mingw] + gem "serverspec", '~> 2.41', require: false end puppet_version = ENV['PUPPET_GEM_VERSION'] diff --git a/metadata.json b/metadata.json index cd6fc48..b2577d7 100644 --- a/metadata.json +++ b/metadata.json @@ -41,7 +41,7 @@ "version_requirement": ">= 7.0.0 < 9.0.0" } ], - "pdk-version": "3.0.1", + "pdk-version": "3.2.0", "template-url": "https://github.com/markt-de/pdk-templates.git#main", - "template-ref": "heads/main-0-g909fd77" + "template-ref": "heads/main-0-g1829b3f" } diff --git a/spec/classes/foreman_networking_spec.rb b/spec/classes/foreman_networking_spec.rb index b984ab9..d7c4bbf 100644 --- a/spec/classes/foreman_networking_spec.rb +++ b/spec/classes/foreman_networking_spec.rb @@ -72,26 +72,28 @@ describe 'test overrides' do let(:params) do - super().merge('route_overrides' => { - 'default' => { - 'ensure' => 'present', - 'gateway' => '10.241.60.253', - 'interface' => 'eth0', - 'netmask' => '255.255.255.0', - 'network' => '0.0.0.0', - }, - '10.1.2.0/24' => { - 'ensure' => 'present', - 'gateway' => '10.1.2.254', - 'interface' => 'eth0', - 'netmask' => '255.255.255.0', - 'network' => '10.1.2.0', - }, - }, - 'nameservers' => [ - '10.241.40.13', - '10.241.10.254', - ]) + super().deep_merge!( + 'route_overrides' => { + 'default' => { + 'ensure' => 'present', + 'gateway' => '10.241.60.253', + 'interface' => 'eth0', + 'netmask' => '255.255.255.0', + 'network' => '0.0.0.0', + }, + '10.1.2.0/24' => { + 'ensure' => 'present', + 'gateway' => '10.1.2.254', + 'interface' => 'eth0', + 'netmask' => '255.255.255.0', + 'network' => '10.1.2.0', + }, + }, + 'nameservers' => [ + '10.241.40.13', + '10.241.10.254', + ] + ) end it { diff --git a/spec/default_facts.yml b/spec/default_facts.yml index 1613ed4..9f172f0 100644 --- a/spec/default_facts.yml +++ b/spec/default_facts.yml @@ -2,12 +2,4 @@ # # Facts specified here will override the values provided by rspec-puppet-facts. --- -networking: - ip: "172.16.254.254" - ip6: "FE80:0000:0000:0000:AAAA:AAAA:AAAA" - mac: "AA:AA:AA:AA:AA:AA" - interfaces: - eth0: {} - eth1: {} - eth2: {} is_pe: false diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 6820ceb..ae7c1f6 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -25,7 +25,8 @@ next unless File.exist?(f) && File.readable?(f) && File.size?(f) begin - default_facts.merge!(YAML.safe_load(File.read(f), permitted_classes: [], permitted_symbols: [], aliases: true)) + require 'deep_merge' + default_facts.deep_merge!(YAML.safe_load(File.read(f), permitted_classes: [], permitted_symbols: [], aliases: true)) rescue StandardError => e RSpec.configuration.reporter.message "WARNING: Unable to load #{f}: #{e}" end @@ -33,7 +34,7 @@ # read default_facts and merge them over what is provided by facterdb default_facts.each do |fact, value| - add_custom_fact fact, value + add_custom_fact fact, value, merge_facts: true end RSpec.configure do |c|