diff --git a/.gitignore b/.gitignore index c817477a0aea992fe70e44977a62078cc9310079..a9965320a67cf67e14f5bfa41aaf270ebbd32906 100644 --- a/.gitignore +++ b/.gitignore @@ -16,7 +16,7 @@ /log/ /pkg/ /spec/fixtures/manifests/ -/spec/fixtures/modules/* +/spec/fixtures/modules/ /tmp/ /vendor/ /convert_report.txt diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 97ebb8b9fc3bcad7a221e5c224f28e468c01a780..d49a282204f95e69b20f82be215ceefc76129d11 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,7 +2,3 @@ include: - project: 'puppet-infra/shared-ci-piplines' file: '/puppet-module-pipeline.yaml' - - local: .local-ci.yml - rules: - - exists: - - .local-ci.yml diff --git a/.pdkignore b/.pdkignore index 8bbed40cca2034410bafc4820c5887a849bdf48d..f96299629ecb210a0cdd0fdb38a4b955515392d6 100644 --- a/.pdkignore +++ b/.pdkignore @@ -16,7 +16,7 @@ /log/ /pkg/ /spec/fixtures/manifests/ -/spec/fixtures/modules/* +/spec/fixtures/modules/ /tmp/ /vendor/ /convert_report.txt @@ -29,17 +29,20 @@ *~ \#*\# .\#* +/appveyor.yml +/.editorconfig /.fixtures.yml /Gemfile /.gitattributes -/.github/ /.gitignore +/.gitlab-ci.yml /.pdkignore /.puppet-lint.rc /Rakefile /rakelib/ /.rspec -/..yml +/.rubocop.yml +/.travis.yml /.yardopts /spec/ /.vscode/ diff --git a/.rubocop.yml b/.rubocop.yml index 5be1f9fa994085890c3fe9db117a937b8928f8cb..8f782e741528905cd59743f73283f8a39e9bf210 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -4,7 +4,7 @@ require: - rubocop-rspec AllCops: DisplayCopNames: true - TargetRubyVersion: '2.6' + TargetRubyVersion: '2.4' Include: - "**/*.rb" Exclude: @@ -111,14 +111,8 @@ Style/MethodCalledOnDoEndBlock: Enabled: true Style/StringMethods: Enabled: true -Bundler/GemFilename: - Enabled: false Bundler/InsecureProtocolSource: Enabled: false -Capybara/CurrentPathExpectation: - Enabled: false -Capybara/VisibilityMatcher: - Enabled: false Gemspec/DuplicatedAssignment: Enabled: false Gemspec/OrderedDependencies: @@ -293,9 +287,11 @@ Performance/UriDefaultParser: Enabled: false RSpec/Be: Enabled: false +RSpec/Capybara/CurrentPathExpectation: + Enabled: false RSpec/Capybara/FeatureMethods: Enabled: false -RSpec/ContainExactly: +RSpec/Capybara/VisibilityMatcher: Enabled: false RSpec/ContextMethod: Enabled: false @@ -335,8 +331,6 @@ RSpec/LeakyConstantDeclaration: Enabled: false RSpec/LetBeforeExamples: Enabled: false -RSpec/MatchArray: - Enabled: false RSpec/MissingExampleGroupArgument: Enabled: false RSpec/MultipleExpectations: @@ -379,6 +373,8 @@ Style/AccessModifierDeclarations: Enabled: false Style/AccessorGrouping: Enabled: false +Style/AsciiComments: + Enabled: false Style/BisectedAttrAccessor: Enabled: false Style/CaseLikeIf: @@ -489,235 +485,35 @@ Style/TrailingMethodEndStatement: Enabled: false Style/UnpackFirst: Enabled: false -Capybara/MatchStyle: - Enabled: false -Capybara/NegationMatcher: - Enabled: false -Capybara/SpecificActions: - Enabled: false -Capybara/SpecificFinders: - Enabled: false -Capybara/SpecificMatcher: - Enabled: false -Gemspec/DeprecatedAttributeAssignment: - Enabled: false -Gemspec/DevelopmentDependencies: - Enabled: false -Gemspec/RequireMFA: - Enabled: false -Layout/LineContinuationLeadingSpace: - Enabled: false -Layout/LineContinuationSpacing: - Enabled: false -Layout/LineEndStringConcatenationIndentation: - Enabled: false -Layout/SpaceBeforeBrackets: - Enabled: false -Lint/AmbiguousAssignment: - Enabled: false -Lint/AmbiguousOperatorPrecedence: - Enabled: false -Lint/AmbiguousRange: - Enabled: false -Lint/ConstantOverwrittenInRescue: - Enabled: false -Lint/DeprecatedConstants: - Enabled: false Lint/DuplicateBranch: Enabled: false -Lint/DuplicateMagicComment: - Enabled: false Lint/DuplicateRegexpCharacterClassElement: Enabled: false Lint/EmptyBlock: Enabled: false Lint/EmptyClass: Enabled: false -Lint/EmptyInPattern: - Enabled: false -Lint/IncompatibleIoSelectWithFiberScheduler: - Enabled: false -Lint/LambdaWithoutLiteralBlock: - Enabled: false Lint/NoReturnInBeginEndBlocks: Enabled: false -Lint/NonAtomicFileOperation: - Enabled: false -Lint/NumberedParameterAssignment: - Enabled: false -Lint/OrAssignmentToConstant: - Enabled: false -Lint/RedundantDirGlobSort: - Enabled: false -Lint/RefinementImportMethods: - Enabled: false -Lint/RequireRangeParentheses: - Enabled: false -Lint/RequireRelativeSelfPath: - Enabled: false -Lint/SymbolConversion: - Enabled: false Lint/ToEnumArguments: Enabled: false -Lint/TripleQuotes: - Enabled: false Lint/UnexpectedBlockArity: Enabled: false Lint/UnmodifiedReduceAccumulator: Enabled: false -Lint/UselessRescue: - Enabled: false -Lint/UselessRuby2Keywords: - Enabled: false -Metrics/CollectionLiteralLength: - Enabled: false -Naming/BlockForwarding: - Enabled: false Performance/CollectionLiteralInLoop: Enabled: false -Performance/ConcurrentMonotonicTime: - Enabled: false -Performance/MapCompact: - Enabled: false -Performance/RedundantEqualityComparisonBlock: - Enabled: false -Performance/RedundantSplitRegexpArgument: - Enabled: false -Performance/StringIdentifierArgument: - Enabled: false -RSpec/BeEq: - Enabled: false -RSpec/BeNil: - Enabled: false -RSpec/ChangeByZero: - Enabled: false -RSpec/ClassCheck: - Enabled: false -RSpec/DuplicatedMetadata: - Enabled: false -RSpec/ExcessiveDocstringSpacing: - Enabled: false -RSpec/FactoryBot/ConsistentParenthesesStyle: - Enabled: false -RSpec/FactoryBot/FactoryNameStyle: - Enabled: false -RSpec/FactoryBot/SyntaxMethods: - Enabled: false -RSpec/IdenticalEqualityAssertion: - Enabled: false -RSpec/NoExpectationExample: - Enabled: false -RSpec/PendingWithoutReason: - Enabled: false -RSpec/Rails/AvoidSetupHook: - Enabled: false -RSpec/Rails/HaveHttpStatus: - Enabled: false -RSpec/Rails/InferredSpecType: - Enabled: false -RSpec/Rails/MinitestAssertions: - Enabled: false -RSpec/Rails/TravelAround: - Enabled: false -RSpec/RedundantAround: - Enabled: false -RSpec/SkipBlockInsideExample: - Enabled: false -RSpec/SortMetadata: - Enabled: false -RSpec/SubjectDeclaration: - Enabled: false -RSpec/VerifiedDoubleReference: - Enabled: false -Security/CompoundHash: - Enabled: false -Security/IoMethods: - Enabled: false Style/ArgumentsForwarding: Enabled: false -Style/ArrayIntersect: - Enabled: false Style/CollectionCompact: Enabled: false -Style/ComparableClamp: - Enabled: false -Style/ConcatArrayLiterals: - Enabled: false -Style/DirEmpty: - Enabled: false Style/DocumentDynamicEvalDefinition: Enabled: false -Style/EmptyHeredoc: - Enabled: false -Style/EndlessMethod: - Enabled: false -Style/EnvHome: - Enabled: false -Style/FetchEnvVar: - Enabled: false -Style/FileEmpty: - Enabled: false -Style/FileRead: - Enabled: false -Style/FileWrite: - Enabled: false -Style/HashConversion: - Enabled: false -Style/HashExcept: - Enabled: false -Style/IfWithBooleanLiteralBranches: - Enabled: false -Style/InPatternThen: - Enabled: false -Style/MagicCommentFormat: - Enabled: false -Style/MapCompactWithConditionalBlock: - Enabled: false -Style/MapToHash: - Enabled: false -Style/MapToSet: - Enabled: false -Style/MinMaxComparison: - Enabled: false -Style/MultilineInPatternThen: - Enabled: false Style/NegatedIfElseCondition: Enabled: false -Style/NestedFileDirname: - Enabled: false Style/NilLambda: Enabled: false -Style/NumberedParameters: - Enabled: false -Style/NumberedParametersLimit: - Enabled: false -Style/ObjectThen: - Enabled: false -Style/OpenStructUse: - Enabled: false -Style/OperatorMethodCall: - Enabled: false -Style/QuotedSymbols: - Enabled: false Style/RedundantArgument: Enabled: false -Style/RedundantConstantBase: - Enabled: false -Style/RedundantDoubleSplatHashBraces: - Enabled: false -Style/RedundantEach: - Enabled: false -Style/RedundantHeredocDelimiterQuotes: - Enabled: false -Style/RedundantInitialize: - Enabled: false -Style/RedundantSelfAssignmentBranch: - Enabled: false -Style/RedundantStringEscape: - Enabled: false -Style/SelectByRegexp: - Enabled: false -Style/StringChars: - Enabled: false Style/SwapValues: Enabled: false diff --git a/Gemfile b/Gemfile index ca0e773ecda0523822c56f423572a35d57d7ed83..18272fd72e8b95feb3fe64e34a51a9b75a7af794 100644 --- a/Gemfile +++ b/Gemfile @@ -13,37 +13,28 @@ def location_for(place_or_version, fake_version = nil) end end +ruby_version_segments = Gem::Version.new(RUBY_VERSION.dup).segments +minor_version = ruby_version_segments[0..1].join('.') + group :development do - gem "json", '= 2.1.0', require: false if Gem::Requirement.create(['>= 2.5.0', '< 2.7.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) - gem "json", '= 2.3.0', require: false if Gem::Requirement.create(['>= 2.7.0', '< 3.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) - gem "json", '= 2.5.1', require: false if Gem::Requirement.create(['>= 3.0.0', '< 3.0.5']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) - 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 "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 "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 "puppet-debugger", '~> 1.0', require: false - gem "rubocop", '= 1.48.1', 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 "json", '= 2.0.4', require: false if Gem::Requirement.create('~> 2.4.2').satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) + gem "json", '= 2.1.0', require: false if Gem::Requirement.create(['>= 2.5.0', '< 2.7.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) + gem "json", '= 2.3.0', require: false if Gem::Requirement.create(['>= 2.7.0', '< 2.8.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) + gem "puppet-module-posix-default-r#{minor_version}", '~> 1.0', require: false, platforms: [:ruby] + gem "puppet-module-posix-dev-r#{minor_version}", '~> 1.0', require: false, platforms: [:ruby] + gem "puppet-module-win-default-r#{minor_version}", '~> 1.0', require: false, platforms: [:mswin, :mingw, :x64_mingw] + gem "puppet-module-win-dev-r#{minor_version}", '~> 1.0', require: false, platforms: [:mswin, :mingw, :x64_mingw] + gem "puppet-lint-absolute_classname-check", '3.0.1', require: false + gem "puppet-lint-absolute_template_path", '1.0.1', require: false + gem "puppet-lint-empty_trailing_lines", '0.0.1', require: false + gem "puppet-lint-file_ensure-check", '1.0.0', require: false + gem "puppet-lint-strict_indent-check", '2.0.8', require: false + gem "puppet-lint-trailing_comma-check", '0.4.2', require: false + gem "puppet-lint-unquoted_string-check", '2.1.0', require: false 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 - gem "puppet-strings", '~> 4.0', require: false - gem "puppetlabs_spec_helper", '~> 6.0', require: false + gem "puppet-module-posix-system-r#{minor_version}", '~> 1.0', require: false, platforms: [:ruby] + gem "puppet-module-win-system-r#{minor_version}", '~> 1.0', require: false, platforms: [:mswin, :mingw, :x64_mingw] end puppet_version = ENV['PUPPET_GEM_VERSION'] diff --git a/Rakefile b/Rakefile index 74415a96f53d00b92550f6c697bb02093faecf76..0f8754eb61e400db1d117cad5026f06d3ba6ff89 100644 --- a/Rakefile +++ b/Rakefile @@ -1,11 +1,12 @@ # frozen_string_literal: true require 'bundler' -require 'puppet_litmus/rake_tasks' if Gem.loaded_specs.key? 'puppet_litmus' +require 'puppet_litmus/rake_tasks' if Bundler.rubygems.find_name('puppet_litmus').any? require 'puppetlabs_spec_helper/rake_tasks' require 'puppet-syntax/tasks/puppet-syntax' -require 'github_changelog_generator/task' if Gem.loaded_specs.key? 'github_changelog_generator' -require 'puppet-strings/tasks' if Gem.loaded_specs.key? 'puppet-strings' +require 'puppet_blacksmith/rake_tasks' if Bundler.rubygems.find_name('puppet-blacksmith').any? +require 'github_changelog_generator/task' if Bundler.rubygems.find_name('github_changelog_generator').any? +require 'puppet-strings/tasks' if Bundler.rubygems.find_name('puppet-strings').any? def changelog_user return unless Rake.application.top_level_tasks.include? "changelog" @@ -43,7 +44,7 @@ end PuppetLint.configuration.send('disable_relative') -if Gem.loaded_specs.key? 'github_changelog_generator' +if Bundler.rubygems.find_name('github_changelog_generator').any? GitHubChangelogGenerator::RakeTask.new :changelog do |config| raise "Set CHANGELOG_GITHUB_TOKEN environment variable eg 'export CHANGELOG_GITHUB_TOKEN=valid_token_here'" if Rake.application.top_level_tasks.include? "changelog" and ENV['CHANGELOG_GITHUB_TOKEN'].nil? config.user = "#{changelog_user}" diff --git a/manifests/init.pp b/manifests/init.pp index 3e97df295f2efd420fb3333b9632150110082ac6..a889fdab03f7374a8e443c7f72d32e190645ea28 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -6,39 +6,39 @@ # @example # none class vlc { - firewalld_service { 'Allow http in the liu Zone': + firewalld_service {'Allow http in the liu Zone': ensure => present, zone => 'liu', service => 'http', } - firewalld_service { 'Allow https in the liu Zone': + firewalld_service {'Allow https in the liu Zone': ensure => present, zone => 'liu', service => 'https', } - firewalld_service { 'Allow http in the public Zone': + firewalld_service {'Allow http in the public Zone': ensure => present, zone => 'public', service => 'http', } - firewalld_service { 'Allow https in the public Zone': + firewalld_service {'Allow https in the public Zone': ensure => present, zone => 'public', service => 'https', } # Känner firewall till servicen syncthing ?? - firewalld_service { 'Allow syncthing in the public Zone': + firewalld_service {'Allow http in the public Zone': ensure => present, zone => 'public', service => 'syncthing', } - firewalld_service { 'Allow syncthing in the liu Zone': + firewalld_service {'Allow https in the public Zone': ensure => present, zone => 'liu', service => 'syncthing', } - firewalld_service { 'Allow syncthing-gui in the liu Zone': + firewalld_service {'Allow https in the public Zone': ensure => present, zone => 'liu', service => 'syncthing-gui', diff --git a/metadata.json b/metadata.json index 2a6e3e0d179fb25998bc04124790476fcd810920..b46ee45066f41bb4a1bd957d35f6856d6b4b5667 100644 --- a/metadata.json +++ b/metadata.json @@ -59,7 +59,7 @@ "version_requirement": ">= 6.21.0 < 8.0.0" } ], - "pdk-version": "3.0.1", + "pdk-version": "2.4.0", "template-url": "https://gitlab.it.liu.se/puppet-infra/pdk-templates.git#liu", - "template-ref": "heads/liu-0-g522eb00" + "template-ref": "heads/liu-0-gdb0722b" } diff --git a/pdk.yaml b/pdk.yaml deleted file mode 100644 index 4bef4bd0f902390cfeb13e968d1879c74963b50e..0000000000000000000000000000000000000000 --- a/pdk.yaml +++ /dev/null @@ -1,2 +0,0 @@ ---- -ignore: [] diff --git a/spec/default_facts.yml b/spec/default_facts.yml index 3346c394df5a06fba389c76f1e2ccbb04c77ee6c..f777abfc9905202e7ccf5b5fcc76b9b4c59a39fb 100644 --- a/spec/default_facts.yml +++ b/spec/default_facts.yml @@ -2,8 +2,7 @@ # # 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" +ipaddress: "172.16.254.254" +ipaddress6: "FE80:0000:0000:0000:AAAA:AAAA:AAAA" is_pe: false +macaddress: "AA:AA:AA:AA:AA:AA" diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 3f9a6c717863bd2eb4bdd13cf9c6b0399fe09129..ee9e00395e4a18319dfa49b95f7030797471cc8a 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -28,8 +28,8 @@ default_fact_files.each do |f| 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)) - rescue StandardError => e + default_facts.merge!(YAML.safe_load(File.read(f), [], [], true)) + rescue => e RSpec.configuration.reporter.message "WARNING: Unable to load #{f}: #{e}" end end