Merge lp:~gnuoy/openstack-mojo-specs/mojo-openstack-specs-spec-tidy-l2pop into lp:openstack-mojo-specs

Proposed by Liam Young
Status: Needs review
Proposed branch: lp:~gnuoy/openstack-mojo-specs/mojo-openstack-specs-spec-tidy-l2pop
Merge into: lp:openstack-mojo-specs
Diff against target: 2942 lines (+2245/-50)
49 files modified
helper/collect/collect-next (+2/-2)
helper/collect/repo-next (+1/-1)
helper/setup/upgrade_openstack.py (+61/-0)
helper/utils/mojo_os_utils.py (+1/-0)
helper/utils/mojo_utils.py (+50/-23)
specs/bugs/1427660/icehouse/SPEC_INFO.txt (+2/-0)
specs/bugs/1427660/icehouse/collect-next (+19/-0)
specs/bugs/1427660/icehouse/manifest (+23/-0)
specs/dev/dvr/collect-next (+4/-4)
specs/dev/full_nrpe/collect-next (+5/-4)
specs/dev/full_nrpe/next.yaml (+29/-15)
specs/dev/full_nrpe/repo-next (+2/-1)
specs/dev/full_nrpe_ha/icehouse/SPEC_INFO.txt (+2/-0)
specs/dev/full_nrpe_ha/icehouse/collect-next-ha (+21/-0)
specs/dev/full_nrpe_ha/icehouse/haphase1.yaml (+201/-0)
specs/dev/full_nrpe_ha/icehouse/haphase2.yaml (+253/-0)
specs/dev/full_nrpe_ha/icehouse/manifest (+35/-0)
specs/dev/full_nrpe_ha/icehouse/repo-next-ha (+21/-0)
specs/dev/full_nrpe_ha/juno/SPEC_INFO.txt (+2/-0)
specs/dev/full_nrpe_ha/juno/manifest (+35/-0)
specs/dev/full_nrpe_ha/kilo/SPEC_INFO.txt (+2/-0)
specs/dev/full_nrpe_ha/kilo/manifest (+35/-0)
specs/dev/kilo/SPEC_INFO.txt (+2/-0)
specs/dev/kilo/collect-next (+19/-0)
specs/dev/kilo/full.yaml (+252/-0)
specs/dev/kilo/manifest (+23/-0)
specs/dev/neutronshuffle/SPEC_INFO.txt (+2/-0)
specs/dev/neutronshuffle/manifest (+23/-0)
specs/dev/next_l2pop/icehouse/SPEC_INFO.txt (+2/-0)
specs/dev/next_l2pop/icehouse/full.yaml (+263/-0)
specs/dev/next_l2pop/icehouse/manifest (+23/-0)
specs/dev/next_l2pop/juno/SPEC_INFO.txt (+2/-0)
specs/dev/next_l2pop/juno/manifest (+23/-0)
specs/dev/next_l2pop/kilo/SPEC_INFO.txt (+2/-0)
specs/dev/next_l2pop/kilo/manifest (+23/-0)
specs/dev/vrrp_blog/SPEC_INFO.txt (+1/-0)
specs/dev/vrrp_blog/bug1364215.py (+12/-0)
specs/dev/vrrp_blog/collect-next (+19/-0)
specs/dev/vrrp_blog/full_vrrpha.yaml (+194/-0)
specs/dev/vrrp_blog/manifest (+29/-0)
specs/dev/vrrp_blog/network.yaml (+48/-0)
specs/dev/vrrp_blog/test_vrrp_ha.py (+93/-0)
specs/dev/vrrp_ha/SPEC_INFO.txt (+1/-0)
specs/dev/vrrp_ha/bug1364215.py (+12/-0)
specs/dev/vrrp_ha/collect-next (+19/-0)
specs/dev/vrrp_ha/full_vrrpha.yaml (+194/-0)
specs/dev/vrrp_ha/manifest (+29/-0)
specs/dev/vrrp_ha/network.yaml (+36/-0)
specs/dev/vrrp_ha/test_vrrp_ha.py (+93/-0)
To merge this branch: bzr merge lp:~gnuoy/openstack-mojo-specs/mojo-openstack-specs-spec-tidy-l2pop
Reviewer Review Type Date Requested Status
OpenStack Charm Testing Maintainers Pending
Review via email: mp+249489@code.launchpad.net

Description of the change

add sepcs for l2pop and openstack upgrades

To post a comment you must log in.
213. By Liam Young

Added vrrp_ha spec

214. By Liam Young

enable-l3ha on deploy for vrrp_ha spec

215. By Liam Young

Add vrrp ha test

216. By Liam Young

Remove debug print

217. By Liam Young

Update nrpe spec with brads new branches

218. By Liam Young

Added full_nrpe_ha spec

219. By Liam Young

Fix repo

220. By Liam Young

Add missing ceph-osd

221. By Liam Young

Added spec for Bug 1427660

222. By Liam Young

Add spec for testinmg neutron shuffle branches

223. By Liam Young

Add kilo spec

224. By Liam Young

Remove ceilometer due to mongodb issues

225. By Liam Young

Use percona

226. By Liam Young

use mysql kilo branch

227. By Liam Young

Fix kilo branch

228. By Liam Young

api kilo fix branch

229. By Liam Young

ncc kilo fix branch

230. By Liam Young

Use Mr Pages ppa for kilo charm testing

231. By Liam Young

Restore James' branches

232. By Liam Young

Kilo ppa for vivid

233. By Liam Young <email address hidden>

Update dvr branches as some have landed

234. By Liam Young <email address hidden>

Remove removed relation from deployer yaml

235. By Liam Young

Update nrpe spec

236. By Liam Young

Merged trunk in

237. By Liam Young

Be explicit about nrpe relation

238. By Liam Young

Actually include nagios charm

239. By Liam Young

Test new neutron-api branch

240. By Liam Young

Add missing relation to dvr spec

241. By Liam Young

Switch to vivid kilo

242. By Liam Young

Merge trunk in

243. By Liam Young

Switch to next branches

244. By Liam Young

Merged trunk in

245. By Liam Young

Back to vivid kilo

246. By Liam Young

Switch to percona

247. By Liam Young

Switch to trusty

248. By Liam Young

Add trusty kilo target

249. By Liam Young

Blog spec

250. By Liam Young

Fix blog spec to not run vrrp tests immediatly

251. By Liam Young

Test vrrp fix branches

252. By Liam Young

Restore netconfig

Revision history for this message
uosci-testing-bot (uosci-testing-bot) wrote :

charm_lint_check #6898 mojo-openstack-specs for gnuoy mp249489
    LINT FAIL: lint-test failed

LINT Results (max last 2 lines):
make: *** [lint] Error 1
ERROR:root:Make target returned non-zero.

Full lint test output: http://paste.ubuntu.com/11933116/
Build: http://10.245.162.77:8080/job/charm_lint_check/6898/

Revision history for this message
Ryan Beisner (1chb1n) wrote :

Bwahahaaa. I've unleashed the bot on our mojo specs. ;-)

Take note that my proposed branch is what uosci is running, and it has more lint check logic.
lp:~1chb1n/openstack-mojo-specs/baremetal-bundle-constrainer

Unmerged revisions

252. By Liam Young

Restore netconfig

251. By Liam Young

Test vrrp fix branches

250. By Liam Young

Fix blog spec to not run vrrp tests immediatly

249. By Liam Young

Blog spec

248. By Liam Young

Add trusty kilo target

247. By Liam Young

Switch to trusty

246. By Liam Young

Switch to percona

245. By Liam Young

Back to vivid kilo

244. By Liam Young

Merged trunk in

243. By Liam Young

