beaker-google 1.1.0 → 1.3.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/release.yml +41 -0
- data/.github/workflows/ci.yml +30 -17
- data/.github/workflows/release.yml +91 -17
- data/.gitignore +1 -0
- data/.rubocop.yml +4 -518
- data/.rubocop_todo.yml +20 -0
- data/.simplecov +2 -0
- data/CHANGELOG.md +50 -1
- data/Gemfile +13 -2
- data/README.md +2 -2
- data/Rakefile +23 -6
- data/beaker-google.gemspec +27 -23
- data/bin/beaker-google +1 -0
- data/lib/beaker/hypervisor/google.rb +5 -1
- data/lib/beaker/hypervisor/google_compute.rb +55 -25
- data/lib/beaker/hypervisor/google_compute_helper.rb +599 -581
- data/lib/beaker-google/version.rb +3 -1
- data/spec/classes/beaker/google_compute_constants_and_defaults_spec.rb +141 -0
- data/spec/classes/beaker/google_compute_helper_api_version_spec.rb +37 -0
- data/spec/classes/beaker/google_compute_helper_configuration_validation_spec.rb +100 -0
- data/spec/classes/beaker/google_compute_helper_constants_and_defaults_spec.rb +66 -0
- data/spec/classes/beaker/google_compute_helper_edge_cases_spec.rb +173 -0
- data/spec/classes/beaker/google_compute_helper_error_handling_spec.rb +105 -0
- data/spec/classes/beaker/google_compute_helper_spec.rb +368 -0
- data/spec/classes/beaker/google_compute_helper_utilities_spec.rb +95 -0
- data/spec/classes/beaker/google_compute_initialization_spec.rb +52 -0
- data/spec/classes/beaker/google_compute_provision_spec.rb +68 -0
- data/spec/classes/beaker/google_compute_spec.rb +95 -0
- data/spec/classes/beaker/google_compute_ssh_key_management_spec.rb +115 -0
- data/spec/classes/beaker/google_spec.rb +68 -0
- data/spec/classes/beaker-google/beaker_google_version_spec.rb +19 -0
- data/spec/classes/beaker_integration_spec.rb +67 -0
- data/spec/spec_helper.rb +45 -0
- data/spec/support/google_compute_shared_setup.rb +138 -0
- data/spec/support/shared_mocks.rb +89 -0
- metadata +102 -38
- data/.github/workflows/codeql-analysis.yml +0 -70
data/.rubocop.yml
CHANGED
|
@@ -1,519 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
DisplayCopNames: true
|
|
7
|
-
TargetRubyVersion: '2.7'
|
|
8
|
-
Include:
|
|
9
|
-
- "**/*.rb"
|
|
10
|
-
Exclude:
|
|
11
|
-
- bin/*
|
|
12
|
-
- ".vendor/**/*"
|
|
13
|
-
- "**/Gemfile"
|
|
14
|
-
- "**/Rakefile"
|
|
15
|
-
- pkg/**/*
|
|
16
|
-
- spec/fixtures/**/*
|
|
17
|
-
- vendor/**/*
|
|
18
|
-
- "**/Puppetfile"
|
|
19
|
-
- "**/Vagrantfile"
|
|
20
|
-
- "**/Guardfile"
|
|
21
|
-
Layout/LineLength:
|
|
22
|
-
Description: People have wide screens, use them.
|
|
23
|
-
Max: 200
|
|
24
|
-
RSpec/BeforeAfterAll:
|
|
25
|
-
Description: Beware of using after(:all) as it may cause state to leak between tests.
|
|
26
|
-
A necessary evil in acceptance testing.
|
|
27
|
-
Exclude:
|
|
28
|
-
- spec/acceptance/**/*.rb
|
|
29
|
-
RSpec/HookArgument:
|
|
30
|
-
Description: Prefer explicit :each argument, matching existing module's style
|
|
31
|
-
EnforcedStyle: each
|
|
32
|
-
RSpec/DescribeSymbol:
|
|
33
|
-
Exclude:
|
|
34
|
-
- spec/unit/facter/**/*.rb
|
|
35
|
-
Style/BlockDelimiters:
|
|
36
|
-
Description: Prefer braces for chaining. Mostly an aesthetical choice. Better to
|
|
37
|
-
be consistent then.
|
|
38
|
-
EnforcedStyle: braces_for_chaining
|
|
39
|
-
Style/ClassAndModuleChildren:
|
|
40
|
-
Description: Compact style reduces the required amount of indentation.
|
|
41
|
-
EnforcedStyle: compact
|
|
42
|
-
Style/EmptyElse:
|
|
43
|
-
Description: Enforce against empty else clauses, but allow `nil` for clarity.
|
|
44
|
-
EnforcedStyle: empty
|
|
45
|
-
Style/FormatString:
|
|
46
|
-
Description: Following the main puppet project's style, prefer the % format format.
|
|
47
|
-
EnforcedStyle: percent
|
|
48
|
-
Style/FormatStringToken:
|
|
49
|
-
Description: Following the main puppet project's style, prefer the simpler template
|
|
50
|
-
tokens over annotated ones.
|
|
51
|
-
EnforcedStyle: template
|
|
52
|
-
Style/Lambda:
|
|
53
|
-
Description: Prefer the keyword for easier discoverability.
|
|
54
|
-
EnforcedStyle: literal
|
|
55
|
-
Style/RegexpLiteral:
|
|
56
|
-
Description: Community preference. See https://github.com/voxpupuli/modulesync_config/issues/168
|
|
57
|
-
EnforcedStyle: percent_r
|
|
58
|
-
Style/TernaryParentheses:
|
|
59
|
-
Description: Checks for use of parentheses around ternary conditions. Enforce parentheses
|
|
60
|
-
on complex expressions for better readability, but seriously consider breaking
|
|
61
|
-
it up.
|
|
62
|
-
EnforcedStyle: require_parentheses_when_complex
|
|
63
|
-
Style/TrailingCommaInArguments:
|
|
64
|
-
Description: Prefer always trailing comma on multiline argument lists. This makes
|
|
65
|
-
diffs, and re-ordering nicer.
|
|
66
|
-
EnforcedStyleForMultiline: comma
|
|
67
|
-
Style/TrailingCommaInArrayLiteral:
|
|
68
|
-
Description: Prefer always trailing comma on multiline literals. This makes diffs,
|
|
69
|
-
and re-ordering nicer.
|
|
70
|
-
EnforcedStyleForMultiline: comma
|
|
71
|
-
Style/SymbolArray:
|
|
72
|
-
Description: Using percent style obscures symbolic intent of array's contents.
|
|
73
|
-
EnforcedStyle: brackets
|
|
74
|
-
RSpec/MessageSpies:
|
|
75
|
-
EnforcedStyle: receive
|
|
76
|
-
Style/Documentation:
|
|
77
|
-
Exclude:
|
|
78
|
-
- lib/puppet/parser/functions/**/*
|
|
79
|
-
- spec/**/*
|
|
80
|
-
Style/WordArray:
|
|
81
|
-
EnforcedStyle: brackets
|
|
82
|
-
Performance/AncestorsInclude:
|
|
83
|
-
Enabled: true
|
|
84
|
-
Performance/BigDecimalWithNumericArgument:
|
|
85
|
-
Enabled: true
|
|
86
|
-
Performance/BlockGivenWithExplicitBlock:
|
|
87
|
-
Enabled: true
|
|
88
|
-
Performance/CaseWhenSplat:
|
|
89
|
-
Enabled: true
|
|
90
|
-
Performance/ConstantRegexp:
|
|
91
|
-
Enabled: true
|
|
92
|
-
Performance/MethodObjectAsBlock:
|
|
93
|
-
Enabled: true
|
|
94
|
-
Performance/RedundantSortBlock:
|
|
95
|
-
Enabled: true
|
|
96
|
-
Performance/RedundantStringChars:
|
|
97
|
-
Enabled: true
|
|
98
|
-
Performance/ReverseFirst:
|
|
99
|
-
Enabled: true
|
|
100
|
-
Performance/SortReverse:
|
|
101
|
-
Enabled: true
|
|
102
|
-
Performance/Squeeze:
|
|
103
|
-
Enabled: true
|
|
104
|
-
Performance/StringInclude:
|
|
105
|
-
Enabled: true
|
|
106
|
-
Performance/Sum:
|
|
107
|
-
Enabled: true
|
|
108
|
-
Style/CollectionMethods:
|
|
109
|
-
Enabled: true
|
|
110
|
-
Style/MethodCalledOnDoEndBlock:
|
|
111
|
-
Enabled: true
|
|
112
|
-
Style/StringMethods:
|
|
113
|
-
Enabled: true
|
|
114
|
-
Bundler/InsecureProtocolSource:
|
|
115
|
-
Enabled: false
|
|
116
|
-
Gemspec/DuplicatedAssignment:
|
|
117
|
-
Enabled: false
|
|
118
|
-
Gemspec/OrderedDependencies:
|
|
119
|
-
Enabled: false
|
|
120
|
-
Gemspec/RequiredRubyVersion:
|
|
121
|
-
Enabled: false
|
|
122
|
-
Gemspec/RubyVersionGlobalsUsage:
|
|
123
|
-
Enabled: false
|
|
124
|
-
Layout/ArgumentAlignment:
|
|
125
|
-
Enabled: false
|
|
126
|
-
Layout/BeginEndAlignment:
|
|
127
|
-
Enabled: false
|
|
128
|
-
Layout/ClosingHeredocIndentation:
|
|
129
|
-
Enabled: false
|
|
130
|
-
Layout/EmptyComment:
|
|
131
|
-
Enabled: false
|
|
132
|
-
Layout/EmptyLineAfterGuardClause:
|
|
133
|
-
Enabled: false
|
|
134
|
-
Layout/EmptyLinesAroundArguments:
|
|
135
|
-
Enabled: false
|
|
136
|
-
Layout/EmptyLinesAroundAttributeAccessor:
|
|
137
|
-
Enabled: false
|
|
138
|
-
Layout/EndOfLine:
|
|
139
|
-
Enabled: false
|
|
140
|
-
Layout/FirstArgumentIndentation:
|
|
141
|
-
Enabled: false
|
|
142
|
-
Layout/HashAlignment:
|
|
143
|
-
Enabled: false
|
|
144
|
-
Layout/HeredocIndentation:
|
|
145
|
-
Enabled: false
|
|
146
|
-
Layout/LeadingEmptyLines:
|
|
147
|
-
Enabled: false
|
|
148
|
-
Layout/SpaceAroundMethodCallOperator:
|
|
149
|
-
Enabled: false
|
|
150
|
-
Layout/SpaceInsideArrayLiteralBrackets:
|
|
151
|
-
Enabled: false
|
|
152
|
-
Layout/SpaceInsideReferenceBrackets:
|
|
153
|
-
Enabled: false
|
|
154
|
-
Lint/BigDecimalNew:
|
|
155
|
-
Enabled: false
|
|
156
|
-
Lint/BooleanSymbol:
|
|
157
|
-
Enabled: false
|
|
158
|
-
Lint/ConstantDefinitionInBlock:
|
|
159
|
-
Enabled: false
|
|
160
|
-
Lint/DeprecatedOpenSSLConstant:
|
|
161
|
-
Enabled: false
|
|
162
|
-
Lint/DisjunctiveAssignmentInConstructor:
|
|
163
|
-
Enabled: false
|
|
164
|
-
Lint/DuplicateElsifCondition:
|
|
165
|
-
Enabled: false
|
|
166
|
-
Lint/DuplicateRequire:
|
|
167
|
-
Enabled: false
|
|
168
|
-
Lint/DuplicateRescueException:
|
|
169
|
-
Enabled: false
|
|
170
|
-
Lint/EmptyConditionalBody:
|
|
171
|
-
Enabled: false
|
|
172
|
-
Lint/EmptyFile:
|
|
173
|
-
Enabled: false
|
|
174
|
-
Lint/ErbNewArguments:
|
|
175
|
-
Enabled: false
|
|
176
|
-
Lint/FloatComparison:
|
|
177
|
-
Enabled: false
|
|
178
|
-
Lint/HashCompareByIdentity:
|
|
179
|
-
Enabled: false
|
|
180
|
-
Lint/IdentityComparison:
|
|
181
|
-
Enabled: false
|
|
182
|
-
Lint/InterpolationCheck:
|
|
183
|
-
Enabled: false
|
|
184
|
-
Lint/MissingCopEnableDirective:
|
|
185
|
-
Enabled: false
|
|
186
|
-
Lint/MixedRegexpCaptureTypes:
|
|
187
|
-
Enabled: false
|
|
188
|
-
Lint/NestedPercentLiteral:
|
|
189
|
-
Enabled: false
|
|
190
|
-
Lint/NonDeterministicRequireOrder:
|
|
191
|
-
Enabled: false
|
|
192
|
-
Lint/OrderedMagicComments:
|
|
193
|
-
Enabled: false
|
|
194
|
-
Lint/OutOfRangeRegexpRef:
|
|
195
|
-
Enabled: false
|
|
196
|
-
Lint/RaiseException:
|
|
197
|
-
Enabled: false
|
|
198
|
-
Lint/RedundantCopEnableDirective:
|
|
199
|
-
Enabled: false
|
|
200
|
-
Lint/RedundantRequireStatement:
|
|
201
|
-
Enabled: false
|
|
202
|
-
Lint/RedundantSafeNavigation:
|
|
203
|
-
Enabled: false
|
|
204
|
-
Lint/RedundantWithIndex:
|
|
205
|
-
Enabled: false
|
|
206
|
-
Lint/RedundantWithObject:
|
|
207
|
-
Enabled: false
|
|
208
|
-
Lint/RegexpAsCondition:
|
|
209
|
-
Enabled: false
|
|
210
|
-
Lint/ReturnInVoidContext:
|
|
211
|
-
Enabled: false
|
|
212
|
-
Lint/SafeNavigationConsistency:
|
|
213
|
-
Enabled: false
|
|
214
|
-
Lint/SafeNavigationWithEmpty:
|
|
215
|
-
Enabled: false
|
|
216
|
-
Lint/SelfAssignment:
|
|
217
|
-
Enabled: false
|
|
218
|
-
Lint/SendWithMixinArgument:
|
|
219
|
-
Enabled: false
|
|
220
|
-
Lint/ShadowedArgument:
|
|
221
|
-
Enabled: false
|
|
222
|
-
Lint/StructNewOverride:
|
|
223
|
-
Enabled: false
|
|
224
|
-
Lint/ToJSON:
|
|
225
|
-
Enabled: false
|
|
226
|
-
Lint/TopLevelReturnWithArgument:
|
|
227
|
-
Enabled: false
|
|
228
|
-
Lint/TrailingCommaInAttributeDeclaration:
|
|
229
|
-
Enabled: false
|
|
230
|
-
Lint/UnreachableLoop:
|
|
231
|
-
Enabled: false
|
|
232
|
-
Lint/UriEscapeUnescape:
|
|
233
|
-
Enabled: false
|
|
234
|
-
Lint/UriRegexp:
|
|
235
|
-
Enabled: false
|
|
236
|
-
Lint/UselessMethodDefinition:
|
|
237
|
-
Enabled: false
|
|
238
|
-
Lint/UselessTimes:
|
|
239
|
-
Enabled: false
|
|
240
|
-
Metrics/AbcSize:
|
|
241
|
-
Enabled: false
|
|
242
|
-
Metrics/BlockLength:
|
|
243
|
-
Enabled: false
|
|
244
|
-
Metrics/BlockNesting:
|
|
245
|
-
Enabled: false
|
|
246
|
-
Metrics/ClassLength:
|
|
247
|
-
Enabled: false
|
|
248
|
-
Metrics/CyclomaticComplexity:
|
|
249
|
-
Enabled: false
|
|
250
|
-
Metrics/MethodLength:
|
|
251
|
-
Enabled: false
|
|
252
|
-
Metrics/ModuleLength:
|
|
253
|
-
Enabled: false
|
|
254
|
-
Metrics/ParameterLists:
|
|
255
|
-
Enabled: false
|
|
256
|
-
Metrics/PerceivedComplexity:
|
|
257
|
-
Enabled: false
|
|
258
|
-
Migration/DepartmentName:
|
|
259
|
-
Enabled: false
|
|
260
|
-
Naming/AccessorMethodName:
|
|
261
|
-
Enabled: false
|
|
262
|
-
Naming/BlockParameterName:
|
|
263
|
-
Enabled: false
|
|
264
|
-
Naming/HeredocDelimiterCase:
|
|
265
|
-
Enabled: false
|
|
266
|
-
Naming/HeredocDelimiterNaming:
|
|
267
|
-
Enabled: false
|
|
268
|
-
Naming/MemoizedInstanceVariableName:
|
|
269
|
-
Enabled: false
|
|
270
|
-
Naming/MethodParameterName:
|
|
271
|
-
Enabled: false
|
|
272
|
-
Naming/RescuedExceptionsVariableName:
|
|
273
|
-
Enabled: false
|
|
274
|
-
Naming/VariableNumber:
|
|
275
|
-
Enabled: false
|
|
276
|
-
Performance/BindCall:
|
|
277
|
-
Enabled: false
|
|
278
|
-
Performance/DeletePrefix:
|
|
279
|
-
Enabled: false
|
|
280
|
-
Performance/DeleteSuffix:
|
|
281
|
-
Enabled: false
|
|
282
|
-
Performance/InefficientHashSearch:
|
|
283
|
-
Enabled: false
|
|
284
|
-
Performance/UnfreezeString:
|
|
285
|
-
Enabled: false
|
|
286
|
-
Performance/UriDefaultParser:
|
|
287
|
-
Enabled: false
|
|
288
|
-
RSpec/Be:
|
|
289
|
-
Enabled: false
|
|
290
|
-
RSpec/Capybara/CurrentPathExpectation:
|
|
291
|
-
Enabled: false
|
|
292
|
-
RSpec/Capybara/FeatureMethods:
|
|
293
|
-
Enabled: false
|
|
294
|
-
RSpec/Capybara/VisibilityMatcher:
|
|
295
|
-
Enabled: false
|
|
296
|
-
RSpec/ContextMethod:
|
|
297
|
-
Enabled: false
|
|
298
|
-
RSpec/ContextWording:
|
|
299
|
-
Enabled: false
|
|
300
|
-
RSpec/DescribeClass:
|
|
301
|
-
Enabled: false
|
|
302
|
-
RSpec/EmptyHook:
|
|
303
|
-
Enabled: false
|
|
304
|
-
RSpec/EmptyLineAfterExample:
|
|
305
|
-
Enabled: false
|
|
306
|
-
RSpec/EmptyLineAfterExampleGroup:
|
|
307
|
-
Enabled: false
|
|
308
|
-
RSpec/EmptyLineAfterHook:
|
|
309
|
-
Enabled: false
|
|
310
|
-
RSpec/ExampleLength:
|
|
311
|
-
Enabled: false
|
|
312
|
-
RSpec/ExampleWithoutDescription:
|
|
313
|
-
Enabled: false
|
|
314
|
-
RSpec/ExpectChange:
|
|
315
|
-
Enabled: false
|
|
316
|
-
RSpec/ExpectInHook:
|
|
317
|
-
Enabled: false
|
|
318
|
-
RSpec/FactoryBot/AttributeDefinedStatically:
|
|
319
|
-
Enabled: false
|
|
320
|
-
RSpec/FactoryBot/CreateList:
|
|
321
|
-
Enabled: false
|
|
322
|
-
RSpec/FactoryBot/FactoryClassName:
|
|
323
|
-
Enabled: false
|
|
324
|
-
RSpec/HooksBeforeExamples:
|
|
325
|
-
Enabled: false
|
|
326
|
-
RSpec/ImplicitBlockExpectation:
|
|
327
|
-
Enabled: false
|
|
328
|
-
RSpec/ImplicitSubject:
|
|
329
|
-
Enabled: false
|
|
330
|
-
RSpec/LeakyConstantDeclaration:
|
|
331
|
-
Enabled: false
|
|
332
|
-
RSpec/LetBeforeExamples:
|
|
333
|
-
Enabled: false
|
|
334
|
-
RSpec/MissingExampleGroupArgument:
|
|
335
|
-
Enabled: false
|
|
336
|
-
RSpec/MultipleExpectations:
|
|
337
|
-
Enabled: false
|
|
338
|
-
RSpec/MultipleMemoizedHelpers:
|
|
339
|
-
Enabled: false
|
|
340
|
-
RSpec/MultipleSubjects:
|
|
341
|
-
Enabled: false
|
|
342
|
-
RSpec/NestedGroups:
|
|
343
|
-
Enabled: false
|
|
344
|
-
RSpec/PredicateMatcher:
|
|
345
|
-
Enabled: false
|
|
346
|
-
RSpec/ReceiveCounts:
|
|
347
|
-
Enabled: false
|
|
348
|
-
RSpec/ReceiveNever:
|
|
349
|
-
Enabled: false
|
|
350
|
-
RSpec/RepeatedExampleGroupBody:
|
|
351
|
-
Enabled: false
|
|
352
|
-
RSpec/RepeatedExampleGroupDescription:
|
|
353
|
-
Enabled: false
|
|
354
|
-
RSpec/RepeatedIncludeExample:
|
|
355
|
-
Enabled: false
|
|
356
|
-
RSpec/ReturnFromStub:
|
|
357
|
-
Enabled: false
|
|
358
|
-
RSpec/SharedExamples:
|
|
359
|
-
Enabled: false
|
|
360
|
-
RSpec/StubbedMock:
|
|
361
|
-
Enabled: false
|
|
362
|
-
RSpec/UnspecifiedException:
|
|
363
|
-
Enabled: false
|
|
364
|
-
RSpec/VariableDefinition:
|
|
365
|
-
Enabled: false
|
|
366
|
-
RSpec/VoidExpect:
|
|
367
|
-
Enabled: false
|
|
368
|
-
RSpec/Yield:
|
|
369
|
-
Enabled: false
|
|
370
|
-
Security/Open:
|
|
371
|
-
Enabled: false
|
|
372
|
-
Style/AccessModifierDeclarations:
|
|
373
|
-
Enabled: false
|
|
374
|
-
Style/AccessorGrouping:
|
|
375
|
-
Enabled: false
|
|
376
|
-
Style/AsciiComments:
|
|
377
|
-
Enabled: false
|
|
378
|
-
Style/BisectedAttrAccessor:
|
|
379
|
-
Enabled: false
|
|
380
|
-
Style/CaseLikeIf:
|
|
381
|
-
Enabled: false
|
|
382
|
-
Style/ClassEqualityComparison:
|
|
383
|
-
Enabled: false
|
|
384
|
-
Style/ColonMethodDefinition:
|
|
385
|
-
Enabled: false
|
|
386
|
-
Style/CombinableLoops:
|
|
387
|
-
Enabled: false
|
|
388
|
-
Style/CommentedKeyword:
|
|
389
|
-
Enabled: false
|
|
390
|
-
Style/Dir:
|
|
391
|
-
Enabled: false
|
|
392
|
-
Style/DoubleCopDisableDirective:
|
|
393
|
-
Enabled: false
|
|
394
|
-
Style/EmptyBlockParameter:
|
|
395
|
-
Enabled: false
|
|
396
|
-
Style/EmptyLambdaParameter:
|
|
397
|
-
Enabled: false
|
|
398
|
-
Style/Encoding:
|
|
399
|
-
Enabled: false
|
|
400
|
-
Style/EvalWithLocation:
|
|
401
|
-
Enabled: false
|
|
402
|
-
Style/ExpandPathArguments:
|
|
403
|
-
Enabled: false
|
|
404
|
-
Style/ExplicitBlockArgument:
|
|
405
|
-
Enabled: false
|
|
406
|
-
Style/ExponentialNotation:
|
|
407
|
-
Enabled: false
|
|
408
|
-
Style/FloatDivision:
|
|
409
|
-
Enabled: false
|
|
410
|
-
Style/FrozenStringLiteralComment:
|
|
411
|
-
Enabled: false
|
|
412
|
-
Style/GlobalStdStream:
|
|
413
|
-
Enabled: false
|
|
414
|
-
Style/HashAsLastArrayItem:
|
|
415
|
-
Enabled: false
|
|
416
|
-
Style/HashLikeCase:
|
|
417
|
-
Enabled: false
|
|
418
|
-
Style/HashTransformKeys:
|
|
419
|
-
Enabled: false
|
|
420
|
-
Style/HashTransformValues:
|
|
421
|
-
Enabled: false
|
|
422
|
-
Style/IfUnlessModifier:
|
|
423
|
-
Enabled: false
|
|
424
|
-
Style/KeywordParametersOrder:
|
|
425
|
-
Enabled: false
|
|
426
|
-
Style/MinMax:
|
|
427
|
-
Enabled: false
|
|
428
|
-
Style/MixinUsage:
|
|
429
|
-
Enabled: false
|
|
430
|
-
Style/MultilineWhenThen:
|
|
431
|
-
Enabled: false
|
|
432
|
-
Style/NegatedUnless:
|
|
433
|
-
Enabled: false
|
|
434
|
-
Style/NumericPredicate:
|
|
435
|
-
Enabled: false
|
|
436
|
-
Style/OptionalBooleanParameter:
|
|
437
|
-
Enabled: false
|
|
438
|
-
Style/OrAssignment:
|
|
439
|
-
Enabled: false
|
|
440
|
-
Style/RandomWithOffset:
|
|
441
|
-
Enabled: false
|
|
442
|
-
Style/RedundantAssignment:
|
|
443
|
-
Enabled: false
|
|
444
|
-
Style/RedundantCondition:
|
|
445
|
-
Enabled: false
|
|
446
|
-
Style/RedundantConditional:
|
|
447
|
-
Enabled: false
|
|
448
|
-
Style/RedundantFetchBlock:
|
|
449
|
-
Enabled: false
|
|
450
|
-
Style/RedundantFileExtensionInRequire:
|
|
451
|
-
Enabled: false
|
|
452
|
-
Style/RedundantRegexpCharacterClass:
|
|
453
|
-
Enabled: false
|
|
454
|
-
Style/RedundantRegexpEscape:
|
|
455
|
-
Enabled: false
|
|
456
|
-
Style/RedundantSelfAssignment:
|
|
457
|
-
Enabled: false
|
|
458
|
-
Style/RedundantSort:
|
|
459
|
-
Enabled: false
|
|
460
|
-
Style/RescueStandardError:
|
|
461
|
-
Enabled: false
|
|
462
|
-
Style/SingleArgumentDig:
|
|
463
|
-
Enabled: false
|
|
464
|
-
Style/SlicingWithRange:
|
|
465
|
-
Enabled: false
|
|
466
|
-
Style/SoleNestedConditional:
|
|
467
|
-
Enabled: false
|
|
468
|
-
Style/StderrPuts:
|
|
469
|
-
Enabled: false
|
|
470
|
-
Style/StringConcatenation:
|
|
471
|
-
Enabled: false
|
|
472
|
-
Style/Strip:
|
|
473
|
-
Enabled: false
|
|
474
|
-
Style/SymbolProc:
|
|
475
|
-
Enabled: false
|
|
476
|
-
Style/TrailingBodyOnClass:
|
|
477
|
-
Enabled: false
|
|
478
|
-
Style/TrailingBodyOnMethodDefinition:
|
|
479
|
-
Enabled: false
|
|
480
|
-
Style/TrailingBodyOnModule:
|
|
481
|
-
Enabled: false
|
|
482
|
-
Style/TrailingCommaInHashLiteral:
|
|
483
|
-
Enabled: false
|
|
484
|
-
Style/TrailingMethodEndStatement:
|
|
485
|
-
Enabled: false
|
|
486
|
-
Style/UnpackFirst:
|
|
487
|
-
Enabled: false
|
|
488
|
-
Lint/DuplicateBranch:
|
|
489
|
-
Enabled: false
|
|
490
|
-
Lint/DuplicateRegexpCharacterClassElement:
|
|
491
|
-
Enabled: false
|
|
492
|
-
Lint/EmptyBlock:
|
|
493
|
-
Enabled: false
|
|
494
|
-
Lint/EmptyClass:
|
|
495
|
-
Enabled: false
|
|
496
|
-
Lint/NoReturnInBeginEndBlocks:
|
|
497
|
-
Enabled: false
|
|
498
|
-
Lint/ToEnumArguments:
|
|
499
|
-
Enabled: false
|
|
500
|
-
Lint/UnexpectedBlockArity:
|
|
501
|
-
Enabled: false
|
|
502
|
-
Lint/UnmodifiedReduceAccumulator:
|
|
503
|
-
Enabled: false
|
|
504
|
-
Performance/CollectionLiteralInLoop:
|
|
505
|
-
Enabled: false
|
|
506
|
-
Style/ArgumentsForwarding:
|
|
507
|
-
Enabled: false
|
|
508
|
-
Style/CollectionCompact:
|
|
509
|
-
Enabled: false
|
|
510
|
-
Style/DocumentDynamicEvalDefinition:
|
|
511
|
-
Enabled: false
|
|
512
|
-
Style/NegatedIfElseCondition:
|
|
513
|
-
Enabled: false
|
|
514
|
-
Style/NilLambda:
|
|
515
|
-
Enabled: false
|
|
516
|
-
Style/RedundantArgument:
|
|
517
|
-
Enabled: false
|
|
518
|
-
Style/SwapValues:
|
|
519
|
-
Enabled: false
|
|
2
|
+
inherit_from: .rubocop_todo.yml
|
|
3
|
+
|
|
4
|
+
inherit_gem:
|
|
5
|
+
voxpupuli-rubocop: rubocop.yml
|
data/.rubocop_todo.yml
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This configuration was generated by
|
|
2
|
+
# `rubocop --auto-gen-config --no-auto-gen-timestamp`
|
|
3
|
+
# using RuboCop version 1.75.8.
|
|
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
|
+
# Offense count: 1
|
|
10
|
+
# This cop supports safe autocorrection (--autocorrect).
|
|
11
|
+
# Configuration parameters: AutoCorrect, CheckForMethodsWithNoSideEffects.
|
|
12
|
+
Lint/Void:
|
|
13
|
+
Exclude:
|
|
14
|
+
- 'lib/beaker/hypervisor/google_compute_helper.rb'
|
|
15
|
+
|
|
16
|
+
# Offense count: 2
|
|
17
|
+
# Configuration parameters: MinSize.
|
|
18
|
+
Performance/CollectionLiteralInLoop:
|
|
19
|
+
Exclude:
|
|
20
|
+
- 'lib/beaker/hypervisor/google_compute_helper.rb'
|
data/.simplecov
CHANGED
data/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,55 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## [1.
|
|
3
|
+
## [1.2.0](https://github.com/voxpupuli/beaker-google/tree/1.2.0) (2026-11-03)
|
|
4
|
+
|
|
5
|
+
[Full Changelog](https://github.com/voxpupuli/beaker-google/compare/1.2.0...1.2.0)
|
|
6
|
+
|
|
7
|
+
**Fixed bugs:**
|
|
8
|
+
|
|
9
|
+
- Let a non-empty BEAKER\_gce\_ports replace configured gce\_ports [\#74](https://github.com/voxpupuli/beaker-google/pull/74) ([jaevans](https://github.com/jaevans))
|
|
10
|
+
|
|
11
|
+
**Closed issues:**
|
|
12
|
+
|
|
13
|
+
- Compute calls fail with "Invalid API version '2026-11-01'" since google-apis-compute\_v1 0.157.0 [\#76](https://github.com/voxpupuli/beaker-google/issues/76)
|
|
14
|
+
|
|
15
|
+
**Merged pull requests:**
|
|
16
|
+
|
|
17
|
+
- Pin the Compute API version sent to Compute Engine [\#77](https://github.com/voxpupuli/beaker-google/pull/77) ([michael-riddle](https://github.com/michael-riddle))
|
|
18
|
+
- Remove CodeQL workflow in favor of default setup [\#75](https://github.com/voxpupuli/beaker-google/pull/75) ([jaevans](https://github.com/jaevans))
|
|
19
|
+
- Bump actions/checkout from 6 to 7 [\#71](https://github.com/voxpupuli/beaker-google/pull/71) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
20
|
+
- Bump rubygems/configure-rubygems-credentials from 1.0.0 to 2.1.0 [\#70](https://github.com/voxpupuli/beaker-google/pull/70) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
21
|
+
- Bump actions/download-artifact from 7 to 8 [\#68](https://github.com/voxpupuli/beaker-google/pull/68) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
22
|
+
- Bump actions/upload-artifact from 6 to 7 [\#67](https://github.com/voxpupuli/beaker-google/pull/67) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
23
|
+
- Bump actions/upload-artifact from 5 to 6 [\#66](https://github.com/voxpupuli/beaker-google/pull/66) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
24
|
+
- Bump actions/download-artifact from 6 to 7 [\#65](https://github.com/voxpupuli/beaker-google/pull/65) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
25
|
+
- Bump actions/checkout from 5 to 6 [\#64](https://github.com/voxpupuli/beaker-google/pull/64) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
26
|
+
- Bump actions/upload-artifact from 4 to 5 [\#63](https://github.com/voxpupuli/beaker-google/pull/63) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
27
|
+
- Bump actions/download-artifact from 5 to 6 [\#62](https://github.com/voxpupuli/beaker-google/pull/62) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
28
|
+
- Bump github/codeql-action from 3 to 4 [\#61](https://github.com/voxpupuli/beaker-google/pull/61) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
29
|
+
- Bump actions/checkout from 4 to 5 [\#60](https://github.com/voxpupuli/beaker-google/pull/60) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
30
|
+
- Update thin requirement from ~\> 1.8, \>= 1.8.2 to \>= 1.8.2, \< 3 [\#59](https://github.com/voxpupuli/beaker-google/pull/59) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
31
|
+
- Add rspec tests [\#57](https://github.com/voxpupuli/beaker-google/pull/57) ([silug](https://github.com/silug))
|
|
32
|
+
- Update voxpupuli-rubocop requirement from ~\> 2.8.0 to ~\> 3.1.0 [\#56](https://github.com/voxpupuli/beaker-google/pull/56) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
33
|
+
- Update voxpupuli-rubocop requirement from ~\> 2.7.0 to ~\> 2.8.0 [\#55](https://github.com/voxpupuli/beaker-google/pull/55) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
34
|
+
|
|
35
|
+
## [1.2.0](https://github.com/voxpupuli/beaker-google/tree/1.2.0) (2024-06-07)
|
|
36
|
+
|
|
37
|
+
[Full Changelog](https://github.com/voxpupuli/beaker-google/compare/1.1.0...1.2.0)
|
|
38
|
+
|
|
39
|
+
**Implemented enhancements:**
|
|
40
|
+
|
|
41
|
+
- CI: Run on Ruby 3.2 and 3.3 as well [\#52](https://github.com/voxpupuli/beaker-google/pull/52) ([bastelfreak](https://github.com/bastelfreak))
|
|
42
|
+
|
|
43
|
+
**Fixed bugs:**
|
|
44
|
+
|
|
45
|
+
- Fix call to Google::Apis::ComputeV1::Instance.new\(\) to work on Ruby 3 [\#51](https://github.com/voxpupuli/beaker-google/pull/51) ([silug](https://github.com/silug))
|
|
46
|
+
|
|
47
|
+
**Merged pull requests:**
|
|
48
|
+
|
|
49
|
+
- CI: build gem with --strict & --verbose [\#53](https://github.com/voxpupuli/beaker-google/pull/53) ([bastelfreak](https://github.com/bastelfreak))
|
|
50
|
+
- Cleanup for rubocop [\#50](https://github.com/voxpupuli/beaker-google/pull/50) ([silug](https://github.com/silug))
|
|
51
|
+
|
|
52
|
+
## [1.1.0](https://github.com/voxpupuli/beaker-google/tree/1.1.0) (2024-05-22)
|
|
4
53
|
|
|
5
54
|
[Full Changelog](https://github.com/voxpupuli/beaker-google/compare/1.0.0...1.1.0)
|
|
6
55
|
|
data/Gemfile
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
source ENV.fetch('GEM_SOURCE', 'https://rubygems.org')
|
|
2
4
|
|
|
3
5
|
gemspec
|
|
@@ -18,6 +20,15 @@ group :acceptance_testing do
|
|
|
18
20
|
gem 'beaker', *location_for(ENV.fetch('BEAKER_VERSION', '~> 4.0'))
|
|
19
21
|
end
|
|
20
22
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
+
# For Ruby 3.4 compatibility
|
|
24
|
+
group :development, :test do
|
|
25
|
+
gem 'benchmark', '~> 0.1'
|
|
26
|
+
gem 'irb', '~> 1.2'
|
|
27
|
+
gem 'mutex_m', '~> 0.1'
|
|
28
|
+
gem 'pstore', '~> 0.1'
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
group :release, optional: true do
|
|
32
|
+
gem 'faraday-retry', '~> 2.1', require: false
|
|
33
|
+
gem 'github_changelog_generator', '~> 1.16.4', require: false
|
|
23
34
|
end
|
data/README.md
CHANGED
|
@@ -46,7 +46,7 @@ The behavior of this library can be configured using either the beaker host conf
|
|
|
46
46
|
| gce_zone | true | | The zone to place compute instances in. The region is calculated from the zone name. |
|
|
47
47
|
| gce_network | false | Default | The name of the network to attach to instances. If the project uses the default network, this and `gce_subnetwork` can be left empty. |
|
|
48
48
|
| gce_subnetwork | false | Default | The name of the subnetwork to attach to the instances network interface. If the Default network is not used, this must be supplied. |
|
|
49
|
-
| gce_ports | false | `[ ]` | A comma separated
|
|
49
|
+
| gce_ports | false | `[ ]` | A list, or a comma separated string, of ports to add to the external firewall. A non-empty `BEAKER_gce_ports` replaces it. Each port is specified in the format `number/protocol` where protocol is one of `tcp`, `udp`, `icmp`, `esp`, `ah`, `ipip`, or `sctp`. **NOTE:** Port `22/tcp` is required for beaker to function and is automatically added to the firewall. |
|
|
50
50
|
| gce_ssh_private_key | false | $HOME/.ssh/google_compute_engine | The file path of the private key to use to connect to instances. If using the key created by the gcloud tool, this can be left blank. |
|
|
51
51
|
| gce_ssh_public_key | false | <gce_ssh_private_key>.pub | The file path of the public key to upload to the instance. If left blank, attempt to use the file at `gce_ssh_private_key` with a `.pub` extension. |
|
|
52
52
|
| gce_machine_type | false | e2-standard-4 | The machine type to use for the instance. If the `BEAKER_gce_machine_type` environment variable is set, it will be used for all hosts. |
|
|
@@ -62,7 +62,7 @@ Each run of beaker creates a pair of firewalls to protect the hosts, and interna
|
|
|
62
62
|
|
|
63
63
|
The internal firewall allows all communication between hosts in the node set, while keeping them isolated from any other Beaker jobs that may be running in the same environment. This firewall is attached to all hosts in the test set, and allows all `tcp`, `udp`, and `icmp` traffic.
|
|
64
64
|
|
|
65
|
-
The external firewall allows outside communication from the internet into the hosts in the test. Due to constrains of the Beaker system, the firewall accepts any source IP (`0.0.0.0/0`) and the SSH port (`22/tcp`) is always allowed. Other ports may be
|
|
65
|
+
The external firewall allows outside communication from the internet into the hosts in the test. Due to constrains of the Beaker system, the firewall accepts any source IP (`0.0.0.0/0`) and the SSH port (`22/tcp`) is always allowed. Other ports may be opened with the `gce_ports` configuration option, or with the `BEAKER_gce_ports` environment variable, which takes the place of `gce_ports` when both are set. Either takes a list, or a comma separated string, of `port/proto` values where `port` is the port number or range, and proto is one of `tcp`, `udp`, `icmp`, `esp`, `ah`, `ipip`, or `sctp`. The port number is only used for `tcp`, `udp`, and `sctp` protocols. Any value, such as `-1` can be used for the other protocols. A non-empty `BEAKER_gce_ports` replaces the configured list rather than adding to it, so it must name every port the run needs besides `22/tcp`.
|
|
66
66
|
|
|
67
67
|
VM Instances created during this process will by default use the automatically-generated instance name as the hostname in the VM OS. Set the `BEAKER_set_gce_hostname` environment variable to `1` to override this behavior and configure the VM OS with the name defined in the nodeset as the hostname.
|
|
68
68
|
|