beaker 4.38.1 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (225) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +9 -0
  3. data/.github/workflows/release.yml +2 -2
  4. data/.github/workflows/test.yml +36 -11
  5. data/.rubocop.yml +75 -0
  6. data/.rubocop_todo.yml +239 -0
  7. data/CHANGELOG.md +88 -33
  8. data/Gemfile +16 -4
  9. data/HISTORY.md +103 -0
  10. data/Rakefile +101 -112
  11. data/acceptance/config/acceptance-options.rb +1 -1
  12. data/acceptance/config/base/acceptance-options.rb +2 -2
  13. data/acceptance/config/hypervisor/acceptance-options.rb +2 -2
  14. data/acceptance/config/subcommands/acceptance-options.rb +2 -2
  15. data/acceptance/fixtures/module/Gemfile +1 -1
  16. data/acceptance/fixtures/module/Rakefile +3 -3
  17. data/acceptance/fixtures/module/spec/acceptance/demo_spec.rb +16 -23
  18. data/acceptance/fixtures/module/spec/classes/init_spec.rb +1 -2
  19. data/acceptance/fixtures/module/spec/spec_helper_acceptance.rb +3 -5
  20. data/acceptance/lib/helpers/test_helper.rb +7 -6
  21. data/acceptance/pre_suite/subcommands/05_install_ruby.rb +2 -3
  22. data/acceptance/pre_suite/subcommands/08_install_beaker.rb +1 -2
  23. data/acceptance/tests/base/dsl/helpers/configuration_test.rb +4 -4
  24. data/acceptance/tests/base/dsl/helpers/hocon_helpers_test.rb +7 -8
  25. data/acceptance/tests/base/dsl/helpers/host_helpers/add_system32_hosts_entry_test.rb +0 -3
  26. data/acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb +9 -7
  27. data/acceptance/tests/base/dsl/helpers/host_helpers/backup_the_file_test.rb +15 -21
  28. data/acceptance/tests/base/dsl/helpers/host_helpers/check_for_package_test.rb +0 -4
  29. data/acceptance/tests/base/dsl/helpers/host_helpers/create_remote_file_test.rb +23 -30
  30. data/acceptance/tests/base/dsl/helpers/host_helpers/curl_on_test.rb +3 -3
  31. data/acceptance/tests/base/dsl/helpers/host_helpers/curl_with_retries_test.rb +0 -1
  32. data/acceptance/tests/base/dsl/helpers/host_helpers/on_test.rb +21 -16
  33. data/acceptance/tests/base/dsl/helpers/host_helpers/retry_on_test.rb +7 -7
  34. data/acceptance/tests/base/dsl/helpers/host_helpers/rsync_to_test.rb +30 -38
  35. data/acceptance/tests/base/dsl/helpers/host_helpers/run_cron_on_test.rb +14 -18
  36. data/acceptance/tests/base/dsl/helpers/host_helpers/run_script_on_test.rb +8 -14
  37. data/acceptance/tests/base/dsl/helpers/host_helpers/run_script_test.rb +7 -11
  38. data/acceptance/tests/base/dsl/helpers/host_helpers/scp_from_test.rb +5 -5
  39. data/acceptance/tests/base/dsl/helpers/host_helpers/scp_to_test.rb +4 -5
  40. data/acceptance/tests/base/dsl/helpers/host_helpers/shell_test.rb +8 -8
  41. data/acceptance/tests/base/dsl/helpers/host_helpers/upgrade_package_test.rb +4 -6
  42. data/acceptance/tests/base/dsl/platform_tag_confiner_test.rb +14 -17
  43. data/acceptance/tests/base/dsl/structure_test.rb +9 -21
  44. data/acceptance/tests/base/host/file_test.rb +8 -8
  45. data/acceptance/tests/base/host/group_test.rb +2 -3
  46. data/acceptance/tests/base/host/host_test.rb +69 -66
  47. data/acceptance/tests/base/host/packages.rb +27 -30
  48. data/acceptance/tests/base/host/packages_unix.rb +0 -55
  49. data/acceptance/tests/base/host/user_test.rb +2 -3
  50. data/acceptance/tests/base/host_prebuilt_steps/ssh_environment_test.rb +1 -2
  51. data/acceptance/tests/base/test_suite/export.rb +6 -9
  52. data/acceptance/tests/install/from_file.rb +3 -5
  53. data/acceptance/tests/load_path_bootstrap.rb +1 -1
  54. data/acceptance/tests/subcommands/destroy.rb +19 -21
  55. data/acceptance/tests/subcommands/exec.rb +0 -1
  56. data/acceptance/tests/subcommands/init.rb +2 -3
  57. data/acceptance/tests/subcommands/provision.rb +0 -1
  58. data/beaker.gemspec +10 -14
  59. data/docs/concepts/argument_processing_and_precedence.md +1 -10
  60. data/docs/concepts/style_guide.md +1 -1
  61. data/docs/how_to/debug_beaker_tests.md +13 -13
  62. data/docs/how_to/hosts/eos.md +2 -12
  63. data/docs/how_to/install_puppet.md +0 -18
  64. data/docs/how_to/test_arbitrary_beaker_versions.md +2 -2
  65. data/docs/how_to/the_beaker_dsl.md +0 -2
  66. data/lib/beaker/cli.rb +63 -74
  67. data/lib/beaker/command.rb +22 -30
  68. data/lib/beaker/command_factory.rb +4 -3
  69. data/lib/beaker/dsl/assertions.rb +7 -19
  70. data/lib/beaker/dsl/helpers/hocon_helpers.rb +5 -9
  71. data/lib/beaker/dsl/helpers/host_helpers.rb +72 -133
  72. data/lib/beaker/dsl/helpers/test_helpers.rb +3 -5
  73. data/lib/beaker/dsl/helpers/web_helpers.rb +20 -28
  74. data/lib/beaker/dsl/helpers.rb +2 -4
  75. data/lib/beaker/dsl/outcomes.rb +17 -19
  76. data/lib/beaker/dsl/patterns.rb +1 -3
  77. data/lib/beaker/dsl/roles.rb +18 -21
  78. data/lib/beaker/dsl/structure.rb +55 -67
  79. data/lib/beaker/dsl/test_tagging.rb +7 -10
  80. data/lib/beaker/dsl/wrappers.rb +15 -16
  81. data/lib/beaker/dsl.rb +2 -3
  82. data/lib/beaker/host/aix/exec.rb +1 -1
  83. data/lib/beaker/host/aix/file.rb +0 -1
  84. data/lib/beaker/host/aix/group.rb +3 -3
  85. data/lib/beaker/host/aix/user.rb +3 -3
  86. data/lib/beaker/host/aix.rb +3 -4
  87. data/lib/beaker/host/cisco.rb +36 -48
  88. data/lib/beaker/host/eos.rb +4 -30
  89. data/lib/beaker/host/freebsd/exec.rb +1 -1
  90. data/lib/beaker/host/freebsd/pkg.rb +3 -3
  91. data/lib/beaker/host/freebsd.rb +9 -12
  92. data/lib/beaker/host/mac/exec.rb +5 -5
  93. data/lib/beaker/host/mac/group.rb +13 -13
  94. data/lib/beaker/host/mac/pkg.rb +6 -109
  95. data/lib/beaker/host/mac/user.rb +7 -7
  96. data/lib/beaker/host/mac.rb +8 -9
  97. data/lib/beaker/host/pswindows/exec.rb +70 -74
  98. data/lib/beaker/host/pswindows/file.rb +4 -6
  99. data/lib/beaker/host/pswindows/group.rb +5 -5
  100. data/lib/beaker/host/pswindows/pkg.rb +17 -17
  101. data/lib/beaker/host/pswindows/user.rb +4 -4
  102. data/lib/beaker/host/pswindows.rb +4 -3
  103. data/lib/beaker/host/unix/exec.rb +86 -88
  104. data/lib/beaker/host/unix/file.rb +41 -47
  105. data/lib/beaker/host/unix/group.rb +3 -3
  106. data/lib/beaker/host/unix/pkg.rb +158 -421
  107. data/lib/beaker/host/unix/user.rb +4 -4
  108. data/lib/beaker/host/unix.rb +18 -20
  109. data/lib/beaker/host/windows/exec.rb +20 -20
  110. data/lib/beaker/host/windows/file.rb +5 -5
  111. data/lib/beaker/host/windows/group.rb +5 -5
  112. data/lib/beaker/host/windows/pkg.rb +6 -57
  113. data/lib/beaker/host/windows/user.rb +4 -4
  114. data/lib/beaker/host/windows.rb +13 -13
  115. data/lib/beaker/host.rb +82 -139
  116. data/lib/beaker/host_prebuilt_steps.rb +121 -233
  117. data/lib/beaker/hypervisor/noop.rb +2 -4
  118. data/lib/beaker/hypervisor.rb +46 -63
  119. data/lib/beaker/local_connection.rb +4 -6
  120. data/lib/beaker/logger.rb +71 -85
  121. data/lib/beaker/logger_junit.rb +22 -26
  122. data/lib/beaker/network_manager.rb +40 -43
  123. data/lib/beaker/options/command_line_parser.rb +12 -23
  124. data/lib/beaker/options/hosts_file_parser.rb +34 -25
  125. data/lib/beaker/options/options_file_parser.rb +3 -6
  126. data/lib/beaker/options/options_hash.rb +3 -10
  127. data/lib/beaker/options/parser.rb +89 -105
  128. data/lib/beaker/options/presets.rb +114 -123
  129. data/lib/beaker/options/subcommand_options_file_parser.rb +3 -6
  130. data/lib/beaker/options/validator.rb +26 -31
  131. data/lib/beaker/perf.rb +29 -34
  132. data/lib/beaker/platform.rb +38 -46
  133. data/lib/beaker/result.rb +7 -6
  134. data/lib/beaker/shared/error_handler.rb +8 -10
  135. data/lib/beaker/shared/fog_credentials.rb +5 -9
  136. data/lib/beaker/shared/host_manager.rb +40 -46
  137. data/lib/beaker/shared/options_resolver.rb +3 -7
  138. data/lib/beaker/shared/repetition.rb +6 -8
  139. data/lib/beaker/shared/semvar.rb +39 -43
  140. data/lib/beaker/shared/timed.rb +2 -5
  141. data/lib/beaker/shared.rb +1 -1
  142. data/lib/beaker/ssh_connection.rb +46 -55
  143. data/lib/beaker/subcommand.rb +23 -30
  144. data/lib/beaker/subcommands/subcommand_util.rb +4 -4
  145. data/lib/beaker/tasks/quick_start.rb +5 -10
  146. data/lib/beaker/tasks/rake_task.rb +26 -28
  147. data/lib/beaker/tasks/test.rb +4 -4
  148. data/lib/beaker/test_case.rb +15 -27
  149. data/lib/beaker/test_suite.rb +35 -39
  150. data/lib/beaker/test_suite_result.rb +52 -57
  151. data/lib/beaker/version.rb +1 -1
  152. data/lib/beaker.rb +5 -6
  153. data/spec/beaker/cli_spec.rb +135 -153
  154. data/spec/beaker/command_spec.rb +64 -58
  155. data/spec/beaker/dsl/assertions_spec.rb +38 -47
  156. data/spec/beaker/dsl/helpers/host_helpers_spec.rb +114 -135
  157. data/spec/beaker/dsl/helpers/test_helpers_spec.rb +9 -10
  158. data/spec/beaker/dsl/helpers/web_helpers_spec.rb +30 -36
  159. data/spec/beaker/dsl/outcomes_spec.rb +15 -14
  160. data/spec/beaker/dsl/roles_spec.rb +170 -132
  161. data/spec/beaker/dsl/structure_spec.rb +181 -163
  162. data/spec/beaker/dsl/test_tagging_spec.rb +94 -95
  163. data/spec/beaker/dsl/wrappers_spec.rb +39 -40
  164. data/spec/beaker/host/aix_spec.rb +14 -14
  165. data/spec/beaker/host/cisco_spec.rb +92 -102
  166. data/spec/beaker/host/eos_spec.rb +15 -36
  167. data/spec/beaker/host/freebsd/exec_spec.rb +5 -8
  168. data/spec/beaker/host/freebsd/pkg_spec.rb +29 -29
  169. data/spec/beaker/host/mac/exec_spec.rb +4 -5
  170. data/spec/beaker/host/mac/group_spec.rb +47 -56
  171. data/spec/beaker/host/mac/user_spec.rb +53 -62
  172. data/spec/beaker/host/pswindows/exec_spec.rb +36 -35
  173. data/spec/beaker/host/pswindows/file_spec.rb +21 -18
  174. data/spec/beaker/host/pswindows/user_spec.rb +17 -23
  175. data/spec/beaker/host/pswindows_spec.rb +14 -14
  176. data/spec/beaker/host/unix/exec_spec.rb +87 -92
  177. data/spec/beaker/host/unix/file_spec.rb +76 -82
  178. data/spec/beaker/host/unix/pkg_spec.rb +165 -407
  179. data/spec/beaker/host/unix_spec.rb +11 -207
  180. data/spec/beaker/host/windows/exec_spec.rb +32 -34
  181. data/spec/beaker/host/windows/file_spec.rb +22 -23
  182. data/spec/beaker/host/windows/group_spec.rb +17 -19
  183. data/spec/beaker/host/windows/pkg_spec.rb +10 -13
  184. data/spec/beaker/host/windows/user_spec.rb +17 -23
  185. data/spec/beaker/host/windows_spec.rb +39 -39
  186. data/spec/beaker/host_prebuilt_steps_spec.rb +193 -341
  187. data/spec/beaker/host_spec.rb +241 -312
  188. data/spec/beaker/hypervisor/hypervisor_spec.rb +38 -63
  189. data/spec/beaker/localhost_connection_spec.rb +14 -13
  190. data/spec/beaker/logger_junit_spec.rb +22 -34
  191. data/spec/beaker/logger_spec.rb +174 -155
  192. data/spec/beaker/network_manager_spec.rb +27 -27
  193. data/spec/beaker/options/command_line_parser_spec.rb +20 -23
  194. data/spec/beaker/options/data/hosts_preserved.yml +395 -0
  195. data/spec/beaker/options/hosts_file_parser_spec.rb +36 -31
  196. data/spec/beaker/options/options_file_parser_spec.rb +4 -7
  197. data/spec/beaker/options/options_hash_spec.rb +7 -9
  198. data/spec/beaker/options/parser_spec.rb +187 -187
  199. data/spec/beaker/options/presets_spec.rb +8 -10
  200. data/spec/beaker/options/subcommand_options_parser_spec.rb +15 -15
  201. data/spec/beaker/options/validator_spec.rb +27 -28
  202. data/spec/beaker/perf_spec.rb +32 -34
  203. data/spec/beaker/platform_spec.rb +27 -37
  204. data/spec/beaker/shared/error_handler_spec.rb +8 -17
  205. data/spec/beaker/shared/fog_credentials_spec.rb +30 -30
  206. data/spec/beaker/shared/host_manager_spec.rb +55 -89
  207. data/spec/beaker/shared/options_resolver_spec.rb +9 -12
  208. data/spec/beaker/shared/repetition_spec.rb +24 -31
  209. data/spec/beaker/shared/semvar_spec.rb +21 -26
  210. data/spec/beaker/ssh_connection_spec.rb +85 -90
  211. data/spec/beaker/subcommand/subcommand_util_spec.rb +40 -37
  212. data/spec/beaker/subcommand_spec.rb +89 -89
  213. data/spec/beaker/test_case_spec.rb +33 -62
  214. data/spec/beaker/test_suite_spec.rb +153 -160
  215. data/spec/helpers.rb +48 -53
  216. data/spec/matchers.rb +9 -8
  217. data/spec/mocks.rb +6 -11
  218. data/spec/spec_helper.rb +0 -4
  219. metadata +60 -85
  220. data/acceptance/tests/base/dsl/helpers/host_helpers/deploy_package_repo_test.rb +0 -142
  221. data/acceptance/tests/base/external_resources_test.rb +0 -31
  222. data/spec/beaker/host/mac_spec.rb +0 -113
  223. data/spec/mock_fission.rb +0 -60
  224. data/spec/mock_vsphere.rb +0 -314
  225. data/spec/mock_vsphere_helper.rb +0 -183
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3562bd02cb178e3681d11868dd867f2707b5926ee78383c7f1ab602061e27aa6
4
- data.tar.gz: 68846748df975c7101af84a112adbb704819bf967565f95f6939fce2ad6b997b
3
+ metadata.gz: a779fedc9b7695d5a76a9731765e8ed5c5b8f9f1945563c2108cd0d0e01f564a
4
+ data.tar.gz: d5613d1aa5a289aff25f948229f5d8c89bec28fa25ec6ae310f446e95dd44363
5
5
  SHA512:
