bosh-bootstrap 0.11.4 → 0.11.5
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.
- data/ChangeLog.md +6 -0
- data/README.md +1 -1
- data/bin/bosh-bootstrap +2 -0
- data/lib/bosh-bootstrap/cli/commands/deploy.rb +1 -13
- data/lib/bosh-bootstrap/cli/commands/ssh.rb +1 -0
- data/lib/bosh-bootstrap/cli/helpers.rb +2 -0
- data/lib/bosh-bootstrap/cli/helpers/key_pair.rb +19 -0
- data/lib/bosh-bootstrap/microbosh_providers/aws.rb +1 -1
- data/lib/bosh-bootstrap/microbosh_providers/openstack.rb +5 -2
- data/lib/bosh-bootstrap/network_providers/aws.rb +1 -1
- data/lib/bosh-bootstrap/network_providers/openstack.rb +1 -1
- data/lib/bosh-bootstrap/version.rb +1 -1
- data/spec/assets/microbosh_yml/micro_bosh.aws_ec2.us-west-2a.yml +2 -2
- data/spec/assets/microbosh_yml/micro_bosh.aws_ec2.yml +2 -2
- data/spec/assets/microbosh_yml/micro_bosh.aws_vpc.yml +2 -2
- data/spec/assets/microbosh_yml/micro_bosh.openstack.yml +2 -2
- data/spec/unit/commands/ssh_spec.rb +1 -0
- data/spec/unit/microbosh_providers/aws_spec.rb +2 -2
- data/spec/unit/network_providers/aws_spec.rb +1 -1
- data/spec/unit/network_providers/openstack_spec.rb +1 -1
- metadata +4 -3
data/ChangeLog.md
CHANGED
@@ -5,6 +5,9 @@
|
|
5
5
|
gem install bosh-bootstrap
|
6
6
|
bosh-bootstrap deploy
|
7
7
|
|
8
|
+
## Next
|
9
|
+
|
10
|
+
|
8
11
|
## v0.11
|
9
12
|
|
10
13
|
* Complete rewrite of bosh-bootstrap in orphan branch
|
@@ -21,6 +24,9 @@
|
|
21
24
|
* Specify which AWS AZ to use via `provider.az` in settings.yml (v0.11.2)
|
22
25
|
* Support for OpenStack (also in cyoi 0.4.3) thanks to Ferdy! (v0.11.3)
|
23
26
|
* Ensure CLI loads bundler (v0.11.4)
|
27
|
+
* rubygem users should be able to install & run from rubygems instead of source workaround (v0.11.5)
|
28
|
+
* microbosh volume is smaller 4G and automatically fits on devstack/openstack (v0.11.5; thx @ryfow)
|
29
|
+
* security group `bosh_agent_http` renamed to `bosh_agent_https`, with same 6868 port for talking to bosh_agent running in https mode (`bosh_agent_http` can then be deleted) (v0.11.5)
|
24
30
|
|
25
31
|
## v0.10
|
26
32
|
|
data/README.md
CHANGED
@@ -109,7 +109,7 @@ Created security group ssh
|
|
109
109
|
-> opened ports ports TCP 22..22 from IP range 0.0.0.0/0
|
110
110
|
Created security group bosh_nats_server
|
111
111
|
-> opened ports ports TCP 4222..4222 from IP range 0.0.0.0/0
|
112
|
-
Created security group
|
112
|
+
Created security group bosh_agent_https
|
113
113
|
-> opened ports ports TCP 6868..6868 from IP range 0.0.0.0/0
|
114
114
|
Created security group bosh_blobstore
|
115
115
|
-> opened ports ports TCP 25250..25250 from IP range 0.0.0.0/0
|
data/bin/bosh-bootstrap
CHANGED
@@ -2,7 +2,6 @@ module Bosh; module Bootstrap; module Cli; module Commands; end; end; end; end
|
|
2
2
|
|
3
3
|
require "cyoi/cli/provider"
|
4
4
|
require "cyoi/cli/address"
|
5
|
-
require "cyoi/cli/key_pair"
|
6
5
|
require "bosh-bootstrap/cli/helpers"
|
7
6
|
require "bosh-bootstrap/microbosh"
|
8
7
|
|
@@ -47,17 +46,6 @@ class Bosh::Bootstrap::Cli::Commands::Deploy
|
|
47
46
|
network.deploy
|
48
47
|
end
|
49
48
|
|
50
|
-
def setup_keypair
|
51
|
-
key_pair_name = settings.exists?("key_pair.name") || settings.bosh.name
|
52
|
-
cli = Cyoi::Cli::KeyPair.new([key_pair_name, settings_dir])
|
53
|
-
cli.execute!
|
54
|
-
reload_settings!
|
55
|
-
|
56
|
-
key_pair = Bosh::Bootstrap::KeyPair.new(settings_dir, settings.key_pair.name, settings.key_pair.private_key)
|
57
|
-
key_pair.execute!
|
58
|
-
settings.set("key_pair.path", key_pair.path)
|
59
|
-
end
|
60
|
-
|
61
49
|
# TODO should this go inside Microbosh, like NetworkProvider is to Network?
|
62
50
|
def microbosh_provider
|
63
51
|
@microbosh_provider ||= begin
|
@@ -82,7 +70,7 @@ class Bosh::Bootstrap::Cli::Commands::Deploy
|
|
82
70
|
end
|
83
71
|
|
84
72
|
def perform_microbosh_deploy
|
85
|
-
settings.set("bosh.persistent_disk",
|
73
|
+
settings.set("bosh.persistent_disk", 4 * 1024)
|
86
74
|
@microbosh ||= Bosh::Bootstrap::Microbosh.new(settings_dir, microbosh_provider)
|
87
75
|
@microbosh.deploy(settings)
|
88
76
|
end
|
@@ -2,10 +2,12 @@ module Bosh; module Bootstrap; module Cli; module Helpers; end; end; end; end
|
|
2
2
|
|
3
3
|
require "bosh-bootstrap/cli/helpers/bundle"
|
4
4
|
require "bosh-bootstrap/cli/helpers/interactions"
|
5
|
+
require "bosh-bootstrap/cli/helpers/key_pair"
|
5
6
|
require "bosh-bootstrap/cli/helpers/settings"
|
6
7
|
|
7
8
|
module Bosh::Bootstrap::Cli::Helpers
|
8
9
|
include Bosh::Bootstrap::Cli::Helpers::Bundle
|
9
10
|
include Bosh::Bootstrap::Cli::Helpers::Interactions
|
11
|
+
include Bosh::Bootstrap::Cli::Helpers::KeyPair
|
10
12
|
include Bosh::Bootstrap::Cli::Helpers::Settings
|
11
13
|
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require "cyoi/cli/key_pair"
|
2
|
+
require "readwritesettings"
|
3
|
+
require "fileutils"
|
4
|
+
|
5
|
+
module Bosh::Bootstrap::Cli::Helpers::KeyPair
|
6
|
+
include FileUtils
|
7
|
+
|
8
|
+
def setup_keypair
|
9
|
+
key_pair_name = settings.exists?("key_pair.name") || settings.bosh.name
|
10
|
+
cli = Cyoi::Cli::KeyPair.new([key_pair_name, settings_dir])
|
11
|
+
cli.execute!
|
12
|
+
reload_settings!
|
13
|
+
|
14
|
+
key_pair = Bosh::Bootstrap::KeyPair.new(settings_dir, settings.key_pair.name, settings.key_pair.private_key)
|
15
|
+
key_pair.execute!
|
16
|
+
settings.set("key_pair.path", key_pair.path)
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
@@ -38,8 +38,11 @@ module Bosh::Bootstrap::MicroboshProviders
|
|
38
38
|
settings.bosh.persistent_disk
|
39
39
|
end
|
40
40
|
|
41
|
+
# TODO discover m1.microbosh via cyoi (a VM with ephemeral volume)
|
42
|
+
# Create m1.microboh with:
|
43
|
+
# nova flavor-create m1.microbosh 6 2048 20 2 --ephemeral 20 --rxtx-factor 1 --is-public true
|
41
44
|
def resources_cloud_properties
|
42
|
-
{"instance_type"=>"m1.
|
45
|
+
{"instance_type"=>"m1.microbosh"}
|
43
46
|
end
|
44
47
|
|
45
48
|
def cloud_properties
|
@@ -63,7 +66,7 @@ module Bosh::Bootstrap::MicroboshProviders
|
|
63
66
|
|
64
67
|
def security_groups
|
65
68
|
["ssh",
|
66
|
-
"
|
69
|
+
"bosh_agent_https",
|
67
70
|
"bosh_nats_server",
|
68
71
|
"bosh_blobstore",
|
69
72
|
"bosh_director",
|
@@ -6,7 +6,7 @@ network:
|
|
6
6
|
type: dynamic
|
7
7
|
vip: 1.2.3.4
|
8
8
|
resources:
|
9
|
-
persistent_disk:
|
9
|
+
persistent_disk: 4096
|
10
10
|
cloud_properties:
|
11
11
|
instance_type: m1.medium
|
12
12
|
availability_zone: us-west-2a
|
@@ -20,7 +20,7 @@ cloud:
|
|
20
20
|
ec2_endpoint: ec2.us-west-2.amazonaws.com
|
21
21
|
default_security_groups:
|
22
22
|
- ssh
|
23
|
-
-
|
23
|
+
- bosh_agent_https
|
24
24
|
- bosh_nats_server
|
25
25
|
- bosh_blobstore
|
26
26
|
- bosh_director
|
@@ -6,7 +6,7 @@ network:
|
|
6
6
|
type: dynamic
|
7
7
|
vip: 1.2.3.4
|
8
8
|
resources:
|
9
|
-
persistent_disk:
|
9
|
+
persistent_disk: 4096
|
10
10
|
cloud_properties:
|
11
11
|
instance_type: m1.medium
|
12
12
|
cloud:
|
@@ -19,7 +19,7 @@ cloud:
|
|
19
19
|
ec2_endpoint: ec2.us-west-2.amazonaws.com
|
20
20
|
default_security_groups:
|
21
21
|
- ssh
|
22
|
-
-
|
22
|
+
- bosh_agent_https
|
23
23
|
- bosh_nats_server
|
24
24
|
- bosh_blobstore
|
25
25
|
- bosh_director
|
@@ -8,7 +8,7 @@ network:
|
|
8
8
|
cloud_properties:
|
9
9
|
subnet: $SUBNET_ID$
|
10
10
|
resources:
|
11
|
-
persistent_disk:
|
11
|
+
persistent_disk: 4096
|
12
12
|
cloud_properties:
|
13
13
|
instance_type: m1.medium
|
14
14
|
cloud:
|
@@ -21,7 +21,7 @@ cloud:
|
|
21
21
|
ec2_endpoint: ec2.us-west-2.amazonaws.com
|
22
22
|
default_security_groups:
|
23
23
|
- ssh
|
24
|
-
-
|
24
|
+
- bosh_agent_https
|
25
25
|
- bosh_nats_server
|
26
26
|
- bosh_blobstore
|
27
27
|
- bosh_director
|
@@ -8,7 +8,7 @@ network:
|
|
8
8
|
resources:
|
9
9
|
persistent_disk: 4096
|
10
10
|
cloud_properties:
|
11
|
-
instance_type: m1.
|
11
|
+
instance_type: m1.microbosh
|
12
12
|
cloud:
|
13
13
|
plugin: openstack
|
14
14
|
properties:
|
@@ -20,7 +20,7 @@ cloud:
|
|
20
20
|
region: REGION
|
21
21
|
default_security_groups:
|
22
22
|
- ssh
|
23
|
-
-
|
23
|
+
- bosh_agent_https
|
24
24
|
- bosh_nats_server
|
25
25
|
- bosh_blobstore
|
26
26
|
- bosh_director
|
@@ -13,6 +13,7 @@ describe Bosh::Bootstrap::Cli::Commands::SSH do
|
|
13
13
|
it "runs ssh" do
|
14
14
|
setting "address.ip", "1.2.3.4"
|
15
15
|
setting "key_pair.path", "/path/to/private/key"
|
16
|
+
subject.should_receive(:setup_keypair)
|
16
17
|
subject.should_receive(:sh).with("ssh -i /path/to/private/key vcap@1.2.3.4")
|
17
18
|
subject.perform
|
18
19
|
end
|
@@ -19,7 +19,7 @@ describe Bosh::Bootstrap::MicroboshProviders::AWS do
|
|
19
19
|
setting "key_pair.path", "~/.microbosh/ssh/test-bosh"
|
20
20
|
setting "bosh.name", "test-bosh"
|
21
21
|
setting "bosh.salted_password", "salted_password"
|
22
|
-
setting "bosh.persistent_disk",
|
22
|
+
setting "bosh.persistent_disk", 4096
|
23
23
|
|
24
24
|
subject = Bosh::Bootstrap::MicroboshProviders::AWS.new(microbosh_yml, settings)
|
25
25
|
|
@@ -38,7 +38,7 @@ describe Bosh::Bootstrap::MicroboshProviders::AWS do
|
|
38
38
|
setting "key_pair.path", "~/.microbosh/ssh/test-bosh"
|
39
39
|
setting "bosh.name", "test-bosh"
|
40
40
|
setting "bosh.salted_password", "salted_password"
|
41
|
-
setting "bosh.persistent_disk",
|
41
|
+
setting "bosh.persistent_disk", 4096
|
42
42
|
|
43
43
|
subject = Bosh::Bootstrap::MicroboshProviders::AWS.new(microbosh_yml, settings)
|
44
44
|
|
@@ -17,7 +17,7 @@ describe Bosh::Bootstrap::NetworkProviders::AWS do
|
|
17
17
|
expected_groups = [
|
18
18
|
["ssh", "ssh", ports: 22],
|
19
19
|
["bosh_nats_server", "bosh_nats_server", ports: 4222],
|
20
|
-
["
|
20
|
+
["bosh_agent_https", "bosh_agent_https", ports: 6868],
|
21
21
|
["bosh_blobstore", "bosh_blobstore", ports: 25250],
|
22
22
|
["bosh_director", "bosh_director", ports: 25555],
|
23
23
|
["bosh_registry", "bosh_registry", ports: 25777],
|
@@ -16,7 +16,7 @@ describe Bosh::Bootstrap::NetworkProviders::OpenStack do
|
|
16
16
|
expected_groups = [
|
17
17
|
["ssh", "ssh", ports: 22],
|
18
18
|
["bosh_nats_server", "bosh_nats_server", ports: 4222],
|
19
|
-
["
|
19
|
+
["bosh_agent_https", "bosh_agent_https", ports: 6868],
|
20
20
|
["bosh_blobstore", "bosh_blobstore", ports: 25250],
|
21
21
|
["bosh_director", "bosh_director", ports: 25555],
|
22
22
|
["bosh_registry", "bosh_registry", ports: 25777],
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bosh-bootstrap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.11.
|
4
|
+
version: 0.11.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-06-07 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: cyoi
|
@@ -166,6 +166,7 @@ files:
|
|
166
166
|
- lib/bosh-bootstrap/cli/helpers.rb
|
167
167
|
- lib/bosh-bootstrap/cli/helpers/bundle.rb
|
168
168
|
- lib/bosh-bootstrap/cli/helpers/interactions.rb
|
169
|
+
- lib/bosh-bootstrap/cli/helpers/key_pair.rb
|
169
170
|
- lib/bosh-bootstrap/cli/helpers/settings.rb
|
170
171
|
- lib/bosh-bootstrap/key_pair.rb
|
171
172
|
- lib/bosh-bootstrap/microbosh.rb
|
@@ -226,7 +227,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
226
227
|
version: '0'
|
227
228
|
segments:
|
228
229
|
- 0
|
229
|
-
hash:
|
230
|
+
hash: 1342872360376581564
|
230
231
|
requirements: []
|
231
232
|
rubyforge_project:
|
232
233
|
rubygems_version: 1.8.25
|