vagrant-openstack-cloud-provider 1.1.9 → 1.1.10
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/lib/vagrant-openstack-cloud-provider/action/connect_openstack.rb +6 -3
- data/lib/vagrant-openstack-cloud-provider/action/create_server.rb +2 -1
- data/lib/vagrant-openstack-cloud-provider/version.rb +1 -1
- data/spec/vagrant-openstack-cloud-provider/action/connect_openstack_spec.rb +13 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a0485390c70b7dfaeb04bfd416fecafb72e5d7d1
|
4
|
+
data.tar.gz: 0c9f67996fdcfb1ca5b13def83560b9d142b3a70
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 15ebcaa621e8b1b07a955d3287e5bcb52844ac18110521a5c65c6ceac91b607d6738a4a4998bfde9f905173717daeae76fad1c16f6c5626256715f6e49020f25
|
7
|
+
data.tar.gz: 83f140f1a941a0547ba18c1f5c3bce7581ec6ab51e21e9f8294c5ccd25c92d5a0035d8e5bbf8cffee62601b1852656afa132793aee0dc0133c9f6ed3314240cd
|
@@ -26,8 +26,11 @@ module VagrantPlugins
|
|
26
26
|
:openstack_tenant => config.tenant
|
27
27
|
}
|
28
28
|
|
29
|
-
|
30
|
-
|
29
|
+
$openstack_compute ||= get_fog_promise('Compute', openstack_options)
|
30
|
+
$openstack_network ||= get_fog_promise('Network', openstack_options)
|
31
|
+
|
32
|
+
env[:openstack_compute] = $openstack_compute
|
33
|
+
env[:openstack_network] = $openstack_network
|
31
34
|
|
32
35
|
@app.call(env)
|
33
36
|
end
|
@@ -35,7 +38,7 @@ module VagrantPlugins
|
|
35
38
|
private
|
36
39
|
|
37
40
|
def get_fog_promise(service_name, openstack_options)
|
38
|
-
promise {
|
41
|
+
Kernel.promise {
|
39
42
|
@logger.info("Initializing OpenStack #{service_name}...")
|
40
43
|
Fog.const_get(service_name).new(openstack_options)
|
41
44
|
}
|
@@ -122,10 +122,11 @@ module VagrantPlugins
|
|
122
122
|
|
123
123
|
env[:ui].info(I18n.t("vagrant_openstack.active",
|
124
124
|
:elapsed => (Time.now - launch_start_time).floor))
|
125
|
-
|
126
125
|
env[:machine].data_dir.join("cached_metadata").open("w+") do |f|
|
127
126
|
f.write(server.to_json)
|
128
127
|
end
|
128
|
+
public_ip_address = server.addresses[config.public_network_name].last['addr'] rescue nil
|
129
|
+
env[:ui].info("Instance IP address: #{public_ip_address}")
|
129
130
|
|
130
131
|
unless env[:interrupted]
|
131
132
|
# Clear the line one more time so the progress is removed
|
@@ -21,6 +21,11 @@ RSpec.describe VagrantPlugins::OpenStack::Action::ConnectOpenStack do
|
|
21
21
|
described_class.new(app, nil)
|
22
22
|
}
|
23
23
|
|
24
|
+
after(:each) {
|
25
|
+
$openstack_compute = nil
|
26
|
+
$openstack_network = nil
|
27
|
+
}
|
28
|
+
|
24
29
|
it "should new members in env" do
|
25
30
|
expect(app).to receive(:call)
|
26
31
|
expect(machine).to receive(:provider_config).and_return(config)
|
@@ -47,6 +52,14 @@ RSpec.describe VagrantPlugins::OpenStack::Action::ConnectOpenStack do
|
|
47
52
|
end
|
48
53
|
end
|
49
54
|
|
55
|
+
it "should memoize the fog call" do
|
56
|
+
expect(app).to receive(:call).at_least(:once)
|
57
|
+
expect(machine).to receive(:provider_config).at_least(:once).and_return(config)
|
58
|
+
env = { :machine => machine }
|
59
|
+
|
60
|
+
expect(Kernel).to receive(:promise).twice.and_return('TEST') # 1x compute, 1x network
|
61
|
+
10.times { subject.call(env) }
|
62
|
+
end
|
50
63
|
end
|
51
64
|
end
|
52
65
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-openstack-cloud-provider
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mathieu Mitchell
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-01-
|
11
|
+
date: 2017-01-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fog
|