6
- metadata.gz: d6e77ab05197ee47ee3f48bc511161c7dcdf8577899dad7f7d31b49faa2b50570d13f6b71828b36afaeb43def2211f7de6f2d67eb6ab9789f815b6b3a2d808f1
7
- data.tar.gz: c0a3023cffd83b47cc67fd1837d57fa217611c38c56617f5f0d1d23da2bd5e32fdf62d8ef858e1ff63e85f7099240846196ac68d653841630b2a7d31c7ae6885
6
+ metadata.gz: 33dae1fd1af4921f1fd3f00e18413a1a823749444fbed1c1fae0ed967cf055988a31692ceba29d5535bba8b1283f0b6ec0535cf21b589ecfc9f55c0d6498f51b
7
+ data.tar.gz: 8ccefb72d40022e47506fdd6ab8307318fbcd3eb736f89f965368de923e65b52e14a3faac8ea4afcb7aad3d3c80e059a9ce665578d18f32c01ff073675b75387
@@ -1,8 +1,17 @@
1
1
  version: 2
2
2
  updates:
3
+ # raise PRs for gem updates
3
4
  - package-ecosystem: bundler
4
5
  directory: "/"
5
6
  schedule:
6
7
  interval: daily
7
8
  time: "13:00"
8
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
@@ -10,13 +10,13 @@ jobs:
10
10
  runs-on: ubuntu-latest
