onceover 3.21.0 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (191) hide show
  1. checksums.yaml +4 -4
  2. data/.devcontainer/devcontainer.json +4 -6
  3. data/.github/dependabot.yml +17 -0
  4. data/.github/workflows/release.yaml +32 -0
  5. data/.github/workflows/tests.yaml +30 -4
  6. data/.gitignore +2 -1
  7. data/.rubocop.yml +4 -704
  8. data/.rubocop_todo.yml +828 -0
  9. data/CHANGELOG.md +1036 -0
  10. data/Gemfile +9 -0
  11. data/LICENSE +202 -0
  12. data/README.md +122 -32
  13. data/Rakefile +24 -14
  14. data/cucumber.yml +1 -0
  15. data/features/auto_vendored.feature +27 -0
  16. data/features/step_definitions/common.rb +5 -5
  17. data/features/step_definitions/run.rb +4 -0
  18. data/features/support/cache_helper.rb +0 -1
  19. data/features/support/command_helper.rb +0 -2
  20. data/features/support/controlrepo_helper.rb +0 -2
  21. data/features/zzz_run.feature +1 -8
  22. data/lib/onceover/beaker/spec_helper.rb +9 -9
  23. data/lib/onceover/beaker.rb +9 -12
  24. data/lib/onceover/cli/run.rb +1 -0
  25. data/lib/onceover/controlrepo.rb +22 -27
  26. data/lib/onceover/deploy.rb +30 -3
  27. data/lib/onceover/group.rb +1 -3
  28. data/lib/onceover/logger.rb +3 -3
  29. data/lib/onceover/node.rb +0 -2
  30. data/lib/onceover/rake_tasks.rb +9 -4
  31. data/lib/onceover/rspec/formatters.rb +5 -8
  32. data/lib/onceover/runner.rb +1 -1
  33. data/lib/onceover/test.rb +2 -3
  34. data/lib/onceover/testconfig.rb +2 -2
  35. data/lib/onceover/vendored_modules.rb +186 -0
  36. data/onceover.gemspec +26 -30
  37. data/spec/fixtures/controlrepos/caching/spec/factsets/README.md +1 -1
  38. data/spec/fixtures/controlrepos/caching/spec/pre_conditions/README.md +1 -1
  39. data/spec/fixtures/controlrepos/factsets/spec/factsets/README.md +1 -1
  40. data/spec/fixtures/controlrepos/puppet_controlrepo/.atom-build.json +9 -0
  41. data/spec/fixtures/controlrepos/puppet_controlrepo/.gitignore +5 -0
  42. data/spec/fixtures/controlrepos/puppet_controlrepo/.ruby-version +1 -0
  43. data/spec/fixtures/controlrepos/puppet_controlrepo/.travis.yml +13 -0
  44. data/spec/fixtures/controlrepos/puppet_controlrepo/Gemfile +22 -0
  45. data/spec/fixtures/controlrepos/puppet_controlrepo/Jenkinsfile +50 -0
  46. data/spec/fixtures/controlrepos/puppet_controlrepo/Puppetfile +102 -0
  47. data/spec/fixtures/controlrepos/puppet_controlrepo/README.md +4 -0
  48. data/spec/fixtures/controlrepos/puppet_controlrepo/Rakefile +6 -0
  49. data/spec/fixtures/controlrepos/puppet_controlrepo/data/common.yaml +558 -0
  50. data/spec/fixtures/controlrepos/puppet_controlrepo/data/datacenter/melbourne.yaml +12 -0
  51. data/spec/fixtures/controlrepos/puppet_controlrepo/data/datacenter/singapore.yaml +12 -0
  52. data/spec/fixtures/controlrepos/puppet_controlrepo/data/environments/development.yaml +3 -0
  53. data/spec/fixtures/controlrepos/puppet_controlrepo/data/environments/production.yaml +3 -0
  54. data/spec/fixtures/controlrepos/puppet_controlrepo/data/size/vol.large.yaml +27 -0
  55. data/spec/fixtures/controlrepos/puppet_controlrepo/environment.conf +3 -0
  56. data/spec/fixtures/controlrepos/puppet_controlrepo/hiera.yaml +25 -0
  57. data/spec/fixtures/controlrepos/puppet_controlrepo/manifests/site.pp +11 -0
  58. data/spec/fixtures/controlrepos/puppet_controlrepo/scripts/code_manager_config_version.rb +19 -0
  59. data/spec/fixtures/controlrepos/puppet_controlrepo/scripts/config_version.rb +25 -0
  60. data/spec/fixtures/controlrepos/puppet_controlrepo/scripts/config_version.sh +12 -0
  61. data/spec/fixtures/controlrepos/puppet_controlrepo/scripts/count_changed_classes.rb +26 -0
  62. data/spec/fixtures/controlrepos/puppet_controlrepo/scripts/get_changed_classes.rb +26 -0
  63. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/console/functions/user/token.pp +10 -0
  64. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/console/manifests/init.pp +14 -0
  65. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/console/manifests/user.pp +35 -0
  66. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/deployments/lib/puppet/functions/deployments/generate.rb +15 -0
  67. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/deployments/plans/signed_deployment.pp +126 -0
  68. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/facts.d/test.sh +2 -0
  69. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/files/artifactory/config_descriptor.xml +265 -0
  70. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/files/autosign.sh +23 -0
  71. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/files/hudson.tasks.Shell.xml +4 -0
  72. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/files/motd +4 -0
  73. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/files/polar_clock/index.html +198 -0
  74. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/apt.pp +9 -0
  75. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/aws_nodes.pp +54 -0
  76. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/base/aws.pp +9 -0
  77. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/base/rhel.pp +50 -0
  78. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/base/windows/hardening.pp +57 -0
  79. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/base/windows.pp +52 -0
  80. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/base.pp +79 -0
  81. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/cd4pe/artifactory.pp +64 -0
  82. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/cd4pe/connection.pp +95 -0
  83. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/cd4pe/haproxy.pp +65 -0
  84. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/cd4pe/replicated.pp +53 -0
  85. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/compile/balancer.pp +28 -0
  86. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/compile/master.pp +19 -0
  87. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/dns/host_record.pp +16 -0
  88. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/dns/server.pp +66 -0
  89. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/docker.pp +5 -0
  90. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/eyeunify/base.pp +43 -0
  91. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/eyeunify/core/database_connection.pp +42 -0
  92. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/eyeunify/core.pp +72 -0
  93. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/eyeunify/ctrl.pp +57 -0
  94. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/eyeunify/database.pp +32 -0
  95. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/eyeunify/exec.pp +11 -0
  96. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/file_sync/client.pp +165 -0
  97. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/file_sync/master_patch.pp +37 -0
  98. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/grafana/dashboard.pp +17 -0
  99. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/haproxy.pp +43 -0
  100. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/init.pp +3 -0
  101. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/jenkins/plugins.pp +87 -0
  102. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/jenkins.pp +65 -0
  103. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/jira/aio.pp +39 -0
  104. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/jira/app.pp +27 -0
  105. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/jira/db.pp +25 -0
  106. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/metrics/collectd/compile.pp +82 -0
  107. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/metrics/collectd.pp +28 -0
  108. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/metrics/dashboard.pp +28 -0
  109. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/mysql_server.pp +7 -0
  110. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/nginx.pp +24 -0
  111. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/polar_clock.pp +55 -0
  112. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/puppetmaster/api_auth.pp +82 -0
  113. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/puppetmaster/autosign.pp +33 -0
  114. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/puppetmaster/aws.pp +58 -0
  115. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/puppetmaster/tuning.pp +139 -0
  116. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/puppetmaster.pp +139 -0
  117. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/rvm.pp +13 -0
  118. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/sumologic.pp +11 -0
  119. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/sunburst/windows.pp +104 -0
  120. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/vagrant.pp +25 -0
  121. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/manifests/windows/webserver.pp +27 -0
  122. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/templates/cd4pe/connection_script.sh.epp +110 -0
  123. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/templates/controlrepo_deploy_jenkins_job.xml.epp +51 -0
  124. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/templates/dashboard.json.epp +403 -0
  125. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/templates/jenkins_secret_text.json.epp +1 -0
  126. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/templates/onceover_jenkins_job.xml.epp +51 -0
  127. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/profile/templates/userdata.epp +17 -0
  128. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/cd4pe.pp +29 -0
  129. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/clock.pp +16 -0
  130. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/compile/balancer.pp +5 -0
  131. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/compile/master.pp +5 -0
  132. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/eyeunify/aio.pp +10 -0
  133. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/eyeunify/controller.pp +10 -0
  134. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/eyeunify/database.pp +7 -0
  135. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/eyeunify/exec.pp +6 -0
  136. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/init.pp +3 -0
  137. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/lb.pp +14 -0
  138. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/metrics.pp +5 -0
  139. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/mysql.pp +13 -0
  140. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/windows/base.pp +5 -0
  141. data/spec/fixtures/controlrepos/puppet_controlrepo/site-modules/role/manifests/windows/webserver.pp +6 -0
  142. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/.gitignore +5 -0
  143. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/acceptance/nodesets/onceover-nodes.yml +94 -0
  144. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/classes/test_spec.rb +8 -0
  145. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/factsets/CentOS-7.0-64-master-2017.3.2.json +531 -0
  146. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/factsets/CentOS-7.0-64-master.json +429 -0
  147. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/factsets/CentOS-7.0-64.json +353 -0
  148. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/factsets/Windows_Server-2008r2-64.json +184 -0
  149. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/factsets/Windows_Server-2012r2-64.json +165 -0
  150. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/hiera.yaml +18 -0
  151. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/matchers/file_matchers.rb +16 -0
  152. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/onceover.yaml +54 -0
  153. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/pre_conditions/site.pp +150 -0
  154. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/r10k.yaml +2 -0
  155. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/shared_examples/helper.rb +91 -0
  156. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/unit/00_parse_spec.rb +76 -0
  157. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/unit/01_linting_spec_example.rb +69 -0
  158. data/spec/fixtures/controlrepos/puppet_controlrepo/spec/unit/03_puppetfile_spec_example.rb +35 -0
  159. data/spec/fixtures/controlrepos/vendored/Puppetfile +3 -0
  160. data/spec/fixtures/controlrepos/vendored/Puppetfile.cron +5 -0
  161. data/spec/fixtures/controlrepos/vendored/environment.conf +1 -0
  162. data/spec/fixtures/controlrepos/vendored/site-modules/role/manifests/cron.pp +9 -0
  163. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/augeas_core-puppet_agent-7.30.0.json +1 -0
  164. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/augeas_core-puppet_agent-8.6.0.json +1 -0
  165. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/cron_core-puppet_agent-7.30.0.json +1 -0
  166. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/cron_core-puppet_agent-8.6.0.json +1 -0
  167. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/host_core-puppet_agent-7.30.0.json +1 -0
  168. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/host_core-puppet_agent-8.6.0.json +1 -0
  169. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/mount_core-puppet_agent-7.30.0.json +1 -0
  170. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/mount_core-puppet_agent-8.6.0.json +1 -0
  171. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/repo_tree-puppet_agent-7.30.0.json +1 -0
  172. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/repo_tree-puppet_agent-8.6.0.json +1 -0
  173. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/scheduled_task-puppet_agent-7.30.0.json +1 -0
  174. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/scheduled_task-puppet_agent-8.6.0.json +1 -0
  175. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/selinux_core-puppet_agent-7.30.0.json +1 -0
  176. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/selinux_core-puppet_agent-8.6.0.json +1 -0
  177. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/sshkeys_core-puppet_agent-7.30.0.json +1 -0
  178. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/sshkeys_core-puppet_agent-8.6.0.json +1 -0
  179. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/yumrepo_core-puppet_agent-7.30.0.json +1 -0
  180. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/yumrepo_core-puppet_agent-8.6.0.json +1 -0
  181. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zfs_core-puppet_agent-7.30.0.json +1 -0
  182. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zfs_core-puppet_agent-8.6.0.json +1 -0
  183. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zone_core-puppet_agent-7.30.0.json +1 -0
  184. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zone_core-puppet_agent-8.6.0.json +1 -0
  185. data/spec/onceover/controlrepo_spec.rb +1 -1
  186. data/templates/factsets_README.md.erb +1 -1
  187. data/templates/pre_conditions_README.md.erb +1 -1
  188. data/templates/spec_helper.rb.erb +0 -2
  189. data/templates/test_spec.rb.erb +3 -0
  190. metadata +173 -68
  191. data/.gitmodules +0 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4efb9fe2eee59809e38c373cbc31ea99eeb314b0ddd631b9242789da7174609c
