onceover 3.22.0 → 5.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/.github/dependabot.yml +17 -0
- data/.github/workflows/release.yaml +98 -16
- data/.github/workflows/tests.yaml +31 -7
- data/.gitignore +2 -1
- data/.rubocop.yml +10 -702
- data/.rubocop_todo.yml +777 -0
- data/CHANGELOG.md +1057 -0
- data/Gemfile +8 -4
- data/LICENSE +202 -0
- data/README.md +83 -37
- data/Rakefile +26 -14
- data/features/auto_vendored.feature +27 -0
- data/features/step_definitions/common.rb +5 -5
- data/features/support/cache_helper.rb +0 -1
- data/features/support/command_helper.rb +0 -2
- data/features/support/controlrepo_helper.rb +0 -2
- data/features/zzz_run.feature +1 -1
- data/lib/onceover/beaker/spec_helper.rb +7 -7
- data/lib/onceover/beaker.rb +9 -12
- data/lib/onceover/cli/run.rb +1 -0
- data/lib/onceover/controlrepo.rb +19 -24
- data/lib/onceover/deploy.rb +29 -2
- data/lib/onceover/group.rb +1 -3
- data/lib/onceover/logger.rb +3 -3
- data/lib/onceover/node.rb +0 -2
- data/lib/onceover/rake_tasks.rb +10 -4
- data/lib/onceover/rspec/formatters.rb +6 -5
- data/lib/onceover/runner.rb +3 -3
- data/lib/onceover/test.rb +1 -2
- data/lib/onceover/testconfig.rb +2 -2
- data/lib/onceover/vendored_modules.rb +186 -0
- data/onceover.gemspec +23 -21
- data/spec/fixtures/controlrepos/caching/spec/factsets/README.md +1 -1
- data/spec/fixtures/controlrepos/caching/spec/pre_conditions/README.md +1 -1
- data/spec/fixtures/controlrepos/factsets/spec/factsets/README.md +1 -1
- data/spec/fixtures/controlrepos/puppet_controlrepo/Gemfile +2 -2
- data/spec/fixtures/controlrepos/puppet_controlrepo/Rakefile +1 -1
- data/spec/fixtures/controlrepos/vendored/Puppetfile +3 -0
- data/spec/fixtures/controlrepos/vendored/Puppetfile.cron +5 -0
- data/spec/fixtures/controlrepos/vendored/environment.conf +1 -0
- data/spec/fixtures/controlrepos/vendored/site-modules/role/manifests/cron.pp +9 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/augeas_core-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/augeas_core-puppet_agent-8.6.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/cron_core-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/cron_core-puppet_agent-8.6.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/host_core-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/host_core-puppet_agent-8.6.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/mount_core-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/mount_core-puppet_agent-8.6.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/repo_tree-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/repo_tree-puppet_agent-8.6.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/scheduled_task-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/scheduled_task-puppet_agent-8.6.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/selinux_core-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/selinux_core-puppet_agent-8.6.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/sshkeys_core-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/sshkeys_core-puppet_agent-8.6.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/yumrepo_core-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/yumrepo_core-puppet_agent-8.6.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zfs_core-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zfs_core-puppet_agent-8.6.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zone_core-puppet_agent-7.30.0.json +1 -0
- data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zone_core-puppet_agent-8.6.0.json +1 -0
- data/spec/onceover/controlrepo_spec.rb +1 -1
- data/templates/factsets_README.md.erb +5 -2
- data/templates/pre_conditions_README.md.erb +1 -1
- data/templates/spec_helper.rb.erb +0 -1
- data/templates/testconfig_Rakefile.erb +2 -2
- metadata +111 -81
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 13b36f4288ac28fad2e2dacae0a53bbac7e9d060607172b291f8dba9c7fe11c9
|
4
|
+
data.tar.gz: 5f492f55c749369cb49367670868379fd540b28cd30349849f2e5cd122139ce1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2c829ee671937eef47fdf2ee390547bfe1b4aff450508f415fe455a05e9f10cf17095dfc01aa0253182b652e26929c15303346fbbcd9e7db497fb8f2cc1c00b
|
7
|
+
data.tar.gz: 25485562b7c19edce1fd0aa3808d2071612583b52508c96a5c056c89cb1e6eab84cc0f7433df168982f3df307bb88069b2a724a465796ee870c27cd1178648f9
|
@@ -0,0 +1,17 @@
|
|
1
|
+
version: 2
|
2
|
+
updates:
|
3
|
+
# raise PRs for gem updates
|
4
|
+
- package-ecosystem: bundler
|
5
|
+
directory: "/"
|
6
|
+
schedule:
|
7
|
+
interval: daily
|
8
|
+
time: "13:00"
|
9
|
+
open-pull-requests-limit: 10
|
10
|
+
|
11
|
+
# Maintain dependencies for GitHub Actions
|
12
|
+
- package-ecosystem: github-actions
|
13
|
+
directory: "/"
|
14
|
+
schedule:
|
15
|
+
interval: daily
|
16
|
+
time: "13:00"
|
17
|
+
open-pull-requests-limit: 10
|
@@ -1,24 +1,106 @@
|
|
1
|
-
|
1
|
+
---
|
2
|
+
name: Gem Release
|
2
3
|
|
3
4
|
on:
|
4
|
-
|
5
|
+
push:
|
6
|
+
tags:
|
7
|
+
- '*'
|
8
|
+
|
9
|
+
permissions: {}
|
10
|
+
|
5
11
|
jobs:
|
6
|
-
build:
|
7
|
-
|
8
|
-
|
9
|
-
|
12
|
+
build-release:
|
13
|
+
# Prevent releases from forked repositories
|
14
|
+
if: github.repository_owner == 'voxpupuli'
|
15
|
+
name: Build the gem
|
16
|
+
runs-on: ubuntu-24.04
|
17
|
+
steps:
|
18
|
+
- uses: actions/checkout@v4
|
19
|
+
- name: Install Ruby
|
20
|
+
uses: ruby/setup-ruby@v1
|
21
|
+
with:
|
22
|
+
ruby-version: 'ruby'
|
23
|
+
- name: Build gem
|
24
|
+
shell: bash
|
25
|
+
run: gem build --verbose *.gemspec
|
26
|
+
- name: Upload gem to GitHub cache
|
27
|
+
uses: actions/upload-artifact@v4
|
28
|
+
with:
|
29
|
+
name: gem-artifact
|
30
|
+
path: '*.gem'
|
31
|
+
retention-days: 1
|
32
|
+
compression-level: 0
|
10
33
|
|
34
|
+
create-github-release:
|
35
|
+
needs: build-release
|
36
|
+
name: Create GitHub release
|
37
|
+
runs-on: ubuntu-24.04
|
38
|
+
permissions:
|
39
|
+
contents: write # clone repo and create release
|
11
40
|
steps:
|
12
|
-
-
|
13
|
-
|
14
|
-
- uses: ruby/setup-ruby@v1
|
41
|
+
- name: Download gem from GitHub cache
|
42
|
+
uses: actions/download-artifact@v4
|
15
43
|
with:
|
16
|
-
|
17
|
-
|
44
|
+
name: gem-artifact
|
45
|
+
- name: Create Release
|
46
|
+
shell: bash
|
47
|
+
env:
|
48
|
+
GH_TOKEN: ${{ github.token }}
|
49
|
+
run: gh release create --repo ${{ github.repository }} ${{ github.ref_name }} --generate-notes *.gem
|
18
50
|
|
19
|
-
|
20
|
-
|
51
|
+
release-to-github:
|
52
|
+
needs: build-release
|
53
|
+
name: Release to GitHub
|
54
|
+
runs-on: ubuntu-24.04
|
55
|
+
permissions:
|
56
|
+
packages: write # publish to rubygems.pkg.github.com
|
57
|
+
steps:
|
58
|
+
- name: Download gem from GitHub cache
|
59
|
+
uses: actions/download-artifact@v4
|
60
|
+
with:
|
61
|
+
name: gem-artifact
|
62
|
+
- name: Publish gem to GitHub packages
|
63
|
+
run: gem push --host https://rubygems.pkg.github.com/${{ github.repository_owner }} *.gem
|
21
64
|
env:
|
22
|
-
|
23
|
-
|
24
|
-
|
65
|
+
GEM_HOST_API_KEY: ${{ secrets.GITHUB_TOKEN }}
|
66
|
+
|
67
|
+
release-to-rubygems:
|
68
|
+
needs: build-release
|
69
|
+
name: Release gem to rubygems.org
|
70
|
+
runs-on: ubuntu-24.04
|
71
|
+
environment: release # recommended by rubygems.org
|
72
|
+
permissions:
|
73
|
+
id-token: write # rubygems.org authentication
|
74
|
+
steps:
|
75
|
+
- name: Download gem from GitHub cache
|
76
|
+
uses: actions/download-artifact@v4
|
77
|
+
with:
|
78
|
+
name: gem-artifact
|
79
|
+
- uses: rubygems/configure-rubygems-credentials@v1.0.0
|
80
|
+
- name: Publish gem to rubygems.org
|
81
|
+
shell: bash
|
82
|
+
run: gem push *.gem
|
83
|
+
|
84
|
+
release-verification:
|
85
|
+
name: Check that all releases are done
|
86
|
+
runs-on: ubuntu-24.04
|
87
|
+
permissions:
|
88
|
+
contents: read # minimal permissions that we have to grant
|
89
|
+
needs:
|
90
|
+
- create-github-release
|
91
|
+
- release-to-github
|
92
|
+
- release-to-rubygems
|
93
|
+
steps:
|
94
|
+
- name: Download gem from GitHub cache
|
95
|
+
uses: actions/download-artifact@v4
|
96
|
+
with:
|
97
|
+
name: gem-artifact
|
98
|
+
- name: Install Ruby
|
99
|
+
uses: ruby/setup-ruby@v1
|
100
|
+
with:
|
101
|
+
ruby-version: 'ruby'
|
102
|
+
- name: Wait for release to propagate
|
103
|
+
shell: bash
|
104
|
+
run: |
|
105
|
+
gem install rubygems-await
|
106
|
+
gem await *.gem
|
@@ -1,9 +1,26 @@
|
|
1
1
|
name: Tests
|
2
|
+
|
2
3
|
on:
|
3
|
-
|
4
|
-
|
4
|
+
pull_request: {}
|
5
|
+
push:
|
6
|
+
branches:
|
7
|
+
- master
|
8
|
+
|
5
9
|
jobs:
|
6
|
-
|
10
|
+
rubocop:
|
11
|
+
env:
|
12
|
+
BUNDLE_WITHOUT: release
|
13
|
+
runs-on: ubuntu-latest
|
14
|
+
steps:
|
15
|
+
- uses: actions/checkout@v4
|
16
|
+
- name: Install Ruby ${{ matrix.ruby }}
|
17
|
+
uses: ruby/setup-ruby@v1
|
18
|
+
with:
|
19
|
+
ruby-version: "3.3"
|
20
|
+
bundler-cache: true
|
21
|
+
- name: Run Rubocop
|
22
|
+
run: bundle exec rake rubocop
|
23
|
+
test:
|
7
24
|
strategy:
|
8
25
|
fail-fast: false
|
9
26
|
matrix:
|
@@ -11,18 +28,16 @@ jobs:
|
|
11
28
|
- windows-latest
|
12
29
|
- ubuntu-latest
|
13
30
|
- macos-latest
|
31
|
+
- ubuntu-24.04-arm
|
14
32
|
puppet:
|
15
|
-
- "~> 7.0"
|
16
33
|
- "~> 8.0"
|
17
34
|
include:
|
18
|
-
- puppet: "~> 7.0"
|
19
|
-
ruby: 2.7
|
20
35
|
- puppet: "~> 8.0"
|
21
36
|
ruby: 3.2
|
22
37
|
|
23
38
|
runs-on: ${{ matrix.os }}
|
24
39
|
steps:
|
25
|
-
- uses: actions/checkout@
|
40
|
+
- uses: actions/checkout@v4
|
26
41
|
- uses: ruby/setup-ruby@v1
|
27
42
|
with:
|
28
43
|
ruby-version: ${{ matrix.ruby }}
|
@@ -35,3 +50,12 @@ jobs:
|
|
35
50
|
- env:
|
36
51
|
PUPPET_VERSION: ${{ matrix.puppet }}
|
37
52
|
run: bundle exec rake full_tests
|
53
|
+
|
54
|
+
tests:
|
55
|
+
needs:
|
56
|
+
- rubocop
|
57
|
+
- test
|
58
|
+
runs-on: ubuntu-latest
|
59
|
+
name: Test suite
|
60
|
+
steps:
|
61
|
+
- run: echo Test suite completed
|