blob: d376814e3afc167aa0397efce22aeccee20aae3c [file] [log] [blame]
#!/usr/bin/python
import subprocess
import time
import argparse
sleep_interval = 1
relations = ["keystone mysql",
"nova-cloud-controller mysql",
"nova-cloud-controller rabbitmq-server",
"nova-cloud-controller glance",
"nova-cloud-controller keystone",
"glance mysql",
"glance keystone",
"neutron-gateway neutron-api",
"neutron-gateway:amqp rabbitmq-server:amqp",
"neutron-gateway nova-cloud-controller",
"neutron-gateway mysql",
"neutron-api keystone",
"neutron-api neutron-openvswitch",
"neutron-api mysql",
"neutron-api rabbitmq-server",
"neutron-api nova-cloud-controller",
"neutron-openvswitch rabbitmq-server",
"openstack-dashboard keystone",
"mysql nagios",
"rabbitmq-server nagios",
"keystone nagios",
"glance nagios",
"nova-cloud-controller nagios",
"neutron-gateway nagios",
"openstack-dashboard nagios",
"neutron-api nagios",
"nagios nrpe",
"mysql:juju-info nrpe:general-info",
"rabbitmq-server nrpe",
"keystone nrpe",
"glance nrpe",
"nova-cloud-controller nrpe",
"neutron-gateway nrpe",
"openstack-dashboard nrpe",
"neutron-api nrpe",
"ceilometer mongodb",
"ceilometer rabbitmq-server",
"ceilometer:identity-service keystone:identity-service",
"ceilometer:ceilometer-service ceilometer-agent:ceilometer-service",
"ceilometer nagios",
"ceilometer nrpe",
]
def addrelation(relation):
subprocess.check_call("juju add-relation %s" % relation, shell=True)
def destroyrelation(relation):
subprocess.check_call("juju destroy-relation %s" % relation, shell=True)
def addrelations():
for relation in relations:
print "Adding relation %s" % relation
try:
addrelation(relation)
time.sleep(sleep_interval)
except:
pass
def destroyrelations():
for relation in relations:
print "Destroying relation %s" % relation
try:
destroyrelation(relation)
time.sleep(sleep_interval)
except:
pass
def main():
parser = argparse.ArgumentParser(description='Deploy OpenStack controller services')
parser.add_argument('--destroy', action='store_true',
help='Destroy the relations instead of adding them')
args = parser.parse_args()
if args.destroy:
destroyrelations()
else:
addrelations()
if __name__ =='__main__':
main()