Fixes to make ACORD service-profile work in devstack mitaka backend-part1
Change-Id: Ie0d2e8dc6d3a9a92506e21a23c7bc6df73deca9e
diff --git a/acord/Makefile b/acord/Makefile
index e9b234c..07d49b5 100644
--- a/acord/Makefile
+++ b/acord/Makefile
@@ -1,20 +1,67 @@
-SETUPDIR:=../setup
+include ../common/Makedefs
+
MYIP:=$(shell hostname -i)
+CONFIG_DIR:=$(shell pwd)
+DOCKER_COMPOSE_YML=./onboarding-docker-compose/docker-compose.yml
+BOOTSTRAP_YML=./docker-compose-bootstrap.yml
+DOCKER_PROJECT=acord
+BOOTSTRAP_PROJECT=acordbs
+XOS_BOOTSTRAP_PORT=9998
+XOS_UI_PORT=9999
+ADMIN_USERNAME=padmin@vicci.org
+ADMIN_PASSWORD=letmein
+RUN_TOSCA_BOOTSTRAP=python ../common/run_tosca.py $(XOS_BOOTSTRAP_PORT) $(ADMIN_USERNAME) $(ADMIN_PASSWORD)
+RUN_TOSCA=python ../common/run_tosca.py $(XOS_UI_PORT) $(ADMIN_USERNAME) $(ADMIN_PASSWORD)
-cloudlab: common_cloudlab cloudlab_ceilometer_custom_images ceilometer_cloudlab_cord_plugins acord
+cloudlab: download_xos common_cloudlab local_containers xos
-devstack: upgrade_pkgs common_devstack devstack_net_fix devstack_images ceilometer_devstack_cord_plugins acord
+devstack: download_xos upgrade_pkgs common_devstack local_containers xos devstack_net_fix
-cord:
- sudo MYIP=$(MYIP) docker-compose up -d
- bash ../common/wait_for_xos.sh
- sudo MYIP=$(MYIP) docker-compose run xos python /opt/xos/tosca/run.py none /opt/xos/configurations/common/fixtures.yaml
- sudo docker-compose run xos python /opt/xos/tosca/run.py none /opt/xos/configurations/common/mydeployment.yaml
- sudo MYIP=$(MYIP) docker-compose run xos python /opt/xos/tosca/run.py padmin@vicci.org /opt/xos/configurations/common/cloudlab-openstack.yaml
- sudo MYIP=$(MYIP) docker-compose run xos python /opt/xos/tosca/run.py padmin@vicci.org /root/setup/nodes.yaml
+xos: dirs download_services bootstrap onboarding develconfig
-acord: cord exampleservice
- sudo MYIP=$(MYIP) docker-compose run xos python /opt/xos/tosca/run.py padmin@vicci.org /opt/xos/configurations/acord/ceilometer.yaml
+dirs:
+ # if this directory doesn't exist, then docker-compose will create it with root permission
+ mkdir -p key_import
+ mkdir -p onboarding-docker-compose
+
+download_xos:
+ make -f ../common/Makefile.services xos_core
+
+download_services:
+ make -f ../common/Makefile.services
+
+bootstrap:
+ echo "[BOOTSTRAP]"
+ sudo rm -f onboarding-docker-compose/docker-compose.yml
+ sudo CONFIG_DIR=$(CONFIG_DIR) MYIP=$(MYIP) docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) up -d
+ bash ../common/wait_for_xos_port.sh $(XOS_BOOTSTRAP_PORT)
+ sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) run xos_bootstrap_ui python /opt/xos/tosca/run.py none - < ../common/fixtures.yaml
+ sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) run xos_bootstrap_ui python /opt/xos/tosca/run.py none - < ../common/mydeployment.yaml
+ $(RUN_TOSCA_BOOTSTRAP) xos.yaml
+
+onboarding:
+ echo "[ONBOARDING]"
+ # on-board any services here
+ bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) xos
+ bash ../common/wait_for_xos_port.sh $(XOS_UI_PORT)
+
+develconfig:
+ $(RUN_TOSCA) ../common/cloudlab-openstack.yaml
+ $(RUN_TOSCA) ../setup/nodes.yaml
+
+cord-monitoringservice: devstack_ceilometer_custom_images onboard-monitoringservice ceilometer_devstack_cord_plugins
+ $(RUN_TOSCA) ceilometer.yaml
+
+onboard-monitoringservice: download-monitoringservice
+ sudo cp ~/.ssh/id_rsa key_import/monitoringservice_rsa
+ sudo cp ~/.ssh/id_rsa.pub key_import/monitoringservice_rsa.pub
+ $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/monitoring/xos/monitoring-onboard.yaml
+ bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) services/monitoring
+ bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) xos
+ bash ../common/wait_for_xos_port.sh $(XOS_UI_PORT)
+
+download-monitoringservice:
+ make -f ../common/Makefile.services monitoring_services
exampleservice:
#Ensure exampleservice is enabled in xos/tools/xos-manage and xos/settings.py file before uncommenting below lines
@@ -30,6 +77,9 @@
common_devstack:
make -C ../common -f Makefile.devstack
+local_containers:
+ make -f ../common/Makefile.containers update_certs xos_base xos_devel synchronizer onboarding_synchronizer
+
ceilometer_cloudlab_cord_plugins:
if [ -d ./ceilometer-plugins ]; then rm -fr ./ceilometer-plugins; fi
git clone https://github.com/srikanthvavila/ceilometer-plugins.git
@@ -44,12 +94,12 @@
sudo service ceilometer-agent-central restart
ceilometer_devstack_cord_plugins:
- if [ -d ./ceilometer-plugins ]; then rm -fr ./ceilometer-plugins; fi
- git clone https://github.com/srikanthvavila/ceilometer-plugins.git
- sudo cp -r ceilometer-plugins/network/ext_services /opt/stack/ceilometer/ceilometer/network/
- sudo cp ceilometer-plugins/entry_points.txt /opt/stack/ceilometer/ceilometer*egg-info/
- sudo cp ceilometer-plugins/pipeline.yaml /etc/ceilometer/
- echo "Remember to restart ceilometer-anotification ceilometer-acentral screens"
+ #if [ -d ./ceilometer-plugins ]; then rm -fr ./ceilometer-plugins; fi
+ #git clone https://github.com/srikanthvavila/ceilometer-plugins.git
+ #sudo cp -r ceilometer-plugins/network/ext_services /opt/stack/ceilometer/ceilometer/network/
+ #sudo cp ceilometer-plugins/entry_points.txt /opt/stack/ceilometer/ceilometer*egg-info/
+ #sudo cp ceilometer-plugins/pipeline.yaml /etc/ceilometer/
+ #echo "Remember to restart ceilometer-anotification ceilometer-acentral screens"
ceilometer_pub_sub:
if [ -d ./pub-sub ]; then rm -fr ./pub-sub; fi
@@ -59,21 +109,26 @@
cd ../..
stop:
- sudo MYIP=$(MYIP) docker-compose stop
+ test ! -s $(DOCKER_COMPOSE_YML) || sudo docker-compose -p $(DOCKER_PROJECT) -f $(DOCKER_COMPOSE_YML) stop
+ sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) stop
rm: stop
- sudo MYIP=$(MYIP) docker-compose rm
+ test ! -s $(DOCKER_COMPOSE_YML) || sudo docker-compose -p $(DOCKER_PROJECT) -f $(DOCKER_COMPOSE_YML) rm -f
+ sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) rm -f
showlogs:
- sudo MYIP=$(MYIP) docker-compose logs
+ sudo docker-compose -p $(DOCKER_PROJECT) -f $(DOCKER_COMPOSE_YML) logs
-ps:
- sudo MYIP=$(MYIP) docker-compose ps
+showlogs_bootstrap:
+ sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) logs
cleanup: stop rm
./cleanup.sh
bash -c "source ../setup/admin-openrc.sh; nova list --all-tenants; neutron net-list"
+ps:
+ sudo MYIP=$(MYIP) docker-compose ps
+
devstack_net_fix:
sudo ../common/devstack/net-fix.sh
sudo bash -c "source ../setup/admin-openrc.sh; neutron subnet-update private-subnet --dns-nameservers list=true 8.8.8.8 8.8.4.4"
@@ -87,8 +142,10 @@
rebuild_synchronizer:
make -C ../../../containers/synchronizer
-devstack_images:
- bash -c "source ../setup/admin-openrc.sh; glance image-show ceilometer-trusty-server-multi-nic || ! mkdir -p /opt/stack/images || ! wget http://www.vicci.org/cord/ceilometer-trusty-server-multi-nic.compressed.qcow2 -P /opt/stack/images || glance image-create --name ceilometer-trusty-server-multi-nic --disk-format qcow2 --file /opt/stack/images/ceilometer-trusty-server-multi-nic.compressed.qcow2 --container-format bare"
+devstack_ceilometer_custom_images:
+ #Assuming Openstack Mitaka backend. The glance commands require --os-image-api-version 1 to be passed to use v1 version of glance APIs
+ bash -c "source ../setup/admin-openrc.sh; glance --os-image-api-version 1 image-show ceilometer-trusty-server-multi-nic || ! mkdir -p /opt/stack/images || ! wget http://www.vicci.org/cord/ceilometer-trusty-server-multi-nic.compressed.qcow2 -P /opt/stack/images || glance image-create --name ceilometer-trusty-server-multi-nic --disk-format qcow2 --file /opt/stack/images/ceilometer-trusty-server-multi-nic.compressed.qcow2 --container-format bare"
cloudlab_ceilometer_custom_images:
- bash -c "source ../setup/admin-openrc.sh; glance image-show ceilometer-trusty-server-multi-nic || if test -f /proj/xos-PG0/images/ceilometer-trusty-server-multi-nic.compressed.qcow2 ; then glance image-create --name ceilometer-trusty-server-multi-nic --disk-format qcow2 --file /proj/xos-PG0/images/ceilometer-trusty-server-multi-nic.compressed.qcow2 --container-format bare ; else mkdir -p /tmp/images && wget http://www.vicci.org/cord/ceilometer-trusty-server-multi-nic.compressed.qcow2 -P /tmp/images && glance image-create --name ceilometer-trusty-server-multi-nic --disk-format qcow2 --file /tmp/images/ceilometer-trusty-server-multi-nic.compressed.qcow2 --container-format bare ; fi "
+ bash -c "source ../setup/admin-openrc.sh; glance image-show --os-image-api-version 1 ceilometer-trusty-server-multi-nic || if test -f /proj/xos-PG0/images/ceilometer-trusty-server-multi-nic.compressed.qcow2 ; then glance image-create --name ceilometer-trusty-server-multi-nic --disk-format qcow2 --file /proj/xos-PG0/images/ceilometer-trusty-server-multi-nic.compressed.qcow2 --container-format bare ; else mkdir -p /tmp/images && wget http://www.vicci.org/cord/ceilometer-trusty-server-multi-nic.compressed.qcow2 -P /tmp/images && glance image-create --name ceilometer-trusty-server-multi-nic --disk-format qcow2 --file /tmp/images/ceilometer-trusty-server-multi-nic.compressed.qcow2 --container-format bare ; fi "
+