beaker-docker 2.5.2 → 2.6.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/workflows/release.yml +4 -3
- data/.github/workflows/test.yml +39 -25
- data/.rubocop_todo.yml +5 -5
- data/CHANGELOG.md +15 -0
- data/Gemfile +0 -5
- data/Rakefile +0 -7
- data/beaker-docker.gemspec +8 -5
- data/lib/beaker/hypervisor/docker.rb +1 -1
- data/lib/beaker-docker/version.rb +1 -1
- data/spec/spec_helper.rb +0 -24
- metadata +33 -11
- data/.simplecov +0 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9461ac90b3758ec88518396e0de669dab94f8e208565e8bd0489037aeb17bd96
|
4
|
+
data.tar.gz: a14e3cdbed23ffa9e9b189ec3338572c6f8ea16ce63f8e1e513d94638b337ba7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 107f131290bdf17ba2a768315a93bc7ba76bfa548a493ca557136c79ab3ea8fc35ef8071b24da72540b54d2c2e5cfcc7418a019f0e6f9aa94435ce79b2c4aafa
|
7
|
+
data.tar.gz: 6aad94b620154a24ad669b49af1df9ecce4e22a0e833d6aa35e21d15c953eaa16dd5b807815bd8d1c054a4b758cfb04108226ca3505f2ae6a5df4234def243cf
|
@@ -1,3 +1,4 @@
|
|
1
|
+
---
|
1
2
|
name: Release
|
2
3
|
|
3
4
|
on:
|
@@ -7,14 +8,14 @@ on:
|
|
7
8
|
|
8
9
|
jobs:
|
9
10
|
release:
|
10
|
-
runs-on: ubuntu-
|
11
|
+
runs-on: ubuntu-24.04
|
11
12
|
if: github.repository_owner == 'voxpupuli'
|
12
13
|
steps:
|
13
14
|
- uses: actions/checkout@v4
|
14
|
-
- name: Install Ruby 3.
|
15
|
+
- name: Install Ruby 3.4
|
15
16
|
uses: ruby/setup-ruby@v1
|
16
17
|
with:
|
17
|
-
ruby-version: '3.
|
18
|
+
ruby-version: '3.4'
|
18
19
|
env:
|
19
20
|
BUNDLE_WITHOUT: release
|
20
21
|
- name: Build gem
|
data/.github/workflows/test.yml
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
---
|
1
2
|
name: Test
|
2
3
|
|
3
4
|
on:
|
@@ -10,32 +11,29 @@ env:
|
|
10
11
|
BUNDLE_WITHOUT: release
|
11
12
|
|
12
13
|
jobs:
|
13
|
-
|
14
|
-
runs-on: ubuntu-
|
14
|
+
rubocop_and_matrix:
|
15
|
+
runs-on: ubuntu-24.04
|
16
|
+
outputs:
|
17
|
+
ruby: ${{ steps.ruby.outputs.versions }}
|
15
18
|
steps:
|
16
19
|
- uses: actions/checkout@v4
|
17
|
-
- name: Install Ruby 3.
|
20
|
+
- name: Install Ruby 3.4
|
18
21
|
uses: ruby/setup-ruby@v1
|
19
22
|
with:
|
20
|
-
ruby-version: "3.
|
23
|
+
ruby-version: "3.4"
|
21
24
|
bundler-cache: true
|
22
25
|
- name: Run Rubocop
|
23
26
|
run: bundle exec rake rubocop
|
27
|
+
- id: ruby
|
28
|
+
uses: voxpupuli/ruby-version@v1
|
24
29
|
|
25
30
|
rspec:
|
26
|
-
runs-on: ubuntu-
|
31
|
+
runs-on: ubuntu-24.04
|
32
|
+
needs: rubocop_and_matrix
|
27
33
|
strategy:
|
28
34
|
fail-fast: false
|
29
35
|
matrix:
|
30
|
-
|
31
|
-
- ruby: "2.7"
|
32
|
-
- ruby: "3.0"
|
33
|
-
coverage: "yes"
|
34
|
-
- ruby: "3.1"
|
35
|
-
- ruby: "3.2"
|
36
|
-
- ruby: "3.3"
|
37
|
-
env:
|
38
|
-
COVERAGE: ${{ matrix.coverage }}
|
36
|
+
ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }}
|
39
37
|
name: RSpec - Ruby ${{ matrix.ruby }}
|
40
38
|
steps:
|
41
39
|
- uses: actions/checkout@v4
|
@@ -50,20 +48,26 @@ jobs:
|
|
50
48
|
run: gem build --strict --verbose *.gemspec
|
51
49
|
|
52
50
|
docker:
|
53
|
-
runs-on: ubuntu-
|
54
|
-
|
51
|
+
runs-on: ubuntu-24.04
|
52
|
+
needs: rubocop_and_matrix
|
53
|
+
strategy:
|
54
|
+
fail-fast: false
|
55
|
+
matrix:
|
56
|
+
ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }}
|
57
|
+
name: Docker on Ruby ${{ matrix.ruby }}
|
55
58
|
steps:
|
56
59
|
- uses: actions/checkout@v4
|
57
|
-
- name: Install Ruby
|
60
|
+
- name: Install Ruby ${{ matrix.ruby }}
|
58
61
|
uses: ruby/setup-ruby@v1
|
59
62
|
with:
|
60
|
-
ruby-version:
|
63
|
+
ruby-version: ${{ matrix.ruby }}
|
61
64
|
bundler-cache: true
|
62
65
|
- name: Run acceptance tests
|
63
66
|
run: bundle exec rake test:acceptance
|
64
67
|
|
65
68
|
beaker_in_container:
|
66
|
-
runs-on: ubuntu-
|
69
|
+
runs-on: ubuntu-24.04
|
70
|
+
needs: rubocop_and_matrix
|
67
71
|
name: Docker - Beaker in container connection test
|
68
72
|
steps:
|
69
73
|
- uses: actions/checkout@v4
|
@@ -80,27 +84,37 @@ jobs:
|
|
80
84
|
export DOCKER_IN_DOCKER=true
|
81
85
|
bundle exec rake test:acceptance
|
82
86
|
|
87
|
+
# verifies that podman service is a dropin replacement for docker
|
83
88
|
podman:
|
84
|
-
runs-on: ubuntu-
|
85
|
-
|
89
|
+
runs-on: ubuntu-24.04
|
90
|
+
needs: rubocop_and_matrix
|
91
|
+
strategy:
|
92
|
+
fail-fast: false
|
93
|
+
matrix:
|
94
|
+
ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }}
|
95
|
+
name: Podman on Ruby ${{ matrix.ruby }}
|
86
96
|
steps:
|
97
|
+
- name: Start podman
|
98
|
+
run: |
|
99
|
+
sudo systemctl stop docker.service docker.socket && systemctl start --user podman.socket
|
100
|
+
echo "DOCKER_HOST=unix:///run/user/$(id -u)/podman/podman.sock" >> "$GITHUB_ENV"
|
87
101
|
- uses: actions/checkout@v4
|
88
|
-
- name: Install Ruby
|
102
|
+
- name: Install Ruby ${{ matrix.ruby }}
|
89
103
|
uses: ruby/setup-ruby@v1
|
90
104
|
with:
|
91
|
-
ruby-version:
|
105
|
+
ruby-version: ${{ matrix.ruby }}
|
92
106
|
bundler-cache: true
|
93
107
|
- name: Run acceptance tests
|
94
108
|
run: bundle exec rake test:acceptance
|
95
109
|
|
96
110
|
tests:
|
97
111
|
needs:
|
112
|
+
- rubocop_and_matrix
|
98
113
|
- docker
|
99
114
|
- beaker_in_container
|
100
115
|
- podman
|
101
|
-
- rubocop
|
102
116
|
- rspec
|
103
|
-
runs-on: ubuntu-
|
117
|
+
runs-on: ubuntu-24.04
|
104
118
|
name: Test suite
|
105
119
|
steps:
|
106
120
|
- run: echo Test suite completed
|
data/.rubocop_todo.yml
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# This configuration was generated by
|
2
2
|
# `rubocop --auto-gen-config`
|
3
|
-
# on
|
3
|
+
# on 2025-05-27 19:37:43 UTC using RuboCop version 1.75.7.
|
4
4
|
# The point is for the user to remove these configuration records
|
5
5
|
# one by one as the offenses are removed from the code base.
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
@@ -17,11 +17,11 @@ RSpec/ExampleLength:
|
|
17
17
|
RSpec/MessageSpies:
|
18
18
|
EnforcedStyle: receive
|
19
19
|
|
20
|
-
# Offense count:
|
20
|
+
# Offense count: 14
|
21
21
|
RSpec/MultipleExpectations:
|
22
22
|
Max: 5
|
23
23
|
|
24
|
-
# Offense count:
|
24
|
+
# Offense count: 17
|
25
25
|
# Configuration parameters: AllowSubject.
|
26
26
|
RSpec/MultipleMemoizedHelpers:
|
27
27
|
Max: 12
|
@@ -32,9 +32,9 @@ RSpec/ReceiveMessages:
|
|
32
32
|
Exclude:
|
33
33
|
- 'spec/beaker/hypervisor/docker_spec.rb'
|
34
34
|
|
35
|
-
# Offense count:
|
35
|
+
# Offense count: 28
|
36
36
|
# This cop supports safe autocorrection (--autocorrect).
|
37
|
-
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
|
37
|
+
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns, SplitStrings.
|
38
38
|
# URISchemes: http, https
|
39
39
|
Layout/LineLength:
|
40
40
|
Max: 198
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,20 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## [2.6.0](https://github.com/voxpupuli/beaker-docker/tree/2.6.0) (2025-05-28)
|
4
|
+
|
5
|
+
[Full Changelog](https://github.com/voxpupuli/beaker-docker/compare/2.5.2...2.6.0)
|
6
|
+
|
7
|
+
**Implemented enhancements:**
|
8
|
+
|
9
|
+
- CI: Run tests with podman and docker [\#160](https://github.com/voxpupuli/beaker-docker/pull/160) ([bastelfreak](https://github.com/bastelfreak))
|
10
|
+
- CI: Generate matrix automatically & drop unused coverage reporting [\#158](https://github.com/voxpupuli/beaker-docker/pull/158) ([bastelfreak](https://github.com/bastelfreak))
|
11
|
+
- voxpupuli-rubocop: 3.0.0-\>3.1.0 [\#157](https://github.com/voxpupuli/beaker-docker/pull/157) ([bastelfreak](https://github.com/bastelfreak))
|
12
|
+
- fakefs: Allow 3.x [\#155](https://github.com/voxpupuli/beaker-docker/pull/155) ([bastelfreak](https://github.com/bastelfreak))
|
13
|
+
|
14
|
+
**Fixed bugs:**
|
15
|
+
|
16
|
+
- excon: exclude 1.2.6 [\#156](https://github.com/voxpupuli/beaker-docker/pull/156) ([bastelfreak](https://github.com/bastelfreak))
|
17
|
+
|
3
18
|
## [2.5.2](https://github.com/voxpupuli/beaker-docker/tree/2.5.2) (2024-11-20)
|
4
19
|
|
5
20
|
[Full Changelog](https://github.com/voxpupuli/beaker-docker/compare/2.5.1...2.5.2)
|
data/Gemfile
CHANGED
@@ -4,11 +4,6 @@ source ENV['GEM_SOURCE'] || 'https://rubygems.org'
|
|
4
4
|
|
5
5
|
gemspec
|
6
6
|
|
7
|
-
group :coverage, optional: ENV['COVERAGE'] != 'yes' do
|
8
|
-
gem 'codecov', require: false
|
9
|
-
gem 'simplecov-console', require: false
|
10
|
-
end
|
11
|
-
|
12
7
|
group :release do
|
13
8
|
gem 'faraday-retry', require: false
|
14
9
|
gem 'github_changelog_generator', require: false
|
data/Rakefile
CHANGED
@@ -15,13 +15,6 @@ namespace :test do
|
|
15
15
|
t.rspec_opts = ['--color', '--format documentation']
|
16
16
|
t.pattern = 'spec/'
|
17
17
|
end
|
18
|
-
|
19
|
-
desc 'Run spec tests with coverage'
|
20
|
-
RSpec::Core::RakeTask.new(:coverage) do |t|
|
21
|
-
ENV['BEAKER_DOCKER_COVERAGE'] = 'y'
|
22
|
-
t.rspec_opts = ['--color', '--format documentation']
|
23
|
-
t.pattern = 'spec/'
|
24
|
-
end
|
25
18
|
end
|
26
19
|
|
27
20
|
namespace :acceptance do
|
data/beaker-docker.gemspec
CHANGED
@@ -25,13 +25,16 @@ Gem::Specification.new do |s|
|
|
25
25
|
s.required_ruby_version = '>= 2.7', '< 4'
|
26
26
|
|
27
27
|
# Testing dependencies
|
28
|
-
s.add_development_dependency 'fakefs', '>= 1.3', '<
|
28
|
+
s.add_development_dependency 'fakefs', '>= 1.3', '< 4'
|
29
29
|
s.add_development_dependency 'rake', '~> 13.0'
|
30
30
|
s.add_development_dependency 'rspec', '~> 3.0'
|
31
|
-
s.add_development_dependency 'voxpupuli-rubocop', '~>
|
31
|
+
s.add_development_dependency 'voxpupuli-rubocop', '~> 3.1.0'
|
32
32
|
|
33
33
|
# Run time dependencies
|
34
|
-
s.
|
35
|
-
s.
|
36
|
-
|
34
|
+
s.add_dependency 'beaker', '>= 4', '< 7'
|
35
|
+
s.add_dependency 'docker-api', '~> 2.3'
|
36
|
+
# excon is a docker-api dependency, 1.2.6 is broken
|
37
|
+
# https://github.com/excon/excon/issues/884
|
38
|
+
s.add_dependency 'excon', '>= 1.2.5', '< 2', '!= 1.2.6'
|
39
|
+
s.add_dependency 'stringify-hash', '~> 0.0.0'
|
37
40
|
end
|
@@ -268,7 +268,7 @@ module Beaker
|
|
268
268
|
container_opts['HostConfig']['CapAdd'] = host['docker_cap_add']
|
269
269
|
container_opts['HostConfig'].delete('Privileged')
|
270
270
|
else
|
271
|
-
container_opts['HostConfig']['Privileged'] = container_opts['HostConfig']['Privileged'].nil?
|
271
|
+
container_opts['HostConfig']['Privileged'] = container_opts['HostConfig']['Privileged'].nil? || container_opts['HostConfig']['Privileged']
|
272
272
|
end
|
273
273
|
|
274
274
|
container_opts['name'] = (host['docker_container_name'] || ['beaker', host.name, SecureRandom.uuid.split('-').last].join('-'))
|
data/spec/spec_helper.rb
CHANGED
@@ -2,30 +2,6 @@
|
|
2
2
|
|
3
3
|
require 'beaker'
|
4
4
|
|
5
|
-
begin
|
6
|
-
require 'simplecov'
|
7
|
-
require 'simplecov-console'
|
8
|
-
require 'codecov'
|
9
|
-
rescue LoadError
|
10
|
-
# Do nothing if no required gem installed
|
11
|
-
else
|
12
|
-
SimpleCov.start do
|
13
|
-
track_files 'lib/**/*.rb'
|
14
|
-
|
15
|
-
add_filter '/spec'
|
16
|
-
# do not track vendored files
|
17
|
-
add_filter '/vendor'
|
18
|
-
add_filter '/.vendor'
|
19
|
-
|
20
|
-
enable_coverage :branch
|
21
|
-
end
|
22
|
-
|
23
|
-
SimpleCov.formatters = [
|
24
|
-
SimpleCov::Formatter::Console,
|
25
|
-
SimpleCov::Formatter::Codecov,
|
26
|
-
]
|
27
|
-
end
|
28
|
-
|
29
5
|
Dir['./lib/beaker/hypervisor/*.rb'].sort.each { |file| require file }
|
30
6
|
|
31
7
|
# setup & require beaker's spec_helper.rb
|
metadata
CHANGED
@@ -1,17 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: beaker-docker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Vox Pupuli
|
8
8
|
- Rishi Javia
|
9
9
|
- Kevin Imber
|
10
10
|
- Tony Vu
|
11
|
-
autorequire:
|
12
11
|
bindir: bin
|
13
12
|
cert_chain: []
|
14
|
-
date:
|
13
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
15
14
|
dependencies:
|
16
15
|
- !ruby/object:Gem::Dependency
|
17
16
|
name: fakefs
|
@@ -22,7 +21,7 @@ dependencies:
|
|
22
21
|
version: '1.3'
|
23
22
|
- - "<"
|
24
23
|
- !ruby/object:Gem::Version
|
25
|
-
version: '
|
24
|
+
version: '4'
|
26
25
|
type: :development
|
27
26
|
prerelease: false
|
28
27
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -32,7 +31,7 @@ dependencies:
|
|
32
31
|
version: '1.3'
|
33
32
|
- - "<"
|
34
33
|
- !ruby/object:Gem::Version
|
35
|
-
version: '
|
34
|
+
version: '4'
|
36
35
|
- !ruby/object:Gem::Dependency
|
37
36
|
name: rake
|
38
37
|
requirement: !ruby/object:Gem::Requirement
|
@@ -67,14 +66,14 @@ dependencies:
|
|
67
66
|
requirements:
|
68
67
|
- - "~>"
|
69
68
|
- !ruby/object:Gem::Version
|
70
|
-
version:
|
69
|
+
version: 3.1.0
|
71
70
|
type: :development
|
72
71
|
prerelease: false
|
73
72
|
version_requirements: !ruby/object:Gem::Requirement
|
74
73
|
requirements:
|
75
74
|
- - "~>"
|
76
75
|
- !ruby/object:Gem::Version
|
77
|
-
version:
|
76
|
+
version: 3.1.0
|
78
77
|
- !ruby/object:Gem::Dependency
|
79
78
|
name: beaker
|
80
79
|
requirement: !ruby/object:Gem::Requirement
|
@@ -109,6 +108,32 @@ dependencies:
|
|
109
108
|
- - "~>"
|
110
109
|
- !ruby/object:Gem::Version
|
111
110
|
version: '2.3'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: excon
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 1.2.5
|
118
|
+
- - "<"
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: '2'
|
121
|
+
- - "!="
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
version: 1.2.6
|
124
|
+
type: :runtime
|
125
|
+
prerelease: false
|
126
|
+
version_requirements: !ruby/object:Gem::Requirement
|
127
|
+
requirements:
|
128
|
+
- - ">="
|
129
|
+
- !ruby/object:Gem::Version
|
130
|
+
version: 1.2.5
|
131
|
+
- - "<"
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: '2'
|
134
|
+
- - "!="
|
135
|
+
- !ruby/object:Gem::Version
|
136
|
+
version: 1.2.6
|
112
137
|
- !ruby/object:Gem::Dependency
|
113
138
|
name: stringify-hash
|
114
139
|
requirement: !ruby/object:Gem::Requirement
|
@@ -138,7 +163,6 @@ files:
|
|
138
163
|
- ".gitignore"
|
139
164
|
- ".rubocop.yml"
|
140
165
|
- ".rubocop_todo.yml"
|
141
|
-
- ".simplecov"
|
142
166
|
- CHANGELOG.md
|
143
167
|
- Gemfile
|
144
168
|
- LICENSE
|
@@ -162,7 +186,6 @@ homepage: https://github.com/voxpupuli/beaker-docker
|
|
162
186
|
licenses:
|
163
187
|
- Apache-2.0
|
164
188
|
metadata: {}
|
165
|
-
post_install_message:
|
166
189
|
rdoc_options: []
|
167
190
|
require_paths:
|
168
191
|
- lib
|
@@ -180,8 +203,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
180
203
|
- !ruby/object:Gem::Version
|
181
204
|
version: '0'
|
182
205
|
requirements: []
|
183
|
-
rubygems_version: 3.
|
184
|
-
signing_key:
|
206
|
+
rubygems_version: 3.6.7
|
185
207
|
specification_version: 4
|
186
208
|
summary: Docker hypervisor for Beaker acceptance testing framework
|
187
209
|
test_files: []
|