vagrant-alpine 0.2.0 → 0.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/.gitignore +1 -0
- data/.rubocop.yml +4 -2
- data/.ruby-version +1 -1
- data/.travis.yml +4 -4
- data/Gemfile +3 -3
- data/README.md +3 -2
- data/Rakefile +1 -1
- data/lib/vagrant-alpine/cap/nfs_client.rb +42 -12
- data/lib/vagrant-alpine/version.rb +1 -1
- data/spec/cap/change_host_name_spec.rb +114 -114
- data/spec/cap/configure_networks_spec.rb +35 -35
- data/spec/cap/halt_spec.rb +16 -16
- data/spec/cap/nfs_client_spec.rb +51 -19
- data/spec/cap/rsync_spec.rb +32 -30
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6d14a610a33c058c4a2b9d2562da0c44d77d6da7
|
4
|
+
data.tar.gz: 8a29b732ac12fe585d4126a0bb0779673eacad40
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0fcc00f9947f877ba5477700d04834f4e0b756b5a4d6c43bebbe343875de0515a0576664212287c48dfdf75370b0e304c93b1ba75c2925c7707a673fd827c800
|
7
|
+
data.tar.gz: 8bb43f67931aa0f35fafa96b47867712ed5c843c99dc4a4bf263d2256715ab0cc906ba27a9821bf28827da917db2557dd9aaa901043c1563b09aad3231fc3bb7
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ruby-2.2.
|
1
|
+
ruby-2.2.5
|
data/.travis.yml
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
language: ruby
|
2
|
-
|
2
|
+
before_install:
|
3
|
+
- gem uninstall bundler --all --executables
|
4
|
+
- gem install bundler --version '~> 1.7.0'
|
3
5
|
# - sudo apt-get update -qq
|
4
6
|
# - sudo apt-get install -qq -y bsdtar
|
5
7
|
# - rvm @global do gem uninstall bundler --all --executables
|
6
8
|
# - gem uninstall bundler --all --executables
|
7
|
-
# - gem install bundler --version '
|
8
|
-
rvm:
|
9
|
-
- 2.2.0
|
9
|
+
# - gem install bundler --version '~> 1.7.0'
|
10
10
|
env:
|
11
11
|
global:
|
12
12
|
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true
|
data/Gemfile
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
gemspec
|
3
|
+
# gemspec
|
4
4
|
|
5
5
|
group :development do
|
6
6
|
gem 'vagrant', git: 'https://github.com/mitchellh/vagrant.git'
|
@@ -11,7 +11,7 @@ group :plugins do
|
|
11
11
|
end
|
12
12
|
|
13
13
|
group :test do
|
14
|
-
gem 'rake'
|
14
|
+
gem 'rake', '< 11.0'
|
15
|
+
gem 'rspec'
|
15
16
|
gem 'rubocop'
|
16
17
|
end
|
17
|
-
|
data/README.md
CHANGED
@@ -16,6 +16,7 @@ This is a [Vagrant](http://vagrantup.com/) plugin adding support for [Alpine Lin
|
|
16
16
|
|
17
17
|
## Changes
|
18
18
|
|
19
|
+
* v0.3.0 - update to fix defunct alpine apk repository in maier/alpine-3.3* boxes so that nfs client will install correctly.
|
19
20
|
* v0.2.0 - add `apk update` and `apk add --upgrade` to nfs client install
|
20
21
|
|
21
22
|
## Installation
|
@@ -31,14 +32,14 @@ $ vagrant init maier/alpine-3.3.1-x86_64
|
|
31
32
|
$ vagrant up
|
32
33
|
```
|
33
34
|
|
34
|
-
or
|
35
|
+
or
|
35
36
|
|
36
37
|
```sh
|
37
38
|
$ vagrant init maier/alpine-3.2.3-x86_64
|
38
39
|
$ vagrant up
|
39
40
|
```
|
40
41
|
|
41
|
-
or
|
42
|
+
or
|
42
43
|
|
43
44
|
```sh
|
44
45
|
$ vagrant init maier/alpine-3.1.3-x86_64
|
data/Rakefile
CHANGED
@@ -1,16 +1,46 @@
|
|
1
1
|
module VagrantPlugins
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
2
|
+
module GuestAlpine
|
3
|
+
module Cap
|
4
|
+
class NFSClient
|
5
|
+
def self.nfs_client_install(machine)
|
6
|
+
comm = machine.communicate
|
7
|
+
comm.sudo <<-EOS.gsub(/^\s+\|\s?/, '')
|
8
|
+
| # work around defunct repository in configuration
|
9
|
+
| # box: maier/apline-3.3
|
10
|
+
| repo_file="/etc/apk/repositories"
|
11
|
+
| if [ $(grep -c "repos.dfw.lax-noc.com" $repo_file) -ne 0 ]; then
|
12
|
+
| repo_file_bak="${repo_file}.orig"
|
13
|
+
| echo "updating repositories"
|
14
|
+
| cp $repo_file $repo_file_bak
|
15
|
+
| sed -e 's/repos.dfw.lax-noc.com/dl-cdn.alpinelinux.org/' $repo_file_bak > $repo_file
|
16
|
+
| fi
|
17
|
+
|
|
18
|
+
| echo "updating repository indices"
|
19
|
+
| apk update
|
20
|
+
| if [ $? -ne 0 ]; then
|
21
|
+
| exit 1
|
22
|
+
| fi
|
23
|
+
|
|
24
|
+
| echo "installing nfs-utils"
|
25
|
+
| apk add --upgrade nfs-utils
|
26
|
+
| if [ $? -ne 0 ]; then
|
27
|
+
| exit 1
|
28
|
+
| fi
|
29
|
+
|
|
30
|
+
| echo "installing rpc.statd"
|
31
|
+
| rc-update add rpc.statd
|
32
|
+
| if [ $? -ne 0 ]; then
|
33
|
+
| exit 1
|
34
|
+
| fi
|
35
|
+
|
|
36
|
+
| echo "starting rpc.statd service"
|
37
|
+
| rc-service rpc.statd start
|
38
|
+
| if [ $? -ne 0 ]; then
|
39
|
+
| exit 1
|
40
|
+
| fi
|
41
|
+
EOS
|
42
|
+
end
|
43
|
+
end
|
12
44
|
end
|
13
|
-
end
|
14
45
|
end
|
15
|
-
end
|
16
46
|
end
|
@@ -2,127 +2,127 @@
|
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
describe 'VagrantPlugins::GuestAlpine::Cap::ChangeHostname' do
|
5
|
-
|
6
|
-
|
7
|
-
end
|
8
|
-
let(:machine) { double('machine') }
|
9
|
-
let(:communicator) { VagrantTests::DummyCommunicator::Communicator.new(machine) }
|
10
|
-
let(:old_hostname) { 'oldhostname.olddomain.tld' }
|
11
|
-
|
12
|
-
before do
|
13
|
-
allow(machine).to receive(:communicate).and_return(communicator)
|
14
|
-
communicator.stub_command('hostname -f', stdout: old_hostname)
|
15
|
-
end
|
16
|
-
|
17
|
-
after do
|
18
|
-
communicator.verify_expectations!
|
19
|
-
end
|
20
|
-
|
21
|
-
describe '.change_host_name' do
|
22
|
-
it 'updates /etc/hostname on the machine' do
|
23
|
-
communicator.expect_command("echo 'newhostname' > /etc/hostname")
|
24
|
-
described_class.change_host_name(machine, 'newhostname.newdomain.tld')
|
5
|
+
let(:described_class) do
|
6
|
+
VagrantPlugins::GuestAlpine::Plugin.components.guest_capabilities[:alpine].get(:change_host_name)
|
25
7
|
end
|
8
|
+
let(:machine) { double('machine') }
|
9
|
+
let(:communicator) { VagrantTests::DummyCommunicator::Communicator.new(machine) }
|
10
|
+
let(:old_hostname) { 'oldhostname.olddomain.tld' }
|
26
11
|
|
27
|
-
|
28
|
-
|
29
|
-
|
12
|
+
before do
|
13
|
+
allow(machine).to receive(:communicate).and_return(communicator)
|
14
|
+
communicator.stub_command('hostname -f', stdout: old_hostname)
|
30
15
|
end
|
31
16
|
|
32
|
-
|
33
|
-
|
34
|
-
described_class.change_host_name(machine, 'newhostname.newdomain.tld')
|
17
|
+
after do
|
18
|
+
communicator.verify_expectations!
|
35
19
|
end
|
36
20
|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
21
|
+
describe '.change_host_name' do
|
22
|
+
it 'updates /etc/hostname on the machine' do
|
23
|
+
communicator.expect_command("echo 'newhostname' > /etc/hostname")
|
24
|
+
described_class.change_host_name(machine, 'newhostname.newdomain.tld')
|
25
|
+
end
|
26
|
+
|
27
|
+
it 'does nothing when the provided hostname is not different' do
|
28
|
+
described_class.change_host_name(machine, 'oldhostname.olddomain.tld')
|
29
|
+
expect(communicator.received_commands).to eq(['hostname -f'])
|
30
|
+
end
|
31
|
+
|
32
|
+
it 'refreshes the hostname service with the hostname command' do
|
33
|
+
communicator.expect_command('hostname -F /etc/hostname')
|
34
|
+
described_class.change_host_name(machine, 'newhostname.newdomain.tld')
|
35
|
+
end
|
36
|
+
|
37
|
+
it 'renews dhcp on the system with the new hostname' do
|
38
|
+
communicator.expect_command('ifdown -a; ifup -a; ifup eth0')
|
39
|
+
described_class.change_host_name(machine, 'newhostname.newdomain.tld')
|
40
|
+
end
|
41
41
|
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
42
|
+
describe 'flipping out the old hostname in /etc/hosts' do
|
43
|
+
let(:sed_command) do
|
44
|
+
# Here we run the change_host_name through and extract the recorded sed
|
45
|
+
# command from the dummy communicator
|
46
|
+
described_class.change_host_name(machine, 'newhostname.newdomain.tld')
|
47
|
+
communicator.received_commands.find { |cmd| cmd =~ /^sed/ }
|
48
|
+
end
|
49
|
+
|
50
|
+
# Now we extract the regexp from that sed command so we can do some
|
51
|
+
# verification on it
|
52
|
+
let(:expression) { sed_command.sub(%r{^sed -ri '\(.*\)' /etc/hosts$}, "\1") }
|
53
|
+
let(:search) { Regexp.new(expression.split('@')[1], Regexp::EXTENDED) }
|
54
|
+
let(:replace) { expression.split('@')[2] }
|
55
|
+
|
56
|
+
let(:grep_command) { "grep '#{old_hostname}' /etc/hosts" }
|
57
|
+
|
58
|
+
before do
|
59
|
+
communicator.stub_command(grep_command, exit_code: 0)
|
60
|
+
end
|
61
|
+
|
62
|
+
it 'works on an simple /etc/hosts file' do
|
63
|
+
original_etc_hosts = <<-ETC_HOSTS.gsub(/^ */, '')
|
64
|
+
127.0.0.1 localhost
|
65
|
+
127.0.1.1 oldhostname.olddomain.tld oldhostname
|
66
|
+
ETC_HOSTS
|
67
|
+
|
68
|
+
modified_etc_hosts = original_etc_hosts.gsub(search, replace)
|
69
|
+
|
70
|
+
expect(modified_etc_hosts).to eq <<-RESULT.gsub(/^ */, '')
|
71
|
+
127.0.0.1 localhost
|
72
|
+
127.0.1.1 newhostname.newdomain.tld newhostname
|
73
|
+
RESULT
|
74
|
+
end
|
75
|
+
|
76
|
+
it 'does not modify lines which contain similar hostnames' do
|
77
|
+
original_etc_hosts = <<-ETC_HOSTS.gsub(/^ */, '')
|
78
|
+
127.0.0.1 localhost
|
79
|
+
127.0.1.1 oldhostname.olddomain.tld oldhostname
|
80
|
+
# common prefix, but different fqdn
|
81
|
+
192.168.12.34 oldhostname.olddomain.tld.different
|
82
|
+
# different characters at the dot
|
83
|
+
192.168.34.56 oldhostname-olddomain.tld
|
84
|
+
ETC_HOSTS
|
85
|
+
|
86
|
+
modified_etc_hosts = original_etc_hosts.gsub(search, replace)
|
87
|
+
|
88
|
+
expect(modified_etc_hosts).to eq <<-RESULT.gsub(/^ */, '')
|
89
|
+
127.0.0.1 localhost
|
90
|
+
127.0.1.1 newhostname.newdomain.tld newhostname
|
91
|
+
# common prefix, but different fqdn
|
92
|
+
192.168.12.34 oldhostname.olddomain.tld.different
|
93
|
+
# different characters at the dot
|
94
|
+
192.168.34.56 oldhostname-olddomain.tld
|
95
|
+
RESULT
|
96
|
+
end
|
97
|
+
|
98
|
+
it "appends 127.0.1.1 if it isn't there" do
|
99
|
+
communicator.stub_command(grep_command, exit_code: 1)
|
100
|
+
described_class.change_host_name(machine, 'newhostname.newdomain.tld')
|
101
|
+
|
102
|
+
sed = communicator.received_commands.find { |cmd| cmd =~ /^sed/ }
|
103
|
+
expect(sed).to be_nil
|
104
|
+
|
105
|
+
echo = communicator.received_commands.find { |cmd| cmd =~ /^echo/ }
|
106
|
+
expect(echo).to_not be_nil
|
107
|
+
end
|
108
|
+
|
109
|
+
context 'when the old fqdn has a trailing dot' do
|
110
|
+
let(:old_hostname) { 'oldhostname.withtrailing.dot.' }
|
111
|
+
|
112
|
+
it 'modifies /etc/hosts properly' do
|
113
|
+
original_etc_hosts = <<-ETC_HOSTS.gsub(/^ */, '')
|
114
|
+
127.0.0.1 localhost
|
115
|
+
127.0.1.1 oldhostname.withtrailing.dot. oldhostname
|
116
|
+
ETC_HOSTS
|
117
|
+
|
118
|
+
modified_etc_hosts = original_etc_hosts.gsub(search, replace)
|
119
|
+
|
120
|
+
expect(modified_etc_hosts).to eq <<-RESULT.gsub(/^ */, '')
|
121
|
+
127.0.0.1 localhost
|
122
|
+
127.0.1.1 newhostname.newdomain.tld newhostname
|
123
|
+
RESULT
|
124
|
+
end
|
125
|
+
end
|
124
126
|
end
|
125
|
-
end
|
126
127
|
end
|
127
|
-
end
|
128
128
|
end
|
@@ -2,39 +2,39 @@
|
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
describe 'VagrantPlugins::GuestAlpine::Cap::ConfigureNetworks' do
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
5
|
+
let(:described_class) do
|
6
|
+
VagrantPlugins::GuestAlpine::Plugin.components.guest_capabilities[:alpine].get(:configure_networks)
|
7
|
+
end
|
8
|
+
let(:machine) { double('machine') }
|
9
|
+
let(:communicator) { VagrantTests::DummyCommunicator::Communicator.new(machine) }
|
10
|
+
|
11
|
+
before do
|
12
|
+
allow(machine).to receive(:communicate).and_return(communicator)
|
13
|
+
end
|
14
|
+
|
15
|
+
after do
|
16
|
+
communicator.verify_expectations!
|
17
|
+
end
|
18
|
+
|
19
|
+
it 'should configure networks' do
|
20
|
+
networks = [
|
21
|
+
{ type: :static, ip: '192.168.10.10', netmask: '255.255.255.0', interface: 0, name: 'eth0' },
|
22
|
+
{ type: :dhcp, interface: 1, name: 'eth1' }
|
23
|
+
]
|
24
|
+
|
25
|
+
expect(communicator).to receive(:sudo).with("sed -e '/^#VAGRANT-BEGIN/,$ d' /etc/network/interfaces > /tmp/vagrant-network-interfaces.pre")
|
26
|
+
expect(communicator).to receive(:sudo).with("sed -ne '/^#VAGRANT-END/,$ p' /etc/network/interfaces | tail -n +2 > /tmp/vagrant-network-interfaces.post")
|
27
|
+
expect(communicator).to receive(:sudo).with('/sbin/ifdown eth0 2> /dev/null')
|
28
|
+
expect(communicator).to receive(:sudo).with('/sbin/ip addr flush dev eth0 2> /dev/null')
|
29
|
+
expect(communicator).to receive(:sudo).with('/sbin/ifdown eth1 2> /dev/null')
|
30
|
+
expect(communicator).to receive(:sudo).with('/sbin/ip addr flush dev eth1 2> /dev/null')
|
31
|
+
expect(communicator).to receive(:sudo).with('cat /tmp/vagrant-network-interfaces.pre /tmp/vagrant-network-entry /tmp/vagrant-network-interfaces.post > /etc/network/interfaces')
|
32
|
+
expect(communicator).to receive(:sudo).with('rm -f /tmp/vagrant-network-interfaces.pre /tmp/vagrant-network-entry /tmp/vagrant-network-interfaces.post')
|
33
|
+
expect(communicator).to receive(:sudo).with('/sbin/ifup eth0')
|
34
|
+
expect(communicator).to receive(:sudo).with('/sbin/ifup eth1')
|
35
|
+
|
36
|
+
allow_message_expectations_on_nil
|
37
|
+
|
38
|
+
described_class.configure_networks(machine, networks)
|
39
|
+
end
|
40
40
|
end
|
data/spec/cap/halt_spec.rb
CHANGED
@@ -2,23 +2,23 @@
|
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
describe 'VagrantPlugins::GuestAlpine::Cap::Halt' do
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
5
|
+
let(:described_class) do
|
6
|
+
VagrantPlugins::GuestAlpine::Plugin.components.guest_capabilities[:alpine].get(:halt)
|
7
|
+
end
|
8
|
+
let(:machine) { double('machine') }
|
9
|
+
let(:communicator) { VagrantTests::DummyCommunicator::Communicator.new(machine) }
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
|
11
|
+
before do
|
12
|
+
allow(machine).to receive(:communicate).and_return(communicator)
|
13
|
+
end
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
15
|
+
after do
|
16
|
+
communicator.verify_expectations!
|
17
|
+
end
|
18
18
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
19
|
+
it 'should halt guest' do
|
20
|
+
expect(communicator).to receive(:sudo).with('poweroff')
|
21
|
+
allow_message_expectations_on_nil
|
22
|
+
described_class.halt(machine)
|
23
|
+
end
|
24
24
|
end
|
data/spec/cap/nfs_client_spec.rb
CHANGED
@@ -2,27 +2,59 @@
|
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
describe 'VagrantPlugins::GuestAlpine::Cap::NFSClient' do
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
let(:machine) { double('machine') }
|
9
|
-
let(:communicator) { VagrantTests::DummyCommunicator::Communicator.new(machine) }
|
5
|
+
let(:described_class) do
|
6
|
+
VagrantPlugins::GuestAlpine::Plugin.components.guest_capabilities[:alpine].get(:nfs_client_install)
|
7
|
+
end
|
10
8
|
|
11
|
-
|
12
|
-
|
13
|
-
end
|
9
|
+
let(:machine) { double('machine') }
|
10
|
+
let(:communicator) { VagrantTests::DummyCommunicator::Communicator.new(machine) }
|
14
11
|
|
15
|
-
|
16
|
-
|
17
|
-
|
12
|
+
before do
|
13
|
+
allow(machine).to receive(:communicate).and_return(communicator)
|
14
|
+
end
|
18
15
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
communicator.should_receive(:sudo).with('rc-update add rpc.statd')
|
23
|
-
communicator.should_receive(:sudo).with('rc-service rpc.statd start')
|
16
|
+
after do
|
17
|
+
communicator.verify_expectations!
|
18
|
+
end
|
24
19
|
|
25
|
-
|
26
|
-
|
27
|
-
|
20
|
+
it 'should install nfs client' do
|
21
|
+
x = <<-EOS.gsub(/^\s+\|\s?/, '')
|
22
|
+
| # work around defunct repository in configuration
|
23
|
+
| # box: maier/apline-3.3
|
24
|
+
| repo_file="/etc/apk/repositories"
|
25
|
+
| if [ $(grep -c "repos.dfw.lax-noc.com" $repo_file) -ne 0 ]; then
|
26
|
+
| repo_file_bak="${repo_file}.orig"
|
27
|
+
| echo "updating repositories"
|
28
|
+
| cp $repo_file $repo_file_bak
|
29
|
+
| sed -e 's/repos.dfw.lax-noc.com/dl-cdn.alpinelinux.org/' $repo_file_bak > $repo_file
|
30
|
+
| fi
|
31
|
+
|
|
32
|
+
| echo "updating repository indices"
|
33
|
+
| apk update
|
34
|
+
| if [ $? -ne 0 ]; then
|
35
|
+
| exit 1
|
36
|
+
| fi
|
37
|
+
|
|
38
|
+
| echo "installing nfs-utils"
|
39
|
+
| apk add --upgrade nfs-utils
|
40
|
+
| if [ $? -ne 0 ]; then
|
41
|
+
| exit 1
|
42
|
+
| fi
|
43
|
+
|
|
44
|
+
| echo "installing rpc.statd"
|
45
|
+
| rc-update add rpc.statd
|
46
|
+
| if [ $? -ne 0 ]; then
|
47
|
+
| exit 1
|
48
|
+
| fi
|
49
|
+
|
|
50
|
+
| echo "starting rpc.statd service"
|
51
|
+
| rc-service rpc.statd start
|
52
|
+
| if [ $? -ne 0 ]; then
|
53
|
+
| exit 1
|
54
|
+
| fi
|
55
|
+
EOS
|
56
|
+
expect(communicator).to receive(:sudo).with(x)
|
57
|
+
allow_message_expectations_on_nil
|
58
|
+
described_class.nfs_client_install(machine)
|
59
|
+
end
|
28
60
|
end
|
data/spec/cap/rsync_spec.rb
CHANGED
@@ -2,34 +2,36 @@
|
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
describe 'VagrantPlugins::GuestAlpine::Cap::RSync' do
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
5
|
+
let(:machine) { double('machine') }
|
6
|
+
let(:communicator) { VagrantTests::DummyCommunicator::Communicator.new(machine) }
|
7
|
+
|
8
|
+
before do
|
9
|
+
allow(machine).to receive(:communicate).and_return(communicator)
|
10
|
+
end
|
11
|
+
|
12
|
+
after do
|
13
|
+
communicator.verify_expectations!
|
14
|
+
end
|
15
|
+
|
16
|
+
let(:described_class) do
|
17
|
+
VagrantPlugins::GuestAlpine::Plugin.components.guest_capabilities[:alpine].get(:rsync_install)
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'should install rsync' do
|
21
|
+
# communicator.should_receive(:sudo).with('apk add rsync')
|
22
|
+
expect(communicator).to receive(:sudo).with('apk add rsync')
|
23
|
+
allow_message_expectations_on_nil
|
24
|
+
described_class.rsync_install(machine)
|
25
|
+
end
|
26
|
+
|
27
|
+
let(:described_class) do
|
28
|
+
VagrantPlugins::GuestAlpine::Plugin.components.guest_capabilities[:alpine].get(:rsync_installed)
|
29
|
+
end
|
30
|
+
|
31
|
+
it 'should verify rsync installed' do
|
32
|
+
# communicator.should_receive(:test).with('test -f /usr/bin/rsync')
|
33
|
+
expect(communicator).to receive(:test).with('test -f /usr/bin/rsync')
|
34
|
+
allow_message_expectations_on_nil
|
35
|
+
described_class.rsync_installed(machine)
|
36
|
+
end
|
35
37
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-alpine
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- matt maier
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-05-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -133,7 +133,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
133
133
|
version: '0'
|
134
134
|
requirements: []
|
135
135
|
rubyforge_project:
|
136
|
-
rubygems_version: 2.4.
|
136
|
+
rubygems_version: 2.4.8
|
137
137
|
signing_key:
|
138
138
|
specification_version: 4
|
139
139
|
summary: Enables Vagrant to manage Alpine Linux Guests.
|