11
11
  if: github.repository_owner == 'voxpupuli'
12
12
  steps:
13
- - uses: actions/checkout@v2
13
+ - uses: actions/checkout@v3
14
14
  - name: Install Ruby 3.0
15
15
  uses: ruby/setup-ruby@v1
16
16
  with:
17
17
  ruby-version: '3.0'
18
18
  env:
19
- BUNDLE_WITHOUT: release
19
+ BUNDLE_WITHOUT: release:development:rubocop
20
20
  - name: Build gem
21
21
  run: gem build *.gemspec
22
22
  - name: Publish gem to rubygems.org
@@ -1,30 +1,44 @@
1
1
  name: Test
2
2
 
3
3
  on:
4
- - pull_request
5
- - push
6
-
7
- env:
8
- BUNDLE_WITHOUT: release
4
+ pull_request: {}
5
+ push:
6
+ branches:
7
+ - master
9
8
 
10
9
  jobs:
11
- test:
10
+ rubocop:
11
+ env:
12
+ BUNDLE_WITHOUT: release
12
13
  runs-on: ubuntu-latest
14
+ steps:
15
+ - uses: actions/checkout@v3
16
+ - name: Install Ruby ${{ matrix.ruby }}
17
+ uses: ruby/setup-ruby@v1
18
+ with:
19
+ ruby-version: "3.2"
20
+ bundler-cache: true
21
+ - name: Run Rubocop
22
+ run: bundle exec rake rubocop
23
+
24
+ test:
25
+ # CentOS 7 testing is broken on Ubuntu 22.04
26
+ runs-on: ubuntu-20.04
13
27
  strategy:
14
28
  fail-fast: false
15
29
  matrix:
16
30
  include:
17
- - ruby: "2.4"
18
- - ruby: "2.5"
19
- - ruby: "2.6"
20
31
  - ruby: "2.7"
21
32
  - ruby: "3.0"
22
33
  - ruby: "3.1"
34
+ - ruby: "3.2"
23
35
  coverage: "yes"
24
36
  env:
25
37
  COVERAGE: ${{ matrix.coverage }}
38
+ BUNDLE_WITHOUT: release:rubocop
39
+ BEAKER_HYPERVISOR: docker
26
40
  steps:
27
- - uses: actions/checkout@v2
41
+ - uses: actions/checkout@v3
28
42
  - name: Install Ruby ${{ matrix.ruby }}
29
43
  uses: ruby/setup-ruby@v1
30
44
  with:
@@ -32,5 +46,16 @@ jobs:
32
46
  bundler-cache: true
33
47
  - name: Build gem
34
48
  run: gem build *.gemspec
35
- - name: Run tests
49
+ - name: Run unit tests
36
50
  run: bundle exec rake spec
51
+ - name: Run acceptance tests
52
+ run: bundle exec rake acceptance
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
data/.rubocop.yml ADDED
@@ -0,0 +1,75 @@
1
+ ---
2
+ inherit_from: .rubocop_todo.yml
3
+
4
+ require:
5
+ - rubocop-performance
6
+ - rubocop-rake
7
+ - rubocop-rspec
8
+
9
+ AllCops:
10
+ TargetRubyVersion: 2.7
11
+ NewCops: enable
12
+
13
+ Gemspec/RequireMFA:
14
+ Enabled: false
15
+
16
+ Gemspec/DevelopmentDependencies:
17
+ Enabled: false
18
+
19
+ Style/TrailingCommaInHashLiteral:
20
+ Enabled: True
21
+ EnforcedStyleForMultiline: consistent_comma
22
+
23
+ Style/TrailingCommaInArrayLiteral:
24
+ Enabled: True
25
+ EnforcedStyleForMultiline: consistent_comma
26
+
27
+ Style/TrailingCommaInArguments:
28
+ Enabled: True
29
+ EnforcedStyleForMultiline: comma
30
+
31
+ Layout/LineLength:
32
+ Exclude:
33
+ - acceptance/**/*.rb
34
+ - spec/**/*.rb
35
+
36
+ Naming/AccessorMethodName:
37
+ Enabled: false
38
+
39
+ Naming/FileName:
40
+ Exclude:
41
+ - acceptance/**/acceptance-options.rb
42
+
43
+ Naming/MethodParameterName:
44
+ Enabled: false
45
+
46
+ Naming/PredicateName:
47
+ Enabled: false
48
+
49
+ Naming/VariableNumber:
50
+ Enabled: false
51
+
52
+ RSpec/DescribeClass:
53
+ Exclude:
54
+ - acceptance/fixtures/module/spec/**/*.rb
55
+
56
+ RSpec/FilePath:
57
+ Enabled: false
58
+
59
+ RSpec/MessageSpies:
60
+ Enabled: false
61
+
62
+ RSpec/StubbedMock:
63
+ Enabled: false
64
+
65
+ RSpec/MultipleExpectations:
66
+ Enabled: false
67
+
68
+ RSpec/NestedGroups:
69
+ Max: 4
70
+
71
+ Metrics:
72
+ Enabled: false
73
+
74
+ Style:
75
+ Enabled: false
data/.rubocop_todo.yml ADDED
@@ -0,0 +1,239 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config --no-offense-counts --no-auto-gen-timestamp`
3
+ # using RuboCop version 1.48.0.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Configuration parameters: AllowedMethods.
10
+ # AllowedMethods: enums
11
+ Lint/ConstantDefinitionInBlock:
12
+ Exclude:
13
+ - 'Rakefile'
14
+ - 'acceptance/tests/subcommands/init.rb'
15
+ - 'acceptance/tests/subcommands/provision.rb'
16
+ - 'spec/beaker/host/freebsd/exec_spec.rb'
17
+ - 'spec/beaker/host/freebsd/pkg_spec.rb'
18
+ - 'spec/beaker/host/mac/exec_spec.rb'
19
+ - 'spec/beaker/host/pswindows/exec_spec.rb'
20
+ - 'spec/beaker/host/pswindows/file_spec.rb'
21
+ - 'spec/beaker/host/unix/exec_spec.rb'
22
+ - 'spec/beaker/host/unix/file_spec.rb'
23
+ - 'spec/beaker/host/unix/pkg_spec.rb'
24
+ - 'spec/beaker/host/windows/exec_spec.rb'
25
+ - 'spec/beaker/host/windows/group_spec.rb'
26
+ - 'spec/beaker/host/windows/pkg_spec.rb'
27
+ - 'spec/beaker/options/hosts_file_parser_spec.rb'
28
+
29
+ # Configuration parameters: AllowComments, AllowEmptyLambdas.
30
+ Lint/EmptyBlock:
31
+ Exclude:
32
+ - 'acceptance/tests/base/host/group_test.rb'
33
+ - 'acceptance/tests/base/host/user_test.rb'
34
+ - 'spec/beaker/dsl/structure_spec.rb'
35
+ - 'spec/beaker/logger_junit_spec.rb'
36
+ - 'spec/beaker/logger_spec.rb'
37
+
38
+ # This cop supports unsafe autocorrection (--autocorrect-all).
39
+ Lint/NonAtomicFileOperation:
40
+ Exclude:
41
+ - 'acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb'
42
+
43
+ Lint/RescueException:
44
+ Exclude:
45
+ - 'lib/beaker/dsl/structure.rb'
46
+ - 'lib/beaker/test_suite_result.rb'
47
+
48
+ Lint/ShadowingOuterLocalVariable:
49
+ Exclude:
50
+ - 'lib/beaker/dsl/helpers/host_helpers.rb'
51
+ - 'lib/beaker/dsl/helpers/web_helpers.rb'
52
+ - 'lib/beaker/dsl/wrappers.rb'
53
+ - 'lib/beaker/host/pswindows/exec.rb'
54
+ - 'lib/beaker/host/unix/pkg.rb'
55
+ - 'lib/beaker/host_prebuilt_steps.rb'
56
+ - 'lib/beaker/perf.rb'
57
+
58
+ Lint/UselessAssignment:
59
+ Exclude:
60
+ - 'acceptance/tests/base/dsl/helpers/host_helpers/curl_with_retries_test.rb'
61
+ - 'lib/beaker/cli.rb'
62
+ - 'lib/beaker/dsl/helpers/host_helpers.rb'
63
+ - 'lib/beaker/logger_junit.rb'
64
+
65
+ # Configuration parameters: ForbiddenDelimiters.
66
+ # ForbiddenDelimiters: (?i-mx:(^|\s)(EO[A-Z]{1}|END)(\s|$))
67
+ Naming/HeredocDelimiterNaming:
68
+ Exclude:
69
+ - 'Rakefile'
70
+ - 'acceptance/tests/base/dsl/helpers/hocon_helpers_test.rb'
71
+ - 'lib/beaker/host/cisco.rb'
72
+ - 'spec/beaker/host/mac/group_spec.rb'
73
+ - 'spec/beaker/host/mac/user_spec.rb'
74
+ - 'spec/beaker/host/pswindows/user_spec.rb'
75
+ - 'spec/beaker/host/windows/group_spec.rb'
76
+ - 'spec/beaker/host/windows/user_spec.rb'
77
+ - 'spec/beaker/host/windows_spec.rb'
78
+ - 'spec/beaker/test_case_spec.rb'
79
+
80
+ # Configuration parameters: EnforcedStyleForLeadingUnderscores.
81
+ # SupportedStylesForLeadingUnderscores: disallowed, required, optional
82
+ Naming/MemoizedInstanceVariableName:
83
+ Exclude:
84
+ - 'lib/beaker/host.rb'
85
+ - 'lib/beaker/options/presets.rb'
86
+
87
+ # Configuration parameters: MinSize.
88
+ Performance/CollectionLiteralInLoop:
89
+ Exclude:
90
+ - 'acceptance/fixtures/module/spec/spec_helper_acceptance.rb'
91
+ - 'lib/beaker/dsl/structure.rb'
92
+ - 'lib/beaker/test_suite_result.rb'
93
+
94
+ RSpec/AnyInstance:
95
+ Exclude:
96
+ - 'spec/beaker/host/windows/file_spec.rb'
97
+ - 'spec/beaker/subcommand_spec.rb'
98
+
99
+ # This cop supports unsafe autocorrection (--autocorrect-all).
100
+ RSpec/BeEq:
101
+ Exclude:
102
+ - 'spec/beaker/cli_spec.rb'
103
+ - 'spec/beaker/host/pswindows/file_spec.rb'
104
+ - 'spec/beaker/host/windows/exec_spec.rb'
105
+ - 'spec/beaker/host_spec.rb'
106
+
107
+ # Configuration parameters: Prefixes, AllowedPatterns.
108
+ # Prefixes: when, with, without
109
+ RSpec/ContextWording:
110
+ Enabled: false
111
+
112
+ # Configuration parameters: CountAsOne.
113
+ RSpec/ExampleLength:
114
+ Max: 44
115
+
116
+ RSpec/ExpectInHook:
117
+ Exclude:
118
+ - 'spec/beaker/cli_spec.rb'
119
+ - 'spec/beaker/dsl/helpers/host_helpers_spec.rb'
120
+ - 'spec/beaker/host/unix/exec_spec.rb'
121
+ - 'spec/beaker/host/windows/group_spec.rb'
122
+ - 'spec/beaker/host_prebuilt_steps_spec.rb'
123
+ - 'spec/beaker/logger_spec.rb'
124
+ - 'spec/beaker/options/parser_spec.rb'
125
+ - 'spec/beaker/ssh_connection_spec.rb'
126
+
127
+ # Configuration parameters: AssignmentOnly.
128
+ RSpec/InstanceVariable:
129
+ Exclude:
130
+ - 'spec/beaker/dsl/helpers/host_helpers_spec.rb'
131
+ - 'spec/beaker/dsl/helpers/test_helpers_spec.rb'
132
+ - 'spec/beaker/dsl/roles_spec.rb'
133
+ - 'spec/beaker/dsl/test_tagging_spec.rb'
134
+ - 'spec/beaker/host_prebuilt_steps_spec.rb'
135
+
136
+ RSpec/IteratedExpectation:
137
+ Exclude:
138
+ - 'spec/beaker/dsl/helpers/host_helpers_spec.rb'
139
+
140
+ RSpec/LeakyConstantDeclaration:
141
+ Exclude:
142
+ - 'spec/beaker/host/freebsd/exec_spec.rb'
143
+ - 'spec/beaker/host/freebsd/pkg_spec.rb'
144
+ - 'spec/beaker/host/mac/exec_spec.rb'
145
+ - 'spec/beaker/host/pswindows/exec_spec.rb'
146
+ - 'spec/beaker/host/pswindows/file_spec.rb'
147
+ - 'spec/beaker/host/unix/exec_spec.rb'
148
+ - 'spec/beaker/host/unix/file_spec.rb'
149
+ - 'spec/beaker/host/unix/pkg_spec.rb'
150
+ - 'spec/beaker/host/windows/exec_spec.rb'
151
+ - 'spec/beaker/host/windows/group_spec.rb'
152
+ - 'spec/beaker/host/windows/pkg_spec.rb'
153
+ - 'spec/beaker/options/hosts_file_parser_spec.rb'
154
+
155
+ RSpec/MultipleDescribes:
156
+ Exclude:
157
+ - 'spec/beaker/dsl/test_tagging_spec.rb'
158
+
159
+ # Configuration parameters: AllowSubject.
160
+ RSpec/MultipleMemoizedHelpers:
161
+ Max: 17
162
+
163
+ # Configuration parameters: EnforcedStyle, IgnoreSharedExamples.
164
+ # SupportedStyles: always, named_only
165
+ RSpec/NamedSubject:
166
+ Enabled: false
167
+
168
+ # Configuration parameters: AllowedPatterns.
169
+ # AllowedPatterns: ^expect_, ^assert_
170
+ RSpec/NoExpectationExample:
171
+ Exclude:
172
+ - 'acceptance/fixtures/module/spec/acceptance/demo_spec.rb'
173
+ - 'spec/beaker/host/windows/pkg_spec.rb'
174
+ - 'spec/beaker/host_prebuilt_steps_spec.rb'
175
+ - 'spec/beaker/logger_spec.rb'
176
+ - 'spec/beaker/options/subcommand_options_parser_spec.rb'
177
+
178
+ RSpec/RepeatedDescription:
179
+ Exclude:
180
+ - 'spec/beaker/cli_spec.rb'
181
+ - 'spec/beaker/host/unix/exec_spec.rb'
182
+ - 'spec/beaker/host/unix/pkg_spec.rb'
183
+
184
+ RSpec/RepeatedExample:
185
+ Exclude:
186
+ - 'spec/beaker/dsl/roles_spec.rb'
187
+ - 'spec/beaker/logger_spec.rb'
188
+
189
+ RSpec/SubjectStub:
190
+ Exclude:
191
+ - 'spec/beaker/dsl/assertions_spec.rb'
192
+ - 'spec/beaker/dsl/helpers/host_helpers_spec.rb'
193
+ - 'spec/beaker/dsl/helpers/test_helpers_spec.rb'
194
+ - 'spec/beaker/dsl/helpers/web_helpers_spec.rb'
195
+ - 'spec/beaker/dsl/outcomes_spec.rb'
196
+ - 'spec/beaker/dsl/roles_spec.rb'
197
+ - 'spec/beaker/dsl/structure_spec.rb'
198
+ - 'spec/beaker/dsl/test_tagging_spec.rb'
199
+ - 'spec/beaker/host/mac/group_spec.rb'
200
+ - 'spec/beaker/host/mac/user_spec.rb'
201
+ - 'spec/beaker/host/pswindows/user_spec.rb'
202
+ - 'spec/beaker/host/windows/user_spec.rb'
203
+ - 'spec/beaker/host_prebuilt_steps_spec.rb'
204
+
205
+ RSpec/UnspecifiedException:
206
+ Exclude:
207
+ - 'spec/beaker/cli_spec.rb'
208
+ - 'spec/beaker/host/unix/pkg_spec.rb'
209
+ - 'spec/beaker/host_spec.rb'
210
+ - 'spec/beaker/test_suite_spec.rb'
211
+
212
+ # Configuration parameters: IgnoreNameless, IgnoreSymbolicNames.
213
+ RSpec/VerifiedDoubles:
214
+ Enabled: false
215
+
216
+ # This cop supports safe autocorrection (--autocorrect).
217
+ Rake/Desc:
218
+ Exclude:
219
+ - 'Rakefile'
220
+
221
+ Security/Eval:
222
+ Exclude:
223
+ - 'Rakefile'
224
+ - 'acceptance/config/base/acceptance-options.rb'
225
+ - 'acceptance/config/hypervisor/acceptance-options.rb'
226
+ - 'acceptance/config/subcommands/acceptance-options.rb'
227
+ - 'lib/beaker/command.rb'
228
+ - 'lib/beaker/options/options_file_parser.rb'
229
+ - 'lib/beaker/test_case.rb'
230
+
231
+ Security/Open:
232
+ Exclude:
233
+ - 'lib/beaker/dsl/helpers/web_helpers.rb'
234
+
235
+ # This cop supports safe autocorrection (--autocorrect).
236
+ # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
237
+ # URISchemes: http, https
238
+ Layout/LineLength:
239
+ Max: 226
data/CHANGELOG.md CHANGED
@@ -1,86 +1,141 @@
1
1
  # Changelog
2
2
 
3
+ ## [5.0.0](https://github.com/voxpupuli/beaker/tree/5.0.0) (2023-03-24)
4
+
5
+ **Breaking changes:**
6
+
7
+ - Drop Ruby 2.4/2.5/2.6 support [\#1767](https://github.com/voxpupuli/beaker/pull/1767) ([bastelfreak](https://github.com/bastelfreak))
8
+ - Removes open_uri_redirections [\#1764](https://github.com/voxpupuli/beaker/pull/1764) ([mhashizume](https://github.com/mhashizume))
9
+ - Drop deprecated methods [\#1769](https://github.com/voxpupuli/beaker/pull/1769) ([ekohl](https://github.com/ekohl))
10
+ - Remove add-el-extras, passenger, proxy_config, disable_iptables and clean up code [\#1731](https://github.com/voxpupuli/beaker/pull/1731) ([ekohl](https://github.com/ekohl))
11
+ - Remove install_puppet_agent_* methods [\#1775](https://github.com/voxpupuli/beaker/pull/1775) ([ekohl](https://github.com/ekohl))
12
+
13
+ **Implemented enhancements:**
14
+
15
+ - Fix many RuboCop violations: [\#1768](https://github.com/voxpupuli/beaker/pull/1768), [\#1777](https://github.com/voxpupuli/beaker/pull/1777), [\#1787](https://github.com/voxpupuli/beaker/pull/1787), [\#1778](https://github.com/voxpupuli/beaker/pull/1778), [\#1790](https://github.com/voxpupuli/beaker/pull/1790), [\#1791](https://github.com/voxpupuli/beaker/pull/1791), [\#1792](https://github.com/voxpupuli/beaker/pull/1792)
16
+ - Add Ruby 3.2 support [\#1762](https://github.com/voxpupuli/beaker/pull/1762) ([ekohl](https://github.com/ekohl))
17
+ - Drop rspec-its dependency in favor of have_attributes [\#1788](https://github.com/voxpupuli/beaker/pull/1788)
18
+
19
+ ## [4.39.0](https://github.com/voxpupuli/beaker/tree/4.39.0) (2023-02-09)
20
+
21
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.38.1...4.39.0)
22
+
23
+ **Fixed bugs:**
24
+
25
+ - Extend list of permitted classes for YAML safe load and allow aliases [\#1758](https://github.com/voxpupuli/beaker/pull/1758) ([nmburgan](https://github.com/nmburgan))
26
+
27
+ **Implemented enhancements:**
28
+
29
+ - Add RuboCop [\#1761](https://github.com/voxpupuli/beaker/pull/1761) ([ekohl](https://github.com/ekohl))
30
+ - Update net-scp requirement from >= 1.2, < 4.0 to >= 1.2, < 5.0 [\#1757](https://github.com/voxpupuli/beaker/pull/1757)
31
+ - (maint) StringInclude Rubocop corrections [\1765](https://github.com/voxpupuli/beaker/pull/1765) ([mhashizume](https://github.com/mhashizume))
32
+
33
+ **Closed issues:**
34
+
35
+ - Ruby 3.1/Psych 4 compatibility issues [\#1753](https://github.com/voxpupuli/beaker/issues/1753)
36
+
3
37
  ## [4.38.1](https://github.com/voxpupuli/beaker/tree/4.38.1) (2022-09-21)
4
38
 
5
- ## Added
39
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.38.0...4.38.1)
40
+
41
+ **Fixed bugs:**
6
42
 
7
- - Arch Linux testing: Ensure the keyring is up2date before installing packages ([#1755](https://github.com/voxpupuli/beaker/pull/1755))
43
+ - Arch Linux: Ensure keyring is up2date [\#1755](https://github.com/voxpupuli/beaker/pull/1755) ([bastelfreak](https://github.com/bastelfreak))
8
44
 
9
45
  ## [4.38.0](https://github.com/voxpupuli/beaker/tree/4.38.0) (2022-08-11)
10
46
 
11
- ## Added
47
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.37.2...4.38.0)
12
48
 
13
- - Drop pry dependency, allow using debug gem ([#1737](https://github.com/voxpupuli/beaker/pull/1737))
49
+ **Implemented enhancements:**
14
50
 
15
- ## [4.37.2](https://github.com/voxpupuli/beaker/tree/4.37.2) (2022-07-28)
51
+ - Drop pry dependency, allow using debug gem [\#1737](https://github.com/voxpupuli/beaker/pull/1737) ([ekohl](https://github.com/ekohl))
16
52
 
17
- ## Fixed
53
+ ## [4.37.2](https://github.com/voxpupuli/beaker/tree/4.37.2) (2022-07-29)
18
54
 
19
- - Use the new scheme for agent versions >= 6.28 and < 7 [\#1749](https://github.com/voxpupuli/beaker/pull/1749) ([joshcooper](https://github.com/joshcooper))
55
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.37.1...4.37.2)
56
+
57
+ **Fixed bugs:**
58
+
59
+ - Use the new scheme for agent versions \>= 6.28 and \< 7 [\#1749](https://github.com/voxpupuli/beaker/pull/1749) ([joshcooper](https://github.com/joshcooper))
20
60
 
21
61
  ## [4.37.1](https://github.com/voxpupuli/beaker/tree/4.37.1) (2022-07-27)
22
62
 
23
- ## Fixed
63
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.37.0...4.37.1)
64
+
65
+ **Fixed bugs:**
66
+
67
+ - macOS PE tarballs include arch now [\#1747](https://github.com/voxpupuli/beaker/pull/1747) ([joshcooper](https://github.com/joshcooper))
24
68
 
25
- - macOS PE tarballs include arch now ([#1747](https://github.com/voxpupuli/beaker/pull/1747))
69
+ ## [4.37.0](https://github.com/voxpupuli/beaker/tree/4.37.0) (2022-06-28)
26
70
 
27
- ## [4.37.0](https://github.com/voxpupuli/beaker/tree/4.37.0) (2022-06-27)
71
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.36.1...4.37.0)
28
72
 
29
- ## Added
73
+ **Implemented enhancements:**
30
74
 
31
- - Add support for Win32-OpenSSH ([#1744](https://github.com/voxpupuli/beaker/pull/1744))
75
+ - Add support for Win32-OpenSSH [\#1744](https://github.com/voxpupuli/beaker/pull/1744) ([joshcooper](https://github.com/joshcooper))
32
76
 
33
- ## Fixed
77
+ **Fixed bugs:**
34
78
 
35
- - Create ~/.ssh on Windows if it doesn't exist ([#1745](https://github.com/voxpupuli/beaker/pull/1745))
79
+ - Create ~/.ssh on Windows if it doesn't exist [\#1745](https://github.com/voxpupuli/beaker/pull/1745) ([joshcooper](https://github.com/joshcooper))
36
80
 
37
81
  ## [4.36.1](https://github.com/voxpupuli/beaker/tree/4.36.1) (2022-06-16)
38
82
 
39
- ## Fixed
83
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.36.0...4.36.1)
40
84
 
41
- - (maint) Remove /etc/environment file for ubuntu2204 ([#1742](https://github.com/voxpupuli/beaker/pull/1742))
85
+ **Implemented enhancements:**
86
+
87
+ - \(maint\) Remove /etc/environment file for ubuntu2204 [\#1742](https://github.com/voxpupuli/beaker/pull/1742) ([cthorn42](https://github.com/cthorn42))
42
88
 
43
89
  ## [4.36.0](https://github.com/voxpupuli/beaker/tree/4.36.0) (2022-05-30)
44
90
 
45
- ## Added
91
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.35.0...4.36.0)
46
92
 
47
- - (PE-33493) Add Ubuntu 2204 codename ([#1740](https://github.com/voxpupuli/beaker/pull/1740))
93
+ **Implemented enhancements:**
48
94
 
95
+ - \(PE-33493\) Add Ubuntu 2204 codename [\#1740](https://github.com/voxpupuli/beaker/pull/1740) ([cthorn42](https://github.com/cthorn42))
49
96
 
50
97
  ## [4.35.0](https://github.com/voxpupuli/beaker/tree/4.35.0) (2022-05-13)
51
98
 
52
- ## Added
99
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.34.0...4.35.0)
100
+
101
+ **Implemented enhancements:**
53
102
 
54
- - Add Ruby 3.1 support ([#1736](https://github.com/voxpupuli/beaker/pull/1736))
55
- - Build gem during CI runs ([#1738](https://github.com/voxpupuli/beaker/pull/1738))
103
+ - Build gem during CI runs [\#1738](https://github.com/voxpupuli/beaker/pull/1738) ([bastelfreak](https://github.com/bastelfreak))
104
+ - Add Ruby 3.1 support [\#1736](https://github.com/voxpupuli/beaker/pull/1736) ([ekohl](https://github.com/ekohl))
56
105
 
57
106
  ## [4.34.0](https://github.com/voxpupuli/beaker/tree/4.34.0) (2022-01-27)
58
107
 
59
- ### Added
108
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.33.0...4.34.0)
60
109
 
61
- - Extract a host_packages method from validate_host ([#1729](https://github.com/voxpupuli/beaker/pull/1729))
62
- - Reduce duplication in ssh_permit_user_environment ([#1728](https://github.com/voxpupuli/beaker/pull/1728))
110
+ **Implemented enhancements:**
63
111
 
64
- ### Fixed
112
+ - Extract a host\_packages method from validate\_host [\#1729](https://github.com/voxpupuli/beaker/pull/1729) ([ekohl](https://github.com/ekohl))
113
+ - Reduce duplication in ssh\_permit\_user\_environment [\#1728](https://github.com/voxpupuli/beaker/pull/1728) ([ekohl](https://github.com/ekohl))
114
+
115
+ **Fixed bugs:**
65
116
 
66
- - Do not install curl on EL9 ([#1728](https://github.com/voxpupuli/beaker/pull/1732))
67
- - Drop old Ruby 1.8 compatibility code ([#1728](https://github.com/voxpupuli/beaker/pull/1730))
117
+ - Do not install curl on EL9 [\#1732](https://github.com/voxpupuli/beaker/pull/1732) ([ekohl](https://github.com/ekohl))
118
+ - Drop old Ruby 1.8 compatibility code [\#1730](https://github.com/voxpupuli/beaker/pull/1730) ([ekohl](https://github.com/ekohl))
68
119
 
69
120
  ## [4.33.0](https://github.com/voxpupuli/beaker/tree/4.33.0) (2022-01-21)
70
121
 
71
- ### Added
122
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.32.0...4.33.0)
123
+
124
+ **Implemented enhancements:**
72
125
 
73
- - Add ed25519 as runtime dependency ([#1726](https://github.com/voxpupuli/beaker/pull/1726))
126
+ - Add ed25519 as runtime dependency [\#1726](https://github.com/voxpupuli/beaker/pull/1726) ([bastelfreak](https://github.com/bastelfreak))
74
127
 
75
128
  ## [4.32.0](https://github.com/voxpupuli/beaker/tree/4.32.0) (2021-12-06)
76
129
 
77
- ### Fixed
130
+ [Full Changelog](https://github.com/voxpupuli/beaker/compare/4.31.0...4.32.0)
78
131
 
79
- - Arch Linux: install net-tools and openssh ([#1722](https://github.com/voxpupuli/beaker/pull/1722))
132
+ **Implemented enhancements:**
80
133
 
81
- ### Added
134
+ - Initial EL9 support [\#1719](https://github.com/voxpupuli/beaker/pull/1719) ([ekohl](https://github.com/ekohl))
135
+
136
+ **Fixed bugs:**
82
137
 
83
- - Initial EL9 support ([#1719](https://github.com/voxpupuli/beaker/pull/1719))
138
+ - Arch Linux: install net-tools and openssh [\#1722](https://github.com/voxpupuli/beaker/pull/1722) ([bastelfreak](https://github.com/bastelfreak))
84
139
 
85
140
  ## [4.31.0](https://github.com/voxpupuli/beaker/tree/4.31.0) (2021-11-02)
86
141
 
data/Gemfile CHANGED
@@ -15,18 +15,30 @@ gemspec
15
15
 
16
16
  if ENV['BEAKER_PE_PR_REPO_URL']
17
17
  lib = ENV['BEAKER_PE_PR_REPO_URL'].match(/\/([^\/]+)\.git$/)[1]
18
- author = ENV['BEAKER_PE_PR_AUTHOR']
19
- ref = ENV['BEAKER_PE_PR_COMMIT']
18
+ author = ENV.fetch('BEAKER_PE_PR_AUTHOR', nil)
19
+ ref = ENV.fetch('BEAKER_PE_PR_COMMIT', nil)
20
20
  gem lib, :git => "git@github.com:#{author}/#{lib}.git", :branch => ref
21
21
  end
22
22
 
23
+ if ENV['BEAKER_HYPERVISOR']
24
+ # vagrant_libvirt -> vagrant
25
+ gem "beaker-#{ENV['BEAKER_HYPERVISOR'].split('_').first}"
26
+ end
27
+
28
+ group :rubocop do
29
+ gem 'rubocop', '~> 1.48.0'
30
+ gem 'rubocop-performance', '~> 1.16.0'
31
+ gem 'rubocop-rake', '~> 0.6.0'
32
+ gem 'rubocop-rspec', '~> 2.19.0'
33
+ end
34
+
23
35
  group :release do
24
36
  gem 'github_changelog_generator', require: false
25
37
  end
26
38
 
27
- group :coverage, optional: ENV['COVERAGE']!='yes' do
28
- gem 'simplecov-console', :require => false
39
+ group :coverage, optional: ENV['COVERAGE'] != 'yes' do
29
40
  gem 'codecov', :require => false
41
+ gem 'simplecov-console', :require => false
30
42
  end
31
43
 
32
44
  gem 'rdoc' if RUBY_VERSION >= '3.1'