beaker-vagrant 0.6.6 → 0.6.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 93a9b37ab076dd6a9f96004ac770392207eb44716d0982e6b2e75ffbc0b50cde
4
- data.tar.gz: dfa41a6583033d37700edecdfcb7b4bbe0bb436bdd0530ac8bdf3d36067a156e
3
+ metadata.gz: cc3033b00b34521daab9d6221f02c1514cffaff1c64863dcb5643bf964e28f10
4
+ data.tar.gz: be554ffaf55e253e2ef2c61f86c3b9fec52f043f3ce496d1eb5c898e4c4c9da2
5
5
  SHA512:
6
- metadata.gz: bb3a8b395078572279174074bc7d99b1da50f3a1d69853e0ba5b9a2cccb4c76398b5320fb907e3684980d7a7b55877402c4fc2aa8839b02057ee7fa2ffea3267
7
- data.tar.gz: 99c44d83a570b5c71a61904fb62dfa7017af1ed7b01126543829e548c078a3c51c12ba170db84c2dc343f382e7a277949be9c77334bb60313274b1621b77a2cf
6
+ metadata.gz: bf38bd6c73c279461c5f9f8a9334a5bbbfb37658dfb0e8463b861fdfbd6c81e1c0132fd8a865a5c3ad08766a89f1ec1792bde7457d9a7d258e2891d5061537c3
7
+ data.tar.gz: 54d4ecc9660e53f1c49a1e786407ed1c5c20461fc3ff6756cfe1699d91468c0c9fa01b4e5717258d6f70454e825c8d5fda7ec65d3a3ec17bc49365364b57a122
@@ -0,0 +1,8 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: bundler
4
+ directory: "/"
5
+ schedule:
6
+ interval: daily
7
+ time: "13:00"
8
+ open-pull-requests-limit: 10
@@ -0,0 +1,32 @@
1
+ name: Test
2
+
3
+ on:
4
+ - pull_request
5
+
6
+ jobs:
7
+ test:
8
+ runs-on: ubuntu-latest
9
+ strategy:
10
+ fail-fast: false
11
+ matrix:
12
+ ruby:
13
+ - "2.4"
14
+ - "2.5"
15
+ - "2.6"
16
+ - "2.7"
17
+ env:
18
+ BUNDLE_WITHOUT: release
19
+ name: Ruby ${{ matrix.ruby }}
20
+ steps:
21
+ - uses: actions/checkout@v2
22
+ - name: Install Ruby ${{ matrix.ruby }}
23
+ uses: ruby/setup-ruby@v1
24
+ with:
25
+ ruby-version: ${{ matrix.ruby }}
26
+ bundler-cache: true
27
+ - name: Run spec tests
28
+ run: bundle exec rake test:spec
29
+ # It seems some additonal setup of Docker may be needed for
30
+ # the acceptance tests to work.
31
+ # - name: Run acceptance tests
32
+ # run: bundle exec rake test:acceptance
data/.rspec CHANGED
@@ -1,3 +1,4 @@
1
1
  --format documentation
2
2
  --color
3
3
  --tty
4
+ --fail-fast
data/Rakefile CHANGED
@@ -6,14 +6,14 @@ namespace :test do
6
6
 
7
7
  desc "Run spec tests"
8
8
  RSpec::Core::RakeTask.new(:run) do |t|
9
- t.rspec_opts = ['--color']
9
+ t.rspec_opts = ['--color', '--format documentation']
10
10
  t.pattern = 'spec/'
11
11
  end
12
12
 
13
13
  desc "Run spec tests with coverage"
14
14
  RSpec::Core::RakeTask.new(:coverage) do |t|
15
15
  ENV['BEAKER_TEMPLATE_COVERAGE'] = 'y'
16
- t.rspec_opts = ['--color']
16
+ t.rspec_opts = ['--color', '--format documentation']
17
17
  t.pattern = 'spec/'
18
18
  end
19
19
 
@@ -1,3 +1,3 @@
1
1
  module BeakerVagrant
2
- VERSION = '0.6.6'
2
+ VERSION = '0.6.7'
3
3
  end
@@ -16,8 +16,13 @@ module Beaker
16
16
  (2 + rand(252)).to_s #don't want a 0, 1, or a 255
17
17
  end
18
18
 
19
- def randip
20
- "10.255.#{rand_chunk}.#{rand_chunk}"
19
+ def randip(hypervisor=nil)
20
+ case hypervisor
21
+ when /libvirt/
22
+ "10.254.#{rand_chunk}.#{rand_chunk}"
23
+ else
24
+ "10.255.#{rand_chunk}.#{rand_chunk}"
25
+ end
21
26
  end
22
27
 
23
28
  def private_network_generator(host)
@@ -57,7 +62,7 @@ module Beaker
57
62
 
58
63
  hosts.each do |host|
59
64
  host.name.tr!('_','-') # Rewrite Hostname with hyphens instead of underscores to get legal hostname