Switch to next branches

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'helper/collect/collect-next'
2--- helper/collect/collect-next 2015-01-24 13:11:08 +0000
3+++ helper/collect/collect-next 2015-05-08 09:54:56 +0000
4@@ -8,7 +8,7 @@
5 ceph lp:~openstack-charmers/charms/trusty/ceph/next
6 openstack-dashboard lp:~openstack-charmers/charms/trusty/openstack-dashboard/next
7 nova-compute lp:~openstack-charmers/charms/trusty/nova-compute/next
8-quantum-gateway lp:~openstack-charmers/charms/trusty/quantum-gateway/next
9+quantum-gateway lp:~gnuoy/charms/trusty/quantum-gateway/neutron-contexts
10 cinder lp:~openstack-charmers/charms/trusty/cinder/next
11 swift-storage lp:~openstack-charmers/charms/trusty/swift-storage/next
12 ceilometer lp:~openstack-charmers/charms/trusty/ceilometer/next
13@@ -16,4 +16,4 @@
14 mongodb lp:charms/mongodb
15 cinder-ceph lp:~openstack-charmers/charms/trusty/cinder-ceph/next
16 heat lp:~openstack-charmers/charms/trusty/heat/next
17-neutron-openvswitch lp:~openstack-charmers/charms/trusty/neutron-openvswitch/next
18+neutron-openvswitch lp:~gnuoy/charms/trusty/neutron-openvswitch/neutron-contexts
19
20=== modified file 'helper/collect/repo-next'
21--- helper/collect/repo-next 2014-12-16 07:59:12 +0000
22+++ helper/collect/repo-next 2015-05-08 09:54:56 +0000
23@@ -1,4 +1,4 @@
24-mysql
25+percona-cluster
26 rabbitmq-server
27 ceph
28 keystone
29
30=== added file 'helper/setup/upgrade_openstack.py'
31--- helper/setup/upgrade_openstack.py 1970-01-01 00:00:00 +0000
32+++ helper/setup/upgrade_openstack.py 2015-05-08 09:54:56 +0000
33@@ -0,0 +1,61 @@
34+#!/usr/bin/python
35+import sys
36+import utils.mojo_utils as mojo_utils
37+import logging
38+import argparse
39+
40+OS_ORIGINS = {
41+ 'trusty-juno': {
42+ 'openstack-origin': 'cloud:trusty-juno',
43+ 'source': 'cloud:trusty-juno'
44+ },
45+ 'trusty-juno-proposed': {
46+ 'openstack-origin': 'cloud:trusty-juno/proposed',
47+ 'source': 'cloud:trusty-proposed/juno'
48+ },
49+ 'trusty-juno-staging': {
50+ 'openstack-origin': 'ppa:ubuntu-cloud-archive/juno-staging',
51+ 'source': 'ppa:ubuntu-cloud-archive/juno-staging'
52+ },
53+ 'utopic-juno-proposed': {
54+ 'openstack-origin': 'distro-proposed',
55+ 'source': 'proposed'
56+ },
57+ 'trusty-kilo': {
58+ 'openstack-origin': 'cloud:trusty-kilo',
59+ 'source': 'cloud:trusty-kilo'
60+ },
61+ 'trusty-kilo-proposed': {
62+ 'openstack-origin': 'cloud:trusty-kilo/proposed',
63+ 'source': 'cloud:trusty-proposed/kilo'
64+ },
65+ 'trusty-kilo-staging': {
66+ 'openstack-origin': 'ppa:ubuntu-cloud-archive/kilo-staging',
67+ 'source': 'ppa:ubuntu-cloud-archive/kilo-staging'
68+ },
69+ 'vivid-kilo-proposed': {
70+ 'openstack-origin': 'distro-proposed',
71+ 'source': 'proposed'
72+ },
73+}
74+
75+def main(argv):
76+ logging.basicConfig(level=logging.INFO)
77+ parser = argparse.ArgumentParser()
78+ parser.add_argument("upgrade_to", nargs="?")
79+ options = parser.parse_args()
80+ release = mojo_utils.parse_mojo_arg(options, 'upgrade_to')
81+ juju_status = mojo_utils.get_juju_status()
82+ for svc in juju_status['services']:
83+ units = mojo_utils.get_juju_units(juju_status=juju_status, service=svc)
84+ machine_number = mojo_utils.convert_unit_to_machineno(units[0])
85+ series = mojo_utils.get_machine_series(machine_number)
86+ key = series + '-' + release
87+ svc_options = mojo_utils.juju_get_config_keys(svc)
88+ if 'openstack-origin' in svc_options:
89+ mojo_utils.juju_set(svc, '%s=%s' % ('openstack-origin', OS_ORIGINS[key]['openstack-origin']), wait=False)
90+ elif 'source' in svc_options:
91+ mojo_utils.juju_set(svc, '%s=%s' % ('source', OS_ORIGINS[key]['source']), wait=False)
92+
93+if __name__ == "__main__":
94+ sys.exit(main(sys.argv))
95
96=== modified file 'helper/utils/mojo_os_utils.py'
97--- helper/utils/mojo_os_utils.py 2015-02-10 07:55:00 +0000
98+++ helper/utils/mojo_os_utils.py 2015-05-08 09:54:56 +0000
99@@ -518,6 +518,7 @@
100
101 def ssh_test(username, ip, vm_name, password=None, privkey=None):
102 logging.info('Attempting to ssh to %s(%s)' % (vm_name, ip))
103+ logging.getLogger("paramiko").setLevel(logging.WARNING)
104 ssh = paramiko.SSHClient()
105 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
106 if privkey:
107
108=== modified file 'helper/utils/mojo_utils.py'
109--- helper/utils/mojo_utils.py 2015-02-10 07:55:00 +0000
110+++ helper/utils/mojo_utils.py 2015-05-08 09:54:56 +0000
111@@ -6,7 +6,7 @@
112 import mojo
113 import logging
114 import time
115-from collections import Counter
116+from collections import Counter, defaultdict
117 import shutil
118
119 JUJU_STATUSES = {
120@@ -33,19 +33,16 @@
121
122
123 def get_juju_units(juju_status=None, service=None):
124- if not juju_status:
125- juju_status = get_juju_status()
126+ machine_map = get_unit_to_machineno_mapping(juju_status)
127 units = []
128- if service:
129- services = [service]
130+ if not service:
131+ units = machine_map.keys()
132 else:
133- services = [svc for svc in juju_status['services']]
134- for svc in services:
135- if 'units' in juju_status['services'][svc]:
136- for unit in juju_status['services'][svc]['units']:
137+ for unit in machine_map.keys():
138+ if unit.split('/')[0] == service:
139 units.append(unit)
140 return units
141-
142+
143
144 def get_principle_services(juju_status=None):
145 if not juju_status:
146@@ -57,21 +54,50 @@
147 return p_services
148
149
150-def convert_unit_to_machineno(unit):
151+def get_machine_series(machineno, juju_status=None):
152+ if not juju_status:
153+ juju_status = get_juju_status()
154+ return juju_status['machines'][machineno]['series']
155+
156+
157+def get_machineno_to_unit_mapping(juju_status=None):
158+ if not juju_status:
159+ juju_status = get_juju_status()
160+ machine_map = defaultdict(list)
161+ for svc in juju_status['services']:
162+ if 'units' in juju_status['services'][svc]:
163+ principle_units = juju_status['services'][svc]['units']
164+ for unit in principle_units:
165+ machine_no = principle_units[unit]['machine']
166+ machine_map[machine_no].append(unit)
167+ if 'subordinates' in principle_units[unit]:
168+ subordinet_units = principle_units[unit]['subordinates']
169+ machine_map[machine_no].extend(subordinet_units.keys())
170+ return dict(machine_map)
171+
172+
173+def get_unit_to_machineno_mapping(juju_status=None):
174+ rmap = get_machineno_to_unit_mapping(juju_status)
175+ unit_map = {}
176+ for machine_no in rmap:
177+ for unit in rmap[machine_no]:
178+ unit_map[unit] = machine_no
179+ return unit_map
180+
181+
182+def convert_unit_to_machineno(unit, juju_status=None):
183+ unitmap = get_unit_to_machineno_mapping(juju_status)
184+ return unitmap[unit]
185+
186+
187+def convert_unit_to_instanceid(unit):
188 juju_status = get_juju_status(unit)
189 return juju_status['machines'].itervalues().next()['instance-id']
190
191
192 def convert_machineno_to_unit(machineno, juju_status=None):
193- if not juju_status:
194- juju_status = get_juju_status()
195- services = [service for service in juju_status['services']]
196- for svc in services:
197- if 'units' in juju_status['services'][svc]:
198- for unit in juju_status['services'][svc]['units']:
199- unit_info = juju_status['services'][svc]['units'][unit]
200- if unit_info['machine'] == machineno:
201- return unit
202+ machinemap = get_machineno_to_unit_mapping(juju_status)
203+ return machinemap[machineno]
204
205
206 def remote_shell_check(unit, timeout=None):
207@@ -131,7 +157,7 @@
208
209 def delete_unit_openstack(unit):
210 from novaclient.v1_1 import client as novaclient
211- server_id = convert_unit_to_machineno(unit)
212+ server_id = convert_unit_to_instanceid(unit)
213 cloud_creds = get_undercload_auth()
214 auth = {
215 'username': cloud_creds['OS_USERNAME'],
216@@ -166,8 +192,9 @@
217
218 def delete_machine(machine):
219 mach_no = machine.split('-')[-1]
220- unit = convert_machineno_to_unit(mach_no)
221- delete_unit(unit)
222+ units = convert_machineno_to_unit(mach_no)
223+ for unit in units:
224+ delete_unit(unit)
225
226
227 def is_crm_clustered(service):
228
229=== added directory 'specs/bugs/1427660'
230=== added directory 'specs/bugs/1427660/icehouse'
231=== added file 'specs/bugs/1427660/icehouse/SPEC_INFO.txt'
232--- specs/bugs/1427660/icehouse/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
233+++ specs/bugs/1427660/icehouse/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
234@@ -0,0 +1,2 @@
235+This spec performs a non-ha deploy using the next charms and then runs tests
236+to validate the deployment
237
238=== added symlink 'specs/bugs/1427660/icehouse/check_juju.py'
239=== target is u'../../../../helper/tests/check_juju.py'
240=== added file 'specs/bugs/1427660/icehouse/collect-next'
241--- specs/bugs/1427660/icehouse/collect-next 1970-01-01 00:00:00 +0000
242+++ specs/bugs/1427660/icehouse/collect-next 2015-05-08 09:54:56 +0000
243@@ -0,0 +1,19 @@
244+nova-cloud-controller lp:~openstack-charmers/charms/trusty/nova-cloud-controller/next
245+neutron-api lp:~openstack-charmers/charms/trusty/neutron-api/next
246+keystone lp:~openstack-charmers/charms/trusty/keystone/next
247+glance lp:~openstack-charmers/charms/trusty/glance/next
248+swift-proxy lp:~openstack-charmers/charms/trusty/swift-proxy/next
249+mysql lp:charms/mysql
250+rabbitmq-server lp:~openstack-charmers/charms/trusty/rabbitmq-server/next
251+ceph lp:~openstack-charmers/charms/trusty/ceph/next
252+openstack-dashboard lp:~openstack-charmers/charms/trusty/openstack-dashboard/next
253+nova-compute lp:~gnuoy/charms/trusty/nova-compute/1427660
254+quantum-gateway lp:~openstack-charmers/charms/trusty/quantum-gateway/next
255+cinder lp:~openstack-charmers/charms/trusty/cinder/next
256+swift-storage lp:~openstack-charmers/charms/trusty/swift-storage/next
257+ceilometer lp:~openstack-charmers/charms/trusty/ceilometer/next
258+ceilometer-agent lp:~openstack-charmers/charms/trusty/ceilometer-agent/next
259+mongodb lp:charms/mongodb
260+cinder-ceph lp:~openstack-charmers/charms/trusty/cinder-ceph/next
261+heat lp:~openstack-charmers/charms/trusty/heat/next
262+neutron-openvswitch lp:~openstack-charmers/charms/trusty/neutron-openvswitch/next
263
264=== added symlink 'specs/bugs/1427660/icehouse/full.yaml'
265=== target is u'../../../../helper/bundles/full.yaml'
266=== added symlink 'specs/bugs/1427660/icehouse/image_setup.py'
267=== target is u'../../../../helper/setup/image_setup.py'
268=== added symlink 'specs/bugs/1427660/icehouse/images.yaml'
269=== target is u'../../../../helper/setup/images.yaml'
270=== added symlink 'specs/bugs/1427660/icehouse/keystone_setup.py'
271=== target is u'../../../../helper/setup/keystone_setup.py'
272=== added symlink 'specs/bugs/1427660/icehouse/keystone_users.yaml'
273=== target is u'../../../../helper/setup/keystone_users.yaml'
274=== added file 'specs/bugs/1427660/icehouse/manifest'
275--- specs/bugs/1427660/icehouse/manifest 1970-01-01 00:00:00 +0000
276+++ specs/bugs/1427660/icehouse/manifest 2015-05-08 09:54:56 +0000
277@@ -0,0 +1,23 @@
278+# Collect the charm branches from Launchpad
279+collect config=collect-next
280+
281+# Copy the branches to the deployment directory
282+repo config=repo-next
283+
284+# Use juju deployer with full.yaml bundle
285+deploy config=full.yaml delay=0 target=${MOJO_SERIES}-icehouse
286+
287+# Check juju statuses are green and that hooks have finished
288+verify config=check_juju.py
289+
290+# Create sdn on overcloud
291+script config=network_setup.py
292+
293+# Setup glance images
294+script config=image_setup.py
295+
296+# Setup keystone users
297+script config=keystone_setup.py
298+
299+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
300+verify config=simple_os_checks.py MACHINES='cirros:m1.tiny:1 precise:m1.small:1' CLOUDINIT_WAIT="300"
301
302=== added symlink 'specs/bugs/1427660/icehouse/network.yaml'
303=== target is u'../../../../helper/setup/network.yaml'
304=== added symlink 'specs/bugs/1427660/icehouse/network_setup.py'
305=== target is u'../../../../helper/setup/network_setup.py'
306=== added symlink 'specs/bugs/1427660/icehouse/repo-next'
307=== target is u'../../../../helper/collect/repo-next'
308=== added symlink 'specs/bugs/1427660/icehouse/simple_os_checks.py'
309=== target is u'../../../../helper/tests/simple_os_checks.py'
310=== added symlink 'specs/bugs/1427660/icehouse/utils'
311=== target is u'../../../../helper/utils'
312=== modified file 'specs/dev/dvr/collect-next'
313--- specs/dev/dvr/collect-next 2015-02-04 16:33:38 +0000
314+++ specs/dev/dvr/collect-next 2015-05-08 09:54:56 +0000
315@@ -1,5 +1,5 @@
316 nova-cloud-controller lp:~openstack-charmers/charms/trusty/nova-cloud-controller/next
317-neutron-api lp:~gnuoy/charms/trusty/neutron-api/dvr-support
318+neutron-api lp:~gnuoy/charms/trusty/neutron-api/fix-neutron-query
319 keystone lp:~openstack-charmers/charms/trusty/keystone/next
320 glance lp:~openstack-charmers/charms/trusty/glance/next
321 swift-proxy lp:~openstack-charmers/charms/trusty/swift-proxy/next
322@@ -7,8 +7,8 @@
323 rabbitmq-server lp:~openstack-charmers/charms/trusty/rabbitmq-server/next
324 ceph lp:~openstack-charmers/charms/trusty/ceph/next
325 openstack-dashboard lp:~openstack-charmers/charms/trusty/openstack-dashboard/next
326-nova-compute lp:~gnuoy/charms/trusty/nova-compute/dvr-support/
327-quantum-gateway lp:~gnuoy/charms/trusty/quantum-gateway/dvr-support
328+nova-compute lp:~openstack-charmers/charms/trusty/nova-compute/next
329+quantum-gateway lp:~openstack-charmers/charms/trusty/quantum-gateway/next
330 cinder lp:~openstack-charmers/charms/trusty/cinder/next
331 swift-storage lp:~openstack-charmers/charms/trusty/swift-storage/next
332 ceilometer lp:~openstack-charmers/charms/trusty/ceilometer/next
333@@ -16,4 +16,4 @@
334 mongodb lp:charms/mongodb
335 cinder-ceph lp:~openstack-charmers/charms/trusty/cinder-ceph/next
336 heat lp:~openstack-charmers/charms/trusty/heat/next
337-neutron-openvswitch lp:~gnuoy/charms/trusty/neutron-openvswitch/dvr-support
338+neutron-openvswitch lp:~openstack-charmers/charms/trusty/neutron-openvswitch/next
339
340=== modified file 'specs/dev/full_nrpe/collect-next'
341--- specs/dev/full_nrpe/collect-next 2015-01-26 08:31:29 +0000
342+++ specs/dev/full_nrpe/collect-next 2015-05-08 09:54:56 +0000
343@@ -8,13 +8,14 @@
344 ceph lp:~openstack-charmers/charms/trusty/ceph/next
345 openstack-dashboard lp:~openstack-charmers/charms/trusty/openstack-dashboard/next
346 nova-compute lp:~openstack-charmers/charms/trusty/nova-compute/next
347-quantum-gateway lp:~openstack-charmers/charms/trusty/quantum-gateway/next
348+quantum-gateway lp:~gnuoy/charms/trusty/quantum-gateway/neutron-contexts
349 cinder lp:~openstack-charmers/charms/trusty/cinder/next
350 swift-storage lp:~openstack-charmers/charms/trusty/swift-storage/next
351 ceilometer lp:~openstack-charmers/charms/trusty/ceilometer/next
352-ceilometer-agent lp:~gnuoy/charms/trusty/ceilometer-agent/add-nrpe-checks
353+ceilometer-agent lp:~openstack-charmers/charms/trusty/ceilometer-agent/next
354 mongodb lp:charms/mongodb
355 cinder-ceph lp:~openstack-charmers/charms/trusty/cinder-ceph/next
356 heat lp:~openstack-charmers/charms/trusty/heat/next
357-neutron-openvswitch lp:~openstack-charmers/charms/trusty/neutron-openvswitch/next
358-nrpe-external-master lp:charms/nrpe-external-master
359+neutron-openvswitch lp:~gnuoy/charms/trusty/neutron-openvswitch/neutron-contexts
360+nrpe lp:~gnuoy/charms/trusty/nrpe/services-rewrite
361+nagios lp:charms/trusty/nagios
362
363=== modified file 'specs/dev/full_nrpe/next.yaml'
364--- specs/dev/full_nrpe/next.yaml 2015-01-12 13:53:35 +0000
365+++ specs/dev/full_nrpe/next.yaml 2015-05-08 09:54:56 +0000
366@@ -92,40 +92,42 @@
367 mongodb:
368 branch: lp:charms/mongodb
369 constraints: mem=1G
370+ nagios:
371+ charm: nagios
372 nrpe-nova-cloud-controller:
373- charm: nrpe-external-master
374+ charm: nrpe
375 nrpe-neutron-api:
376- charm: nrpe-external-master
377+ charm: nrpe
378 nrpe-keystone:
379- charm: nrpe-external-master
380+ charm: nrpe
381 nrpe-glance:
382- charm: nrpe-external-master
383+ charm: nrpe
384 nrpe-swift-proxy:
385- charm: nrpe-external-master
386+ charm: nrpe
387 nrpe-mysql:
388- charm: nrpe-external-master
389+ charm: nrpe
390 nrpe-rabbitmq-server:
391- charm: nrpe-external-master
392+ charm: nrpe
393 nrpe-ceph:
394- charm: nrpe-external-master
395+ charm: nrpe
396 nrpe-openstack-dashboard:
397- charm: nrpe-external-master
398+ charm: nrpe
399 nrpe-nova-compute:
400- charm: nrpe-external-master
401+ charm: nrpe
402 options:
403 procs: "-w200 -C300"
404 nrpe-quantum-gateway:
405- charm: nrpe-external-master
406+ charm: nrpe
407 options:
408 procs: "-w200 -C300"
409 nrpe-cinder:
410- charm: nrpe-external-master
411+ charm: nrpe
412 nrpe-swift-storage:
413- charm: nrpe-external-master
414+ charm: nrpe
415 nrpe-ceilometer:
416- charm: nrpe-external-master
417+ charm: nrpe
418 nrpe-heat:
419- charm: nrpe-external-master
420+ charm: nrpe
421 relations:
422 - [ keystone, mysql ]
423 - [ nova-cloud-controller, mysql ]
424@@ -160,19 +162,31 @@
425 - [ ceilometer-agent, nova-compute ]
426 - [ ceilometer-agent, ceilometer ]
427 - [ nrpe-nova-cloud-controller, nova-cloud-controller ]
428+ - [ "nrpe-nova-cloud-controller:monitors", "nagios:monitors" ]
429 - [ nrpe-neutron-api, neutron-api ]
430+ - [ "nrpe-neutron-api:monitors", "nagios:monitors" ]
431 - [ nrpe-keystone, keystone ]
432+ - [ "nrpe-keystone:monitors", "nagios:monitors" ]
433 - [ nrpe-glance, glance ]
434+ - [ "nrpe-glance:monitors", "nagios:monitors" ]
435 - [ nrpe-swift-proxy, swift-proxy ]
436+ - [ "nrpe-swift-proxy:monitors", "nagios:monitors" ]
437 - [ nrpe-ceph, ceph ]
438+ - [ "nrpe-ceph:monitors", "nagios:monitors" ]
439 - [ nrpe-openstack-dashboard, openstack-dashboard ]
440+ - [ "nrpe-openstack-dashboard:monitors", "nagios:monitors" ]
441 - [ nrpe-nova-compute, nova-compute ]
442+ - [ "nrpe-nova-compute:monitors", "nagios:monitors" ]
443 - [ nrpe-quantum-gateway, neutron-gateway ]
444+ - [ "nrpe-quantum-gateway:monitors", "nagios:monitors" ]
445 - [ nrpe-cinder, cinder ]
446+ - [ "nrpe-cinder:monitors", "nagios:monitors" ]
447 - [ nrpe-swift-storage, swift-storage-z1 ]
448 - [ nrpe-swift-storage, swift-storage-z2 ]
449 - [ nrpe-swift-storage, swift-storage-z3 ]
450+ - [ "nrpe-swift-storage:monitors", "nagios:monitors" ]
451 - [ nrpe-ceilometer, ceilometer ]
452+ - [ "nrpe-ceilometer:monitors", "nagios:monitors" ]
453 openstack-singlerabbit:
454 inherits: openstack-services
455 relations:
456
457=== modified file 'specs/dev/full_nrpe/repo-next'
458--- specs/dev/full_nrpe/repo-next 2015-01-12 12:20:56 +0000
459+++ specs/dev/full_nrpe/repo-next 2015-05-08 09:54:56 +0000
460@@ -17,4 +17,5 @@
461 cinder-ceph
462 heat
463 neutron-openvswitch
464-nrpe-external-master
465+nrpe
466+nagios
467
468=== added directory 'specs/dev/full_nrpe_ha'
469=== added directory 'specs/dev/full_nrpe_ha/icehouse'
470=== added file 'specs/dev/full_nrpe_ha/icehouse/SPEC_INFO.txt'
471--- specs/dev/full_nrpe_ha/icehouse/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
472+++ specs/dev/full_nrpe_ha/icehouse/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
473@@ -0,0 +1,2 @@
474+This spec performs a phased ha deploy then runs tests to validate the
475+deployment
476
477=== added symlink 'specs/dev/full_nrpe_ha/icehouse/check_juju.py'
478=== target is u'../../../../helper/tests/check_juju.py'
479=== added file 'specs/dev/full_nrpe_ha/icehouse/collect-next-ha'
480--- specs/dev/full_nrpe_ha/icehouse/collect-next-ha 1970-01-01 00:00:00 +0000
481+++ specs/dev/full_nrpe_ha/icehouse/collect-next-ha 2015-05-08 09:54:56 +0000
482@@ -0,0 +1,21 @@
483+nrpe-external-master lp:charms/nrpe-external-master
484+percona-cluster lp:~brad-marshall/charms/trusty/percona-cluster/fix-nagios
485+hacluster lp:~gnuoy/charms/trusty/hacluster/charmhelper_sync
486+rabbitmq-server lp:~openstack-charmers/charms/trusty/rabbitmq-server/next
487+ceph lp:~openstack-charmers/charms/trusty/ceph/next
488+ceph-osd lp:~brad-marshall/charms/trusty/ceph-osd/nagios-fix-servicegroups
489+keystone lp:~openstack-charmers/charms/trusty/keystone/next
490+openstack-dashboard lp:~openstack-charmers/charms/trusty/openstack-dashboard/next
491+nova-compute lp:~openstack-charmers/charms/trusty/nova-compute/next
492+nova-cloud-controller lp:~openstack-charmers/charms/trusty/nova-cloud-controller/next
493+quantum-gateway lp:~openstack-charmers/charms/trusty/quantum-gateway/next
494+cinder lp:~openstack-charmers/charms/trusty/cinder/next
495+glance lp:~brad-marshall/charms/trusty/glance/add-haproxy-nrpe-fix-servicegroups
496+swift-proxy lp:~openstack-charmers/charms/trusty/swift-proxy/next
497+swift-storage lp:~openstack-charmers/charms/trusty/swift-storage/next
498+ceilometer lp:~openstack-charmers/charms/trusty/ceilometer/next
499+ceilometer-agent lp:~openstack-charmers/charms/trusty/ceilometer-agent/next
500+mongodb lp:charms/mongodb
501+neutron-api lp:~openstack-charmers/charms/trusty/neutron-api/next
502+neutron-openvswitch lp:~openstack-charmers/charms/trusty/neutron-openvswitch/next
503+cinder-ceph lp:~openstack-charmers/charms/trusty/cinder-ceph/next
504
505=== added file 'specs/dev/full_nrpe_ha/icehouse/haphase1.yaml'
506--- specs/dev/full_nrpe_ha/icehouse/haphase1.yaml 1970-01-01 00:00:00 +0000
507+++ specs/dev/full_nrpe_ha/icehouse/haphase1.yaml 2015-05-08 09:54:56 +0000
508@@ -0,0 +1,201 @@
509+# vim: set ts=2 et:
510+openstack-services:
511+ series: trusty
512+ services:
513+ mysql:
514+ charm: percona-cluster
515+ constraints: mem=1G
516+ num_units: 2
517+ options:
518+ vip: 10.5.100.10
519+ vip_cidr: 16
520+ root-password: crapper
521+ sst-password: crapper
522+ mysql-hacluster:
523+ charm: hacluster
524+ rabbitmq-server:
525+ charm: rabbitmq-server
526+ constraints: mem=1G
527+ num_units: 2
528+ ceph:
529+ charm: ceph
530+ num_units: 3
531+ constraints: mem=1G
532+ options:
533+ monitor-count: 3
534+ fsid: 6547bd3e-1397-11e2-82e5-53567c8d32dc
535+ monitor-secret: AQCXrnZQwI7KGBAAiPofmKEXKxu5bUzoYLVkbQ==
536+ osd-devices: /dev/vdb
537+ osd-reformat: "yes"
538+ ephemeral-unmount: /mnt
539+ ceph-osd:
540+ charm: ceph-osd
541+ num_units: 3
542+ constraints: mem=1G
543+ options:
544+ osd-devices: /dev/vdb
545+ osd-reformat: "yes"
546+ ephemeral-unmount: /mnt
547+ keystone:
548+ charm: keystone
549+ constraints: mem=1G
550+ num_units: 2
551+ options:
552+ admin-password: openstack
553+ admin-token: ubuntutesting
554+ vip: 10.5.100.1
555+ keystone-hacluster:
556+ charm: hacluster
557+ openstack-dashboard:
558+ charm: openstack-dashboard
559+ constraints: mem=1G
560+ num_units: 2
561+ options:
562+ vip: 10.5.100.2
563+ dashboard-hacluster:
564+ charm: hacluster
565+ nova-compute:
566+ charm: nova-compute
567+ num_units: 3
568+ constraints: mem=4G
569+ options:
570+ config-flags: "auto_assign_floating_ip=False"
571+ enable-live-migration: False
572+ enable-resize: False
573+ nova-cloud-controller:
574+ charm: nova-cloud-controller
575+ constraints: mem=1G
576+ num_units: 2
577+ options:
578+ network-manager: Quantum
579+ quantum-security-groups: "yes"
580+ vip: 10.5.100.3
581+ ncc-hacluster:
582+ charm: hacluster
583+ neutron-gateway:
584+ charm: quantum-gateway
585+ constraints: mem=1G
586+ num_units: 2
587+ options:
588+ instance-mtu: 1350
589+ cinder:
590+ charm: cinder
591+ num_units: 2
592+ options:
593+ block-device: "None"
594+ glance-api-version: 2
595+ vip: 10.5.100.4
596+ constraints": mem=1G
597+ cinder-hacluster:
598+ charm: hacluster
599+ cinder-ceph:
600+ charm: cinder-ceph
601+ glance:
602+ charm: glance
603+ constraints: mem=1G
604+ num_units: 2
605+ options:
606+ vip: 10.5.100.5
607+ glance-hacluster:
608+ charm: hacluster
609+ swift-proxy:
610+ charm: swift-proxy
611+ constraints: mem=1G
612+ num_units: 2
613+ options:
614+ zone-assignment: manual
615+ replicas: 3
616+ swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
617+ vip: 10.5.100.6
618+ swift-proxy-hacluster:
619+ charm: hacluster
620+ swift-storage-z1:
621+ charm: swift-storage
622+ constraints: mem=1G
623+ options:
624+ zone: 1
625+ block-device: vdb
626+ overwrite: "true"
627+ swift-storage-z2:
628+ charm: swift-storage
629+ constraints: mem=1G
630+ options:
631+ zone: 2
632+ block-device: vdb
633+ overwrite: "true"
634+ swift-storage-z3:
635+ charm: swift-storage
636+ constraints: mem=1G
637+ options:
638+ zone: 3
639+ block-device: vdb
640+ overwrite: "true"
641+ nrpe-glance:
642+ charm: nrpe-external-master
643+ nrpe-percona:
644+ charm: nrpe-external-master
645+ nrpe-cephosd:
646+ charm: nrpe-external-master
647+openstack-singlerabbit:
648+ inherits: openstack-services
649+openstack-icehouse:
650+ inherits: openstack-singlerabbit
651+ services:
652+ neutron-api:
653+ num_units: 2
654+ charm: neutron-api
655+ constraints: mem=1G
656+ options:
657+ neutron-security-groups: True
658+ vip: 10.5.108.1
659+ neutron-api-hacluster:
660+ charm: hacluster
661+ options:
662+ corosync_mcastaddr: 226.94.1.8
663+ corosync_key: "JFgMRJhNfKnmBRGm+rbAwpZmd/1FX08SCzOzDg/teaVtfGf60QYBCrpRYQzjzM2f+iNpGFuYEW8fXd+Dvquns6E1v7JbSt7oPRi2DYfdXXHc3EYkhimPG7h/VvnhaabLQ5z8CuQzaVJL1Fp25n4Rs5V4d71sgE5IR0skkWC6YO8="
664+ neutron-openvswitch:
665+ charm: neutron-openvswitch
666+precise-icehouse:
667+ inherits: openstack-singlerabbit
668+ series: precise
669+ overrides:
670+ openstack-origin: cloud:precise-icehouse
671+ source: cloud:precise-icehouse
672+trusty-icehouse:
673+ inherits: openstack-icehouse
674+ series: trusty
675+trusty-juno:
676+ inherits: openstack-icehouse
677+ series: trusty
678+ overrides:
679+ openstack-origin: cloud:trusty-juno
680+ source: cloud:trusty-juno
681+utopic-juno:
682+ inherits: openstack-icehouse
683+ series: utopic
684+# kilo
685+trusty-kilo:
686+ inherits: openstack-icehouse
687+ series: trusty
688+ overrides:
689+ openstack-origin: cloud:trusty-kilo
690+ source: cloud:trusty-kilo
691+trusty-kilo-proposed:
692+ inherits: trusty-kilo
693+ overrides:
694+ openstack-origin: cloud:trusty-kilo/proposed
695+ source: cloud:trusty-proposed/kilo
696+trusty-kilo-staging:
697+ inherits: trusty-kilo
698+ overrides:
699+ openstack-origin: ppa:ubuntu-cloud-archive/kilo-staging
700+ source: ppa:ubuntu-cloud-archive/kilo-staging
701+vivid-kilo:
702+ inherits: openstack-icehouse
703+ series: vivid
704+vivid-kilo-proposed:
705+ inherits: vivid-kilo
706+ overrides:
707+ source: proposed
708+ openstack-origin: distro-proposed
709+
710
711=== added file 'specs/dev/full_nrpe_ha/icehouse/haphase2.yaml'
712--- specs/dev/full_nrpe_ha/icehouse/haphase2.yaml 1970-01-01 00:00:00 +0000
713+++ specs/dev/full_nrpe_ha/icehouse/haphase2.yaml 2015-05-08 09:54:56 +0000
714@@ -0,0 +1,253 @@
715+# vim: set ts=2 et:
716+openstack-services:
717+ series: trusty
718+ services:
719+ mysql:
720+ charm: percona-cluster
721+ constraints: mem=1G
722+ num_units: 2
723+ options:
724+ vip: 10.5.100.10
725+ vip_cidr: 16
726+ root-password: crapper
727+ sst-password: crapper
728+ mysql-hacluster:
729+ charm: hacluster
730+ rabbitmq-server:
731+ charm: rabbitmq-server
732+ constraints: mem=1G
733+ num_units: 2
734+ ceph:
735+ charm: ceph
736+ num_units: 3
737+ constraints: mem=1G
738+ options:
739+ monitor-count: 3
740+ fsid: 6547bd3e-1397-11e2-82e5-53567c8d32dc
741+ monitor-secret: AQCXrnZQwI7KGBAAiPofmKEXKxu5bUzoYLVkbQ==
742+ osd-devices: /dev/vdb
743+ osd-reformat: "yes"
744+ ephemeral-unmount: /mnt
745+ ceph-osd:
746+ charm: ceph-osd
747+ num_units: 3
748+ constraints: mem=1G
749+ options:
750+ osd-devices: /dev/vdb
751+ osd-reformat: "yes"
752+ ephemeral-unmount: /mnt
753+ keystone:
754+ charm: keystone
755+ constraints: mem=1G
756+ num_units: 2
757+ options:
758+ admin-password: openstack
759+ admin-token: ubuntutesting
760+ vip: 10.5.100.1
761+ keystone-hacluster:
762+ charm: hacluster
763+ openstack-dashboard:
764+ charm: openstack-dashboard
765+ constraints: mem=1G
766+ num_units: 2
767+ options:
768+ vip: 10.5.100.2
769+ dashboard-hacluster:
770+ charm: hacluster
771+ nova-compute:
772+ charm: nova-compute
773+ num_units: 3
774+ constraints: mem=4G
775+ options:
776+ config-flags: "auto_assign_floating_ip=False"
777+ enable-live-migration: False
778+ enable-resize: False
779+ nova-cloud-controller:
780+ charm: nova-cloud-controller
781+ constraints: mem=1G
782+ num_units: 2
783+ options:
784+ network-manager: Quantum
785+ quantum-security-groups: "yes"
786+ vip: 10.5.100.3
787+ ncc-hacluster:
788+ charm: hacluster
789+ neutron-gateway:
790+ charm: quantum-gateway
791+ constraints: mem=1G
792+ num_units: 2
793+ options:
794+ instance-mtu: 1350
795+ cinder:
796+ charm: cinder
797+ num_units: 2
798+ options:
799+ block-device: "None"
800+ glance-api-version: 2
801+ vip: 10.5.100.4
802+ constraints": mem=1G
803+ cinder-hacluster:
804+ charm: hacluster
805+ cinder-ceph:
806+ charm: cinder-ceph
807+ glance:
808+ charm: glance
809+ constraints: mem=1G
810+ num_units: 2
811+ options:
812+ vip: 10.5.100.5
813+ glance-hacluster:
814+ charm: hacluster
815+ swift-proxy:
816+ charm: swift-proxy
817+ constraints: mem=1G
818+ num_units: 2
819+ options:
820+ zone-assignment: manual
821+ replicas: 3
822+ swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
823+ vip: 10.5.100.6
824+ swift-proxy-hacluster:
825+ charm: hacluster
826+ swift-storage-z1:
827+ charm: swift-storage
828+ constraints: mem=1G
829+ options:
830+ zone: 1
831+ block-device: vdb
832+ overwrite: "true"
833+ swift-storage-z2:
834+ charm: swift-storage
835+ constraints: mem=1G
836+ options:
837+ zone: 2
838+ block-device: vdb
839+ overwrite: "true"
840+ swift-storage-z3:
841+ charm: swift-storage
842+ constraints: mem=1G
843+ options:
844+ zone: 3
845+ block-device: vdb
846+ overwrite: "true"
847+ nrpe-glance:
848+ charm: nrpe-external-master
849+ nrpe-percona:
850+ charm: nrpe-external-master
851+ nrpe-cephosd:
852+ charm: nrpe-external-master
853+ relations:
854+ - [ mysql, mysql-hacluster ]
855+ - [ keystone, mysql ]
856+ - [ keystone, keystone-hacluster ]
857+ - [ nova-cloud-controller, ncc-hacluster ]
858+ - [ nova-cloud-controller, mysql ]
859+ - [ nova-cloud-controller, rabbitmq-server ]
860+ - [ nova-cloud-controller, glance ]
861+ - [ nova-cloud-controller, keystone ]
862+ - [ nova-compute, nova-cloud-controller ]
863+ - [ nova-compute, mysql ]
864+ - - nova-compute
865+ - rabbitmq-server:amqp
866+ - [ nova-compute, glance ]
867+ - [ nova-compute, ceph ]
868+ - [ glance, glance-hacluster ]
869+ - [ glance, mysql ]
870+ - [ glance, keystone ]
871+ - [ glance, ceph ]
872+ - [ glance, cinder ]
873+ - [ glance, rabbitmq-server ]
874+ - [ cinder, cinder-hacluster ]
875+ - [ cinder, mysql ]
876+ - [ cinder, rabbitmq-server ]
877+ - [ cinder, nova-cloud-controller ]
878+ - [ cinder, keystone ]
879+ - [ cinder, cinder-ceph ]
880+ - [ cinder-ceph, ceph ]
881+ - [ ceph, ceph-osd ]
882+ - [ neutron-gateway, mysql ]
883+ - [ neutron-gateway, nova-cloud-controller ]
884+ - [ openstack-dashboard, keystone ]
885+ - [ openstack-dashboard, dashboard-hacluster ]
886+ - [ swift-proxy, keystone ]
887+ - [ swift-proxy, swift-proxy-hacluster ]
888+ - [ swift-proxy, swift-storage-z1 ]
889+ - [ swift-proxy, swift-storage-z2 ]
890+ - [ swift-proxy, swift-storage-z3 ]
891+ - [ nrpe-cephosd, ceph-osd ]
892+ - [ nrpe-percona, mysql ]
893+ - [ nrpe-glance, glance ]
894+openstack-singlerabbit:
895+ inherits: openstack-services
896+ relations:
897+ - [ "neutron-gateway:amqp", rabbitmq-server ]
898+openstack-icehouse:
899+ inherits: openstack-singlerabbit
900+ services:
901+ neutron-api:
902+ num_units: 2
903+ charm: neutron-api
904+ constraints: mem=1G
905+ options:
906+ neutron-security-groups: True
907+ vip: 10.5.108.1
908+ neutron-api-hacluster:
909+ charm: hacluster
910+ options:
911+ corosync_mcastaddr: 226.94.1.8
912+ corosync_key: "JFgMRJhNfKnmBRGm+rbAwpZmd/1FX08SCzOzDg/teaVtfGf60QYBCrpRYQzjzM2f+iNpGFuYEW8fXd+Dvquns6E1v7JbSt7oPRi2DYfdXXHc3EYkhimPG7h/VvnhaabLQ5z8CuQzaVJL1Fp25n4Rs5V4d71sgE5IR0skkWC6YO8="
913+ neutron-openvswitch:
914+ charm: neutron-openvswitch
915+ relations:
916+ - [ neutron-api, mysql ]
917+ - [ neutron-api, rabbitmq-server ]
918+ - [ neutron-api, nova-cloud-controller ]
919+ - [ neutron-api, neutron-openvswitch ]
920+ - [ neutron-api, keystone ]
921+ - [ neutron-openvswitch, nova-compute ]
922+ - [ neutron-openvswitch, rabbitmq-server ]
923+ #hacluster relation
924+ - [ neutron-api, neutron-api-hacluster ]
925+precise-icehouse:
926+ inherits: openstack-singlerabbit
927+ series: precise
928+ overrides:
929+ openstack-origin: cloud:precise-icehouse
930+ source: cloud:precise-icehouse
931+trusty-icehouse:
932+ inherits: openstack-icehouse
933+ series: trusty
934+trusty-juno:
935+ inherits: openstack-icehouse
936+ series: trusty
937+ overrides:
938+ openstack-origin: cloud:trusty-juno
939+ source: cloud:trusty-juno
940+utopic-juno:
941+ inherits: openstack-icehouse
942+ series: utopic
943+# kilo
944+trusty-kilo:
945+ inherits: openstack-icehouse
946+ series: trusty
947+ overrides:
948+ openstack-origin: cloud:trusty-kilo
949+ source: cloud:trusty-kilo
950+trusty-kilo-proposed:
951+ inherits: trusty-kilo
952+ overrides:
953+ openstack-origin: cloud:trusty-kilo/proposed
954+ source: cloud:trusty-proposed/kilo
955+trusty-kilo-staging:
956+ inherits: trusty-kilo
957+ overrides:
958+ openstack-origin: ppa:ubuntu-cloud-archive/kilo-staging
959+ source: ppa:ubuntu-cloud-archive/kilo-staging
960+vivid-kilo:
961+ inherits: openstack-icehouse
962+ series: vivid
963+vivid-kilo-proposed:
964+ inherits: vivid-kilo
965+ overrides:
966+ source: proposed
967+ openstack-origin: distro-proposed
968
969=== added symlink 'specs/dev/full_nrpe_ha/icehouse/image_setup.py'
970=== target is u'../../../../helper/setup/image_setup.py'
971=== added symlink 'specs/dev/full_nrpe_ha/icehouse/images.yaml'
972=== target is u'../../../../helper/setup/images.yaml'
973=== added symlink 'specs/dev/full_nrpe_ha/icehouse/keystone_setup.py'
974=== target is u'../../../../helper/setup/keystone_setup.py'
975=== added symlink 'specs/dev/full_nrpe_ha/icehouse/keystone_users.yaml'
976=== target is u'../../../../helper/setup/keystone_users.yaml'
977=== added file 'specs/dev/full_nrpe_ha/icehouse/manifest'
978--- specs/dev/full_nrpe_ha/icehouse/manifest 1970-01-01 00:00:00 +0000
979+++ specs/dev/full_nrpe_ha/icehouse/manifest 2015-05-08 09:54:56 +0000
980@@ -0,0 +1,35 @@
981+# Collect the charm branches from Launchpad
982+collect config=collect-next-ha
983+
984+# Copy the branches to the deployment directory
985+repo config=repo-next-ha
986+
987+# Use juju deployer to create the units for the deployment
988+deploy config=haphase1.yaml delay=0 target=${MOJO_SERIES}-icehouse
989+
990+# Check juju statuses are green and that hooks have finished
991+verify config=check_juju.py
992+
993+# Examine the available networks and set vips for services
994+script config=set_vips.py
995+
996+# Use juju deployer to add the relations for the deployment
997+deploy config=haphase2.yaml delay=0 target=${MOJO_SERIES}-icehouse
998+
999+# Check juju statuses are green and that hooks have finished
1000+verify config=check_juju.py
1001+
1002+# Create sdn on overcloud
1003+script config=network_setup.py
1004+
1005+# Setup glance images
1006+script config=image_setup.py
1007+
1008+# Setup keystone users
1009+script config=keystone_setup.py
1010+
1011+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
1012+verify config=simple_os_checks.py MACHINES='cirros:m1.tiny:1 precise:m1.small:3' CLOUDINIT_WAIT="300"
1013+
1014+# Test obj store by sending and recieving files
1015+verify config=test_obj_store.py
1016
1017=== added symlink 'specs/dev/full_nrpe_ha/icehouse/network.yaml'
1018=== target is u'../../../../helper/setup/network.yaml'
1019=== added symlink 'specs/dev/full_nrpe_ha/icehouse/network_setup.py'
1020=== target is u'../../../../helper/setup/network_setup.py'
1021=== added file 'specs/dev/full_nrpe_ha/icehouse/repo-next-ha'
1022--- specs/dev/full_nrpe_ha/icehouse/repo-next-ha 1970-01-01 00:00:00 +0000
1023+++ specs/dev/full_nrpe_ha/icehouse/repo-next-ha 2015-05-08 09:54:56 +0000
1024@@ -0,0 +1,21 @@
1025+nrpe-external-master
1026+percona-cluster
1027+hacluster
1028+rabbitmq-server
1029+ceph
1030+ceph-osd
1031+keystone
1032+openstack-dashboard
1033+nova-compute
1034+nova-cloud-controller
1035+quantum-gateway
1036+cinder
1037+glance
1038+swift-proxy
1039+swift-storage
1040+ceilometer
1041+ceilometer-agent
1042+mongodb
1043+neutron-api
1044+neutron-openvswitch
1045+cinder-ceph
1046
1047=== added symlink 'specs/dev/full_nrpe_ha/icehouse/set_vips.py'
1048=== target is u'../../../../helper/setup/set_vips.py'
1049=== added symlink 'specs/dev/full_nrpe_ha/icehouse/simple_os_checks.py'
1050=== target is u'../../../../helper/tests/simple_os_checks.py'
1051=== added symlink 'specs/dev/full_nrpe_ha/icehouse/test_obj_store.py'
1052=== target is u'../../../../helper/tests/test_obj_store.py'
1053=== added symlink 'specs/dev/full_nrpe_ha/icehouse/utils'
1054=== target is u'../../../../helper/utils'
1055=== added directory 'specs/dev/full_nrpe_ha/juno'
1056=== added file 'specs/dev/full_nrpe_ha/juno/SPEC_INFO.txt'
1057--- specs/dev/full_nrpe_ha/juno/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
1058+++ specs/dev/full_nrpe_ha/juno/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
1059@@ -0,0 +1,2 @@
1060+This spec performs a phased ha deploy then runs tests to validate the
1061+deployment
1062
1063=== added symlink 'specs/dev/full_nrpe_ha/juno/check_juju.py'
1064=== target is u'../../../../helper/tests/check_juju.py'
1065=== added symlink 'specs/dev/full_nrpe_ha/juno/collect-next-ha'
1066=== target is u'../../../../helper/collect/collect-next-ha'
1067=== added symlink 'specs/dev/full_nrpe_ha/juno/haphase1.yaml'
1068=== target is u'../../../../helper/bundles/haphase1.yaml'
1069=== added symlink 'specs/dev/full_nrpe_ha/juno/haphase2.yaml'
1070=== target is u'../../../../helper/bundles/haphase2.yaml'
1071=== added symlink 'specs/dev/full_nrpe_ha/juno/image_setup.py'
1072=== target is u'../../../../helper/setup/image_setup.py'
1073=== added symlink 'specs/dev/full_nrpe_ha/juno/images.yaml'
1074=== target is u'../../../../helper/setup/images.yaml'
1075=== added symlink 'specs/dev/full_nrpe_ha/juno/keystone_setup.py'
1076=== target is u'../../../../helper/setup/keystone_setup.py'
1077=== added symlink 'specs/dev/full_nrpe_ha/juno/keystone_users.yaml'
1078=== target is u'../../../../helper/setup/keystone_users.yaml'
1079=== added file 'specs/dev/full_nrpe_ha/juno/manifest'
1080--- specs/dev/full_nrpe_ha/juno/manifest 1970-01-01 00:00:00 +0000
1081+++ specs/dev/full_nrpe_ha/juno/manifest 2015-05-08 09:54:56 +0000
1082@@ -0,0 +1,35 @@
1083+# Collect the charm branches from Launchpad
1084+collect config=collect-next-ha
1085+
1086+# Copy the branches to the deployment directory
1087+repo config=repo-next-ha
1088+
1089+# Use juju deployer to create the units for the deployment
1090+deploy config=haphase1.yaml delay=0 target=${MOJO_SERIES}-juno
1091+
1092+# Check juju statuses are green and that hooks have finished
1093+verify config=check_juju.py
1094+
1095+# Examine the available networks and set vips for services
1096+script config=set_vips.py
1097+
1098+# Use juju deployer to add the relations for the deployment
1099+deploy config=haphase2.yaml delay=0 target=${MOJO_SERIES}-juno
1100+
1101+# Check juju statuses are green and that hooks have finished
1102+verify config=check_juju.py
1103+
1104+# Create sdn on overcloud
1105+script config=network_setup.py
1106+
1107+# Setup glance images
1108+script config=image_setup.py
1109+
1110+# Setup keystone users
1111+script config=keystone_setup.py
1112+
1113+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
1114+verify config=simple_os_checks.py MACHINES='cirros:m1.tiny:1 precise:m1.small:3' CLOUDINIT_WAIT="300"
1115+
1116+# Test obj store by sending and recieving files
1117+verify config=test_obj_store.py
1118
1119=== added symlink 'specs/dev/full_nrpe_ha/juno/network.yaml'
1120=== target is u'../../../../helper/setup/network.yaml'
1121=== added symlink 'specs/dev/full_nrpe_ha/juno/network_setup.py'
1122=== target is u'../../../../helper/setup/network_setup.py'
1123=== added symlink 'specs/dev/full_nrpe_ha/juno/repo-next-ha'
1124=== target is u'../../../../helper/collect/repo-next-ha'
1125=== added symlink 'specs/dev/full_nrpe_ha/juno/set_vips.py'
1126=== target is u'../../../../helper/setup/set_vips.py'
1127=== added symlink 'specs/dev/full_nrpe_ha/juno/simple_os_checks.py'
1128=== target is u'../../../../helper/tests/simple_os_checks.py'
1129=== added symlink 'specs/dev/full_nrpe_ha/juno/test_obj_store.py'
1130=== target is u'../../../../helper/tests/test_obj_store.py'
1131=== added symlink 'specs/dev/full_nrpe_ha/juno/utils'
1132=== target is u'../../../../helper/utils'
1133=== added directory 'specs/dev/full_nrpe_ha/kilo'
1134=== added file 'specs/dev/full_nrpe_ha/kilo/SPEC_INFO.txt'
1135--- specs/dev/full_nrpe_ha/kilo/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
1136+++ specs/dev/full_nrpe_ha/kilo/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
1137@@ -0,0 +1,2 @@
1138+This spec performs a phased ha deploy then runs tests to validate the
1139+deployment
1140
1141=== added symlink 'specs/dev/full_nrpe_ha/kilo/check_juju.py'
1142=== target is u'../../../../helper/tests/check_juju.py'
1143=== added symlink 'specs/dev/full_nrpe_ha/kilo/collect-next-ha'
1144=== target is u'../../../../helper/collect/collect-next-ha'
1145=== added symlink 'specs/dev/full_nrpe_ha/kilo/haphase1.yaml'
1146=== target is u'../../../../helper/bundles/haphase1.yaml'
1147=== added symlink 'specs/dev/full_nrpe_ha/kilo/haphase2.yaml'
1148=== target is u'../../../../helper/bundles/haphase2.yaml'
1149=== added symlink 'specs/dev/full_nrpe_ha/kilo/image_setup.py'
1150=== target is u'../../../../helper/setup/image_setup.py'
1151=== added symlink 'specs/dev/full_nrpe_ha/kilo/images.yaml'
1152=== target is u'../../../../helper/setup/images.yaml'
1153=== added symlink 'specs/dev/full_nrpe_ha/kilo/keystone_setup.py'
1154=== target is u'../../../../helper/setup/keystone_setup.py'
1155=== added symlink 'specs/dev/full_nrpe_ha/kilo/keystone_users.yaml'
1156=== target is u'../../../../helper/setup/keystone_users.yaml'
1157=== added file 'specs/dev/full_nrpe_ha/kilo/manifest'
1158--- specs/dev/full_nrpe_ha/kilo/manifest 1970-01-01 00:00:00 +0000
1159+++ specs/dev/full_nrpe_ha/kilo/manifest 2015-05-08 09:54:56 +0000
1160@@ -0,0 +1,35 @@
1161+# Collect the charm branches from Launchpad
1162+collect config=collect-next-ha
1163+
1164+# Copy the branches to the deployment directory
1165+repo config=repo-next-ha
1166+
1167+# Use juju deployer to create the units for the deployment
1168+deploy config=haphase1.yaml delay=0 target=${MOJO_SERIES}-kilo
1169+
1170+# Check juju statuses are green and that hooks have finished
1171+verify config=check_juju.py
1172+
1173+# Examine the available networks and set vips for services
1174+script config=set_vips.py
1175+
1176+# Use juju deployer to add the relations for the deployment
1177+deploy config=haphase2.yaml delay=0 target=${MOJO_SERIES}-kilo
1178+
1179+# Check juju statuses are green and that hooks have finished
1180+verify config=check_juju.py
1181+
1182+# Create sdn on overcloud
1183+script config=network_setup.py
1184+
1185+# Setup glance images
1186+script config=image_setup.py
1187+
1188+# Setup keystone users
1189+script config=keystone_setup.py
1190+
1191+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
1192+verify config=simple_os_checks.py MACHINES='cirros:m1.tiny:1 precise:m1.small:3' CLOUDINIT_WAIT="300"
1193+
1194+# Test obj store by sending and recieving files
1195+verify config=test_obj_store.py
1196
1197=== added symlink 'specs/dev/full_nrpe_ha/kilo/network.yaml'
1198=== target is u'../../../../helper/setup/network.yaml'
1199=== added symlink 'specs/dev/full_nrpe_ha/kilo/network_setup.py'
1200=== target is u'../../../../helper/setup/network_setup.py'
1201=== added symlink 'specs/dev/full_nrpe_ha/kilo/repo-next-ha'
1202=== target is u'../../../../helper/collect/repo-next-ha'
1203=== added symlink 'specs/dev/full_nrpe_ha/kilo/set_vips.py'
1204=== target is u'../../../../helper/setup/set_vips.py'
1205=== added symlink 'specs/dev/full_nrpe_ha/kilo/simple_os_checks.py'
1206=== target is u'../../../../helper/tests/simple_os_checks.py'
1207=== added symlink 'specs/dev/full_nrpe_ha/kilo/test_obj_store.py'
1208=== target is u'../../../../helper/tests/test_obj_store.py'
1209=== added symlink 'specs/dev/full_nrpe_ha/kilo/utils'
1210=== target is u'../../../../helper/utils'
1211=== added directory 'specs/dev/kilo'
1212=== added file 'specs/dev/kilo/SPEC_INFO.txt'
1213--- specs/dev/kilo/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
1214+++ specs/dev/kilo/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
1215@@ -0,0 +1,2 @@
1216+This spec performs a non-ha deploy using the next charms and then runs tests
1217+to validate the deployment
1218
1219=== added symlink 'specs/dev/kilo/check_juju.py'
1220=== target is u'../../../helper/tests/check_juju.py'
1221=== added file 'specs/dev/kilo/collect-next'
1222--- specs/dev/kilo/collect-next 1970-01-01 00:00:00 +0000
1223+++ specs/dev/kilo/collect-next 2015-05-08 09:54:56 +0000
1224@@ -0,0 +1,19 @@
1225+keystone lp:~james-page/charms/trusty/keystone/kilo/
1226+neutron-api lp:~james-page/charms/trusty/neutron-api/kilo/
1227+glance lp:~james-page/charms/trusty/glance/kilo
1228+neutron-openvswitch lp:~james-page/charms/trusty/neutron-openvswitch/kilo
1229+quantum-gateway lp:~james-page/charms/trusty/quantum-gateway/kilo
1230+nova-cloud-controller lp:~james-page/charms/trusty/nova-cloud-controller/kilo
1231+nova-compute lp:~james-page/charms/trusty/nova-compute/kilo
1232+cinder lp:~james-page/charms/trusty/cinder/kilo
1233+swift-proxy lp:~james-page/charms/trusty/swift-proxy/kilo
1234+ceph lp:~james-page/charms/trusty/ceph/kilo-support
1235+mysql lp:~gnuoy/charms/trusty/mysql/sync-ch
1236+rabbitmq-server lp:~openstack-charmers/charms/trusty/rabbitmq-server/next
1237+openstack-dashboard lp:~openstack-charmers/charms/trusty/openstack-dashboard/next
1238+swift-storage lp:~openstack-charmers/charms/trusty/swift-storage/next
1239+ceilometer lp:~openstack-charmers/charms/trusty/ceilometer/next
1240+ceilometer-agent lp:~openstack-charmers/charms/trusty/ceilometer-agent/next
1241+mongodb lp:charms/mongodb
1242+cinder-ceph lp:~openstack-charmers/charms/trusty/cinder-ceph/next
1243+heat lp:~openstack-charmers/charms/trusty/heat/next
1244
1245=== added file 'specs/dev/kilo/full.yaml'
1246--- specs/dev/kilo/full.yaml 1970-01-01 00:00:00 +0000
1247+++ specs/dev/kilo/full.yaml 2015-05-08 09:54:56 +0000
1248@@ -0,0 +1,252 @@
1249+# vim: set ts=2 et:
1250+openstack-services:
1251+ services:
1252+ mysql:
1253+ charm: mysql
1254+ constraints: mem=1G
1255+ options:
1256+ dataset-size: 50%
1257+ rabbitmq-server:
1258+ charm: rabbitmq-server
1259+ constraints: mem=1G
1260+ ceph:
1261+ charm: ceph
1262+ num_units: 3
1263+ constraints: mem=1G
1264+ options:
1265+ monitor-count: 3
1266+ fsid: 6547bd3e-1397-11e2-82e5-53567c8d32dc
1267+ monitor-secret: AQCXrnZQwI7KGBAAiPofmKEXKxu5bUzoYLVkbQ==
1268+ osd-devices: /dev/vdb
1269+ osd-reformat: "yes"
1270+ ephemeral-unmount: /mnt
1271+ keystone:
1272+ charm: keystone
1273+ constraints: mem=1G
1274+ options:
1275+ admin-password: openstack
1276+ admin-token: ubuntutesting
1277+ openstack-dashboard:
1278+ charm: openstack-dashboard
1279+ constraints: mem=1G
1280+ nova-compute:
1281+ charm: nova-compute
1282+ num_units: 3
1283+ constraints: mem=4G
1284+ options:
1285+ enable-live-migration: True
1286+ enable-resize: True
1287+ nova-cloud-controller:
1288+ charm: nova-cloud-controller
1289+ constraints: mem=1G
1290+ options:
1291+ network-manager: Quantum
1292+ quantum-security-groups: "yes"
1293+ neutron-gateway:
1294+ charm: quantum-gateway
1295+ constraints: mem=1G
1296+ options:
1297+ instance-mtu: 1300
1298+ cinder:
1299+ charm: cinder
1300+ options:
1301+ block-device: "None"
1302+ glance-api-version: 2
1303+ constraints": mem=1G
1304+ glance:
1305+ charm: glance
1306+ constraints: mem=1G
1307+ swift-proxy:
1308+ charm: swift-proxy
1309+ constraints: mem=1G
1310+ options:
1311+ zone-assignment: manual
1312+ replicas: 3
1313+ swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
1314+ swift-storage-z1:
1315+ charm: swift-storage
1316+ constraints: mem=1G
1317+ options:
1318+ zone: 1
1319+ block-device: vdb
1320+ overwrite: "true"
1321+ swift-storage-z2:
1322+ charm: swift-storage
1323+ constraints: mem=1G
1324+ options:
1325+ zone: 2
1326+ block-device: vdb
1327+ overwrite: "true"
1328+ swift-storage-z3:
1329+ charm: swift-storage
1330+ constraints: mem=1G
1331+ options:
1332+ zone: 3
1333+ block-device: vdb
1334+ overwrite: "true"
1335+ relations:
1336+ - [ keystone, mysql ]
1337+ - [ nova-cloud-controller, mysql ]
1338+ - [ nova-cloud-controller, rabbitmq-server ]
1339+ - [ nova-cloud-controller, glance ]
1340+ - [ nova-cloud-controller, keystone ]
1341+ - [ nova-compute, nova-cloud-controller ]
1342+ - [ nova-compute, mysql ]
1343+ - - nova-compute
1344+ - rabbitmq-server:amqp
1345+ - [ nova-compute, glance ]
1346+ - [ nova-compute, ceph ]
1347+ - [ glance, mysql ]
1348+ - [ glance, keystone ]
1349+ - [ glance, ceph ]
1350+ - [ glance, cinder ]
1351+ - [ cinder, mysql ]
1352+ - [ cinder, rabbitmq-server ]
1353+ - [ cinder, nova-cloud-controller ]
1354+ - [ cinder, keystone ]
1355+ - [ cinder, ceph ]
1356+ - [ neutron-gateway, mysql ]
1357+ - [ neutron-gateway, nova-cloud-controller ]
1358+ - [ openstack-dashboard, keystone ]
1359+ - [ swift-proxy, keystone ]
1360+ - [ swift-proxy, swift-storage-z1 ]
1361+ - [ swift-proxy, swift-storage-z2 ]
1362+ - [ swift-proxy, swift-storage-z3 ]
1363+openstack-singlerabbit:
1364+ inherits: openstack-services
1365+ relations:
1366+ - [ "neutron-gateway:amqp", rabbitmq-server ]
1367+openstack-icehouse:
1368+ inherits: openstack-singlerabbit
1369+ services:
1370+ neutron-api:
1371+ charm: neutron-api
1372+ constraints: mem=1G
1373+ options:
1374+ neutron-security-groups: True
1375+ neutron-openvswitch:
1376+ charm: neutron-openvswitch
1377+ relations:
1378+ - [ neutron-api, mysql ]
1379+ - [ neutron-api, rabbitmq-server ]
1380+ - [ neutron-api, nova-cloud-controller ]
1381+ - [ neutron-api, neutron-openvswitch ]
1382+ - [ neutron-api, keystone ]
1383+ - [ neutron-openvswitch, nova-compute ]
1384+ - [ neutron-openvswitch, rabbitmq-server ]
1385+openstack-icehouse-msg-split:
1386+ inherits: openstack-services
1387+ services:
1388+ neutron-api:
1389+ charm: neutron-api
1390+ constraints: mem=1G
1391+ options:
1392+ neutron-security-groups: True
1393+ neutron-openvswitch:
1394+ charm: neutron-openvswitch
1395+ rabbitmq-server-neutron:
1396+ charm: rabbitmq-server
1397+ constraints: mem=1G
1398+ relations:
1399+ - [ neutron-api, mysql ]
1400+ - [ neutron-api, rabbitmq-server-neutron ]
1401+ - [ neutron-api, nova-cloud-controller ]
1402+ - [ neutron-api, neutron-openvswitch ]
1403+ - [ neutron-api, keystone ]
1404+ - [ neutron-api, neutron-gateway ]
1405+ - [ neutron-openvswitch, nova-compute ]
1406+ - [ neutron-openvswitch, rabbitmq-server-neutron ]
1407+ - [ "neutron-gateway:amqp-nova", rabbitmq-server ]
1408+ - [ "neutron-gateway:amqp", rabbitmq-server-neutron ]
1409+# icehouse
1410+precise-icehouse:
1411+ inherits: openstack-singlerabbit
1412+ series: precise
1413+ overrides:
1414+ openstack-origin: cloud:precise-icehouse
1415+ source: cloud:precise-updates/icehouse
1416+precise-icehouse-proposed:
1417+ inherits: precise-icehouse
1418+ overrides:
1419+ openstack-origin: cloud:precise-icehouse/proposed
1420+ source: cloud:precise-updates/icehouse
1421+precise-icehouse-staging:
1422+ inherits: precise-icehouse
1423+ overrides:
1424+ openstack-origin: ppa:ubuntu-cloud-archive/icehouse-staging
1425+ source: ppa:ubuntu-cloud-archive/icehouse-staging
1426+precise-icehouse-trunk:
1427+ inherits: precise-icehouse
1428+ overrides:
1429+ openstack-origin: ppa:openstack-ubuntu-testing/icehouse
1430+ source: ppa:openstack-ubuntu-testing/icehouse
1431+trusty-icehouse:
1432+ inherits: openstack-icehouse
1433+ series: trusty
1434+trusty-icehouse-msg-split:
1435+ inherits: openstack-icehouse-msg-split
1436+ series: trusty
1437+trusty-icehouse-proposed:
1438+ inherits: trusty-icehouse
1439+ overrides:
1440+ source: proposed
1441+ openstack-origin: distro-proposed
1442+trusty-icehouse-trunk:
1443+ inherits: trusty-icehouse
1444+ overrides:
1445+ openstack-origin: ppa:openstack-ubuntu-testing/icehouse
1446+ source: ppa:openstack-ubuntu-testing/icehouse
1447+ offline-compression: "no"
1448+# juno
1449+trusty-juno:
1450+ inherits: openstack-icehouse
1451+ series: trusty
1452+ overrides:
1453+ openstack-origin: cloud:trusty-juno
1454+ source: cloud:trusty-updates/juno
1455+trusty-juno-proposed:
1456+ inherits: trusty-juno
1457+ overrides:
1458+ openstack-origin: cloud:trusty-juno/proposed
1459+ source: cloud:trusty-proposed/juno
1460+trusty-juno-staging:
1461+ inherits: trusty-juno
1462+ overrides:
1463+ openstack-origin: ppa:ubuntu-cloud-archive/juno-staging
1464+ source: ppa:ubuntu-cloud-archive/juno-staging
1465+utopic-juno:
1466+ inherits: openstack-icehouse
1467+ series: utopic
1468+utopic-juno-proposed:
1469+ inherits: utopic-juno
1470+ overrides:
1471+ source: proposed
1472+ openstack-origin: distro-proposed
1473+# kilo
1474+trusty-kilo:
1475+ inherits: openstack-icehouse
1476+ series: trusty
1477+ overrides:
1478+ openstack-origin: ppa:james-page/kilo
1479+ source: ppa:james-page/kilo
1480+trusty-kilo-proposed:
1481+ inherits: trusty-kilo
1482+ overrides:
1483+ openstack-origin: cloud:trusty-kilo/proposed
1484+ source: cloud:trusty-proposed/kilo
1485+trusty-kilo-staging:
1486+ inherits: trusty-kilo
1487+ overrides:
1488+ openstack-origin: ppa:ubuntu-cloud-archive/kilo-staging
1489+ source: ppa:ubuntu-cloud-archive/kilo-staging
1490+vivid-kilo:
1491+ inherits: openstack-icehouse
1492+ series: vivid
1493+ overrides:
1494+ openstack-origin: ppa:james-page/kilo
1495+ source: ppa:james-page/kilo
1496+vivid-kilo-proposed:
1497+ inherits: vivid-kilo
1498+ overrides:
1499+ source: proposed
1500+ openstack-origin: distro-proposed
1501
1502=== added symlink 'specs/dev/kilo/image_setup.py'
1503=== target is u'../../../helper/setup/image_setup.py'
1504=== added symlink 'specs/dev/kilo/images.yaml'
1505=== target is u'../../../helper/setup/images.yaml'
1506=== added symlink 'specs/dev/kilo/keystone_setup.py'
1507=== target is u'../../../helper/setup/keystone_setup.py'
1508=== added symlink 'specs/dev/kilo/keystone_users.yaml'
1509=== target is u'../../../helper/setup/keystone_users.yaml'
1510=== added file 'specs/dev/kilo/manifest'
1511--- specs/dev/kilo/manifest 1970-01-01 00:00:00 +0000
1512+++ specs/dev/kilo/manifest 2015-05-08 09:54:56 +0000
1513@@ -0,0 +1,23 @@
1514+# Collect the charm branches from Launchpad
1515+collect config=collect-next
1516+
1517+# Copy the branches to the deployment directory
1518+repo config=repo-next
1519+
1520+# Use juju deployer with full.yaml bundle
1521+deploy config=full.yaml delay=0 target=${MOJO_SERIES}-kilo
1522+
1523+# Check juju statuses are green and that hooks have finished
1524+verify config=check_juju.py
1525+
1526+# Create sdn on overcloud
1527+script config=network_setup.py
1528+
1529+# Setup glance images
1530+script config=image_setup.py
1531+
1532+# Setup keystone users
1533+script config=keystone_setup.py
1534+
1535+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
1536+verify config=simple_os_checks.py MACHINES='cirros:m1.tiny:1 precise:m1.small:1' CLOUDINIT_WAIT="300"
1537
1538=== added symlink 'specs/dev/kilo/network.yaml'
1539=== target is u'../../../helper/setup/network.yaml'
1540=== added symlink 'specs/dev/kilo/network_setup.py'
1541=== target is u'../../../helper/setup/network_setup.py'
1542=== added symlink 'specs/dev/kilo/repo-next'
1543=== target is u'../../../helper/collect/repo-next'
1544=== added symlink 'specs/dev/kilo/simple_os_checks.py'
1545=== target is u'../../../helper/tests/simple_os_checks.py'
1546=== added symlink 'specs/dev/kilo/utils'
1547=== target is u'../../../helper/utils'
1548=== added directory 'specs/dev/neutronshuffle'
1549=== added file 'specs/dev/neutronshuffle/SPEC_INFO.txt'
1550--- specs/dev/neutronshuffle/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
1551+++ specs/dev/neutronshuffle/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
1552@@ -0,0 +1,2 @@
1553+This spec performs a non-ha deploy using the next charms and then runs tests
1554+to validate the deployment
1555
1556=== added symlink 'specs/dev/neutronshuffle/check_juju.py'
1557=== target is u'../../../helper/tests/check_juju.py'
1558=== added symlink 'specs/dev/neutronshuffle/collect-next'
1559=== target is u'../../../helper/collect/collect-next'
1560=== added symlink 'specs/dev/neutronshuffle/full.yaml'
1561=== target is u'../../../helper/bundles/full.yaml'
1562=== added symlink 'specs/dev/neutronshuffle/image_setup.py'
1563=== target is u'../../../helper/setup/image_setup.py'
1564=== added symlink 'specs/dev/neutronshuffle/images.yaml'
1565=== target is u'../../../helper/setup/images.yaml'
1566=== added symlink 'specs/dev/neutronshuffle/keystone_setup.py'
1567=== target is u'../../../helper/setup/keystone_setup.py'
1568=== added symlink 'specs/dev/neutronshuffle/keystone_users.yaml'
1569=== target is u'../../../helper/setup/keystone_users.yaml'
1570=== added file 'specs/dev/neutronshuffle/manifest'
1571--- specs/dev/neutronshuffle/manifest 1970-01-01 00:00:00 +0000
1572+++ specs/dev/neutronshuffle/manifest 2015-05-08 09:54:56 +0000
1573@@ -0,0 +1,23 @@
1574+# Collect the charm branches from Launchpad
1575+collect config=collect-next
1576+
1577+# Copy the branches to the deployment directory
1578+repo config=repo-next
1579+
1580+# Use juju deployer with full.yaml bundle
1581+deploy config=full.yaml delay=0 target=${MOJO_SERIES}-icehouse
1582+
1583+# Check juju statuses are green and that hooks have finished
1584+verify config=check_juju.py
1585+
1586+# Create sdn on overcloud
1587+script config=network_setup.py
1588+
1589+# Setup glance images
1590+script config=image_setup.py
1591+
1592+# Setup keystone users
1593+script config=keystone_setup.py
1594+
1595+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
1596+verify config=simple_os_checks.py MACHINES='cirros:m1.tiny:1 precise:m1.small:1' CLOUDINIT_WAIT="300"
1597
1598=== added symlink 'specs/dev/neutronshuffle/network.yaml'
1599=== target is u'../../../helper/setup/network.yaml'
1600=== added symlink 'specs/dev/neutronshuffle/network_setup.py'
1601=== target is u'../../../helper/setup/network_setup.py'
1602=== added symlink 'specs/dev/neutronshuffle/repo-next'
1603=== target is u'../../../helper/collect/repo-next'
1604=== added symlink 'specs/dev/neutronshuffle/simple_os_checks.py'
1605=== target is u'../../../helper/tests/simple_os_checks.py'
1606=== added symlink 'specs/dev/neutronshuffle/utils'
1607=== target is u'../../../helper/utils'
1608=== added directory 'specs/dev/next_l2pop'
1609=== added directory 'specs/dev/next_l2pop/icehouse'
1610=== added file 'specs/dev/next_l2pop/icehouse/SPEC_INFO.txt'
1611--- specs/dev/next_l2pop/icehouse/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
1612+++ specs/dev/next_l2pop/icehouse/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
1613@@ -0,0 +1,2 @@
1614+This spec performs a non-ha deploy using the next charms and then runs tests
1615+to validate the deployment
1616
1617=== added symlink 'specs/dev/next_l2pop/icehouse/check_juju.py'
1618=== target is u'../../../../helper/tests/check_juju.py'
1619=== added symlink 'specs/dev/next_l2pop/icehouse/collect-next'
1620=== target is u'../../../../helper/collect/collect-next'
1621=== added file 'specs/dev/next_l2pop/icehouse/full.yaml'
1622--- specs/dev/next_l2pop/icehouse/full.yaml 1970-01-01 00:00:00 +0000
1623+++ specs/dev/next_l2pop/icehouse/full.yaml 2015-05-08 09:54:56 +0000
1624@@ -0,0 +1,263 @@
1625+# vim: set ts=2 et:
1626+openstack-services:
1627+ services:
1628+ mysql:
1629+ charm: mysql
1630+ constraints: mem=1G
1631+ options:
1632+ dataset-size: 50%
1633+ rabbitmq-server:
1634+ charm: rabbitmq-server
1635+ constraints: mem=1G
1636+ ceph:
1637+ charm: ceph
1638+ num_units: 3
1639+ constraints: mem=1G
1640+ options:
1641+ monitor-count: 3
1642+ fsid: 6547bd3e-1397-11e2-82e5-53567c8d32dc
1643+ monitor-secret: AQCXrnZQwI7KGBAAiPofmKEXKxu5bUzoYLVkbQ==
1644+ osd-devices: /dev/vdb
1645+ osd-reformat: "yes"
1646+ ephemeral-unmount: /mnt
1647+ keystone:
1648+ charm: keystone
1649+ constraints: mem=1G
1650+ options:
1651+ admin-password: openstack
1652+ admin-token: ubuntutesting
1653+ openstack-dashboard:
1654+ charm: openstack-dashboard
1655+ constraints: mem=1G
1656+ nova-compute:
1657+ charm: nova-compute
1658+ num_units: 3
1659+ constraints: mem=4G
1660+ options:
1661+ enable-live-migration: True
1662+ enable-resize: True
1663+ nova-cloud-controller:
1664+ charm: nova-cloud-controller
1665+ constraints: mem=1G
1666+ options:
1667+ network-manager: Quantum
1668+ quantum-security-groups: "yes"
1669+ neutron-gateway:
1670+ charm: quantum-gateway
1671+ constraints: mem=1G
1672+ options:
1673+ instance-mtu: 1300
1674+ cinder:
1675+ charm: cinder
1676+ options:
1677+ block-device: "None"
1678+ glance-api-version: 2
1679+ constraints": mem=1G
1680+ glance:
1681+ charm: glance
1682+ constraints: mem=1G
1683+ swift-proxy:
1684+ charm: swift-proxy
1685+ constraints: mem=1G
1686+ options:
1687+ zone-assignment: manual
1688+ replicas: 3
1689+ swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
1690+ swift-storage-z1:
1691+ charm: swift-storage
1692+ constraints: mem=1G
1693+ options:
1694+ zone: 1
1695+ block-device: vdb
1696+ overwrite: "true"
1697+ swift-storage-z2:
1698+ charm: swift-storage
1699+ constraints: mem=1G
1700+ options:
1701+ zone: 2
1702+ block-device: vdb
1703+ overwrite: "true"
1704+ swift-storage-z3:
1705+ charm: swift-storage
1706+ constraints: mem=1G
1707+ options:
1708+ zone: 3
1709+ block-device: vdb
1710+ overwrite: "true"
1711+ ceilometer:
1712+ charm: ceilometer
1713+ constraints: mem=1G
1714+ ceilometer-agent:
1715+ charm: ceilometer-agent
1716+ mongodb:
1717+ charm: mongodb
1718+ constraints: mem=1G
1719+ relations:
1720+ - [ keystone, mysql ]
1721+ - [ nova-cloud-controller, mysql ]
1722+ - [ nova-cloud-controller, rabbitmq-server ]
1723+ - [ nova-cloud-controller, glance ]
1724+ - [ nova-cloud-controller, keystone ]
1725+ - [ nova-compute, nova-cloud-controller ]
1726+ - [ nova-compute, mysql ]
1727+ - - nova-compute
1728+ - rabbitmq-server:amqp
1729+ - [ nova-compute, glance ]
1730+ - [ nova-compute, ceph ]
1731+ - [ glance, mysql ]
1732+ - [ glance, keystone ]
1733+ - [ glance, ceph ]
1734+ - [ glance, cinder ]
1735+ - [ cinder, mysql ]
1736+ - [ cinder, rabbitmq-server ]
1737+ - [ cinder, nova-cloud-controller ]
1738+ - [ cinder, keystone ]
1739+ - [ cinder, ceph ]
1740+ - [ neutron-gateway, mysql ]
1741+ - [ neutron-gateway, nova-cloud-controller ]
1742+ - [ openstack-dashboard, keystone ]
1743+ - [ swift-proxy, keystone ]
1744+ - [ swift-proxy, swift-storage-z1 ]
1745+ - [ swift-proxy, swift-storage-z2 ]
1746+ - [ swift-proxy, swift-storage-z3 ]
1747+ - [ "ceilometer:identity-service", keystone ]
1748+ - [ ceilometer, rabbitmq-server ]
1749+ - [ ceilometer, mongodb ]
1750+ - [ ceilometer-agent, nova-compute ]
1751+ - [ ceilometer-agent, ceilometer ]
1752+openstack-singlerabbit:
1753+ inherits: openstack-services
1754+ relations:
1755+ - [ "neutron-gateway:amqp", rabbitmq-server ]
1756+openstack-icehouse:
1757+ inherits: openstack-singlerabbit
1758+ services:
1759+ neutron-api:
1760+ charm: neutron-api
1761+ constraints: mem=1G
1762+ options:
1763+ l2-population: True
1764+ neutron-security-groups: True
1765+ neutron-openvswitch:
1766+ charm: neutron-openvswitch
1767+ relations:
1768+ - [ neutron-api, mysql ]
1769+ - [ neutron-api, rabbitmq-server ]
1770+ - [ neutron-api, nova-cloud-controller ]
1771+ - [ neutron-api, neutron-openvswitch ]
1772+ - [ neutron-api, keystone ]
1773+ - [ neutron-openvswitch, nova-compute ]
1774+ - [ neutron-openvswitch, rabbitmq-server ]
1775+openstack-icehouse-msg-split:
1776+ inherits: openstack-services
1777+ services:
1778+ neutron-api:
1779+ charm: neutron-api
1780+ constraints: mem=1G
1781+ options:
1782+ neutron-security-groups: True
1783+ neutron-openvswitch:
1784+ charm: neutron-openvswitch
1785+ rabbitmq-server-neutron:
1786+ charm: rabbitmq-server
1787+ constraints: mem=1G
1788+ relations:
1789+ - [ neutron-api, mysql ]
1790+ - [ neutron-api, rabbitmq-server-neutron ]
1791+ - [ neutron-api, nova-cloud-controller ]
1792+ - [ neutron-api, neutron-openvswitch ]
1793+ - [ neutron-api, keystone ]
1794+ - [ neutron-api, neutron-gateway ]
1795+ - [ neutron-openvswitch, nova-compute ]
1796+ - [ neutron-openvswitch, rabbitmq-server-neutron ]
1797+ - [ "neutron-gateway:amqp-nova", rabbitmq-server ]
1798+ - [ "neutron-gateway:amqp", rabbitmq-server-neutron ]
1799+# icehouse
1800+precise-icehouse:
1801+ inherits: openstack-singlerabbit
1802+ series: precise
1803+ overrides:
1804+ openstack-origin: cloud:precise-icehouse
1805+ source: cloud:precise-updates/icehouse
1806+precise-icehouse-proposed:
1807+ inherits: precise-icehouse
1808+ overrides:
1809+ openstack-origin: cloud:precise-icehouse/proposed
1810+ source: cloud:precise-updates/icehouse
1811+precise-icehouse-staging:
1812+ inherits: precise-icehouse
1813+ overrides:
1814+ openstack-origin: ppa:ubuntu-cloud-archive/icehouse-staging
1815+ source: ppa:ubuntu-cloud-archive/icehouse-staging
1816+precise-icehouse-trunk:
1817+ inherits: precise-icehouse
1818+ overrides:
1819+ openstack-origin: ppa:openstack-ubuntu-testing/icehouse
1820+ source: ppa:openstack-ubuntu-testing/icehouse
1821+trusty-icehouse:
1822+ inherits: openstack-icehouse
1823+ series: trusty
1824+trusty-icehouse-msg-split:
1825+ inherits: openstack-icehouse-msg-split
1826+ series: trusty
1827+trusty-icehouse-proposed:
1828+ inherits: trusty-icehouse
1829+ overrides:
1830+ source: proposed
1831+ openstack-origin: distro-proposed
1832+trusty-icehouse-trunk:
1833+ inherits: trusty-icehouse
1834+ overrides:
1835+ openstack-origin: ppa:openstack-ubuntu-testing/icehouse
1836+ source: ppa:openstack-ubuntu-testing/icehouse
1837+ offline-compression: "no"
1838+# juno
1839+trusty-juno:
1840+ inherits: openstack-icehouse
1841+ series: trusty
1842+ overrides:
1843+ openstack-origin: cloud:trusty-juno
1844+ source: cloud:trusty-updates/juno
1845+trusty-juno-proposed:
1846+ inherits: trusty-juno
1847+ overrides:
1848+ openstack-origin: cloud:trusty-juno/proposed
1849+ source: cloud:trusty-proposed/juno
1850+trusty-juno-staging:
1851+ inherits: trusty-juno
1852+ overrides:
1853+ openstack-origin: ppa:ubuntu-cloud-archive/juno-staging
1854+ source: ppa:ubuntu-cloud-archive/juno-staging
1855+utopic-juno:
1856+ inherits: openstack-icehouse
1857+ series: utopic
1858+utopic-juno-proposed:
1859+ inherits: utopic-juno
1860+ overrides:
1861+ source: proposed
1862+ openstack-origin: distro-proposed
1863+# kilo
1864+trusty-kilo:
1865+ inherits: openstack-icehouse
1866+ series: trusty
1867+ overrides:
1868+ openstack-origin: cloud:trusty-kilo
1869+ source: cloud:trusty-kilo
1870+trusty-kilo-proposed:
1871+ inherits: trusty-kilo
1872+ overrides:
1873+ openstack-origin: cloud:trusty-kilo/proposed
1874+ source: cloud:trusty-proposed/kilo
1875+trusty-kilo-staging:
1876+ inherits: trusty-kilo
1877+ overrides:
1878+ openstack-origin: ppa:ubuntu-cloud-archive/kilo-staging
1879+ source: ppa:ubuntu-cloud-archive/kilo-staging
1880+vivid-kilo:
1881+ inherits: openstack-icehouse
1882+ series: vivid
1883+vivid-kilo-proposed:
1884+ inherits: vivid-kilo
1885+ overrides:
1886+ source: proposed
1887+ openstack-origin: distro-proposed
1888
1889=== added symlink 'specs/dev/next_l2pop/icehouse/image_setup.py'
1890=== target is u'../../../../helper/setup/image_setup.py'
1891=== added symlink 'specs/dev/next_l2pop/icehouse/images.yaml'
1892=== target is u'../../../../helper/setup/images.yaml'
1893=== added symlink 'specs/dev/next_l2pop/icehouse/keystone_setup.py'
1894=== target is u'../../../../helper/setup/keystone_setup.py'
1895=== added symlink 'specs/dev/next_l2pop/icehouse/keystone_users.yaml'
1896=== target is u'../../../../helper/setup/keystone_users.yaml'
1897=== added file 'specs/dev/next_l2pop/icehouse/manifest'
1898--- specs/dev/next_l2pop/icehouse/manifest 1970-01-01 00:00:00 +0000
1899+++ specs/dev/next_l2pop/icehouse/manifest 2015-05-08 09:54:56 +0000
1900@@ -0,0 +1,23 @@
1901+# Collect the charm branches from Launchpad
1902+collect config=collect-next
1903+
1904+# Copy the branches to the deployment directory
1905+repo config=repo-next
1906+
1907+# Use juju deployer with full.yaml bundle
1908+deploy config=full.yaml delay=0 target=${MOJO_SERIES}-icehouse
1909+
1910+# Check juju statuses are green and that hooks have finished
1911+verify config=check_juju.py
1912+
1913+# Create sdn on overcloud
1914+script config=network_setup.py
1915+
1916+# Setup glance images
1917+script config=image_setup.py
1918+
1919+# Setup keystone users
1920+script config=keystone_setup.py
1921+
1922+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
1923+verify config=simple_os_checks.py MACHINES='cirros:m1.tiny:1 precise:m1.small:1' CLOUDINIT_WAIT="300"
1924
1925=== added symlink 'specs/dev/next_l2pop/icehouse/network.yaml'
1926=== target is u'../../../../helper/setup/network.yaml'
1927=== added symlink 'specs/dev/next_l2pop/icehouse/network_setup.py'
1928=== target is u'../../../../helper/setup/network_setup.py'
1929=== added symlink 'specs/dev/next_l2pop/icehouse/repo-next'
1930=== target is u'../../../../helper/collect/repo-next'
1931=== added symlink 'specs/dev/next_l2pop/icehouse/simple_os_checks.py'
1932=== target is u'../../../../helper/tests/simple_os_checks.py'
1933=== added symlink 'specs/dev/next_l2pop/icehouse/utils'
1934=== target is u'../../../../helper/utils'
1935=== added directory 'specs/dev/next_l2pop/juno'
1936=== added file 'specs/dev/next_l2pop/juno/SPEC_INFO.txt'
1937--- specs/dev/next_l2pop/juno/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
1938+++ specs/dev/next_l2pop/juno/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
1939@@ -0,0 +1,2 @@
1940+This spec performs a non-ha deploy using the next charms and then runs tests
1941+to validate the deployment
1942
1943=== added symlink 'specs/dev/next_l2pop/juno/check_juju.py'
1944=== target is u'../../../../helper/tests/check_juju.py'
1945=== added symlink 'specs/dev/next_l2pop/juno/collect-next'
1946=== target is u'../../../../helper/collect/collect-next'
1947=== added symlink 'specs/dev/next_l2pop/juno/full.yaml'
1948=== target is u'../../../../helper/bundles/full.yaml'
1949=== added symlink 'specs/dev/next_l2pop/juno/image_setup.py'
1950=== target is u'../../../../helper/setup/image_setup.py'
1951=== added symlink 'specs/dev/next_l2pop/juno/images.yaml'
1952=== target is u'../../../../helper/setup/images.yaml'
1953=== added symlink 'specs/dev/next_l2pop/juno/keystone_setup.py'
1954=== target is u'../../../../helper/setup/keystone_setup.py'
1955=== added symlink 'specs/dev/next_l2pop/juno/keystone_users.yaml'
1956=== target is u'../../../../helper/setup/keystone_users.yaml'
1957=== added file 'specs/dev/next_l2pop/juno/manifest'
1958--- specs/dev/next_l2pop/juno/manifest 1970-01-01 00:00:00 +0000
1959+++ specs/dev/next_l2pop/juno/manifest 2015-05-08 09:54:56 +0000
1960@@ -0,0 +1,23 @@
1961+# Collect the charm branches from Launchpad
1962+collect config=collect-next
1963+
1964+# Copy the branches to the deployment directory
1965+repo config=repo-next
1966+
1967+# Use juju deployer with full.yaml bundle
1968+deploy config=full.yaml delay=0 target=${MOJO_SERIES}-juno
1969+
1970+# Check juju statuses are green and that hooks have finished
1971+verify config=check_juju.py
1972+
1973+# Create sdn on overcloud
1974+script config=network_setup.py
1975+
1976+# Setup glance images
1977+script config=image_setup.py
1978+
1979+# Setup keystone users
1980+script config=keystone_setup.py
1981+
1982+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
1983+verify config=simple_os_checks.py MACHINES='cirros:m1.tiny:1 precise:m1.small:1' CLOUDINIT_WAIT="300"
1984
1985=== added symlink 'specs/dev/next_l2pop/juno/network.yaml'
1986=== target is u'../../../../helper/setup/network.yaml'
1987=== added symlink 'specs/dev/next_l2pop/juno/network_setup.py'
1988=== target is u'../../../../helper/setup/network_setup.py'
1989=== added symlink 'specs/dev/next_l2pop/juno/repo-next'
1990=== target is u'../../../../helper/collect/repo-next'
1991=== added symlink 'specs/dev/next_l2pop/juno/simple_os_checks.py'
1992=== target is u'../../../../helper/tests/simple_os_checks.py'
1993=== added symlink 'specs/dev/next_l2pop/juno/utils'
1994=== target is u'../../../../helper/utils'
1995=== added directory 'specs/dev/next_l2pop/kilo'
1996=== added file 'specs/dev/next_l2pop/kilo/SPEC_INFO.txt'
1997--- specs/dev/next_l2pop/kilo/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
1998+++ specs/dev/next_l2pop/kilo/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
1999@@ -0,0 +1,2 @@
2000+This spec performs a non-ha deploy using the next charms and then runs tests
2001+to validate the deployment
2002
2003=== added symlink 'specs/dev/next_l2pop/kilo/check_juju.py'
2004=== target is u'../../../../helper/tests/check_juju.py'
2005=== added symlink 'specs/dev/next_l2pop/kilo/collect-next'
2006=== target is u'../../../../helper/collect/collect-next'
2007=== added symlink 'specs/dev/next_l2pop/kilo/full.yaml'
2008=== target is u'../../../../helper/bundles/full.yaml'
2009=== added symlink 'specs/dev/next_l2pop/kilo/image_setup.py'
2010=== target is u'../../../../helper/setup/image_setup.py'
2011=== added symlink 'specs/dev/next_l2pop/kilo/images.yaml'
2012=== target is u'../../../../helper/setup/images.yaml'
2013=== added symlink 'specs/dev/next_l2pop/kilo/keystone_setup.py'
2014=== target is u'../../../../helper/setup/keystone_setup.py'
2015=== added symlink 'specs/dev/next_l2pop/kilo/keystone_users.yaml'
2016=== target is u'../../../../helper/setup/keystone_users.yaml'
2017=== added file 'specs/dev/next_l2pop/kilo/manifest'
2018--- specs/dev/next_l2pop/kilo/manifest 1970-01-01 00:00:00 +0000
2019+++ specs/dev/next_l2pop/kilo/manifest 2015-05-08 09:54:56 +0000
2020@@ -0,0 +1,23 @@
2021+# Collect the charm branches from Launchpad
2022+collect config=collect-next
2023+
2024+# Copy the branches to the deployment directory
2025+repo config=repo-next
2026+
2027+# Use juju deployer with full.yaml bundle
2028+deploy config=full.yaml delay=0 target=${MOJO_SERIES}-kilo
2029+
2030+# Check juju statuses are green and that hooks have finished
2031+verify config=check_juju.py
2032+
2033+# Create sdn on overcloud
2034+script config=network_setup.py
2035+
2036+# Setup glance images
2037+script config=image_setup.py
2038+
2039+# Setup keystone users
2040+script config=keystone_setup.py
2041+
2042+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
2043+verify config=simple_os_checks.py MACHINES='cirros:m1.tiny:1 precise:m1.small:1' CLOUDINIT_WAIT="300"
2044
2045=== added symlink 'specs/dev/next_l2pop/kilo/network.yaml'
2046=== target is u'../../../../helper/setup/network.yaml'
2047=== added symlink 'specs/dev/next_l2pop/kilo/network_setup.py'
2048=== target is u'../../../../helper/setup/network_setup.py'
2049=== added symlink 'specs/dev/next_l2pop/kilo/repo-next'
2050=== target is u'../../../../helper/collect/repo-next'
2051=== added symlink 'specs/dev/next_l2pop/kilo/simple_os_checks.py'
2052=== target is u'../../../../helper/tests/simple_os_checks.py'
2053=== added symlink 'specs/dev/next_l2pop/kilo/utils'
2054=== target is u'../../../../helper/utils'
2055=== added directory 'specs/dev/vrrp_blog'
2056=== added file 'specs/dev/vrrp_blog/SPEC_INFO.txt'
2057--- specs/dev/vrrp_blog/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
2058+++ specs/dev/vrrp_blog/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
2059@@ -0,0 +1,1 @@
2060+This spec deploys and tests a deployment with neutron DVR enabled
2061
2062=== added file 'specs/dev/vrrp_blog/bug1364215.py'
2063--- specs/dev/vrrp_blog/bug1364215.py 1970-01-01 00:00:00 +0000
2064+++ specs/dev/vrrp_blog/bug1364215.py 2015-05-08 09:54:56 +0000
2065@@ -0,0 +1,12 @@
2066+#!/usr/bin/python
2067+import sys
2068+import utils.mojo_utils as mojo_utils
2069+
2070+
2071+def main(argv):
2072+ for unit in mojo_utils.get_juju_units(service='neutron-gateway'):
2073+ cmd='sudo service neutron-plugin-openvswitch-agent restart'
2074+ mojo_utils.remote_run(unit, remote_cmd=cmd)
2075+
2076+if __name__ == "__main__":
2077+ sys.exit(main(sys.argv))
2078
2079=== added symlink 'specs/dev/vrrp_blog/check_juju.py'
2080=== target is u'../../../helper/tests/check_juju.py'
2081=== added file 'specs/dev/vrrp_blog/collect-next'
2082--- specs/dev/vrrp_blog/collect-next 1970-01-01 00:00:00 +0000
2083+++ specs/dev/vrrp_blog/collect-next 2015-05-08 09:54:56 +0000
2084@@ -0,0 +1,19 @@
2085+nova-cloud-controller lp:~openstack-charmers/charms/trusty/nova-cloud-controller/next
2086+neutron-api lp:~gnuoy/charms/trusty/neutron-api/order-overlay-type
2087+keystone lp:~openstack-charmers/charms/trusty/keystone/next
2088+glance lp:~openstack-charmers/charms/trusty/glance/next
2089+swift-proxy lp:~openstack-charmers/charms/trusty/swift-proxy/next
2090+percona-cluster lp:~openstack-charmers/charms/trusty/percona-cluster/trunk
2091+rabbitmq-server lp:~openstack-charmers/charms/trusty/rabbitmq-server/next
2092+ceph lp:~openstack-charmers/charms/trusty/ceph/next
2093+openstack-dashboard lp:~openstack-charmers/charms/trusty/openstack-dashboard/next
2094+nova-compute lp:~openstack-charmers/charms/trusty/nova-compute/next
2095+quantum-gateway lp:~gnuoy/charms/trusty/quantum-gateway/conntrack
2096+cinder lp:~openstack-charmers/charms/trusty/cinder/next
2097+swift-storage lp:~openstack-charmers/charms/trusty/swift-storage/next
2098+ceilometer lp:~openstack-charmers/charms/trusty/ceilometer/next
2099+ceilometer-agent lp:~openstack-charmers/charms/trusty/ceilometer-agent/next
2100+mongodb lp:charms/mongodb
2101+cinder-ceph lp:~openstack-charmers/charms/trusty/cinder-ceph/next
2102+heat lp:~openstack-charmers/charms/trusty/heat/next
2103+neutron-openvswitch lp:~openstack-charmers/charms/trusty/neutron-openvswitch/next
2104
2105=== added file 'specs/dev/vrrp_blog/full_vrrpha.yaml'
2106--- specs/dev/vrrp_blog/full_vrrpha.yaml 1970-01-01 00:00:00 +0000
2107+++ specs/dev/vrrp_blog/full_vrrpha.yaml 2015-05-08 09:54:56 +0000
2108@@ -0,0 +1,194 @@
2109+# vim: set ts=2 et:
2110+openstack-services:
2111+ services:
2112+ mysql:
2113+ charm: percona-cluster
2114+ constraints: mem=1G
2115+ options:
2116+ dataset-size: 50%
2117+ rabbitmq-server:
2118+ charm: rabbitmq-server
2119+ constraints: mem=1G
2120+ keystone:
2121+ charm: keystone
2122+ constraints: mem=1G
2123+ options:
2124+ admin-password: openstack
2125+ admin-token: ubuntutesting
2126+ openstack-dashboard:
2127+ charm: openstack-dashboard
2128+ constraints: mem=1G
2129+ nova-compute:
2130+ charm: nova-compute
2131+ num_units: 3
2132+ constraints: mem=4G
2133+ options:
2134+ enable-live-migration: True
2135+ enable-resize: True
2136+ nova-cloud-controller:
2137+ charm: nova-cloud-controller
2138+ constraints: mem=1G
2139+ options:
2140+ network-manager: Quantum
2141+ quantum-security-groups: "yes"
2142+ neutron-gateway:
2143+ charm: quantum-gateway
2144+ constraints: mem=1G
2145+ num_units: 3
2146+ options:
2147+ instance-mtu: 1300
2148+ cinder:
2149+ charm: cinder
2150+ options:
2151+ block-device: "None"
2152+ glance-api-version: 2
2153+ constraints": mem=1G
2154+ glance:
2155+ charm: glance
2156+ constraints: mem=1G
2157+ relations:
2158+ - [ keystone, mysql ]
2159+ - [ nova-cloud-controller, mysql ]
2160+ - [ nova-cloud-controller, rabbitmq-server ]
2161+ - [ nova-cloud-controller, glance ]
2162+ - [ nova-cloud-controller, keystone ]
2163+ - [ nova-compute, nova-cloud-controller ]
2164+ - [ nova-compute, mysql ]
2165+ - - nova-compute
2166+ - rabbitmq-server:amqp
2167+ - [ nova-compute, glance ]
2168+ - [ glance, mysql ]
2169+ - [ glance, keystone ]
2170+ - [ glance, cinder ]
2171+ - [ cinder, mysql ]
2172+ - [ cinder, rabbitmq-server ]
2173+ - [ cinder, nova-cloud-controller ]
2174+ - [ cinder, keystone ]
2175+ - [ neutron-gateway, mysql ]
2176+ - [ neutron-gateway, nova-cloud-controller ]
2177+ - [ openstack-dashboard, keystone ]
2178+openstack-singlerabbit:
2179+ inherits: openstack-services
2180+ relations:
2181+ - [ "neutron-gateway:amqp", rabbitmq-server ]
2182+openstack-icehouse:
2183+ inherits: openstack-singlerabbit
2184+ services:
2185+ neutron-api:
2186+ charm: neutron-api
2187+ constraints: mem=1G
2188+ options:
2189+ overlay-network-type: 'vxlan'
2190+ l2-population: False
2191+ neutron-security-groups: True
2192+ enable-dvr: False
2193+ enable-l3ha: False
2194+ neutron-openvswitch:
2195+ charm: neutron-openvswitch
2196+ relations:
2197+ - [ neutron-api, mysql ]
2198+ - [ neutron-api, rabbitmq-server ]
2199+ - [ neutron-api, nova-cloud-controller ]
2200+ - [ neutron-api, neutron-openvswitch ]
2201+ - [ neutron-api, keystone ]
2202+ - [ neutron-api, "neutron-gateway:neutron-plugin-api" ]
2203+ - [ neutron-openvswitch, nova-compute ]
2204+ - [ neutron-openvswitch, rabbitmq-server ]
2205+ - [ neutron-openvswitch, nova-cloud-controller ]
2206+openstack-icehouse-msg-split:
2207+ inherits: openstack-services
2208+ services:
2209+ neutron-api:
2210+ charm: neutron-api
2211+ constraints: mem=1G
2212+ options:
2213+ neutron-security-groups: True
2214+ neutron-openvswitch:
2215+ charm: neutron-openvswitch
2216+ rabbitmq-server-neutron:
2217+ charm: rabbitmq-server
2218+ constraints: mem=1G
2219+ relations:
2220+ - [ neutron-api, mysql ]
2221+ - [ neutron-api, rabbitmq-server-neutron ]
2222+ - [ neutron-api, nova-cloud-controller ]
2223+ - [ neutron-api, neutron-openvswitch ]
2224+ - [ neutron-api, keystone ]
2225+ - [ neutron-api, neutron-gateway ]
2226+ - [ neutron-openvswitch, nova-compute ]
2227+ - [ neutron-openvswitch, rabbitmq-server-neutron ]
2228+ - [ "neutron-gateway:amqp-nova", rabbitmq-server ]
2229+ - [ "neutron-gateway:amqp", rabbitmq-server-neutron ]
2230+# icehouse
2231+precise-icehouse:
2232+ inherits: openstack-singlerabbit
2233+ series: precise
2234+ overrides:
2235+ openstack-origin: cloud:precise-icehouse
2236+ source: cloud:precise-updates/icehouse
2237+precise-icehouse-proposed:
2238+ inherits: precise-icehouse
2239+ overrides:
2240+ openstack-origin: cloud:precise-icehouse/proposed
2241+ source: cloud:precise-updates/icehouse
2242+precise-icehouse-staging:
2243+ inherits: precise-icehouse
2244+ overrides:
2245+ openstack-origin: ppa:ubuntu-cloud-archive/icehouse-staging
2246+ source: ppa:ubuntu-cloud-archive/icehouse-staging
2247+precise-icehouse-trunk:
2248+ inherits: precise-icehouse
2249+ overrides:
2250+ openstack-origin: ppa:openstack-ubuntu-testing/icehouse
2251+ source: ppa:openstack-ubuntu-testing/icehouse
2252+trusty-icehouse:
2253+ inherits: openstack-icehouse
2254+ series: trusty
2255+trusty-icehouse-msg-split:
2256+ inherits: openstack-icehouse-msg-split
2257+ series: trusty
2258+trusty-icehouse-proposed:
2259+ inherits: trusty-icehouse
2260+ overrides:
2261+ source: proposed
2262+ openstack-origin: distro-proposed
2263+trusty-icehouse-trunk:
2264+ inherits: trusty-icehouse
2265+ overrides:
2266+ openstack-origin: ppa:openstack-ubuntu-testing/icehouse
2267+ source: ppa:openstack-ubuntu-testing/icehouse
2268+ offline-compression: "no"
2269+# juno
2270+trusty-juno:
2271+ inherits: openstack-icehouse
2272+ series: trusty
2273+ overrides:
2274+ openstack-origin: cloud:trusty-juno
2275+ source: cloud:trusty-updates/juno
2276+trusty-juno-proposed:
2277+ inherits: trusty-juno
2278+ overrides:
2279+ openstack-origin: cloud:trusty-juno/proposed
2280+ source: cloud:trusty-proposed/juno
2281+trusty-juno-staging:
2282+ inherits: trusty-juno
2283+ overrides:
2284+ openstack-origin: ppa:ubuntu-cloud-archive/juno-staging
2285+ source: ppa:ubuntu-cloud-archive/juno-staging
2286+trusty-kilo:
2287+ inherits: openstack-icehouse
2288+ series: trusty
2289+ overrides:
2290+ openstack-origin: cloud:trusty-kilo
2291+ source: cloud:trusty-kilo
2292+utopic-juno:
2293+ inherits: openstack-icehouse
2294+ series: utopic
2295+utopic-juno-proposed:
2296+ inherits: utopic-juno
2297+ overrides:
2298+ source: proposed
2299+ openstack-origin: distro-proposed
2300+vivid-kilo:
2301+ inherits: openstack-icehouse
2302+ series: vivid
2303
2304=== added symlink 'specs/dev/vrrp_blog/image_setup.py'
2305=== target is u'../../../helper/setup/image_setup.py'
2306=== added symlink 'specs/dev/vrrp_blog/images.yaml'
2307=== target is u'../../../helper/setup/images.yaml'
2308=== added symlink 'specs/dev/vrrp_blog/keystone_setup.py'
2309=== target is u'../../../helper/setup/keystone_setup.py'
2310=== added symlink 'specs/dev/vrrp_blog/keystone_users.yaml'
2311=== target is u'../../../helper/setup/keystone_users.yaml'
2312=== added file 'specs/dev/vrrp_blog/manifest'
2313--- specs/dev/vrrp_blog/manifest 1970-01-01 00:00:00 +0000
2314+++ specs/dev/vrrp_blog/manifest 2015-05-08 09:54:56 +0000
2315@@ -0,0 +1,29 @@
2316+# Collect the charm branches from Launchpad
2317+collect config=collect-next
2318+
2319+# Copy the branches to the deployment directory
2320+repo config=repo-next
2321+
2322+# Use juju deployer with full.yaml bundle
2323+deploy config=full_vrrpha.yaml delay=0 target=trusty-kilo
2324+
2325+# Check juju statuses are green and that hooks have finished
2326+verify config=check_juju.py
2327+
2328+# Create sdn on overcloud
2329+script config=network_setup.py NET_TOPOLOGY="vxlan"
2330+
2331+# Setup glance images
2332+script config=image_setup.py
2333+
2334+# Setup keystone users
2335+script config=keystone_setup.py
2336+
2337+# Restarting neutron-plugin-openvswitch-agent to work around Bug #1364215
2338+#script config=bug1364215.py
2339+
2340+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
2341+verify config=simple_os_checks.py MACHINES='cirros:m1.small:1' CLOUDINIT_WAIT="300"
2342+
2343+# Test guest connectivity after stopping and starting gateway
2344+#verify config=test_vrrp_ha.py
2345
2346=== added file 'specs/dev/vrrp_blog/network.yaml'
2347--- specs/dev/vrrp_blog/network.yaml 1970-01-01 00:00:00 +0000
2348+++ specs/dev/vrrp_blog/network.yaml 2015-05-08 09:54:56 +0000
2349@@ -0,0 +1,48 @@
2350+gre:
2351+ default_gateway: 10.5.0.1
2352+ end_floating_ip: 10.5.200.254
2353+ external_dns: 10.98.191.11
2354+ external_net_cidr: 10.5.0.0/16
2355+ external_net_name: ext_net
2356+ external_subnet_name: ext_net_subnet
2357+ network_type: gre
2358+ private_net_cidr: 192.168.21.0/24
2359+ router_name: provider-router
2360+ start_floating_ip: 10.5.150.0
2361+ dvr_enabled: False
2362+vxlan:
2363+ default_gateway: 10.5.0.1
2364+ end_floating_ip: 10.5.200.254
2365+ external_dns: 10.98.191.11
2366+ external_net_cidr: 10.5.0.0/16
2367+ external_net_name: ext_net
2368+ external_subnet_name: ext_net_subnet
2369+ network_type: vxlan
2370+ private_net_cidr: 192.168.21.0/24
2371+ router_name: provider-router
2372+ start_floating_ip: 10.5.150.0
2373+ dvr_enabled: False
2374+dvr:
2375+ default_gateway: 10.5.0.1
2376+ end_floating_ip: 10.5.200.254
2377+ external_dns: 10.98.191.11
2378+ external_net_cidr: 10.5.0.0/16
2379+ external_net_name: ext_net
2380+ external_subnet_name: ext_net_subnet
2381+ network_type: vxlan
2382+ private_net_cidr: 192.168.21.0/24
2383+ router_name: provider-router
2384+ start_floating_ip: 10.5.150.0
2385+ dvr_enabled: True
2386+vrrpha:
2387+ default_gateway: 10.5.0.1
2388+ end_floating_ip: 10.5.200.254
2389+ external_dns: 10.98.191.11
2390+ external_net_cidr: 10.5.0.0/16
2391+ external_net_name: ext_net
2392+ external_subnet_name: ext_net_subnet
2393+ network_type: vxlan
2394+ private_net_cidr: 192.168.21.0/24
2395+ router_name: provider-router
2396+ start_floating_ip: 10.5.150.0
2397+ dvr_enabled: False
2398
2399=== added symlink 'specs/dev/vrrp_blog/network_setup.py'
2400=== target is u'../../../helper/setup/network_setup.py'
2401=== added symlink 'specs/dev/vrrp_blog/repo-next'
2402=== target is u'../../../helper/collect/repo-next'
2403=== added symlink 'specs/dev/vrrp_blog/simple_os_checks.py'
2404=== target is u'../../../helper/tests/simple_os_checks.py'
2405=== added file 'specs/dev/vrrp_blog/test_vrrp_ha.py'
2406--- specs/dev/vrrp_blog/test_vrrp_ha.py 1970-01-01 00:00:00 +0000
2407+++ specs/dev/vrrp_blog/test_vrrp_ha.py 2015-05-08 09:54:56 +0000
2408@@ -0,0 +1,93 @@
2409+#!/usr/bin/python
2410+import time
2411+import sys
2412+import utils.mojo_utils as mojo_utils
2413+import utils.mojo_os_utils as mojo_os_utils
2414+import logging
2415+import argparse
2416+
2417+def get_cirros_server(cloud_auth):
2418+ logging.info('Looking for existing cirros server')
2419+ cirros_images = get_cirros_images(cloud_auth)
2420+ nova_client = mojo_os_utils.get_nova_client(cloud_auth)
2421+ for server in nova_client.servers.list():
2422+ if server.image['id'] in cirros_images:
2423+ return server
2424+
2425+def get_cirros_images(cloud_auth):
2426+ logging.info('Getting list of cirros images')
2427+ glance_client = mojo_os_utils.get_glance_client(cloud_auth)
2428+ cirros_images = []
2429+ for image in glance_client.images.list():
2430+ if 'cirros' in image.name:
2431+ cirros_images.append(image.id)
2432+ return cirros_images
2433+
2434+def check_server_state(nova_client, state, server_id=None, server_name=None, wait_time=120):
2435+ sleep_time = 2
2436+ if server_name:
2437+ server_id = nova_client.servers.find(name=server_name).id
2438+ server = nova_client.servers.find(id=server_id)
2439+ while server.status != state and wait_time > 0:
2440+ time.sleep(sleep_time)
2441+ server = nova_client.servers.find(id=server_id)
2442+ wait_time -= sleep_time
2443+ return server.status == state
2444+
2445+def check_neutron_agent_states(neutron_client, host_name, wait_time=120):
2446+ sleep_time = 2
2447+ statuses = [False]
2448+ while False in statuses and wait_time > 0:
2449+ time.sleep(sleep_time)
2450+ statuses = []
2451+ for agent in neutron_client.list_agents()['agents']:
2452+ if agent['host'] == host_name:
2453+ statuses.append(agent['admin_state_up'])
2454+ statuses.append(agent['alive'])
2455+ wait_time -= sleep_time
2456+ return not False in statuses
2457+
2458+
2459+def get_server_floating_ip(server):
2460+ for addr in server.addresses['private']:
2461+ if addr['OS-EXT-IPS:type'] == 'floating':
2462+ return addr['addr']
2463+
2464+def main(argv):
2465+ logging.basicConfig(level=logging.INFO)
2466+ logging.getLogger("urllib3").setLevel(logging.WARNING)
2467+ overcloud_novarc = mojo_utils.get_overcloud_auth()
2468+ undercloud_novarc = mojo_utils.get_undercload_auth()
2469+ under_novac = mojo_os_utils.get_nova_client(undercloud_novarc)
2470+ over_neutronc = mojo_os_utils.get_neutron_client(overcloud_novarc)
2471+ server = get_cirros_server(overcloud_novarc)
2472+ ip = get_server_floating_ip(server)
2473+ logging.info('Checking connectivity to cirros guest')
2474+ if not mojo_os_utils.ssh_test('cirros', ip, server.name, password='cubswin:)'):
2475+ raise Exception('Cirros guest inaccessable')
2476+ router = over_neutronc.list_routers(name='provider-router')['routers'][0]
2477+ l3_agents = over_neutronc.list_l3_agent_hosting_routers(router=router['id'])['agents']
2478+ logging.info('Checking there are multiple L3 agents running tenant router')
2479+ if len(l3_agents) != 2:
2480+ raise Exception('Unexpected number of l3 agents')
2481+ for agent in l3_agents:
2482+ neutron_gateway = under_novac.servers.find(name=agent['host'])
2483+ logging.info('Shutting down neutron gateway: ' + neutron_gateway.id)
2484+ neutron_gateway.stop()
2485+ if not check_server_state(under_novac, 'SHUTOFF', server_name=agent['host']):
2486+ raise Exception('Server failed to reach SHUTOFF state')
2487+ logging.info('Neutron gateway %s has shutdown' % (neutron_gateway.id))
2488+ logging.info('Checking connectivity to cirros guest')
2489+ if not mojo_os_utils.wait_for_ping(ip, 90):
2490+ raise Exception('Cirros guest inaccessable')
2491+ if not mojo_os_utils.ssh_test('cirros', ip, server.name, password='cubswin:)'):
2492+ raise Exception('Cirros guest inaccessable')
2493+ logging.info('Starting neutron gateway: ' + neutron_gateway.id)
2494+ neutron_gateway.start()
2495+ if not check_server_state(under_novac, 'ACTIVE', server_name=agent['host']):
2496+ raise Exception('Server failed to reach SHUTOFF state')
2497+ if not check_neutron_agent_states(over_neutronc, agent['host']):
2498+ raise Exception('Server agents failed to reach active state')
2499+
2500+if __name__ == "__main__":
2501+ sys.exit(main(sys.argv))
2502
2503=== added symlink 'specs/dev/vrrp_blog/utils'
2504=== target is u'../../../helper/utils'
2505=== added directory 'specs/dev/vrrp_ha'
2506=== added file 'specs/dev/vrrp_ha/SPEC_INFO.txt'
2507--- specs/dev/vrrp_ha/SPEC_INFO.txt 1970-01-01 00:00:00 +0000
2508+++ specs/dev/vrrp_ha/SPEC_INFO.txt 2015-05-08 09:54:56 +0000
2509@@ -0,0 +1,1 @@
2510+This spec deploys and tests a deployment with neutron DVR enabled
2511
2512=== added file 'specs/dev/vrrp_ha/bug1364215.py'
2513--- specs/dev/vrrp_ha/bug1364215.py 1970-01-01 00:00:00 +0000
2514+++ specs/dev/vrrp_ha/bug1364215.py 2015-05-08 09:54:56 +0000
2515@@ -0,0 +1,12 @@
2516+#!/usr/bin/python
2517+import sys
2518+import utils.mojo_utils as mojo_utils
2519+
2520+
2521+def main(argv):
2522+ for unit in mojo_utils.get_juju_units(service='neutron-gateway'):
2523+ cmd='sudo service neutron-plugin-openvswitch-agent restart'
2524+ mojo_utils.remote_run(unit, remote_cmd=cmd)
2525+
2526+if __name__ == "__main__":
2527+ sys.exit(main(sys.argv))
2528
2529=== added symlink 'specs/dev/vrrp_ha/check_juju.py'
2530=== target is u'../../../helper/tests/check_juju.py'
2531=== added file 'specs/dev/vrrp_ha/collect-next'
2532--- specs/dev/vrrp_ha/collect-next 1970-01-01 00:00:00 +0000
2533+++ specs/dev/vrrp_ha/collect-next 2015-05-08 09:54:56 +0000
2534@@ -0,0 +1,19 @@
2535+nova-cloud-controller lp:~openstack-charmers/charms/trusty/nova-cloud-controller/next
2536+neutron-api lp:~james-page/charms/trusty/neutron-api/kilo-dvr
2537+keystone lp:~openstack-charmers/charms/trusty/keystone/next
2538+glance lp:~openstack-charmers/charms/trusty/glance/next
2539+swift-proxy lp:~openstack-charmers/charms/trusty/swift-proxy/next
2540+percona-cluster lp:~openstack-charmers/charms/trusty/percona-cluster/trunk
2541+rabbitmq-server lp:~openstack-charmers/charms/trusty/rabbitmq-server/next
2542+ceph lp:~openstack-charmers/charms/trusty/ceph/next
2543+openstack-dashboard lp:~openstack-charmers/charms/trusty/openstack-dashboard/next
2544+nova-compute lp:~openstack-charmers/charms/trusty/nova-compute/next
2545+quantum-gateway lp:~gnuoy/charms/trusty/quantum-gateway/conntrack
2546+cinder lp:~openstack-charmers/charms/trusty/cinder/next
2547+swift-storage lp:~openstack-charmers/charms/trusty/swift-storage/next
2548+ceilometer lp:~openstack-charmers/charms/trusty/ceilometer/next
2549+ceilometer-agent lp:~openstack-charmers/charms/trusty/ceilometer-agent/next
2550+mongodb lp:charms/mongodb
2551+cinder-ceph lp:~openstack-charmers/charms/trusty/cinder-ceph/next
2552+heat lp:~openstack-charmers/charms/trusty/heat/next
2553+neutron-openvswitch lp:~openstack-charmers/charms/trusty/neutron-openvswitch/next
2554
2555=== added file 'specs/dev/vrrp_ha/full_vrrpha.yaml'
2556--- specs/dev/vrrp_ha/full_vrrpha.yaml 1970-01-01 00:00:00 +0000
2557+++ specs/dev/vrrp_ha/full_vrrpha.yaml 2015-05-08 09:54:56 +0000
2558@@ -0,0 +1,194 @@
2559+# vim: set ts=2 et:
2560+openstack-services:
2561+ services:
2562+ mysql:
2563+ charm: percona-cluster
2564+ constraints: mem=1G
2565+ options:
2566+ dataset-size: 50%
2567+ rabbitmq-server:
2568+ charm: rabbitmq-server
2569+ constraints: mem=1G
2570+ keystone:
2571+ charm: keystone
2572+ constraints: mem=1G
2573+ options:
2574+ admin-password: openstack
2575+ admin-token: ubuntutesting
2576+ openstack-dashboard:
2577+ charm: openstack-dashboard
2578+ constraints: mem=1G
2579+ nova-compute:
2580+ charm: nova-compute
2581+ num_units: 3
2582+ constraints: mem=4G
2583+ options:
2584+ enable-live-migration: True
2585+ enable-resize: True
2586+ nova-cloud-controller:
2587+ charm: nova-cloud-controller
2588+ constraints: mem=1G
2589+ options:
2590+ network-manager: Quantum
2591+ quantum-security-groups: "yes"
2592+ neutron-gateway:
2593+ charm: quantum-gateway
2594+ constraints: mem=1G
2595+ num_units: 2
2596+ options:
2597+ instance-mtu: 1300
2598+ cinder:
2599+ charm: cinder
2600+ options:
2601+ block-device: "None"
2602+ glance-api-version: 2
2603+ constraints": mem=1G
2604+ glance:
2605+ charm: glance
2606+ constraints: mem=1G
2607+ relations:
2608+ - [ keystone, mysql ]
2609+ - [ nova-cloud-controller, mysql ]
2610+ - [ nova-cloud-controller, rabbitmq-server ]
2611+ - [ nova-cloud-controller, glance ]
2612+ - [ nova-cloud-controller, keystone ]
2613+ - [ nova-compute, nova-cloud-controller ]
2614+ - [ nova-compute, mysql ]
2615+ - - nova-compute
2616+ - rabbitmq-server:amqp
2617+ - [ nova-compute, glance ]
2618+ - [ glance, mysql ]
2619+ - [ glance, keystone ]
2620+ - [ glance, cinder ]
2621+ - [ cinder, mysql ]
2622+ - [ cinder, rabbitmq-server ]
2623+ - [ cinder, nova-cloud-controller ]
2624+ - [ cinder, keystone ]
2625+ - [ neutron-gateway, mysql ]
2626+ - [ neutron-gateway, nova-cloud-controller ]
2627+ - [ openstack-dashboard, keystone ]
2628+openstack-singlerabbit:
2629+ inherits: openstack-services
2630+ relations:
2631+ - [ "neutron-gateway:amqp", rabbitmq-server ]
2632+openstack-icehouse:
2633+ inherits: openstack-singlerabbit
2634+ services:
2635+ neutron-api:
2636+ charm: neutron-api
2637+ constraints: mem=1G
2638+ options:
2639+ overlay-network-type: 'vxlan'
2640+ l2-population: False
2641+ neutron-security-groups: True
2642+ enable-dvr: False
2643+ enable-l3ha: True
2644+ neutron-openvswitch:
2645+ charm: neutron-openvswitch
2646+ relations:
2647+ - [ neutron-api, mysql ]
2648+ - [ neutron-api, rabbitmq-server ]
2649+ - [ neutron-api, nova-cloud-controller ]
2650+ - [ neutron-api, neutron-openvswitch ]
2651+ - [ neutron-api, keystone ]
2652+ - [ neutron-api, "neutron-gateway:neutron-plugin-api" ]
2653+ - [ neutron-openvswitch, nova-compute ]
2654+ - [ neutron-openvswitch, rabbitmq-server ]
2655+ - [ neutron-openvswitch, nova-cloud-controller ]
2656+openstack-icehouse-msg-split:
2657+ inherits: openstack-services
2658+ services:
2659+ neutron-api:
2660+ charm: neutron-api
2661+ constraints: mem=1G
2662+ options:
2663+ neutron-security-groups: True
2664+ neutron-openvswitch:
2665+ charm: neutron-openvswitch
2666+ rabbitmq-server-neutron:
2667+ charm: rabbitmq-server
2668+ constraints: mem=1G
2669+ relations:
2670+ - [ neutron-api, mysql ]
2671+ - [ neutron-api, rabbitmq-server-neutron ]
2672+ - [ neutron-api, nova-cloud-controller ]
2673+ - [ neutron-api, neutron-openvswitch ]
2674+ - [ neutron-api, keystone ]
2675+ - [ neutron-api, neutron-gateway ]
2676+ - [ neutron-openvswitch, nova-compute ]
2677+ - [ neutron-openvswitch, rabbitmq-server-neutron ]
2678+ - [ "neutron-gateway:amqp-nova", rabbitmq-server ]
2679+ - [ "neutron-gateway:amqp", rabbitmq-server-neutron ]
2680+# icehouse
2681+precise-icehouse:
2682+ inherits: openstack-singlerabbit
2683+ series: precise
2684+ overrides:
2685+ openstack-origin: cloud:precise-icehouse
2686+ source: cloud:precise-updates/icehouse
2687+precise-icehouse-proposed:
2688+ inherits: precise-icehouse
2689+ overrides:
2690+ openstack-origin: cloud:precise-icehouse/proposed
2691+ source: cloud:precise-updates/icehouse
2692+precise-icehouse-staging:
2693+ inherits: precise-icehouse
2694+ overrides:
2695+ openstack-origin: ppa:ubuntu-cloud-archive/icehouse-staging
2696+ source: ppa:ubuntu-cloud-archive/icehouse-staging
2697+precise-icehouse-trunk:
2698+ inherits: precise-icehouse
2699+ overrides:
2700+ openstack-origin: ppa:openstack-ubuntu-testing/icehouse
2701+ source: ppa:openstack-ubuntu-testing/icehouse
2702+trusty-icehouse:
2703+ inherits: openstack-icehouse
2704+ series: trusty
2705+trusty-icehouse-msg-split:
2706+ inherits: openstack-icehouse-msg-split
2707+ series: trusty
2708+trusty-icehouse-proposed:
2709+ inherits: trusty-icehouse
2710+ overrides:
2711+ source: proposed
2712+ openstack-origin: distro-proposed
2713+trusty-icehouse-trunk:
2714+ inherits: trusty-icehouse
2715+ overrides:
2716+ openstack-origin: ppa:openstack-ubuntu-testing/icehouse
2717+ source: ppa:openstack-ubuntu-testing/icehouse
2718+ offline-compression: "no"
2719+# juno
2720+trusty-juno:
2721+ inherits: openstack-icehouse
2722+ series: trusty
2723+ overrides:
2724+ openstack-origin: cloud:trusty-juno
2725+ source: cloud:trusty-updates/juno
2726+trusty-juno-proposed:
2727+ inherits: trusty-juno
2728+ overrides:
2729+ openstack-origin: cloud:trusty-juno/proposed
2730+ source: cloud:trusty-proposed/juno
2731+trusty-juno-staging:
2732+ inherits: trusty-juno
2733+ overrides:
2734+ openstack-origin: ppa:ubuntu-cloud-archive/juno-staging
2735+ source: ppa:ubuntu-cloud-archive/juno-staging
2736+trusty-kilo:
2737+ inherits: openstack-icehouse
2738+ series: trusty
2739+ overrides:
2740+ openstack-origin: cloud:trusty-kilo
2741+ source: cloud:trusty-kilo
2742+utopic-juno:
2743+ inherits: openstack-icehouse
2744+ series: utopic
2745+utopic-juno-proposed:
2746+ inherits: utopic-juno
2747+ overrides:
2748+ source: proposed
2749+ openstack-origin: distro-proposed
2750+vivid-kilo:
2751+ inherits: openstack-icehouse
2752+ series: vivid
2753
2754=== added symlink 'specs/dev/vrrp_ha/image_setup.py'
2755=== target is u'../../../helper/setup/image_setup.py'
2756=== added symlink 'specs/dev/vrrp_ha/images.yaml'
2757=== target is u'../../../helper/setup/images.yaml'
2758=== added symlink 'specs/dev/vrrp_ha/keystone_setup.py'
2759=== target is u'../../../helper/setup/keystone_setup.py'
2760=== added symlink 'specs/dev/vrrp_ha/keystone_users.yaml'
2761=== target is u'../../../helper/setup/keystone_users.yaml'
2762=== added file 'specs/dev/vrrp_ha/manifest'
2763--- specs/dev/vrrp_ha/manifest 1970-01-01 00:00:00 +0000
2764+++ specs/dev/vrrp_ha/manifest 2015-05-08 09:54:56 +0000
2765@@ -0,0 +1,29 @@
2766+# Collect the charm branches from Launchpad
2767+collect config=collect-next
2768+
2769+# Copy the branches to the deployment directory
2770+repo config=repo-next
2771+
2772+# Use juju deployer with full.yaml bundle
2773+deploy config=full_vrrpha.yaml delay=0 target=trusty-kilo
2774+
2775+# Check juju statuses are green and that hooks have finished
2776+verify config=check_juju.py
2777+
2778+# Create sdn on overcloud
2779+script config=network_setup.py NET_TOPOLOGY="vrrpha"
2780+
2781+# Setup glance images
2782+script config=image_setup.py
2783+
2784+# Setup keystone users
2785+script config=keystone_setup.py
2786+
2787+# Restarting neutron-plugin-openvswitch-agent to work around Bug #1364215
2788+#script config=bug1364215.py
2789+
2790+# Create 1 * tiny cirros and 1 * small precise instances on the overcloud
2791+verify config=simple_os_checks.py MACHINES='cirros:m1.small:1' CLOUDINIT_WAIT="300"
2792+
2793+# Test guest connectivity after stopping and starting gateway
2794+verify config=test_vrrp_ha.py
2795
2796=== added file 'specs/dev/vrrp_ha/network.yaml'
2797--- specs/dev/vrrp_ha/network.yaml 1970-01-01 00:00:00 +0000
2798+++ specs/dev/vrrp_ha/network.yaml 2015-05-08 09:54:56 +0000
2799@@ -0,0 +1,36 @@
2800+gre:
2801+ default_gateway: 10.5.0.1
2802+ end_floating_ip: 10.5.200.254
2803+ external_dns: 10.98.191.11
2804+ external_net_cidr: 10.5.0.0/16
2805+ external_net_name: ext_net
2806+ external_subnet_name: ext_net_subnet
2807+ network_type: gre
2808+ private_net_cidr: 192.168.21.0/24
2809+ router_name: provider-router
2810+ start_floating_ip: 10.5.150.0
2811+ dvr_enabled: False
2812+dvr:
2813+ default_gateway: 10.5.0.1
2814+ end_floating_ip: 10.5.200.254
2815+ external_dns: 10.98.191.11
2816+ external_net_cidr: 10.5.0.0/16
2817+ external_net_name: ext_net
2818+ external_subnet_name: ext_net_subnet
2819+ network_type: vxlan
2820+ private_net_cidr: 192.168.21.0/24
2821+ router_name: provider-router
2822+ start_floating_ip: 10.5.150.0
2823+ dvr_enabled: True
2824+vrrpha:
2825+ default_gateway: 10.5.0.1
2826+ end_floating_ip: 10.5.200.254
2827+ external_dns: 10.98.191.11
2828+ external_net_cidr: 10.5.0.0/16
2829+ external_net_name: ext_net
2830+ external_subnet_name: ext_net_subnet
2831+ network_type: vxlan
2832+ private_net_cidr: 192.168.21.0/24
2833+ router_name: provider-router
2834+ start_floating_ip: 10.5.150.0
2835+ dvr_enabled: False
2836
2837=== added symlink 'specs/dev/vrrp_ha/network_setup.py'
2838=== target is u'../../../helper/setup/network_setup.py'
2839=== added symlink 'specs/dev/vrrp_ha/repo-next'
2840=== target is u'../../../helper/collect/repo-next'
2841=== added symlink 'specs/dev/vrrp_ha/simple_os_checks.py'
2842=== target is u'../../../helper/tests/simple_os_checks.py'
2843=== added file 'specs/dev/vrrp_ha/test_vrrp_ha.py'
2844--- specs/dev/vrrp_ha/test_vrrp_ha.py 1970-01-01 00:00:00 +0000
2845+++ specs/dev/vrrp_ha/test_vrrp_ha.py 2015-05-08 09:54:56 +0000
2846@@ -0,0 +1,93 @@
2847+#!/usr/bin/python
2848+import time
2849+import sys
2850+import utils.mojo_utils as mojo_utils
2851+import utils.mojo_os_utils as mojo_os_utils
2852+import logging
2853+import argparse
2854+
2855+def get_cirros_server(cloud_auth):
2856+ logging.info('Looking for existing cirros server')
2857+ cirros_images = get_cirros_images(cloud_auth)
2858+ nova_client = mojo_os_utils.get_nova_client(cloud_auth)
2859+ for server in nova_client.servers.list():
2860+ if server.image['id'] in cirros_images:
2861+ return server
2862+
2863+def get_cirros_images(cloud_auth):
2864+ logging.info('Getting list of cirros images')
2865+ glance_client = mojo_os_utils.get_glance_client(cloud_auth)
2866+ cirros_images = []
2867+ for image in glance_client.images.list():
2868+ if 'cirros' in image.name:
2869+ cirros_images.append(image.id)
2870+ return cirros_images
2871+
2872+def check_server_state(nova_client, state, server_id=None, server_name=None, wait_time=120):
2873+ sleep_time = 2
2874+ if server_name:
2875+ server_id = nova_client.servers.find(name=server_name).id
2876+ server = nova_client.servers.find(id=server_id)
2877+ while server.status != state and wait_time > 0:
2878+ time.sleep(sleep_time)
2879+ server = nova_client.servers.find(id=server_id)
2880+ wait_time -= sleep_time
2881+ return server.status == state
2882+
2883+def check_neutron_agent_states(neutron_client, host_name, wait_time=120):
2884+ sleep_time = 2
2885+ statuses = [False]
2886+ while False in statuses and wait_time > 0:
2887+ time.sleep(sleep_time)
2888+ statuses = []
2889+ for agent in neutron_client.list_agents()['agents']:
2890+ if agent['host'] == host_name:
2891+ statuses.append(agent['admin_state_up'])
2892+ statuses.append(agent['alive'])
2893+ wait_time -= sleep_time
2894+ return not False in statuses
2895+
2896+
2897+def get_server_floating_ip(server):
2898+ for addr in server.addresses['private']:
2899+ if addr['OS-EXT-IPS:type'] == 'floating':
2900+ return addr['addr']
2901+
2902+def main(argv):
2903+ logging.basicConfig(level=logging.INFO)
2904+ logging.getLogger("urllib3").setLevel(logging.WARNING)
2905+ overcloud_novarc = mojo_utils.get_overcloud_auth()
2906+ undercloud_novarc = mojo_utils.get_undercload_auth()
2907+ under_novac = mojo_os_utils.get_nova_client(undercloud_novarc)
2908+ over_neutronc = mojo_os_utils.get_neutron_client(overcloud_novarc)
2909+ server = get_cirros_server(overcloud_novarc)
2910+ ip = get_server_floating_ip(server)
2911+ logging.info('Checking connectivity to cirros guest')
2912+ if not mojo_os_utils.ssh_test('cirros', ip, server.name, password='cubswin:)'):
2913+ raise Exception('Cirros guest inaccessable')
2914+ router = over_neutronc.list_routers(name='provider-router')['routers'][0]
2915+ l3_agents = over_neutronc.list_l3_agent_hosting_routers(router=router['id'])['agents']
2916+ logging.info('Checking there are multiple L3 agents running tenant router')
2917+ if len(l3_agents) != 2:
2918+ raise Exception('Unexpected number of l3 agents')
2919+ for agent in l3_agents:
2920+ neutron_gateway = under_novac.servers.find(name=agent['host'])
2921+ logging.info('Shutting down neutron gateway: ' + neutron_gateway.id)
2922+ neutron_gateway.stop()
2923+ if not check_server_state(under_novac, 'SHUTOFF', server_name=agent['host']):
2924+ raise Exception('Server failed to reach SHUTOFF state')
2925+ logging.info('Neutron gateway %s has shutdown' % (neutron_gateway.id))
2926+ logging.info('Checking connectivity to cirros guest')
2927+ if not mojo_os_utils.wait_for_ping(ip, 90):
2928+ raise Exception('Cirros guest inaccessable')
2929+ if not mojo_os_utils.ssh_test('cirros', ip, server.name, password='cubswin:)'):
2930+ raise Exception('Cirros guest inaccessable')
2931+ logging.info('Starting neutron gateway: ' + neutron_gateway.id)
2932+ neutron_gateway.start()
2933+ if not check_server_state(under_novac, 'ACTIVE', server_name=agent['host']):
2934+ raise Exception('Server failed to reach SHUTOFF state')
2935+ if not check_neutron_agent_states(over_neutronc, agent['host']):
2936+ raise Exception('Server agents failed to reach active state')
2937+
2938+if __name__ == "__main__":
2939+ sys.exit(main(sys.argv))
2940
2941=== added symlink 'specs/dev/vrrp_ha/utils'
2942=== target is u'../../../helper/utils'

Subscribers

People subscribed via source and target branches