beaker-vcloud 1.1.0 → 2.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 +9 -0
- data/.github/workflows/release.yml +2 -2
- data/.github/workflows/test.yml +30 -7
- data/.rubocop.yml +5 -0
- data/.rubocop_todo.yml +292 -0
- data/CHANGELOG.md +25 -0
- data/Gemfile +6 -22
- data/Rakefile +12 -111
- data/beaker-vcloud.gemspec +19 -17
- data/bin/beaker-vcloud +1 -3
- data/lib/beaker/hypervisor/vcloud.rb +79 -88
- data/lib/beaker-vcloud/version.rb +1 -1
- data/spec/beaker/hypervisor/vcloud_spec.rb +39 -49
- data/spec/mock_vsphere.rb +284 -0
- data/spec/mock_vsphere_helper.rb +167 -0
- data/spec/spec_helper.rb +8 -6
- metadata +72 -28
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1e7a2a9d01c6336ded1ef7f7bfa690095acfb358b245f42cdd3dcbbb044fd980
|
4
|
+
data.tar.gz: f38c247c87a35f9e8f00d9ee88ea4c59edd4155d3580bb4daa138300ca9413a2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0ff9560c8b7c900a867b7ddc14d386a7912067878991809b414901f197a0624eda7ff6ea11b5c2a82a9a1dcd489b926da998514881c8f92d17be29a2688bd2bc
|
7
|
+
data.tar.gz: b75ad34a05276e85c3c35e4a4331d0a4b65119afe603d5867866ff67d847f34d7a85b2c1b1ade07d2ce5fa08f4e4638af893494208b4326f499506d1d52b634e
|
data/.github/dependabot.yml
CHANGED
@@ -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,7 +10,7 @@ jobs:
|
|
10
10
|
runs-on: ubuntu-latest
|
11
11
|
if: github.repository_owner == 'voxpupuli'
|
12
12
|
steps:
|
13
|
-
- uses: actions/checkout@
|
13
|
+
- uses: actions/checkout@v4
|
14
14
|
- name: Install Ruby 3.0
|
15
15
|
uses: ruby/setup-ruby@v1
|
16
16
|
with:
|
@@ -18,7 +18,7 @@ jobs:
|
|
18
18
|
env:
|
19
19
|
BUNDLE_WITHOUT: release
|
20
20
|
- name: Build gem
|
21
|
-
run: gem build *.gemspec
|
21
|
+
run: gem build --strict --verbose *.gemspec
|
22
22
|
- name: Publish gem to rubygems.org
|
23
23
|
run: gem push *.gem
|
24
24
|
env:
|
data/.github/workflows/test.yml
CHANGED
@@ -1,29 +1,43 @@
|
|
1
1
|
name: Test
|
2
2
|
|
3
3
|
on:
|
4
|
-
|
5
|
-
|
4
|
+
pull_request: {}
|
5
|
+
push:
|
6
|
+
branches:
|
7
|
+
- master
|
6
8
|
|
7
9
|
env:
|
8
10
|
BUNDLE_WITHOUT: release
|
9
11
|
|
10
12
|
jobs:
|
13
|
+
rubocop:
|
14
|
+
runs-on: ubuntu-latest
|
15
|
+
steps:
|
16
|
+
- uses: actions/checkout@v4
|
17
|
+
- name: Install Ruby ${{ matrix.ruby }}
|
18
|
+
uses: ruby/setup-ruby@v1
|
19
|
+
with:
|
20
|
+
ruby-version: "3.3"
|
21
|
+
bundler-cache: true
|
22
|
+
- name: Run Rubocop
|
23
|
+
run: bundle exec rake rubocop
|
24
|
+
|
11
25
|
test:
|
12
26
|
runs-on: ubuntu-latest
|
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
|
coverage: "yes"
|
34
|
+
- ruby: "3.1"
|
35
|
+
- ruby: "3.2"
|
36
|
+
- ruby: "3.3"
|
23
37
|
env:
|
24
38
|
COVERAGE: ${{ matrix.coverage }}
|
25
39
|
steps:
|
26
|
-
- uses: actions/checkout@
|
40
|
+
- uses: actions/checkout@v4
|
27
41
|
- name: Install Ruby ${{ matrix.ruby }}
|
28
42
|
uses: ruby/setup-ruby@v1
|
29
43
|
with:
|
@@ -32,4 +46,13 @@ jobs:
|
|
32
46
|
- name: Run tests
|
33
47
|
run: bundle exec rake
|
34
48
|
- name: Build gem
|
35
|
-
run: gem build *.gemspec
|
49
|
+
run: gem build --strict --verbose *.gemspec
|
50
|
+
|
51
|
+
tests:
|
52
|
+
needs:
|
53
|
+
- rubocop
|
54
|
+
- test
|
55
|
+
runs-on: ubuntu-latest
|
56
|
+
name: Test suite
|
57
|
+
steps:
|
58
|
+
- run: echo Test suite completed
|
data/.rubocop.yml
ADDED
data/.rubocop_todo.yml
ADDED
@@ -0,0 +1,292 @@
|
|
1
|
+
# This configuration was generated by
|
2
|
+
# `rubocop --auto-gen-config`
|
3
|
+
# on 2024-04-23 13:50:35 UTC using RuboCop version 1.62.1.
|
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
|
+
# Configuration parameters: Severity, Include.
|
11
|
+
# Include: **/*.gemspec
|
12
|
+
Gemspec/RequiredRubyVersion:
|
13
|
+
Exclude:
|
14
|
+
- 'beaker-vcloud.gemspec'
|
15
|
+
|
16
|
+
# Offense count: 1
|
17
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
18
|
+
# Configuration parameters: AllowSafeAssignment.
|
19
|
+
Lint/AssignmentInCondition:
|
20
|
+
Exclude:
|
21
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
22
|
+
|
23
|
+
# Offense count: 2
|
24
|
+
Lint/DuplicateMethods:
|
25
|
+
Exclude:
|
26
|
+
- 'spec/mock_vsphere_helper.rb'
|
27
|
+
|
28
|
+
# Offense count: 1
|
29
|
+
# Configuration parameters: AllowedParentClasses.
|
30
|
+
Lint/MissingSuper:
|
31
|
+
Exclude:
|
32
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
33
|
+
|
34
|
+
# Offense count: 1
|
35
|
+
# Configuration parameters: AllowComments, AllowNil.
|
36
|
+
Lint/SuppressedException:
|
37
|
+
Exclude:
|
38
|
+
- 'Rakefile'
|
39
|
+
|
40
|
+
# Offense count: 2
|
41
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
42
|
+
# Configuration parameters: AutoCorrect.
|
43
|
+
Lint/UselessAssignment:
|
44
|
+
Exclude:
|
45
|
+
- 'Rakefile'
|
46
|
+
|
47
|
+
# Offense count: 3
|
48
|
+
Naming/AccessorMethodName:
|
49
|
+
Exclude:
|
50
|
+
- 'spec/mock_vsphere.rb'
|
51
|
+
- 'spec/mock_vsphere_helper.rb'
|
52
|
+
|
53
|
+
# Offense count: 30
|
54
|
+
# Configuration parameters: EnforcedStyle, AllowedPatterns.
|
55
|
+
# SupportedStyles: snake_case, camelCase
|
56
|
+
Naming/MethodName:
|
57
|
+
Exclude:
|
58
|
+
- 'spec/mock_vsphere.rb'
|
59
|
+
- 'spec/mock_vsphere_helper.rb'
|
60
|
+
|
61
|
+
# Offense count: 6
|
62
|
+
# Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
|
63
|
+
# AllowedNames: as, at, by, cc, db, id, if, in, io, ip, of, on, os, pp, to
|
64
|
+
Naming/MethodParameterName:
|
65
|
+
Exclude:
|
66
|
+
- 'spec/mock_vsphere.rb'
|
67
|
+
- 'spec/mock_vsphere_helper.rb'
|
68
|
+
|
69
|
+
# Offense count: 16
|
70
|
+
# Configuration parameters: EnforcedStyle, AllowedIdentifiers, AllowedPatterns.
|
71
|
+
# SupportedStyles: snake_case, camelCase
|
72
|
+
Naming/VariableName:
|
73
|
+
Exclude:
|
74
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
75
|
+
- 'spec/mock_vsphere.rb'
|
76
|
+
- 'spec/mock_vsphere_helper.rb'
|
77
|
+
|
78
|
+
# Offense count: 2
|
79
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
80
|
+
Performance/MapCompact:
|
81
|
+
Exclude:
|
82
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
83
|
+
- 'spec/beaker/hypervisor/vcloud_spec.rb'
|
84
|
+
|
85
|
+
# Offense count: 1
|
86
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
87
|
+
Performance/StringInclude:
|
88
|
+
Exclude:
|
89
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
90
|
+
|
91
|
+
# Offense count: 2
|
92
|
+
RSpec/AnyInstance:
|
93
|
+
Exclude:
|
94
|
+
- 'spec/beaker/hypervisor/vcloud_spec.rb'
|
95
|
+
|
96
|
+
# Offense count: 7
|
97
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
98
|
+
# Configuration parameters: SkipBlocks, EnforcedStyle, OnlyStaticConstants.
|
99
|
+
# SupportedStyles: described_class, explicit
|
100
|
+
RSpec/DescribedClass:
|
101
|
+
Exclude:
|
102
|
+
- 'spec/beaker/hypervisor/vcloud_spec.rb'
|
103
|
+
|
104
|
+
# Offense count: 3
|
105
|
+
# Configuration parameters: CountAsOne.
|
106
|
+
RSpec/ExampleLength:
|
107
|
+
Max: 15
|
108
|
+
|
109
|
+
# Offense count: 2
|
110
|
+
# Configuration parameters: .
|
111
|
+
# SupportedStyles: have_received, receive
|
112
|
+
RSpec/MessageSpies:
|
113
|
+
EnforcedStyle: receive
|
114
|
+
|
115
|
+
# Offense count: 1
|
116
|
+
RSpec/MultipleExpectations:
|
117
|
+
Max: 2
|
118
|
+
|
119
|
+
# Offense count: 6
|
120
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
121
|
+
RSpec/ReceiveMessages:
|
122
|
+
Exclude:
|
123
|
+
- 'spec/beaker/hypervisor/vcloud_spec.rb'
|
124
|
+
|
125
|
+
# Offense count: 1
|
126
|
+
# Configuration parameters: IgnoreNameless, IgnoreSymbolicNames.
|
127
|
+
RSpec/VerifiedDoubles:
|
128
|
+
Exclude:
|
129
|
+
- 'spec/beaker/hypervisor/vcloud_spec.rb'
|
130
|
+
|
131
|
+
# Offense count: 3
|
132
|
+
# This cop supports safe autocorrection (--autocorrect).
|
133
|
+
Rake/Desc:
|
134
|
+
Exclude:
|
135
|
+
- 'Rakefile'
|
136
|
+
|
137
|
+
# Offense count: 2
|
138
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
139
|
+
# Configuration parameters: EnforcedStyle.
|
140
|
+
# SupportedStyles: always, conditionals
|
141
|
+
Style/AndOr:
|
142
|
+
Exclude:
|
143
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
144
|
+
|
145
|
+
# Offense count: 2
|
146
|
+
# This cop supports safe autocorrection (--autocorrect).
|
147
|
+
# Configuration parameters: AllowOnConstant, AllowOnSelfClass.
|
148
|
+
Style/CaseEquality:
|
149
|
+
Exclude:
|
150
|
+
- 'spec/beaker/hypervisor/vcloud_spec.rb'
|
151
|
+
|
152
|
+
# Offense count: 4
|
153
|
+
Style/ClassVars:
|
154
|
+
Exclude:
|
155
|
+
- 'spec/mock_vsphere_helper.rb'
|
156
|
+
|
157
|
+
# Offense count: 1
|
158
|
+
# Configuration parameters: AllowedConstants.
|
159
|
+
Style/Documentation:
|
160
|
+
Exclude:
|
161
|
+
- 'spec/**/*'
|
162
|
+
- 'test/**/*'
|
163
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
164
|
+
|
165
|
+
# Offense count: 4
|
166
|
+
# This cop supports safe autocorrection (--autocorrect).
|
167
|
+
# Configuration parameters: EnforcedStyle.
|
168
|
+
# SupportedStyles: format, sprintf, percent
|
169
|
+
Style/FormatString:
|
170
|
+
Exclude:
|
171
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
172
|
+
|
173
|
+
# Offense count: 11
|
174
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
175
|
+
# Configuration parameters: EnforcedStyle.
|
176
|
+
# SupportedStyles: always, always_true, never
|
177
|
+
Style/FrozenStringLiteralComment:
|
178
|
+
Exclude:
|
179
|
+
- '.simplecov'
|
180
|
+
- 'Gemfile'
|
181
|
+
- 'Rakefile'
|
182
|
+
- 'beaker-vcloud.gemspec'
|
183
|
+
- 'bin/beaker-vcloud'
|
184
|
+
- 'lib/beaker-vcloud/version.rb'
|
185
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
186
|
+
- 'spec/beaker/hypervisor/vcloud_spec.rb'
|
187
|
+
- 'spec/mock_vsphere.rb'
|
188
|
+
- 'spec/mock_vsphere_helper.rb'
|
189
|
+
- 'spec/spec_helper.rb'
|
190
|
+
|
191
|
+
# Offense count: 2
|
192
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
193
|
+
# Configuration parameters: AllowedReceivers.
|
194
|
+
# AllowedReceivers: Thread.current
|
195
|
+
Style/HashEachMethods:
|
196
|
+
Exclude:
|
197
|
+
- 'spec/mock_vsphere_helper.rb'
|
198
|
+
|
199
|
+
# Offense count: 1
|
200
|
+
# This cop supports safe autocorrection (--autocorrect).
|
201
|
+
Style/IfUnlessModifier:
|
202
|
+
Exclude:
|
203
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
204
|
+
|
205
|
+
# Offense count: 1
|
206
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
207
|
+
# Configuration parameters: AllowedMethods.
|
208
|
+
# AllowedMethods: nonzero?
|
209
|
+
Style/IfWithBooleanLiteralBranches:
|
210
|
+
Exclude:
|
211
|
+
- 'Rakefile'
|
212
|
+
|
213
|
+
# Offense count: 3
|
214
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
215
|
+
Style/LineEndConcatenation:
|
216
|
+
Exclude:
|
217
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
218
|
+
|
219
|
+
# Offense count: 4
|
220
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
221
|
+
# Configuration parameters: EnforcedStyle.
|
222
|
+
# SupportedStyles: literals, strict
|
223
|
+
Style/MutableConstant:
|
224
|
+
Exclude:
|
225
|
+
- 'Rakefile'
|
226
|
+
- 'bin/beaker-vcloud'
|
227
|
+
- 'lib/beaker-vcloud/version.rb'
|
228
|
+
|
229
|
+
# Offense count: 1
|
230
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
231
|
+
# Configuration parameters: EnforcedStyle, AllowedMethods, AllowedPatterns.
|
232
|
+
# SupportedStyles: predicate, comparison
|
233
|
+
Style/NumericPredicate:
|
234
|
+
Exclude:
|
235
|
+
- 'spec/**/*'
|
236
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
237
|
+
|
238
|
+
# Offense count: 2
|
239
|
+
Style/OpenStructUse:
|
240
|
+
Exclude:
|
241
|
+
- 'spec/mock_vsphere.rb'
|
242
|
+
|
243
|
+
# Offense count: 1
|
244
|
+
# Configuration parameters: AllowedMethods.
|
245
|
+
# AllowedMethods: respond_to_missing?
|
246
|
+
Style/OptionalBooleanParameter:
|
247
|
+
Exclude:
|
248
|
+
- 'spec/mock_vsphere.rb'
|
249
|
+
|
250
|
+
# Offense count: 2
|
251
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
252
|
+
# Configuration parameters: EnforcedStyle.
|
253
|
+
# SupportedStyles: short, verbose
|
254
|
+
Style/PreferredHashMethods:
|
255
|
+
Exclude:
|
256
|
+
- 'spec/mock_vsphere_helper.rb'
|
257
|
+
|
258
|
+
# Offense count: 1
|
259
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
260
|
+
# Configuration parameters: Methods.
|
261
|
+
Style/RedundantArgument:
|
262
|
+
Exclude:
|
263
|
+
- 'Rakefile'
|
264
|
+
|
265
|
+
# Offense count: 2
|
266
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
267
|
+
# Configuration parameters: AutoCorrect, AllowComments.
|
268
|
+
Style/RedundantInitialize:
|
269
|
+
Exclude:
|
270
|
+
- 'spec/mock_vsphere.rb'
|
271
|
+
- 'spec/mock_vsphere_helper.rb'
|
272
|
+
|
273
|
+
# Offense count: 3
|
274
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
275
|
+
# Configuration parameters: Mode.
|
276
|
+
Style/StringConcatenation:
|
277
|
+
Exclude:
|
278
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
279
|
+
- 'spec/mock_vsphere.rb'
|
280
|
+
|
281
|
+
# Offense count: 1
|
282
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
283
|
+
Style/ZeroLengthPredicate:
|
284
|
+
Exclude:
|
285
|
+
- 'lib/beaker/hypervisor/vcloud.rb'
|
286
|
+
|
287
|
+
# Offense count: 4
|
288
|
+
# This cop supports safe autocorrection (--autocorrect).
|
289
|
+
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
|
290
|
+
# URISchemes: http, https
|
291
|
+
Layout/LineLength:
|
292
|
+
Max: 152
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,30 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## [2.0.0](https://github.com/voxpupuli/beaker-vcloud/tree/2.0.0) (2024-04-23)
|
4
|
+
|
5
|
+
[Full Changelog](https://github.com/voxpupuli/beaker-vcloud/compare/1.1.0...2.0.0)
|
6
|
+
|
7
|
+
**Breaking changes:**
|
8
|
+
|
9
|
+
- Drop Ruby 2.4/2.5/2.5 support [\#21](https://github.com/voxpupuli/beaker-vcloud/pull/21) ([bastelfreak](https://github.com/bastelfreak))
|
10
|
+
|
11
|
+
**Implemented enhancements:**
|
12
|
+
|
13
|
+
- add strict version constraints for dependencies & Build gem in strict mode [\#28](https://github.com/voxpupuli/beaker-vcloud/pull/28) ([bastelfreak](https://github.com/bastelfreak))
|
14
|
+
- Apply our CI best practices [\#27](https://github.com/voxpupuli/beaker-vcloud/pull/27) ([bastelfreak](https://github.com/bastelfreak))
|
15
|
+
- Implement voxpupli-rubocop & rubocop: autocorrect [\#26](https://github.com/voxpupuli/beaker-vcloud/pull/26) ([bastelfreak](https://github.com/bastelfreak))
|
16
|
+
- Replace dead dependency rbvmomi with rbvmomi2 [\#23](https://github.com/voxpupuli/beaker-vcloud/pull/23) ([bastelfreak](https://github.com/bastelfreak))
|
17
|
+
- Add Ruby 3.1/3.2/3.3 to CI [\#19](https://github.com/voxpupuli/beaker-vcloud/pull/19) ([bastelfreak](https://github.com/bastelfreak))
|
18
|
+
|
19
|
+
**Fixed bugs:**
|
20
|
+
|
21
|
+
- Add missing beaker dependency [\#22](https://github.com/voxpupuli/beaker-vcloud/pull/22) ([bastelfreak](https://github.com/bastelfreak))
|
22
|
+
|
23
|
+
**Merged pull requests:**
|
24
|
+
|
25
|
+
- Update fakefs requirement from ~\> 0.6 to ~\> 2.5 [\#25](https://github.com/voxpupuli/beaker-vcloud/pull/25) ([dependabot[bot]](https://github.com/apps/dependabot))
|
26
|
+
- dependabot: check for github actions and gems [\#18](https://github.com/voxpupuli/beaker-vcloud/pull/18) ([bastelfreak](https://github.com/bastelfreak))
|
27
|
+
|
3
28
|
## [1.1.0](https://github.com/voxpupuli/beaker-vcloud/tree/1.1.0) (2021-08-09)
|
4
29
|
|
5
30
|
[Full Changelog](https://github.com/voxpupuli/beaker-vcloud/compare/1.0.0...1.1.0)
|
data/Gemfile
CHANGED
@@ -1,29 +1,13 @@
|
|
1
|
-
source ENV['GEM_SOURCE'] ||
|
1
|
+
source ENV['GEM_SOURCE'] || 'https://rubygems.org'
|
2
2
|
|
3
3
|
gemspec
|
4
4
|
|
5
|
-
def location_for(place, fake_version = nil)
|
6
|
-
if place =~ /^git:([^#]*)#(.*)/
|
7
|
-
[fake_version, { :git => $1, :branch => $2, :require => false }].compact
|
8
|
-
elsif place =~ /^file:\/\/(.*)/
|
9
|
-
['>= 0', { :path => File.expand_path($1), :require => false }]
|
10
|
-
else
|
11
|
-
[place, { :require => false }]
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
|
16
|
-
# We don't put beaker in as a test dependency because we
|
17
|
-
# don't want to create a transitive dependency
|
18
|
-
group :acceptance_testing do
|
19
|
-
gem "beaker", *location_for(ENV['BEAKER_VERSION'] || '>= 3.0')
|
20
|
-
end
|
21
|
-
|
22
5
|
group :release do
|
23
|
-
gem '
|
6
|
+
gem 'faraday-retry', '~> 2.1', require: false
|
7
|
+
gem 'github_changelog_generator', '~> 1.16.4', require: false
|
24
8
|
end
|
25
9
|
|
26
|
-
group :coverage, optional: ENV['COVERAGE']!='yes' do
|
27
|
-
gem '
|
28
|
-
gem '
|
10
|
+
group :coverage, optional: ENV['COVERAGE'] != 'yes' do
|
11
|
+
gem 'codecov', require: false
|
12
|
+
gem 'simplecov-console', require: false
|
29
13
|
end
|
data/Rakefile
CHANGED
@@ -2,7 +2,7 @@ require 'rspec/core/rake_task'
|
|
2
2
|
|
3
3
|
namespace :test do
|
4
4
|
namespace :spec do
|
5
|
-
desc
|
5
|
+
desc 'Run spec tests'
|
6
6
|
RSpec::Core::RakeTask.new(:run) do |t|
|
7
7
|
t.rspec_opts = ['--color']
|
8
8
|
t.pattern = 'spec/'
|
@@ -16,125 +16,26 @@ end
|
|
16
16
|
task 'test:spec' => 'test:spec:run'
|
17
17
|
|
18
18
|
# global defaults
|
19
|
-
task :
|
20
|
-
task :
|
21
|
-
|
22
|
-
###########################################################
|
23
|
-
#
|
24
|
-
# Documentation Tasks
|
25
|
-
#
|
26
|
-
###########################################################
|
27
|
-
DOCS_DAEMON = "yard server --reload --daemon --server thin"
|
28
|
-
FOREGROUND_SERVER = 'bundle exec yard server --reload --verbose --server thin lib/beaker'
|
29
|
-
|
30
|
-
def running?( cmdline )
|
31
|
-
ps = `ps -ef`
|
32
|
-
found = ps.lines.grep( /#{Regexp.quote( cmdline )}/ )
|
33
|
-
if found.length > 1
|
34
|
-
raise StandardError, "Found multiple YARD Servers. Don't know what to do."
|
35
|
-
end
|
36
|
-
|
37
|
-
yes = found.empty? ? false : true
|
38
|
-
return yes, found.first
|
39
|
-
end
|
40
|
-
|
41
|
-
def pid_from( output )
|
42
|
-
output.squeeze(' ').strip.split(' ')[1]
|
43
|
-
end
|
44
|
-
|
45
|
-
desc 'Start the documentation server in the foreground'
|
46
|
-
task :docs => 'docs:clear' do
|
47
|
-
original_dir = Dir.pwd
|
48
|
-
Dir.chdir( File.expand_path(File.dirname(__FILE__)) )
|
49
|
-
sh FOREGROUND_SERVER
|
50
|
-
Dir.chdir( original_dir )
|
51
|
-
end
|
52
|
-
|
53
|
-
namespace :docs do
|
54
|
-
|
55
|
-
desc 'Clear the generated documentation cache'
|
56
|
-
task :clear do
|
57
|
-
original_dir = Dir.pwd
|
58
|
-
Dir.chdir( File.expand_path(File.dirname(__FILE__)) )
|
59
|
-
sh 'rm -rf docs'
|
60
|
-
Dir.chdir( original_dir )
|
61
|
-
end
|
62
|
-
|
63
|
-
desc 'Generate static documentation'
|
64
|
-
task :gen => 'docs:clear' do
|
65
|
-
original_dir = Dir.pwd
|
66
|
-
Dir.chdir( File.expand_path(File.dirname(__FILE__)) )
|
67
|
-
output = `bundle exec yard doc`
|
68
|
-
puts output
|
69
|
-
if output =~ /\[warn\]|\[error\]/
|
70
|
-
fail "Errors/Warnings during yard documentation generation"
|
71
|
-
end
|
72
|
-
Dir.chdir( original_dir )
|
73
|
-
end
|
74
|
-
|
75
|
-
desc 'Run the documentation server in the background, alias `bg`'
|
76
|
-
task :background => 'docs:clear' do
|
77
|
-
yes, output = running?( DOCS_DAEMON )
|
78
|
-
if yes
|
79
|
-
puts "Not starting a new YARD Server..."
|
80
|
-
puts "Found one running with pid #{pid_from( output )}."
|
81
|
-
else
|
82
|
-
original_dir = Dir.pwd
|
83
|
-
Dir.chdir( File.expand_path(File.dirname(__FILE__)) )
|
84
|
-
sh "bundle exec #{DOCS_DAEMON}"
|
85
|
-
Dir.chdir( original_dir )
|
86
|
-
end
|
87
|
-
end
|
88
|
-
|
89
|
-
task(:bg) { Rake::Task['docs:background'].invoke }
|
90
|
-
|
91
|
-
desc 'Check the status of the documentation server'
|
92
|
-
task :status do
|
93
|
-
yes, output = running?( DOCS_DAEMON )
|
94
|
-
if yes
|
95
|
-
pid = pid_from( output )
|
96
|
-
puts "Found a YARD Server running with pid #{pid}"
|
97
|
-
else
|
98
|
-
puts "Could not find a running YARD Server."
|
99
|
-
end
|
100
|
-
end
|
101
|
-
|
102
|
-
desc "Stop a running YARD Server"
|
103
|
-
task :stop do
|
104
|
-
yes, output = running?( DOCS_DAEMON )
|
105
|
-
if yes
|
106
|
-
pid = pid_from( output )
|
107
|
-
puts "Found a YARD Server running with pid #{pid}"
|
108
|
-
`kill #{pid}`
|
109
|
-
puts "Stopping..."
|
110
|
-
yes, output = running?( DOCS_DAEMON )
|
111
|
-
if yes
|
112
|
-
`kill -9 #{pid}`
|
113
|
-
yes, output = running?( DOCS_DAEMON )
|
114
|
-
if yes
|
115
|
-
puts "Could not Stop Server!"
|
116
|
-
else
|
117
|
-
puts "Server stopped."
|
118
|
-
end
|
119
|
-
else
|
120
|
-
puts "Server stopped."
|
121
|
-
end
|
122
|
-
else
|
123
|
-
puts "Could not find a running YARD Server"
|
124
|
-
end
|
125
|
-
end
|
126
|
-
end
|
19
|
+
task test: 'test:spec'
|
20
|
+
task default: :test
|
127
21
|
|
128
22
|
begin
|
129
23
|
require 'rubygems'
|
130
24
|
require 'github_changelog_generator/task'
|
131
|
-
rescue LoadError
|
25
|
+
rescue LoadError
|
26
|
+
# github_changelog_generator is an optional group
|
132
27
|
else
|
133
28
|
GitHubChangelogGenerator::RakeTask.new :changelog do |config|
|
134
|
-
config.exclude_labels = %w[duplicate question invalid wontfix wont-fix skip-changelog]
|
29
|
+
config.exclude_labels = %w[duplicate question invalid wontfix wont-fix skip-changelog github_actions]
|
135
30
|
config.user = 'voxpupuli'
|
136
31
|
config.project = 'beaker-vcloud'
|
137
32
|
gem_version = Gem::Specification.load("#{config.project}.gemspec").version
|
138
33
|
config.future_release = gem_version
|
139
34
|
end
|
140
35
|
end
|
36
|
+
|
37
|
+
begin
|
38
|
+
require 'voxpupuli/rubocop/rake'
|
39
|
+
rescue LoadError
|
40
|
+
# the voxpupuli-rubocop gem is optional
|
41
|
+
end
|
data/beaker-vcloud.gemspec
CHANGED
@@ -1,30 +1,32 @@
|
|
1
|
-
|
2
|
-
$LOAD_PATH.unshift File.expand_path("../lib", __FILE__)
|
1
|
+
$LOAD_PATH.unshift File.expand_path('lib', __dir__)
|
3
2
|
require 'beaker-vcloud/version'
|
4
3
|
|
5
4
|
Gem::Specification.new do |s|
|
6
|
-
s.name =
|
5
|
+
s.name = 'beaker-vcloud'
|
7
6
|
s.version = BeakerVcloud::VERSION
|
8
|
-
s.authors = [
|
9
|
-
s.email = [
|
10
|
-
s.homepage =
|
11
|
-
s.summary =
|
12
|
-
s.description =
|
13
|
-
s.license = '
|
7
|
+
s.authors = ['Vox Pupuli']
|
8
|
+
s.email = ['voxpupuli@groups.io']
|
9
|
+
s.homepage = 'https://github.com/voxpupuli/beaker-vcloud'
|
10
|
+
s.summary = 'Beaker DSL Extension Helpers!'
|
11
|
+
s.description = 'For use for the Beaker acceptance testing tool'
|
12
|
+
s.license = 'Apache-2.0'
|
14
13
|
|
15
14
|
s.files = `git ls-files`.split("\n")
|
16
|
-
s.
|
17
|
-
s.
|
18
|
-
|
15
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
|
16
|
+
s.require_paths = ['lib']
|
17
|
+
|
18
|
+
s.required_ruby_version = '>= 2.7'
|
19
19
|
|
20
20
|
# Testing dependencies
|
21
|
+
s.add_development_dependency 'fakefs', '~> 2.5'
|
22
|
+
s.add_development_dependency 'rake', '~> 13.2', '>= 13.2.1'
|
21
23
|
s.add_development_dependency 'rspec', '~> 3.0'
|
22
|
-
s.add_development_dependency 'rspec-its'
|
23
|
-
s.add_development_dependency '
|
24
|
-
s.add_development_dependency 'rake'
|
24
|
+
s.add_development_dependency 'rspec-its', '~> 1.3'
|
25
|
+
s.add_development_dependency 'voxpupuli-rubocop', '~> 2.6.0'
|
25
26
|
|
26
27
|
# Run time dependencies
|
28
|
+
s.add_runtime_dependency 'beaker', '~> 5.8'
|
29
|
+
s.add_runtime_dependency 'beaker-vmware', '~> 2.1'
|
30
|
+
s.add_runtime_dependency 'rbvmomi2', '~> 3.7', '>= 3.7.1'
|
27
31
|
s.add_runtime_dependency 'stringify-hash', '~> 0.0.0'
|
28
|
-
s.add_runtime_dependency 'rbvmomi', '~> 1.9'
|
29
|
-
s.add_runtime_dependency 'beaker-vmware'
|
30
32
|
end
|