From a8e1f8aa172774dbaee8c67bbdda9d4158b5a6ae Mon Sep 17 00:00:00 2001 From: pccibot <12855858+pccibot@users.noreply.github.com> Date: Fri, 6 Mar 2026 09:30:31 +0000 Subject: [PATCH 1/4] modulesync 10.6.0 --- .devcontainer/devcontainer.json | 1 - .msync.yml | 2 +- Gemfile | 4 ++-- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 168a5cb4..08c6abf9 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,4 +1,3 @@ -// For format details, see https://aka.ms/devcontainer.json. For config options, see the { "name": "VoxBox", "image": "ghcr.io/voxpupuli/voxbox:latest" diff --git a/.msync.yml b/.msync.yml index 179bafc0..7d6d4ee4 100644 --- a/.msync.yml +++ b/.msync.yml @@ -2,4 +2,4 @@ # Managed by modulesync - DO NOT EDIT # https://voxpupuli.org/docs/updating-files-managed-with-modulesync/ -modulesync_config_version: '10.5.0' +modulesync_config_version: '10.6.0' diff --git a/Gemfile b/Gemfile index 5f69bec8..e0c85815 100644 --- a/Gemfile +++ b/Gemfile @@ -4,7 +4,7 @@ source ENV['GEM_SOURCE'] || 'https://rubygems.org' group :test do - gem 'voxpupuli-test', '~> 13.0', :require => false + gem 'voxpupuli-test', '~> 14.0', :require => false gem 'puppet_metadata', '~> 6.0', :require => false end @@ -18,7 +18,7 @@ group :system_tests do end group :release do - gem 'voxpupuli-release', '~> 5.0', :require => false + gem 'voxpupuli-release', '~> 5.3', :require => false end gem 'rake', :require => false From ff709bd473b826a1e909dc5414228d1c187b5650 Mon Sep 17 00:00:00 2001 From: pccibot <12855858+pccibot@users.noreply.github.com> Date: Fri, 27 Mar 2026 15:47:44 +0000 Subject: [PATCH 2/4] modulesync 10.7.0 --- .github/workflows/create_tag.yml | 22 ++++++++++++++++++++++ .github/workflows/prepare_release.yml | 5 ++++- .github/workflows/release.yml | 6 ++++-- .msync.yml | 2 +- 4 files changed, 31 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/create_tag.yml diff --git a/.github/workflows/create_tag.yml b/.github/workflows/create_tag.yml new file mode 100644 index 00000000..c835e75a --- /dev/null +++ b/.github/workflows/create_tag.yml @@ -0,0 +1,22 @@ +--- +# Managed by modulesync - DO NOT EDIT +# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/ + +name: Create Git tag + +on: + workflow_dispatch: + +permissions: {} + +jobs: + create_tag: + uses: 'voxpupuli/gha-puppet/.github/workflows/create_tag.yml@v4' + with: + allowed_owner: 'voxpupuli' + git_name: 'pccibot' + git_email: '12855858+pccibot@users.noreply.github.com' + secrets: + # Configure secrets here: + # https://docs.github.com/en/actions/security-guides/encrypted-secrets + ssh_private_key: ${{ secrets.PCCI_SSH_PRIVATE_KEY }} diff --git a/.github/workflows/prepare_release.yml b/.github/workflows/prepare_release.yml index 2e3cc689..b3725319 100644 --- a/.github/workflows/prepare_release.yml +++ b/.github/workflows/prepare_release.yml @@ -17,11 +17,14 @@ permissions: jobs: release_prep: - uses: 'voxpupuli/gha-puppet/.github/workflows/prepare_release.yml@v3' + uses: 'voxpupuli/gha-puppet/.github/workflows/prepare_release.yml@v4' with: version: ${{ github.event.inputs.version }} allowed_owner: 'voxpupuli' + git_name: 'pccibot' + git_email: '12855858+pccibot@users.noreply.github.com' secrets: # Configure secrets here: # https://docs.github.com/en/actions/security-guides/encrypted-secrets github_pat: '${{ secrets.PCCI_PAT_RELEASE_PREP }}' + ssh_private_key: '${{ secrets.PCCI_SSH_PRIVATE_KEY }}' diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0a8b1b18..9062a93c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -8,7 +8,9 @@ name: Release on: push: tags: - - '*' + # https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#onpushbranchestagsbranches-ignoretags-ignore + # https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#filter-pattern-cheat-sheet + - 'v[0-9]+.[0-9]+.[0-9]+' permissions: contents: write @@ -16,7 +18,7 @@ permissions: jobs: release: name: Release - uses: voxpupuli/gha-puppet/.github/workflows/release.yml@v3 + uses: voxpupuli/gha-puppet/.github/workflows/release.yml@v4 with: allowed_owner: 'voxpupuli' secrets: diff --git a/.msync.yml b/.msync.yml index 7d6d4ee4..fae75b07 100644 --- a/.msync.yml +++ b/.msync.yml @@ -2,4 +2,4 @@ # Managed by modulesync - DO NOT EDIT # https://voxpupuli.org/docs/updating-files-managed-with-modulesync/ -modulesync_config_version: '10.6.0' +modulesync_config_version: '10.7.0' From 33484a7790dab20a9b56d1d95137c5def9cc6026 Mon Sep 17 00:00:00 2001 From: Tim Meusel Date: Sat, 28 Mar 2026 14:42:01 +0100 Subject: [PATCH 3/4] rubocop: autofix --- .rubocop_todo.yml | 14 +- spec/acceptance/class_spec.rb | 5 +- spec/classes/nodejs_spec.rb | 204 +++++++++--------- spec/defines/global_config_entry_spec.rb | 14 +- spec/defines/nodejs_npm_spec.rb | 94 ++++---- spec/unit/puppet/provider/package/npm_spec.rb | 22 +- 6 files changed, 183 insertions(+), 170 deletions(-) diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 8bc811ab..d7ea9ec8 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -1,11 +1,23 @@ # This configuration was generated by # `rubocop --auto-gen-config --no-auto-gen-timestamp` -# using RuboCop version 1.50.2. +# using RuboCop version 1.85.1. # The point is for the user to remove these configuration records # one by one as the offenses are removed from the code base. # Note that changes in the inspected code, or installation of new # versions of RuboCop, may require this file to be generated again. +# Offense count: 6 +# This cop supports unsafe autocorrection (--autocorrect-all). +RSpec/IncludeExamples: + Exclude: + - 'spec/acceptance/class_spec.rb' + +# Offense count: 9 +RSpec/LeakyLocalVariable: + Exclude: + - 'spec/acceptance/class_spec.rb' + - 'spec/classes/nodejs_spec.rb' + # Offense count: 10 # Configuration parameters: . # SupportedStyles: have_received, receive diff --git a/spec/acceptance/class_spec.rb b/spec/acceptance/class_spec.rb index 89f3a2d8..097d155c 100644 --- a/spec/acceptance/class_spec.rb +++ b/spec/acceptance/class_spec.rb @@ -5,7 +5,8 @@ def nodesource_unsupported(nodejs_version) return unless fact('os.family') == 'RedHat' return 'Only NodeJS 16 is supported on EL7' if nodejs_version != '16' && fact('os.release.major') == '7' - return 'NodeJS 16 is not supported on EL9' if nodejs_version == '16' && fact('os.release.major') == '9' + + 'NodeJS 16 is not supported on EL9' if nodejs_version == '16' && fact('os.release.major') == '9' end describe 'nodejs' do @@ -103,7 +104,7 @@ class { 'nodejs': end end - context 'RedHat with repo_class => nodejs::repo::dnfmodule', if: fact('os.family') == 'RedHat' && %w[8 9].include?(fact('os.release.major')), skip: (nodejs_version == '16' && fact('os.release.major') == '9' ? 'NodeJS 16 is not available on EL9' : nil) do + context 'RedHat with repo_class => nodejs::repo::dnfmodule', if: fact('os.family') == 'RedHat' && %w[8 9].include?(fact('os.release.major')), skip: ((nodejs_version == '16' && fact('os.release.major') == '9') ? 'NodeJS 16 is not available on EL9' : nil) do # Node 16 is not available on EL9 include_examples 'cleanup' diff --git a/spec/classes/nodejs_spec.rb b/spec/classes/nodejs_spec.rb index c3104035..244f563a 100644 --- a/spec/classes/nodejs_spec.rb +++ b/spec/classes/nodejs_spec.rb @@ -17,14 +17,14 @@ 'path' => '/root/.npmrc', 'owner' => 'root', 'group' => '0', - 'mode' => '0600' + 'mode' => '0600', ) end context 'with npmrc_auth set to a string' do let :params do { - npmrc_auth: 'dXNlcjpwYXNzd29yZA==' + npmrc_auth: 'dXNlcjpwYXNzd29yZA==', } end @@ -34,7 +34,7 @@ context 'with npmrc_config set to a hash' do let :params do { - npmrc_config: { 'http-proxy' => 'http://localhost:8080/' } + npmrc_config: { 'http-proxy' => 'http://localhost:8080/' }, } end @@ -45,7 +45,7 @@ context 'with manage_package_repo set to true' do let :default_params do { - manage_package_repo: true + manage_package_repo: true, } end @@ -138,7 +138,7 @@ context 'with manage_package_repo set to false' do let :params do { - manage_package_repo: false + manage_package_repo: false, } end @@ -151,7 +151,7 @@ context 'with nodejs_debug_package_ensure set to installed' do let :params do { - nodejs_debug_package_ensure: 'installed' + nodejs_debug_package_ensure: 'installed', } end @@ -163,7 +163,7 @@ context 'with nodejs_debug_package_ensure set to absent' do let :params do { - nodejs_debug_package_ensure: 'absent' + nodejs_debug_package_ensure: 'absent', } end @@ -176,7 +176,7 @@ context 'with nodejs_dev_package_ensure set to installed' do let :params do { - nodejs_dev_package_ensure: 'installed' + nodejs_dev_package_ensure: 'installed', } end @@ -188,7 +188,7 @@ context 'with nodejs_dev_package_ensure set to absent' do let :params do { - nodejs_dev_package_ensure: 'absent' + nodejs_dev_package_ensure: 'absent', } end @@ -201,7 +201,7 @@ context 'with nodejs_package_ensure set to installed' do let :params do { - nodejs_package_ensure: 'installed' + nodejs_package_ensure: 'installed', } end @@ -213,7 +213,7 @@ context 'with nodejs_package_ensure set to absent' do let :params do { - nodejs_package_ensure: 'absent' + nodejs_package_ensure: 'absent', } end @@ -226,7 +226,7 @@ context 'with npm_package_ensure set to installed' do let :params do { - npm_package_ensure: 'installed' + npm_package_ensure: 'installed', } end @@ -238,7 +238,7 @@ context 'with npm_package_ensure set to absent' do let :params do { - npm_package_ensure: 'absent' + npm_package_ensure: 'absent', } end @@ -251,7 +251,7 @@ context 'with npm_package_name set to false' do let :params do { - npm_package_name: 'false' + npm_package_name: 'false', } end @@ -278,9 +278,9 @@ 'name' => operatingsystem, 'release' => { 'major' => operatingsystemmajrelease, - 'full' => operatingsystemrelease - } - } + 'full' => operatingsystemrelease, + }, + }, } end @@ -288,7 +288,7 @@ context 'with manage_package_repo set to true' do let :default_params do { - manage_package_repo: true + manage_package_repo: true, } end @@ -329,7 +329,7 @@ it 'the nodesource repo should contain the right description and baseurl' do is_expected.to contain_yumrepo('nodesource').with( 'baseurl' => repo_baseurl, - 'descr' => repo_descr + 'descr' => repo_descr, ) end end @@ -428,7 +428,7 @@ context 'with manage_package_repo set to false' do let :params do { - manage_package_repo: false + manage_package_repo: false, } end @@ -441,7 +441,7 @@ context 'with nodejs_debug_package_ensure set to installed' do let :params do { - nodejs_debug_package_ensure: 'installed' + nodejs_debug_package_ensure: 'installed', } end @@ -453,7 +453,7 @@ context 'with nodejs_debug_package_ensure set to absent' do let :params do { - nodejs_debug_package_ensure: 'absent' + nodejs_debug_package_ensure: 'absent', } end @@ -466,7 +466,7 @@ context 'with nodejs_dev_package_ensure set to installed' do let :params do { - nodejs_dev_package_ensure: 'installed' + nodejs_dev_package_ensure: 'installed', } end @@ -478,7 +478,7 @@ context 'with nodejs_dev_package_ensure set to absent' do let :params do { - nodejs_dev_package_ensure: 'absent' + nodejs_dev_package_ensure: 'absent', } end @@ -491,7 +491,7 @@ context 'with nodejs_package_ensure set to installed' do let :params do { - nodejs_package_ensure: 'installed' + nodejs_package_ensure: 'installed', } end @@ -503,7 +503,7 @@ context 'with nodejs_package_ensure set to absent' do let :params do { - nodejs_package_ensure: 'absent' + nodejs_package_ensure: 'absent', } end @@ -516,7 +516,7 @@ context 'with npm_package_ensure set to installed' do let :params do { - npm_package_ensure: 'installed' + npm_package_ensure: 'installed', } end @@ -528,7 +528,7 @@ context 'with npm_package_ensure set to absent' do let :params do { - npm_package_ensure: 'absent' + npm_package_ensure: 'absent', } end @@ -544,8 +544,8 @@ { 'os' => { 'family' => 'Suse', - 'name' => 'SLES' - } + 'name' => 'SLES', + }, } end @@ -553,7 +553,7 @@ context 'with nodejs_debug_package_ensure set to installed' do let :params do { - nodejs_debug_package_ensure: 'installed' + nodejs_debug_package_ensure: 'installed', } end @@ -565,7 +565,7 @@ context 'with nodejs_debug_package_ensure set to absent' do let :params do { - nodejs_debug_package_ensure: 'absent' + nodejs_debug_package_ensure: 'absent', } end @@ -578,7 +578,7 @@ context 'with nodejs_dev_package_ensure set to installed' do let :params do { - nodejs_dev_package_ensure: 'installed' + nodejs_dev_package_ensure: 'installed', } end @@ -590,7 +590,7 @@ context 'with nodejs_dev_package_ensure set to absent' do let :params do { - nodejs_dev_package_ensure: 'absent' + nodejs_dev_package_ensure: 'absent', } end @@ -603,7 +603,7 @@ context 'and manage_nodejs_package set to true' do let :params do { - manage_nodejs_package: true + manage_nodejs_package: true, } end @@ -615,7 +615,7 @@ context 'and manage_nodejs_package set to false' do let :params do { - manage_nodejs_package: false + manage_nodejs_package: false, } end @@ -629,7 +629,7 @@ context 'with nodejs_package_ensure set to installed' do let :params do { - nodejs_package_ensure: 'installed' + nodejs_package_ensure: 'installed', } end @@ -641,7 +641,7 @@ context 'with nodejs_package_ensure set to absent' do let :params do { - nodejs_package_ensure: 'absent' + nodejs_package_ensure: 'absent', } end @@ -654,7 +654,7 @@ context 'with npm_package_ensure set to installed' do let :params do { - npm_package_ensure: 'installed' + npm_package_ensure: 'installed', } end @@ -666,7 +666,7 @@ context 'with npm_package_ensure set to absent' do let :params do { - npm_package_ensure: 'absent' + npm_package_ensure: 'absent', } end @@ -681,8 +681,8 @@ { 'os' => { 'family' => 'Archlinux', - 'name' => 'Archlinux' - } + 'name' => 'Archlinux', + }, } end @@ -690,7 +690,7 @@ context 'and manage_nodejs_package set to true' do let :params do { - manage_nodejs_package: true + manage_nodejs_package: true, } end @@ -702,7 +702,7 @@ context 'and manage_nodejs_package set to false' do let :params do { - manage_nodejs_package: false + manage_nodejs_package: false, } end @@ -715,7 +715,7 @@ context 'with nodejs_package_ensure set to installed' do let :params do { - nodejs_package_ensure: 'installed' + nodejs_package_ensure: 'installed', } end @@ -727,7 +727,7 @@ context 'with nodejs_package_ensure set to absent' do let :params do { - nodejs_package_ensure: 'absent' + nodejs_package_ensure: 'absent', } end @@ -742,8 +742,8 @@ { 'os' => { 'family' => 'FreeBSD', - 'name' => 'FreeBSD' - } + 'name' => 'FreeBSD', + }, } end @@ -751,7 +751,7 @@ context 'and manage_nodejs_package set to true' do let :params do { - manage_nodejs_package: true + manage_nodejs_package: true, } end @@ -763,7 +763,7 @@ context 'and manage_nodejs_package set to false' do let :params do { - manage_nodejs_package: false + manage_nodejs_package: false, } end @@ -777,7 +777,7 @@ context 'with nodejs_dev_package_ensure set to installed' do let :params do { - nodejs_dev_package_ensure: 'installed' + nodejs_dev_package_ensure: 'installed', } end @@ -789,7 +789,7 @@ context 'with nodejs_dev_package_ensure set to absent' do let :params do { - nodejs_dev_package_ensure: 'absent' + nodejs_dev_package_ensure: 'absent', } end @@ -802,7 +802,7 @@ context 'with nodejs_package_ensure set to installed' do let :params do { - nodejs_package_ensure: 'installed' + nodejs_package_ensure: 'installed', } end @@ -814,7 +814,7 @@ context 'with nodejs_package_ensure set to absent' do let :params do { - nodejs_package_ensure: 'absent' + nodejs_package_ensure: 'absent', } end @@ -827,7 +827,7 @@ context 'with npm_package_ensure set to installed' do let :params do { - npm_package_ensure: 'installed' + npm_package_ensure: 'installed', } end @@ -839,7 +839,7 @@ context 'with npm_package_ensure set to absent' do let :params do { - npm_package_ensure: 'absent' + npm_package_ensure: 'absent', } end @@ -854,8 +854,8 @@ { 'os' => { 'family' => 'OpenBSD', - 'name' => 'OpenBSD' - } + 'name' => 'OpenBSD', + }, } end @@ -863,7 +863,7 @@ context 'and manage_nodejs_package set to true' do let :params do { - manage_nodejs_package: true + manage_nodejs_package: true, } end @@ -875,7 +875,7 @@ context 'and manage_nodejs_package set to false' do let :params do { - manage_nodejs_package: false + manage_nodejs_package: false, } end @@ -888,7 +888,7 @@ context 'with nodejs_package_ensure set to installed' do let :params do { - nodejs_package_ensure: 'installed' + nodejs_package_ensure: 'installed', } end @@ -900,7 +900,7 @@ context 'with nodejs_package_ensure set to absent' do let :params do { - nodejs_package_ensure: 'absent' + nodejs_package_ensure: 'absent', } end @@ -915,8 +915,8 @@ { 'os' => { 'family' => 'Darwin', - 'name' => 'Darwin' - } + 'name' => 'Darwin', + }, } end @@ -924,7 +924,7 @@ context 'and manage_nodejs_package set to true' do let :params do { - manage_nodejs_package: true + manage_nodejs_package: true, } end @@ -936,7 +936,7 @@ context 'and manage_nodejs_package set to false' do let :params do { - manage_nodejs_package: false + manage_nodejs_package: false, } end @@ -950,7 +950,7 @@ context 'with nodejs_dev_package_ensure set to installed' do let :params do { - nodejs_dev_package_ensure: 'installed' + nodejs_dev_package_ensure: 'installed', } end @@ -962,7 +962,7 @@ context 'with nodejs_dev_package_ensure set to absent' do let :params do { - nodejs_dev_package_ensure: 'absent' + nodejs_dev_package_ensure: 'absent', } end @@ -975,7 +975,7 @@ context 'with nodejs_package_ensure set to installed' do let :params do { - nodejs_package_ensure: 'installed' + nodejs_package_ensure: 'installed', } end @@ -987,7 +987,7 @@ context 'with nodejs_package_ensure set to absent' do let :params do { - nodejs_package_ensure: 'absent' + nodejs_package_ensure: 'absent', } end @@ -1000,7 +1000,7 @@ context 'with npm_package_ensure set to installed' do let :params do { - npm_package_ensure: 'installed' + npm_package_ensure: 'installed', } end @@ -1012,7 +1012,7 @@ context 'with npm_package_ensure set to absent' do let :params do { - npm_package_ensure: 'absent' + npm_package_ensure: 'absent', } end @@ -1030,7 +1030,7 @@ context 'with the package_provider set to homebrew' do let :params do { - package_provider: 'homebrew' + package_provider: 'homebrew', } end @@ -1047,9 +1047,9 @@ 'family' => 'Windows', 'name' => 'Windows', 'windows' => { - 'system32' => 'C:\Windows\system32' - } - } + 'system32' => 'C:\Windows\system32', + }, + }, } end @@ -1057,7 +1057,7 @@ context 'and manage_nodejs_package set to true' do let :params do { - manage_nodejs_package: true + manage_nodejs_package: true, } end @@ -1069,7 +1069,7 @@ context 'and manage_nodejs_package set to false' do let :params do { - manage_nodejs_package: false + manage_nodejs_package: false, } end @@ -1082,7 +1082,7 @@ context 'with nodejs_package_ensure set to installed' do let :params do { - nodejs_package_ensure: 'installed' + nodejs_package_ensure: 'installed', } end @@ -1094,7 +1094,7 @@ context 'with nodejs_package_ensure set to absent' do let :params do { - nodejs_package_ensure: 'absent' + nodejs_package_ensure: 'absent', } end @@ -1107,7 +1107,7 @@ context 'with npm_package_ensure set to installed' do let :params do { - npm_package_ensure: 'installed' + npm_package_ensure: 'installed', } end @@ -1119,7 +1119,7 @@ context 'with npm_package_ensure set to absent' do let :params do { - npm_package_ensure: 'absent' + npm_package_ensure: 'absent', } end @@ -1134,8 +1134,8 @@ { 'os' => { 'family' => 'Gentoo', - 'name' => 'Gentoo' - } + 'name' => 'Gentoo', + }, } end @@ -1143,7 +1143,7 @@ context 'and manage_nodejs_package set to true' do let :params do { - manage_nodejs_package: true + manage_nodejs_package: true, } end @@ -1155,7 +1155,7 @@ context 'and manage_nodejs_package set to false' do let :params do { - manage_nodejs_package: false + manage_nodejs_package: false, } end @@ -1168,7 +1168,7 @@ context 'with nodejs_package_ensure set to installed' do let :params do { - nodejs_package_ensure: 'installed' + nodejs_package_ensure: 'installed', } end @@ -1180,7 +1180,7 @@ context 'with nodejs_package_ensure set to absent' do let :params do { - nodejs_package_ensure: 'absent' + nodejs_package_ensure: 'absent', } end @@ -1192,7 +1192,7 @@ context 'with use_flags set to npm, snapshot' do let :params do { - use_flags: %w[npm snapshot] + use_flags: %w[npm snapshot], } end @@ -1211,9 +1211,9 @@ 'release' => { 'full' => '2015.03', 'major' => '2015', - 'minor' => '03' - } - } + 'minor' => '03', + }, + }, } end @@ -1224,7 +1224,7 @@ context 'with manage_package_repo set to true' do let :default_params do { - manage_package_repo: true + manage_package_repo: true, } end @@ -1352,7 +1352,7 @@ context 'with manage_package_repo set to false' do let :params do { - manage_package_repo: false + manage_package_repo: false, } end @@ -1365,7 +1365,7 @@ context 'with nodejs_debug_package_ensure set to installed' do let :params do { - nodejs_debug_package_ensure: 'installed' + nodejs_debug_package_ensure: 'installed', } end @@ -1377,7 +1377,7 @@ context 'with nodejs_debug_package_ensure set to absent' do let :params do { - nodejs_debug_package_ensure: 'absent' + nodejs_debug_package_ensure: 'absent', } end @@ -1390,7 +1390,7 @@ context 'with nodejs_dev_package_ensure set to installed' do let :params do { - nodejs_dev_package_ensure: 'installed' + nodejs_dev_package_ensure: 'installed', } end @@ -1402,7 +1402,7 @@ context 'with nodejs_dev_package_ensure set to absent' do let :params do { - nodejs_dev_package_ensure: 'absent' + nodejs_dev_package_ensure: 'absent', } end @@ -1415,7 +1415,7 @@ context 'with nodejs_package_ensure set to installed' do let :params do { - nodejs_package_ensure: 'installed' + nodejs_package_ensure: 'installed', } end @@ -1427,7 +1427,7 @@ context 'with nodejs_package_ensure set to absent' do let :params do { - nodejs_package_ensure: 'absent' + nodejs_package_ensure: 'absent', } end @@ -1440,7 +1440,7 @@ context 'with npm_package_ensure set to installed' do let :params do { - npm_package_ensure: 'installed' + npm_package_ensure: 'installed', } end @@ -1452,7 +1452,7 @@ context 'with npm_package_ensure set to absent' do let :params do { - npm_package_ensure: 'absent' + npm_package_ensure: 'absent', } end diff --git a/spec/defines/global_config_entry_spec.rb b/spec/defines/global_config_entry_spec.rb index fed654fb..c1735f43 100644 --- a/spec/defines/global_config_entry_spec.rb +++ b/spec/defines/global_config_entry_spec.rb @@ -25,7 +25,7 @@ let(:title) { 'proxy' } let :params do { - value: 'proxy.domain' + value: 'proxy.domain', } end @@ -38,7 +38,7 @@ let(:title) { 'https-proxy' } let :params do { - value: 'proxy.domain' + value: 'proxy.domain', } end @@ -51,7 +51,7 @@ let(:title) { 'color' } let :params do { - ensure: 'absent' + ensure: 'absent', } end @@ -65,7 +65,7 @@ let :params do { value: 'cGFzc3dvcmQ=', - ensure: 'present' + ensure: 'present', } end @@ -87,7 +87,7 @@ class { 'nodejs': let(:title) { 'prefer-online' } let :params do { - value: 'true' + value: 'true', } end @@ -113,7 +113,7 @@ class { 'nodejs': let(:title) { 'loglevel' } let :params do { - value: 'debug' + value: 'debug', } end @@ -137,7 +137,7 @@ class { 'nodejs': let(:title) { 'init-version' } let :params do { - value: '0.0.1' + value: '0.0.1', } end diff --git a/spec/defines/nodejs_npm_spec.rb b/spec/defines/nodejs_npm_spec.rb index 41c01304..83fb4861 100644 --- a/spec/defines/nodejs_npm_spec.rb +++ b/spec/defines/nodejs_npm_spec.rb @@ -30,14 +30,14 @@ { package: 'express', target: '/home/npm/packages', - user: 'foo' + user: 'foo', } end it 'the npm install command should run under user foo' do is_expected.to contain_exec('npm_install_express').with( 'command' => "#{npm_path} install express ", - 'user' => 'foo' + 'user' => 'foo', ) end end @@ -47,7 +47,7 @@ let :params do { package: 'express', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -74,7 +74,7 @@ { install_options: ['--no-bin-links', '--no-optional'], package: 'express', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -88,7 +88,7 @@ let :params do { package: '@scopename/express', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -107,7 +107,7 @@ { ensure: 'tagname', package: '@scopename/express', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -126,7 +126,7 @@ { ensure: 'tagname', package: 'express', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -145,7 +145,7 @@ { ensure: '3', package: '@scopename/express', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -164,7 +164,7 @@ { ensure: '3', package: 'express', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -183,7 +183,7 @@ { package: 'express', source: '/local/folder', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -202,7 +202,7 @@ { package: 'express', source: '/local/package.tgz', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -221,7 +221,7 @@ { package: 'express', source: 'http://domain/package.tgz', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -240,7 +240,7 @@ { package: 'express', source: 'https://domain/package.tgz', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -259,7 +259,7 @@ { package: 'express', source: 'strongloop/express', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -278,7 +278,7 @@ { package: 'express', source: 'git://github.com/strongloop/expressjs.git', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -297,7 +297,7 @@ { package: 'express', source: 'git+ssh://git@github.com:/strongloop/expressjs.git', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -316,7 +316,7 @@ { package: 'express', source: 'git+https://user@github.com/strongloop/expressjs.git', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -336,7 +336,7 @@ ensure: 'present', package: 'express', target: '/home/user/project', - use_package_json: true + use_package_json: true, } end @@ -355,7 +355,7 @@ { ensure: 'absent', package: 'express', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -375,14 +375,14 @@ ensure: 'absent', package: 'express', target: '/home/npm/packages', - uninstall_options: ['--save'] + uninstall_options: ['--save'], } end it 'the command should be npm rm express --save' do is_expected.to contain_exec('npm_rm_express').with( 'command' => "#{npm_path} rm express --save", - 'cwd' => '/home/npm/packages' + 'cwd' => '/home/npm/packages', ) end end @@ -394,7 +394,7 @@ ensure: 'absent', package: 'express', target: '/home/user/project', - use_package_json: true + use_package_json: true, } end @@ -415,8 +415,8 @@ { 'os' => { 'family' => 'Darwin', - 'name' => 'Darwin' - } + 'name' => 'Darwin', + }, } end @@ -428,7 +428,7 @@ let :params do { package: 'express', - target: '/home/npm/packages' + target: '/home/npm/packages', } end @@ -449,9 +449,9 @@ 'family' => 'Windows', 'name' => 'Windows', 'windows' => { - 'system32' => 'C:\Windows\system32' - } - } + 'system32' => 'C:\Windows\system32', + }, + }, } end @@ -463,7 +463,7 @@ let :params do { package: 'express', - target: 'C:\packages' + target: 'C:\packages', } end @@ -486,7 +486,7 @@ { package: 'express', target: 'C:\packages', - install_options: ['--no-bin-links', '--no-optional'] + install_options: ['--no-bin-links', '--no-optional'], } end @@ -500,7 +500,7 @@ let :params do { package: '@scopename/express', - target: 'C:\packages' + target: 'C:\packages', } end @@ -519,7 +519,7 @@ { ensure: 'tagname', package: '@scopename/express', - target: 'C:\packages' + target: 'C:\packages', } end @@ -538,7 +538,7 @@ { ensure: 'tagname', package: 'express', - target: 'C:\packages' + target: 'C:\packages', } end @@ -557,7 +557,7 @@ { ensure: '3', package: '@scopename/express', - target: 'C:\packages' + target: 'C:\packages', } end @@ -576,7 +576,7 @@ { ensure: '3', package: 'express', - target: 'C:\packages' + target: 'C:\packages', } end @@ -595,7 +595,7 @@ { package: 'express', source: 'C:\local\folder', - target: 'C:\packages' + target: 'C:\packages', } end @@ -614,7 +614,7 @@ { package: 'express', source: 'C:\local\package.tgz', - target: 'C:\packages' + target: 'C:\packages', } end @@ -633,7 +633,7 @@ { package: 'express', source: 'http://domain/package.tgz', - target: 'C:\packages' + target: 'C:\packages', } end @@ -652,7 +652,7 @@ { package: 'express', source: 'https://domain/package.tgz', - target: 'C:\packages' + target: 'C:\packages', } end @@ -671,7 +671,7 @@ { package: 'express', source: 'strongloop/express', - target: 'C:\packages' + target: 'C:\packages', } end @@ -690,7 +690,7 @@ { package: 'express', source: 'git://github.com/strongloop/expressjs.git', - target: 'C:\packages' + target: 'C:\packages', } end @@ -709,7 +709,7 @@ { package: 'express', source: 'git+ssh://git@github.com:/strongloop/expressjs.git', - target: 'C:\packages' + target: 'C:\packages', } end @@ -728,7 +728,7 @@ { package: 'express', source: 'git+https://user@github.com/strongloop/expressjs.git', - target: 'C:\packages' + target: 'C:\packages', } end @@ -748,7 +748,7 @@ ensure: 'present', package: 'express', target: 'C:\Users\test\project', - use_package_json: true + use_package_json: true, } end @@ -767,7 +767,7 @@ { ensure: 'absent', package: 'express', - target: 'C:\packages' + target: 'C:\packages', } end @@ -787,7 +787,7 @@ ensure: 'absent', package: 'express', target: 'C:\packages', - uninstall_options: ['--save'] + uninstall_options: ['--save'], } end @@ -803,7 +803,7 @@ ensure: 'absent', package: 'express', target: 'C:\Users\test\project', - use_package_json: true + use_package_json: true, } end diff --git a/spec/unit/puppet/provider/package/npm_spec.rb b/spec/unit/puppet/provider/package/npm_spec.rb index 17fce712..c0c989da 100644 --- a/spec/unit/puppet/provider/package/npm_spec.rb +++ b/spec/unit/puppet/provider/package/npm_spec.rb @@ -6,7 +6,7 @@ let(:resource) do Puppet::Type.type(:package).new( name: 'express', - ensure: :present + ensure: :present, ) end @@ -64,27 +64,27 @@ def self.it_should_respond_to(*actions) end it 'returns a list of npm packages installed globally' do - expect(provider.class).to receive(:execute). - with(['/usr/local/bin/npm', 'list', '--json', '--global'], anything). - and_return(Puppet::Util::Execution::ProcessOutput.new(File.read('spec/fixtures/unit/puppet/provider/package/npm/npm_global'), 0)) + expect(provider.class).to receive(:execute) + .with(['/usr/local/bin/npm', 'list', '--json', '--global'], anything) + .and_return(Puppet::Util::Execution::ProcessOutput.new(File.read('spec/fixtures/unit/puppet/provider/package/npm/npm_global'), 0)) expect(provider.class.instances.map(&:properties).sort_by { |res| res[:name] }).to eq([ { ensure: '2.5.9', provider: 'npm', name: 'express' }, - { ensure: '1.1.15', provider: 'npm', name: 'npm' } + { ensure: '1.1.15', provider: 'npm', name: 'npm' }, ]) end it 'logs and continue if the list command has a non-zero exit code' do - expect(provider.class).to receive(:execute). - with(['/usr/local/bin/npm', 'list', '--json', '--global'], anything). - and_return(Puppet::Util::Execution::ProcessOutput.new(File.read('spec/fixtures/unit/puppet/provider/package/npm/npm_global'), 123)) + expect(provider.class).to receive(:execute) + .with(['/usr/local/bin/npm', 'list', '--json', '--global'], anything) + .and_return(Puppet::Util::Execution::ProcessOutput.new(File.read('spec/fixtures/unit/puppet/provider/package/npm/npm_global'), 123)) expect(Puppet).to receive(:debug).with(a_string_matching(%r{123})) expect(provider.class.instances.map(&:properties)).not_to eq([]) end it "logs and return no packages if JSON isn't output" do - expect(provider.class).to receive(:execute). - with(['/usr/local/bin/npm', 'list', '--json', '--global'], anything). - and_return(Puppet::Util::Execution::ProcessOutput.new('failure!', 0)) + expect(provider.class).to receive(:execute) + .with(['/usr/local/bin/npm', 'list', '--json', '--global'], anything) + .and_return(Puppet::Util::Execution::ProcessOutput.new('failure!', 0)) expect(Puppet).to receive(:debug).with(a_string_matching(%r{npm list.*failure!})) expect(provider.class.instances).to eq([]) end From 7d4e6106078bbf72726abfc548deaa0d3e16078e Mon Sep 17 00:00:00 2001 From: Tim Meusel Date: Sat, 28 Mar 2026 14:47:27 +0100 Subject: [PATCH 4/4] CI: Install rexml --- .sync.yml | 4 ++++ Gemfile | 1 + 2 files changed, 5 insertions(+) diff --git a/.sync.yml b/.sync.yml index 9769f33b..db9f05a3 100644 --- a/.sync.yml +++ b/.sync.yml @@ -1,4 +1,8 @@ --- +Gemfile: + optional: + ':test': + - gem: 'rexml' spec/spec_helper_acceptance.rb: unmanaged: true .github/workflows/ci.yml: diff --git a/Gemfile b/Gemfile index e0c85815..7cfa908d 100644 --- a/Gemfile +++ b/Gemfile @@ -6,6 +6,7 @@ source ENV['GEM_SOURCE'] || 'https://rubygems.org' group :test do gem 'voxpupuli-test', '~> 14.0', :require => false gem 'puppet_metadata', '~> 6.0', :require => false + gem 'rexml', :require => false end group :development do