4
- data.tar.gz: 0a4186e296c4d0cf3eb99ef4f5214d110622de95e8037138bb9e1fb66d45d1d4
3
+ metadata.gz: 62ace64dee90c811ed79a0d4e8388711ce808b7fef7c9ebb6f7ab1103293de73
4
+ data.tar.gz: 50c3ace5d24af8b240763e4d84699c7dd57d27d64908ddd1049914707b61aede
5
5
  SHA512:
6
- metadata.gz: e3bdc3f4114ddd8291a798c73585677a2855522d63d425d55d19a8a47c0ea4a9dbd7d31544fce7554133076a5be82779a4ffeffc6650e8f04fbc5c43d76847e5
7
- data.tar.gz: 06ef6823ba3371f6f259e9c4f85ed97d17f623297a368baa2dc0cf9bc9c3255162244a27b32e3376958dbe522e642850450a562ff4b648af04b04cb8632e9537
6
+ metadata.gz: 12bac2ebf77efff73c73d61a07432158e0ed6cf7ca5750fa31e55443ad5267b0dc1cc2f9bc58c0f026a72b8a8797f9b02b1783505122619e99b39888b166aea9
7
+ data.tar.gz: 45bd8b4b2f9a1c8922ff44a964fa62567c7f0a63bf1cd785b0c5d49976f14cb299b16c43dd0af44d145a452c7544d484a47b2e7dd22331645cdd015d0ab8a31d
@@ -3,21 +3,19 @@
3
3
  {
4
4
  "name": "Debian",
5
5
  // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
6
- "image": "mcr.microsoft.com/devcontainers/base:bullseye",
6
+ "image": "mcr.microsoft.com/devcontainers/ruby:3.2",
7
7
  "features": {
8
- "ghcr.io/devcontainers/features/ruby:1": {},
9
8
  "ghcr.io/devcontainers/features/github-cli:1": {}
10
9
  },
11
10
 
12
- "postAttachCommand": "bundle",
13
11
  "customizations": {
14
12
  "vscode": {
15
13
  "extensions": [
16
- "castwide.ruby-debug",
17
- "CucumberOpen.cucumber-official"
14
+ "CucumberOpen.cucumber-official",
15
+ "Shopify.ruby-extensions-pack"
18
16
  ]
19
17
  }
20
- }
18
+ },
21
19
 