60
- host['ip'] ||= randip #use the existing ip, otherwise default to a random ip
65
+ host['ip'] ||= randip(host.host_hash[:hypervisor]) #use the existing ip, otherwise default to a random ip
61
66
  v_file << " c.vm.define '#{host.name}' do |v|\n"
62
67
  v_file << " v.vm.hostname = '#{host.name}'\n"
63
68
  v_file << " v.vm.box = '#{host['box']}'\n"
@@ -136,6 +141,9 @@ module Beaker
136
141
  @logger.debug "created Vagrantfile for VagrantHost #{host.name}"
137
142
  end
138
143
  v_file << "end\n"
144
+
145
+ # In case this is called directly
146
+ FileUtils.mkdir_p(@vagrant_path)
139
147
  File.open(@vagrant_file, 'w') do |f|
140
148
  f.write(v_file)
141
149
  end
@@ -232,8 +240,7 @@ module Beaker
232
240
  @logger = options[:logger]
233
241
  @temp_files = []
234
242
  @hosts = vagrant_hosts
235
- @vagrant_path = File.expand_path(File.join(File.basename(__FILE__), '..', '.vagrant', 'beaker_vagrant_files', File.basename(options[:hosts_file])))
236
- FileUtils.mkdir_p(@vagrant_path)
243
+ @vagrant_path = File.expand_path(File.join(File.basename(__FILE__), '..', '.vagrant', 'beaker_vagrant_files', 'beaker_' + File.basename(options[:hosts_file])))
237
244
  @vagrant_file = File.expand_path(File.join(@vagrant_path, "Vagrantfile"))
238
245
  @vagrant_env = { "RUBYLIB" => "", "RUBYOPT" => "" }
239
246
  end
@@ -254,6 +261,8 @@ module Beaker
254
261
  end
255
262
 
256
263
  def provision(provider = nil)
264
+ FileUtils.mkdir_p(@vagrant_path)
265
+
257
266
  #setting up new vagrant hosts
258
267
  #make sure that any old boxes are dead dead dead
259
268
  begin
@@ -16,6 +16,12 @@ class Beaker::VagrantLibvirt < Beaker::Vagrant
16
16
  end
17
17
 
18
18
  def provision(provider = 'libvirt')
19
+ # This needs to be unique for every system with the same hostname but does
20
+ # not affect VirtualBox
21
+ vagrant_path_digest = Digest::SHA256.hexdigest(@vagrant_path)
22
+ @vagrant_path = @vagrant_path + '_' + vagrant_path_digest[0..2] + vagrant_path_digest[-3..-1]
23
+ @vagrant_file = File.expand_path(File.join(@vagrant_path, "Vagrantfile"))
24
+
19
25
  super
20
26
  end
21
27
 
@@ -29,11 +29,11 @@ module Beaker
29
29
  })
30
30
  end
31
31
 
32
- it "stores the vagrant file in $WORKINGDIR/.vagrant/beaker_vagrant_files/sample.cfg" do
32
+ it "stores the vagrant file in $WORKINGDIR/.vagrant/beaker_vagrant_files/beaker_sample.cfg" do
33
33
  allow( vagrant ).to receive( :randmac ).and_return( "0123456789" )
34
34
  path = vagrant.instance_variable_get( :@vagrant_path )
35
35
 
36
- expect( path ).to be === File.join(Dir.pwd, '.vagrant', 'beaker_vagrant_files', 'sample.cfg')
36
+ expect( path ).to be === File.join(Dir.pwd, '.vagrant', 'beaker_vagrant_files', 'beaker_sample.cfg')
37
37
 
38
38
  end
39
39
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beaker-vagrant
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.6
4
+ version: 0.6.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rishi Javia, Kevin Imber, Tony Vu
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-19 00:00:00.000000000 Z
11
+ date: 2021-02-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -144,10 +144,11 @@ executables:
144
144
  extensions: []
145
145
  extra_rdoc_files: []
146
146
  files:
147
+ - ".github/dependabot.yml"
148
+ - ".github/workflows/test.yml"
147
149
  - ".gitignore"
148
150
  - ".rspec"
149
151
  - ".simplecov"
150
- - ".travis.yml"
151
152
  - Gemfile
152
153
  - LICENSE
153
154
  - README.md
@@ -196,7 +197,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
196
197
  - !ruby/object:Gem::Version
197
198
  version: '0'
198
199
  requirements: []
199
- rubygems_version: 3.0.6
200
+ rubygems_version: 3.0.8
200
201
  signing_key:
201
202
  specification_version: 4
202
203
  summary: Beaker DSL Extension Helpers!
data/.travis.yml DELETED
@@ -1,14 +0,0 @@
1
- ---
2
- os:
3
- - linux
4
- before_install:
5
- - gem update --system 2.2.1
6
- - gem --version
7
- language: ruby
8
- script: "bundle exec rake test:spec:run"
9
- notifications:
10
- email: false
11
- rvm:
12
- - 2.6
13
- - 2.5
14
- - 2.4