bosh-cloudfoundry 0.7.0.alpha.8 → 0.7.0.alpha.9
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +1 -1
- data/bosh-cloudfoundry.gemspec +1 -1
- data/bosh_release/.final_builds/jobs/login/index.yml +5 -0
- data/bosh_release/.final_builds/jobs/saml_login/index.yml +7 -0
- data/bosh_release/.final_builds/packages/cloud_controller_ng/index.yml +5 -0
- data/bosh_release/.final_builds/packages/dea_next/index.yml +5 -0
- data/bosh_release/.final_builds/packages/gorouter/index.yml +5 -0
- data/bosh_release/.final_builds/packages/login/index.yml +5 -0
- data/bosh_release/.final_builds/packages/saml_login/index.yml +7 -0
- data/bosh_release/.final_builds/packages/uaa/index.yml +5 -0
- data/bosh_release/releases/cf-release-134.yml +318 -0
- data/bosh_release/releases/index.yml +2 -0
- data/lib/bosh/cli/commands/01_prepare_bosh_for_cf.rb +128 -0
- data/lib/bosh/cli/commands/{cf.rb → 02_create_cf.rb} +3 -73
- data/lib/bosh/cli/commands/99_cf_help.rb +16 -0
- data/spec/commands/command_cf_help_spec.rb +9 -0
- data/spec/{plugin_spec.rb → commands/command_create_cf_spec.rb} +4 -37
- data/spec/commands/command_prepare_cf_spec.rb +108 -0
- data/spec/deployment_file_spec.rb +1 -2
- data/spec/release_version_cpi_spec.rb +3 -1
- data/spec/release_version_spec.rb +5 -3
- data/templates/v134/aws/large/deployment_file.yml.erb +431 -0
- data/templates/v134/aws/large/spec +6 -0
- data/templates/v134/aws/medium/deployment_file.yml.erb +398 -0
- data/templates/v134/aws/medium/spec +6 -0
- data/templates/v134/aws/small/README.md +5 -0
- data/templates/v134/aws/spec +6 -0
- data/templates/v134/openstack/large/deployment_file.yml.erb +431 -0
- data/templates/v134/openstack/large/spec +6 -0
- data/templates/v134/openstack/medium/deployment_file.yml.erb +398 -0
- data/templates/v134/openstack/medium/spec +6 -0
- data/templates/v134/openstack/spec +6 -0
- data/templates/v134/spec +14 -0
- metadata +27 -6
data/README.md
CHANGED
@@ -15,7 +15,7 @@ $ bosh delete cf
|
|
15
15
|
|
16
16
|
The deployed Cloud Foundry does not include any data or messaging services for the user applications. These are available as add-ons coming soon.
|
17
17
|
|
18
|
-
[![Build Status](https://travis-ci.org/cloudfoundry-community/bosh-cloudfoundry.png?branch=v0.7)](https://travis-ci.org/
|
18
|
+
[![Build Status](https://travis-ci.org/cloudfoundry-community/bosh-cloudfoundry.png?branch=v0.7)](https://travis-ci.org/cloudfoundry-community/bosh-cloudfoundry) [![Stories in Ready](http://badge.waffle.io/cloudfoundry-community/bosh-cloudfoundry.png)](http://waffle.io/cloudfoundry-community/bosh-cloudfoundry)
|
19
19
|
|
20
20
|
## What gets created?
|
21
21
|
|
data/bosh-cloudfoundry.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |spec|
|
4
4
|
spec.name = "bosh-cloudfoundry"
|
5
|
-
spec.version = "0.7.0.alpha.
|
5
|
+
spec.version = "0.7.0.alpha.9"
|
6
6
|
spec.authors = ["Dr Nic Williams"]
|
7
7
|
spec.email = ["drnicwilliams@gmail.com"]
|
8
8
|
spec.description = %q{Create & manage Cloud Foundry deployments}
|
@@ -50,3 +50,8 @@ builds:
|
|
50
50
|
version: 12
|
51
51
|
sha1: !binary |-
|
52
52
|
MDdiNDQwYWNlMmRmZGFhMGFmODU3YmY3OWZjMmI1OGJiNzc3NGM2ZQ==
|
53
|
+
!binary "MTU3NzkwZmY3ZmQ0M2I1ZjA4YzFmYmE1NWNlM2NkNGZhMjdhMWYxMg==":
|
54
|
+
blobstore_id: 50ce1d04-3bec-4b61-9be0-25aab31839bc
|
55
|
+
version: 13
|
56
|
+
sha1: !binary |-
|
57
|
+
ZjdmMDcxNzg0ZTg1NGNhZjlkMWI0MTI1MzdjNmE5MzI5MzY0ZjlmNQ==
|
@@ -58,3 +58,8 @@ builds:
|
|
58
58
|
version: 14
|
59
59
|
sha1: !binary |-
|
60
60
|
OTY4MzUwMTM2ZjliZmUxYmU4NDJiNzMyOGNhM2Q4MGEyZDYwYzdjZQ==
|
61
|
+
!binary "MDZmOWRlOTEyNmMzY2Q2MWZlYWZmZmVhZjRhY2RmNDdkZWVmNzUxZg==":
|
62
|
+
blobstore_id: 299af089-2909-4407-ae95-29a8cf2f25ce
|
63
|
+
version: 15
|
64
|
+
sha1: !binary |-
|
65
|
+
MzNkOWNlNzljN2VkNWZmMzRlNmYwZjYxY2I3NjIyYWRlZmM3NjNlMQ==
|
@@ -70,3 +70,8 @@ builds:
|
|
70
70
|
version: 17
|
71
71
|
sha1: !binary |-
|
72
72
|
OTdlNmY0MGM1NDA0Nzk2ZGE5MWRhNWE1OGU2MGQxZGI2NzAyM2JiYw==
|
73
|
+
!binary "OTY2M2Y4NzBkMjZmNmQyOTRmMDViOTA2ZWY2OTFjOTg1MjViNWUzYQ==":
|
74
|
+
blobstore_id: 9bdca07d-044a-478b-96a2-3fd252d80c29
|
75
|
+
version: 18
|
76
|
+
sha1: !binary |-
|
77
|
+
YTJhZDQ3ODkyYjg5MmU5OWNlYmIxYzM2M2MyM2UzOWFmYTk4ZDI5MA==
|
@@ -22,3 +22,8 @@ builds:
|
|
22
22
|
version: 5
|
23
23
|
sha1: !binary |-
|
24
24
|
N2QzNWVjYjQ0YzU4MzIyM2IzNDU0YjMyZjUyZTIyM2VkZThhMDFiNQ==
|
25
|
+
!binary "MmE4ODkzYTAyNGRmMzg4YWMzZGViZGI0ZTU5OWUzZWE2NzI2MzYxZQ==":
|
26
|
+
blobstore_id: dae6b5b5-0977-4d91-a47c-e38620174037
|
27
|
+
version: 6
|
28
|
+
sha1: !binary |-
|
29
|
+
YmE1OTgxOWU4MTRhZTQ2OWE0MmVlZDQ3N2MxYzI1MWE0NzFlZGUwNA==
|
@@ -58,3 +58,8 @@ builds:
|
|
58
58
|
version: 14
|
59
59
|
sha1: !binary |-
|
60
60
|
ODA3NjU4YTQyOGJkYWM3MjNmNmFmNGE1YjRiYjcyNjllMzE2MGM4Ng==
|
61
|
+
!binary "YzJiYWQ0OTQxZGEyOTUwM2I4YzFmZjI4NTg5ZmIxMDVmNmRmMzhlMQ==":
|
62
|
+
blobstore_id: 04c6ee7f-2720-41d6-a943-087f04309c60
|
63
|
+
version: 15
|
64
|
+
sha1: !binary |-
|
65
|
+
MGM5ZGMwZGZhNzJhOTI2OTg5OWVlZDM4NTg2NDk5Y2UzNjc2MTg1OQ==
|
@@ -102,3 +102,8 @@ builds:
|
|
102
102
|
version: 25
|
103
103
|
sha1: !binary |-
|
104
104
|
YzMxYzM0YmRjZGZhMGZkMDljNGU4ZjgwOTU4ZWM2MGNkZDI0ZTI3Mg==
|
105
|
+
!binary "MTU1YmNmMjIyOWUwNmZjODAwNjc0ZmQyYjFkZGE0MzYwOWUwMGE2Yg==":
|
106
|
+
blobstore_id: 51cba9b2-4217-4002-8eda-3f4e46e27234
|
107
|
+
version: 26
|
108
|
+
sha1: !binary |-
|
109
|
+
Yjc4MWFlZTEzMzA2Y2ZiNjQ2NTNmODUyNjA2MDFjYjI0Mzk2Zjg0NQ==
|
@@ -0,0 +1,318 @@
|
|
1
|
+
---
|
2
|
+
packages:
|
3
|
+
- name: rootfs_lucid64
|
4
|
+
version: 1
|
5
|
+
sha1: !binary |-
|
6
|
+
YjAxMjgyNjk2NmFhOGVjOTNlM2FmODE1ZTI3NzEyZDkzZjVlODk1Mg==
|
7
|
+
fingerprint: !binary |-
|
8
|
+
NzViODBlMmQwNDg2M2E1N2EyM2UxYWRiMTc3ZGI5ODIyM2JjZWRlNA==
|
9
|
+
dependencies: []
|
10
|
+
- name: saml_login
|
11
|
+
version: 1
|
12
|
+
sha1: !binary |-
|
13
|
+
NWM4NGMyNmYyNDhlYjYzNTIwNWE1YjM2YWRiMzM1ZWU5ZTc3NzVjYg==
|
14
|
+
fingerprint: !binary |-
|
15
|
+
NTUxMmJkNmUwMWU0MjgyZWYxNzFmMzNlNGM1NTMyY2JhN2MyYjZmNA==
|
16
|
+
dependencies:
|
17
|
+
- ruby_next
|
18
|
+
- git
|
19
|
+
- name: git
|
20
|
+
version: 1
|
21
|
+
sha1: !binary |-
|
22
|
+
ZjgwYWVjYzVjMTcxYTgwNWNlNDBiZjQwYmNmNWEwMWYwOTc3YjIxOQ==
|
23
|
+
fingerprint: !binary |-
|
24
|
+
OGFkYjdlMTRkZmJmMzViNTRmZmMwOTQyMDZmNjZlYTE0MTE3YmNiMA==
|
25
|
+
dependencies: []
|
26
|
+
- name: ruby
|
27
|
+
version: 8
|
28
|
+
sha1: !binary |-
|
29
|
+
ZGI3MmVlNWI5Yjg1OGIwNGYyOTBiZTdiOTVhNzViZDY4YzZkYWFkMg==
|
30
|
+
fingerprint: !binary |-
|
31
|
+
Yjg0MGYzYWRmMWZmYWRhOGUwMTkyNDA4NDg4MjFkYTMxODM4MmUyMA==
|
32
|
+
dependencies:
|
33
|
+
- libyaml
|
34
|
+
- name: gorouter
|
35
|
+
version: 6
|
36
|
+
sha1: !binary |-
|
37
|
+
YmE1OTgxOWU4MTRhZTQ2OWE0MmVlZDQ3N2MxYzI1MWE0NzFlZGUwNA==
|
38
|
+
fingerprint: !binary |-
|
39
|
+
MmE4ODkzYTAyNGRmMzg4YWMzZGViZGI0ZTU5OWUzZWE2NzI2MzYxZQ==
|
40
|
+
dependencies:
|
41
|
+
- golang
|
42
|
+
- name: syslog_aggregator
|
43
|
+
version: 4
|
44
|
+
sha1: !binary |-
|
45
|
+
MmNlMzVkYzU4YTU3Zjc3NWJjNjhhODBjMDM2ZmY2Mzg5YjNiZWM1MQ==
|
46
|
+
fingerprint: !binary |-
|
47
|
+
MTg2YWM2YjliODI4YjNkYjUxZTViZTk0NmZhYzJiN2Y4ZWVhOGNjNg==
|
48
|
+
dependencies:
|
49
|
+
- ruby_next
|
50
|
+
- name: dea_jvm
|
51
|
+
version: 4
|
52
|
+
sha1: !binary |-
|
53
|
+
MzA5ZDQxYTM3MWU5NmQ0Y2NmZThjYzZiMmJiM2JjY2MzMzJkYjdkMQ==
|
54
|
+
fingerprint: !binary |-
|
55
|
+
MzgzM2QyOWM3YzU0ZjI0MjhmMjY2Y2VkY2U2NDA4NWNlMGNhYTQ4NA==
|
56
|
+
dependencies: []
|
57
|
+
- name: postgres
|
58
|
+
version: 4
|
59
|
+
sha1: !binary |-
|
60
|
+
MzBjMWFiYmY3MjQ2OGZjYjUxMTJhMDFkNGY4NGMyMTI0MzY3OGE4NQ==
|
61
|
+
fingerprint: !binary |-
|
62
|
+
YTJiNzcxM2I0ZGY2YzVhYjFhYThhNTMyMWQ4MGYxMTAwZWFlYTc4NA==
|
63
|
+
dependencies: []
|
64
|
+
- name: cloud_controller_ng
|
65
|
+
version: 15
|
66
|
+
sha1: !binary |-
|
67
|
+
MzNkOWNlNzljN2VkNWZmMzRlNmYwZjYxY2I3NjIyYWRlZmM3NjNlMQ==
|
68
|
+
fingerprint: !binary |-
|
69
|
+
MDZmOWRlOTEyNmMzY2Q2MWZlYWZmZmVhZjRhY2RmNDdkZWVmNzUxZg==
|
70
|
+
dependencies:
|
71
|
+
- libpq
|
72
|
+
- mysqlclient
|
73
|
+
- sqlite
|
74
|
+
- ruby
|
75
|
+
- name: uaa
|
76
|
+
version: 26
|
77
|
+
sha1: !binary |-
|
78
|
+
Yjc4MWFlZTEzMzA2Y2ZiNjQ2NTNmODUyNjA2MDFjYjI0Mzk2Zjg0NQ==
|
79
|
+
fingerprint: !binary |-
|
80
|
+
MTU1YmNmMjIyOWUwNmZjODAwNjc0ZmQyYjFkZGE0MzYwOWUwMGE2Yg==
|
81
|
+
dependencies:
|
82
|
+
- ruby_next
|
83
|
+
- name: ruby_next
|
84
|
+
version: 3
|
85
|
+
sha1: !binary |-
|
86
|
+
N2UzMTU3MzhjNDc1MjRmNTQ5YmYzYmIwY2ZkYTIxN2EyYzMyYzRlOQ==
|
87
|
+
fingerprint: !binary |-
|
88
|
+
M2I3OGM2ZGY1ZTlmMzMzYTRjNTk5ODAyNjVkMzU4ZWVhNDI3YTNkNg==
|
89
|
+
dependencies:
|
90
|
+
- libyaml
|
91
|
+
- name: imagemagick
|
92
|
+
version: 2
|
93
|
+
sha1: !binary |-
|
94
|
+
YWI0MDQ2NjEyMDRhZTU5NjBlZjZkZDFhN2IyZjA1YTBlNWUxZjk3Yg==
|
95
|
+
fingerprint: !binary |-
|
96
|
+
ZWNmNDVhY2NiZjU1MTM4N2RiMzgxYTc0M2VjNTE4ZTI0MGQ2MGFkNw==
|
97
|
+
dependencies: []
|
98
|
+
- name: dea_next
|
99
|
+
version: 18
|
100
|
+
sha1: !binary |-
|
101
|
+
YTJhZDQ3ODkyYjg5MmU5OWNlYmIxYzM2M2MyM2UzOWFmYTk4ZDI5MA==
|
102
|
+
fingerprint: !binary |-
|
103
|
+
OTY2M2Y4NzBkMjZmNmQyOTRmMDViOTA2ZWY2OTFjOTg1MjViNWUzYQ==
|
104
|
+
dependencies:
|
105
|
+
- ruby
|
106
|
+
- buildpack_cache
|
107
|
+
- warden
|
108
|
+
- golang
|
109
|
+
- insight_agent
|
110
|
+
- libyaml
|
111
|
+
- name: debian_nfs_server
|
112
|
+
version: 3
|
113
|
+
sha1: !binary |-
|
114
|
+
OThmYTRkY2I5MWFiYThlMDQ0OTI3MTNkODFhZjhlNjg4OTRjMDgxMg==
|
115
|
+
fingerprint: !binary |-
|
116
|
+
YzFkYzg2MGVkNmFiMmJlZTY4MTcyYmU5OTZmNjRmOTU4N2U5YWMwZA==
|
117
|
+
dependencies: []
|
118
|
+
- name: buildpack_cache
|
119
|
+
version: 2
|
120
|
+
sha1: !binary |-
|
121
|
+
NmJlZjhkYTQzOGJhODA3YzQ2OTQ0ZWVkYzk3NzhhMGY1MTVkNTFlZA==
|
122
|
+
fingerprint: !binary |-
|
123
|
+
ZjBkYTVjM2QzM2Q4ZTE4ZjY5MjMyNjQ1MTQ3MmRmMjM4YTY3YTBkYw==
|
124
|
+
dependencies: []
|
125
|
+
- name: sqlite
|
126
|
+
version: 3
|
127
|
+
sha1: !binary |-
|
128
|
+
OGE3ZjBkMTU3MmVkYjQ2YTFmYjU2OTBjMjdiNWZjNzIwMDc2Njc1Yw==
|
129
|
+
fingerprint: !binary |-
|
130
|
+
ZTNlOWI2MWY4Y2RjMjYxMDQ4MGMyYWE4NDFlODlkYzBiYjFkYzljOQ==
|
131
|
+
dependencies: []
|
132
|
+
- name: mysqlclient
|
133
|
+
version: 3
|
134
|
+
sha1: !binary |-
|
135
|
+
MDQ0YmEwNTRjNTIzNDdiYTMxNTNlYWNkMWM4NjNlMjc5MmEyN2UxNA==
|
136
|
+
fingerprint: !binary |-
|
137
|
+
ODEwMDlmMmFkNzBjYzE4YjdlOGI4YWY2YTE4OTBhZWM1ZmNjOTM2OQ==
|
138
|
+
dependencies: []
|
139
|
+
- name: libyaml
|
140
|
+
version: 1
|
141
|
+
sha1: !binary |-
|
142
|
+
NjgxZDc5MTU0MjhmMjExZGRjN2RjNTZlZWRkYjY1MWE1NTNlMmZmMA==
|
143
|
+
fingerprint: !binary |-
|
144
|
+
ODcwNmY2MTM1NTZmMWFlYmVlNzI5NDk1NjYyNmQ3MDYxZmIyZmE1ZA==
|
145
|
+
dependencies: []
|
146
|
+
- name: golang
|
147
|
+
version: 2
|
148
|
+
sha1: !binary |-
|
149
|
+
YzAzMzBiMjU0MmEzOWEwNDIyYTExNmU5ZjVhZjRhZmY3Y2I3ZGQ4MQ==
|
150
|
+
fingerprint: !binary |-
|
151
|
+
N2Q2NmE5MWU0MGI3ODA2MGUyOTEyYWRjZmFmN2Q1MDVkZmNlYzRlYQ==
|
152
|
+
dependencies: []
|
153
|
+
- name: collector
|
154
|
+
version: 9
|
155
|
+
sha1: !binary |-
|
156
|
+
YWM3OTgyNzlhZmM0MDkxOTE2YjA1NTMwMDg1MWRjN2E3NDVmYWI5Mw==
|
157
|
+
fingerprint: !binary |-
|
158
|
+
NjEwNzRjY2ZhMDkzYzk3YmZhM2RkZWQxZjA1YjQ3MmE5ZWEyMDk3MA==
|
159
|
+
dependencies:
|
160
|
+
- ruby
|
161
|
+
- name: nats
|
162
|
+
version: 8
|
163
|
+
sha1: !binary |-
|
164
|
+
YWRkZmQ1YTBlNDExZTI0NWJlZmQ2MzVkNGFhM2ZhZmFiMWJjODZkNQ==
|
165
|
+
fingerprint: !binary |-
|
166
|
+
MGUzYmFlM2NmNTc0MmU4ZTc1NDI5NWM5ZDA4ODgxMWI0YWUxZDNhMw==
|
167
|
+
dependencies:
|
168
|
+
- ruby
|
169
|
+
- name: warden
|
170
|
+
version: 27
|
171
|
+
sha1: !binary |-
|
172
|
+
ODUyODRjYWU3NmY2Yzg1MTdhY2ZiYjljMjJlZjAyNzRmZDFkMWU3MQ==
|
173
|
+
fingerprint: !binary |-
|
174
|
+
NzNiNjA0MjE2MDUwNzI2NTQyOGU5NjJlM2RlNzE3OTI5N2JjYjUzYQ==
|
175
|
+
dependencies:
|
176
|
+
- ruby_next
|
177
|
+
- name: nginx
|
178
|
+
version: 9
|
179
|
+
sha1: !binary |-
|
180
|
+
ZDgzY2ZjMmQzOGYzZWI3YTI3YWNlYjRiNjI0ODJmZGU2NDQ1NjExMA==
|
181
|
+
fingerprint: !binary |-
|
182
|
+
NzQwYTA1NGYyOWJlYTNhYzM4MmEzMmFiNjcxNTg1MWMxMzk4ZmM0ZA==
|
183
|
+
dependencies: []
|
184
|
+
- name: insight_agent
|
185
|
+
version: 2
|
186
|
+
sha1: !binary |-
|
187
|
+
ZmYzYjA2YmQ5OTQ1NGFlZjhlYzFkNzMyMzQ1NWRhZTQxN2JkMWE2OQ==
|
188
|
+
fingerprint: !binary |-
|
189
|
+
YmMxOTM2MDkxMDYxYWQ5YWJmOWVhMjk3NTVhN2M2Y2FmMzQwNGQzOA==
|
190
|
+
dependencies: []
|
191
|
+
- name: login
|
192
|
+
version: 15
|
193
|
+
sha1: !binary |-
|
194
|
+
MGM5ZGMwZGZhNzJhOTI2OTg5OWVlZDM4NTg2NDk5Y2UzNjc2MTg1OQ==
|
195
|
+
fingerprint: !binary |-
|
196
|
+
YzJiYWQ0OTQxZGEyOTUwM2I4YzFmZjI4NTg5ZmIxMDVmNmRmMzhlMQ==
|
197
|
+
dependencies:
|
198
|
+
- ruby_next
|
199
|
+
- name: health_manager_next
|
200
|
+
version: 18
|
201
|
+
sha1: !binary |-
|
202
|
+
NTRlMTg0NDFhNGQwODFmNjFkOWE4MzU3NGUzMGMxZTQxYzM2ZTRjMA==
|
203
|
+
fingerprint: !binary |-
|
204
|
+
YWY0ODkxNjkxNDZhYzdjMzMzN2M3ZmRjZDFkNmY4ZWZmYTVmNmJiYg==
|
205
|
+
dependencies:
|
206
|
+
- ruby
|
207
|
+
- name: common
|
208
|
+
version: 5
|
209
|
+
sha1: !binary |-
|
210
|
+
MDExNjU5YWM3MTNlZDNjOGUzZDc0MWQxYmFkNjI3ZTRkOWQ2OGNjMQ==
|
211
|
+
fingerprint: !binary |-
|
212
|
+
NDdlYWMzYzQxNmY4N2ViMGE2NDhiM2RmZTQ1NjMyYzY1NGQ2ZTY3Zg==
|
213
|
+
dependencies: []
|
214
|
+
- name: dashboard
|
215
|
+
version: 14
|
216
|
+
sha1: !binary |-
|
217
|
+
YzY3ODE3ZjE0Y2Y3YmI2YjY3OTdlOTkyMTcwNTUyOTA5ZjYzMzQ2OA==
|
218
|
+
fingerprint: !binary |-
|
219
|
+
MzgwYjZlMTMyNmE0MGIyZDIwMDZiNTYwNDA0NDU1NzYzZTJiNjMwYQ==
|
220
|
+
dependencies:
|
221
|
+
- ruby
|
222
|
+
- dea_jvm
|
223
|
+
- name: libpq
|
224
|
+
version: 5
|
225
|
+
sha1: !binary |-
|
226
|
+
MTdmMDQyZGMzYmFmZmE5ZjVjNTQ3ZDU4MzVjZGE1ZDcyNGFiNTQ5MA==
|
227
|
+
fingerprint: !binary |-
|
228
|
+
NTYzMjRlMGNkYTY2ZWYwZjQxMWM1MDg0ZDgzZmYxMGVkZDNmZWI2Nw==
|
229
|
+
dependencies: []
|
230
|
+
jobs:
|
231
|
+
- name: saml_login
|
232
|
+
version: 1
|
233
|
+
fingerprint: !binary |-
|
234
|
+
NzhhODZmODE4YzFjMGQ4MTNiMmQxMDllMjkyNWY4Y2E5MmI5NjA3ZA==
|
235
|
+
sha1: !binary |-
|
236
|
+
MjhiOGRiNWZjMjUzMGU3YzNkYWUwOTZiZWI0M2Y5ZTg0NzU5NTkyYw==
|
237
|
+
- name: gorouter
|
238
|
+
version: 2
|
239
|
+
fingerprint: !binary |-
|
240
|
+
ZTI2MDc2ZDVhZmUzMGZjMjYzZmZlZDZmYWMyNTZjOTgwYTlhMjBkNg==
|
241
|
+
sha1: !binary |-
|
242
|
+
YzU5MDkzYjM3MmViZmZiOTc4ZWQ3ZjY1NDlmNjM1MDAwZTlhY2Y3OQ==
|
243
|
+
- name: syslog_aggregator
|
244
|
+
version: 11
|
245
|
+
fingerprint: !binary |-
|
246
|
+
ZTJmZmQ0OTA1OWZkMDMyMjRkNTFkOTFkM2YxNzc5YmEwOGY5MTIyYw==
|
247
|
+
sha1: !binary |-
|
248
|
+
OWM0MjQwYjFlNzRhZDg5MGNmNTUxMjI5ODhmMjQ5NzAwODY3M2ZmYQ==
|
249
|
+
- name: postgres
|
250
|
+
version: 4
|
251
|
+
fingerprint: !binary |-
|
252
|
+
NTE3YTI5OGJiYWE1MDg5ODViMjlkMTZkNzFlZDhiYzA2MzhiMTYyMw==
|
253
|
+
sha1: !binary |-
|
254
|
+
YWE3NDA0YzAxY2RkMGExYjI4M2FkNDdlYjVkMzAxNDE2YTc5MzM0ZA==
|
255
|
+
- name: cloud_controller_ng
|
256
|
+
version: 8
|
257
|
+
fingerprint: !binary |-
|
258
|
+
MTVjMTI5NTY4Nzg1NjQ4Yzk3ZGU3ZTAxOWQyYzM3YWU2N2VlOGEzMw==
|
259
|
+
sha1: !binary |-
|
260
|
+
Y2U2MjQ5MDUyMzA4ZmZjZDQ5ZDcwYTAxNTI5ZmJiNmE5NjY2NTg1MQ==
|
261
|
+
- name: uaa
|
262
|
+
version: 28
|
263
|
+
fingerprint: !binary |-
|
264
|
+
MjdhY2Y0YzhmZDIxM2FjZTRiODY5M2YyMjUyODZkMWQ0YjVmMzZlZg==
|
265
|
+
sha1: !binary |-
|
266
|
+
MmUxMWMzNGYwYWQwMDcwNmIwMzUxYmE4NzBlOTlhZTI4NDYxNDU4OA==
|
267
|
+
- name: ccdb_postgres
|
268
|
+
version: 7
|
269
|
+
fingerprint: !binary |-
|
270
|
+
ZmYyZmZkOTE4ZTJmYTkwYjU1ZTI1NmFhOWE3NWY2YjJjODUzMWExZQ==
|
271
|
+
sha1: !binary |-
|
272
|
+
MTRmMDAwOGVlNTc4MGZhOTRmZjE5OTc3NjVmN2FlYjFkM2IwNjcxNw==
|
273
|
+
- name: dea_next
|
274
|
+
version: 13
|
275
|
+
fingerprint: !binary |-
|
276
|
+
MGNhYzllYjYxNGE2Njc3ODA2MWRmYzgyNWEwNWI1MWQxZjJlMDMyNw==
|
277
|
+
sha1: !binary |-
|
278
|
+
YWFhMjYxZjI3MGZlMjY5OTk2MWRjMzZlMjAzOWJkNTBjZjdhMGM2Mg==
|
279
|
+
- name: debian_nfs_server
|
280
|
+
version: 7
|
281
|
+
fingerprint: !binary |-
|
282
|
+
MjM0ZmFiYzFhMmM1ZGZiZmQ3YzkzMjg4MmQ5NDdmZWQzMzFiODI5NQ==
|
283
|
+
sha1: !binary |-
|
284
|
+
YjIyOGVjYjk2ZWM1NTUxYWI3MjM5ZWE2ZmRmYTM1MjkzMWRmZTQ1NA==
|
285
|
+
- name: collector
|
286
|
+
version: 7
|
287
|
+
fingerprint: !binary |-
|
288
|
+
ZDM4OGZhZmJiZjIzMDczMjc3NWYzMTQ1ZWZlNTg2ZDM0YWNkMTA3NQ==
|
289
|
+
sha1: !binary |-
|
290
|
+
NmJiZmI0ODBlNjc0NDM5ZTIxMDUyNzhlYTY0YjVjYzUyOGExNzVkYQ==
|
291
|
+
- name: nats
|
292
|
+
version: 11
|
293
|
+
fingerprint: !binary |-
|
294
|
+
YWZlZGRmNWM5OWYyYzc1NmJjZTY5NDY5NmY5YTA3NmRkMTM4MTgxZg==
|
295
|
+
sha1: !binary |-
|
296
|
+
YWE0N2YzODQzNzU1N2RkMTk2ODcyNzJmODA4NWI2YjMzNzZjNDA3Mg==
|
297
|
+
- name: login
|
298
|
+
version: 13
|
299
|
+
fingerprint: !binary |-
|
300
|
+
MTU3NzkwZmY3ZmQ0M2I1ZjA4YzFmYmE1NWNlM2NkNGZhMjdhMWYxMg==
|
301
|
+
sha1: !binary |-
|
302
|
+
ZjdmMDcxNzg0ZTg1NGNhZjlkMWI0MTI1MzdjNmE5MzI5MzY0ZjlmNQ==
|
303
|
+
- name: health_manager_next
|
304
|
+
version: 8
|
305
|
+
fingerprint: !binary |-
|
306
|
+
NGQ2ZTIzZDVmMGRmYjFiNGVlOTJhZWVkMmE5YTliYTk3NDMwYWU5Mw==
|
307
|
+
sha1: !binary |-
|
308
|
+
OTQxZjNjYWZkZmNhZDliNWE2MzdjODVhNjZiZTAwYjc4Y2MzZDY0MQ==
|
309
|
+
- name: dashboard
|
310
|
+
version: 10
|
311
|
+
fingerprint: !binary |-
|
312
|
+
YjVhNzdkMTczODFiNWFmMjkxYzk5N2MxMWU5NmEzYTY1NjcwZmVlYg==
|
313
|
+
sha1: !binary |-
|
314
|
+
Njg1OTc4NjI0MGQ1NWIwZmIwMzhmMTNkOTFiZjQwZDY5NTA3MjZlNw==
|
315
|
+
commit_hash: 92161fe8
|
316
|
+
uncommitted_changes: true
|
317
|
+
name: cf-release
|
318
|
+
version: 134
|
@@ -0,0 +1,128 @@
|
|
1
|
+
module Bosh::Cli::Command
|
2
|
+
# Upload a specific bosh release (or the latest one) and upload
|
3
|
+
# the latest base stemcell, if target bosh does not already
|
4
|
+
# have a stemcell uploaded.
|
5
|
+
class PrepareBoshForCloudFoundry < Base
|
6
|
+
include Bosh::Cli::Validation
|
7
|
+
|
8
|
+
usage "prepare cf"
|
9
|
+
desc "upload latest Cloud Foundry release to bosh"
|
10
|
+
option "--release-version version", "Upload a specific older version"
|
11
|
+
def prepare_cf
|
12
|
+
auth_required
|
13
|
+
bosh_status
|
14
|
+
|
15
|
+
release_version = options[:release_version] || latest_release_version
|
16
|
+
|
17
|
+
# Support:
|
18
|
+
# * --release-version v132
|
19
|
+
# * --release-version 132
|
20
|
+
if release_version.to_s =~ /(\d+)/
|
21
|
+
release_version = $1
|
22
|
+
end
|
23
|
+
release_yml = Dir[File.join(bosh_release_dir, "releases", "*-#{release_version}.yml")].first
|
24
|
+
|
25
|
+
release_name = YAML.load_file(release_yml)["name"]
|
26
|
+
|
27
|
+
release_exists = nil
|
28
|
+
step("Checking bosh already has release #{release_name} #{release_version}",
|
29
|
+
"Currently bosh does not have #{release_name} #{release_version}, uploading...", :non_fatal) do
|
30
|
+
release_exists = director.list_releases.find do |existing_release|
|
31
|
+
next false unless existing_release["name"] == release_name
|
32
|
+
versions = existing_release["release_versions"]
|
33
|
+
versions.find do |version|
|
34
|
+
version["version"].to_s == release_version.to_s
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
unless errors.empty?
|
39
|
+
say errors.shift.make_yellow
|
40
|
+
release_cmd(non_interactive: true).upload(release_yml)
|
41
|
+
end
|
42
|
+
|
43
|
+
stemcell_exists = nil
|
44
|
+
step("Checking bosh already has base stemcell",
|
45
|
+
"Currently bosh does not have base stemcell, uploading...", :non_fatal) do
|
46
|
+
stemcell_exists = director.list_stemcells.find do |existing_stemcell|
|
47
|
+
existing_stemcell["name"] == stemcell_name
|
48
|
+
end
|
49
|
+
end
|
50
|
+
unless errors.empty?
|
51
|
+
say errors.shift.make_yellow
|
52
|
+
stemcell_url = "http://bosh-jenkins-artifacts.s3.amazonaws.com/bosh-stemcell/#{bosh_cpi}/latest-bosh-stemcell-#{bosh_cpi}.tgz"
|
53
|
+
stemcell_cmd(non_interactive: true).upload(stemcell_url)
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
protected
|
58
|
+
def stemcell_name
|
59
|
+
"bosh-stemcell"
|
60
|
+
end
|
61
|
+
|
62
|
+
def bosh_release_dir
|
63
|
+
File.expand_path("../../../../../bosh_release", __FILE__)
|
64
|
+
end
|
65
|
+
|
66
|
+
def latest_release_version
|
67
|
+
# the releases/index.yml contains all the available release versions in an unordered
|
68
|
+
# hash of hashes in YAML format:
|
69
|
+
# ---
|
70
|
+
# builds:
|
71
|
+
# af61f03c5ad6327e0795402f1c458f2fc6f21201:
|
72
|
+
# version: 3
|
73
|
+
# 39c029d0af9effc6913f3333434b894ff6433638:
|
74
|
+
# version: 1
|
75
|
+
# 5f5d0a7fb577fec3c09408c94f7abbe2d52a042c:
|
76
|
+
# version: 4
|
77
|
+
# f044d47e0183f084db9dac5a6ef00d7bd21c8451:
|
78
|
+
# version: 2
|
79
|
+
release_index = YAML.load_file(File.join(bosh_release_dir, "releases/index.yml"))
|
80
|
+
latest_version = release_index["builds"].values.inject(0) do |max_version, release|
|
81
|
+
version = release["version"]
|
82
|
+
max_version < version ? version : max_version
|
83
|
+
end
|
84
|
+
latest_version
|
85
|
+
end
|
86
|
+
|
87
|
+
def bosh_status
|
88
|
+
@bosh_status ||= begin
|
89
|
+
step("Fetching bosh information", "Cannot fetch bosh information", :fatal) do
|
90
|
+
@bosh_status = director.get_status
|
91
|
+
end
|
92
|
+
@bosh_status
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
96
|
+
# The CPI (aws/openstack/etc) of the target bosh
|
97
|
+
def bosh_cpi
|
98
|
+
bosh_status["cpi"]
|
99
|
+
end
|
100
|
+
|
101
|
+
# Helper to invoke the Release command's actions
|
102
|
+
#
|
103
|
+
# Usage to invoke #upload action:
|
104
|
+
#
|
105
|
+
# release_cmd(non_interactive: true).upload(release_yml)
|
106
|
+
def release_cmd(options = {})
|
107
|
+
cmd ||= Bosh::Cli::Command::Release.new
|
108
|
+
options.each do |key, value|
|
109
|
+
cmd.add_option key.to_sym, value
|
110
|
+
end
|
111
|
+
cmd
|
112
|
+
end
|
113
|
+
|
114
|
+
# Helper to invoke the Stemcell command's actions
|
115
|
+
#
|
116
|
+
# Usage to invoke #upload action:
|
117
|
+
#
|
118
|
+
# stemcell_cmd(non_interactive: true).upload(stemcell_url)
|
119
|
+
def stemcell_cmd(options = {})
|
120
|
+
cmd ||= Bosh::Cli::Command::Stemcell.new
|
121
|
+
options.each do |key, value|
|
122
|
+
cmd.add_option key.to_sym, value
|
123
|
+
end
|
124
|
+
cmd
|
125
|
+
end
|
126
|
+
|
127
|
+
end
|
128
|
+
end
|