22
20
  // Features to add to the dev container. More info: https://containers.dev/features.
23
21
  // "features": {},
@@ -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
@@ -0,0 +1,32 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - '*'
7
+
8
+ jobs:
9
+ release:
10
+ runs-on: ubuntu-latest
11
+ if: github.repository_owner == 'voxpupuli'
12
+ steps:
13
+ - uses: actions/checkout@v4
14
+ - name: Install Ruby 3.3
15
+ uses: ruby/setup-ruby@v1
16
+ with:
17
+ ruby-version: '3.3'
18
+ env:
19
+ BUNDLE_WITHOUT: release:development:rubocop
20
+ - name: Build gem
21
+ run: gem build --verbose *.gemspec
22
+ - name: Publish gem to rubygems.org
23
+ run: gem push *.gem
24
+ env:
25
+ GEM_HOST_API_KEY: '${{ secrets.RUBYGEMS_AUTH_TOKEN }}'
26
+ - name: Setup GitHub packages access
27
+ run: |
28
+ mkdir -p ~/.gem
29
+ echo ":github: Bearer ${{ secrets.GITHUB_TOKEN }}" >> ~/.gem/credentials
30
+ chmod 0600 ~/.gem/credentials
31
+ - name: Publish gem to GitHub packages
32
+ run: gem push --key github --host https://rubygems.pkg.github.com/voxpupuli *.gem
@@ -1,9 +1,26 @@
1
1
  name: Tests
2
+
2
3
  on:
3
- - push
4
- - pull_request
4
+ pull_request: {}
5
+ push:
6
+ branches:
7
+ - master
8
+
5
9
  jobs:
6
- full_tests:
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:
@@ -22,7 +39,7 @@ jobs:
22
39
 
23
40
  runs-on: ${{ matrix.os }}
24
41
  steps:
25
- - uses: actions/checkout@v2
42
+ - uses: actions/checkout@v4
26
43
  - uses: ruby/setup-ruby@v1
27
44
  with:
28
45
  ruby-version: ${{ matrix.ruby }}
@@ -35,3 +52,12 @@ jobs:
35
52
  - env:
36
53
  PUPPET_VERSION: ${{ matrix.puppet }}
37
54
  run: bundle exec rake full_tests
55
+
56
+ tests:
57
+ needs:
58
+ - rubocop
59
+ - test
60
+ runs-on: ubuntu-latest
61
+ name: Test suite
62
+ steps:
63
+ - run: echo Test suite completed
data/.gitignore CHANGED
@@ -8,7 +8,8 @@ Gemfile.local
8
8
  /.bin
9
9
  /.ruby-version
10
10
  tmp
11
- vendor
11
+ /vendor
12
+ /.vendor
12
13
 
13
14
  # Vim
14
15
  /.projections.json