blob: bab34a39da378aafd2b63c84a0d179b453a9d067 [file] [log] [blame]
Pingping Linb7a7d2b2016-08-19 18:11:36 +00001include ../common/Makedefs
2
3CONFIG_DIR:=$(shell pwd)
4DOCKER_COMPOSE_YML=./onboarding-docker-compose/docker-compose.yml
5BOOTSTRAP_YML=./docker-compose-bootstrap.yml
6DOCKER_PROJECT=mcord
7BOOTSTRAP_PROJECT=mcordbs
8XOS_BOOTSTRAP_PORT=81
9XOS_UI_PORT=80
10ADMIN_USERNAME=padmin@vicci.org
11ADMIN_PASSWORD=letmein
12RUN_TOSCA_BOOTSTRAP=python ../common/run_tosca.py $(XOS_BOOTSTRAP_PORT) $(ADMIN_USERNAME) $(ADMIN_PASSWORD)
13RUN_TOSCA=python ../common/run_tosca.py $(XOS_UI_PORT) $(ADMIN_USERNAME) $(ADMIN_PASSWORD)
14
15.PHONY: xos
Matteo Scandolob286a6a2016-10-03 13:27:00 -070016xos: prereqs dirs download_xos download_services bootstrap onboarding podconfig slicing-ui
Pingping Linb7a7d2b2016-08-19 18:11:36 +000017
18prereqs:
19 sudo make -f ../common/Makefile.prereqs
20
21dirs:
22 # if this directory doesn't exist, then docker-compose will create it with root permission
23 mkdir -p key_import
24 mkdir -p onboarding-docker-compose
25
26bootstrap:
27 @echo "[BOOTSTRAP]"
28 @echo "XOS Image Build Date: `docker inspect -f '{{ .Created }}' xosproject/xos`"
29 @echo "XOS Image Commit Hash: `docker inspect -f '{{ .Config.Labels.XOS_GIT_COMMIT_HASH }}' xosproject/xos`"
30 @echo "XOS Image Commit Date: `docker inspect -f '{{ .Config.Labels.XOS_GIT_COMMIT_DATE }}' xosproject/xos`"
31 sudo rm -f onboarding-docker-compose/docker-compose.yml
32 sudo CONFIG_DIR=$(CONFIG_DIR) docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) up -d
Matteo Scandolod6440302016-10-03 11:33:06 -070033 bash ../common/wait_for_xos_port.sh $(XOS_BOOTSTRAP_PORT)
Pingping Linb7a7d2b2016-08-19 18:11:36 +000034 sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) run xos_bootstrap_ui python /opt/xos/tosca/run.py none - < ../common/fixtures.yaml
35 sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) run xos_bootstrap_ui python /opt/xos/tosca/run.py none - < ../common/mydeployment.yaml
36 $(RUN_TOSCA_BOOTSTRAP) xos.yaml
37
38download_xos:
39 make -f ../common/Makefile.services xos_core
40
41download_services:
42 make -f ../common/Makefile.services
43
44update_services:
45 make -f ../common/Makefile.services update
46
47update_xos:
48 make -f ../common/Makefile.services update_xos
49
50onboarding:
51 @echo "[ONBOARDING]"
52 # on-board any services here
Matteo Scandolod6440302016-10-03 11:33:06 -070053 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) xos
Pingping Linb7a7d2b2016-08-19 18:11:36 +000054 $(RUN_TOSCA_BOOTSTRAP) ../common/disable-onboarding.yaml
Pingping Linb5a1a0a2016-09-08 01:14:48 +000055
Pingping Linb7a7d2b2016-08-19 18:11:36 +000056 sudo cp id_rsa key_import/vBBU_rsa
57 sudo cp id_rsa.pub key_import/vBBU_rsa.pub
Pingping Lineb05ccd2016-09-19 21:23:59 +000058 sudo cp id_rsa key_import/vPGWC_rsa
59 sudo cp id_rsa.pub key_import/vPGWC_rsa.pub
Pingping Linb7a7d2b2016-08-19 18:11:36 +000060 sudo cp id_rsa key_import/onos_rsa
61 sudo cp id_rsa key_import/onos_rsa.pub
62 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/openstack/xos/openstack-onboard.yaml
Pingping Lin37e727c2016-08-29 23:02:12 +000063 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/vBBU/xos/vBBU-onboard.yaml
Pingping Lin97c12612016-09-19 23:40:53 +000064 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/vPGWC/xos/vPGWC-onboard.yaml
Pingping Linb7a7d2b2016-08-19 18:11:36 +000065 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/vtn/xos/vtn-onboard.yaml
66 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/onos-service/xos/onos-onboard.yaml
Matteo Scandolob286a6a2016-10-03 13:27:00 -070067 # $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/fabric/xos/\fabric-onboard.yaml
68 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/mcord_slicing_ui/xos/mcord-slicing-onboard.yaml
Pingping Linb7a7d2b2016-08-19 18:11:36 +000069 $(RUN_TOSCA_BOOTSTRAP) synchronizers.yaml
70 $(RUN_TOSCA_BOOTSTRAP) ../common/enable-onboarding.yaml
Matteo Scandolod6440302016-10-03 11:33:06 -070071 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) services/vbbu
72 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) services/vpgwc
73 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) services/vtn
74 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) services/onos
Matteo Scandolob286a6a2016-10-03 13:27:00 -070075 # bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) services/fabric
76 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) services/mcord_slicing_ui
Matteo Scandolod6440302016-10-03 11:33:06 -070077 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) xos
78 bash ../common/wait_for_xos_port.sh $(XOS_UI_PORT)
Pingping Linb7a7d2b2016-08-19 18:11:36 +000079
80podconfig: nodes.yaml images.yaml
81 @echo "[PODCONFIG]"
82 $(RUN_TOSCA) setup.yaml
83 $(RUN_TOSCA) nodes.yaml
84 $(RUN_TOSCA) images.yaml
85
86vtn: vtn-external.yaml
87 $(RUN_TOSCA) vtn-external.yaml
88
89delete_fabric_config:
90 http -a karaf:karaf DELETE http://onos-fabric:8181/onos/v1/network/configuration/
91
92fabric: fabric.yaml
93 cp ../../xos_services/fabric/config/network-cfg-quickstart.json .
94 $(RUN_TOSCA) fabric.yaml
95
96#cord: vsg_custom_images
Pingping Lin82366d32016-08-31 00:21:56 +000097mcord:
98 $(RUN_TOSCA) mgmt-net.yaml
99 $(RUN_TOSCA) mcord.yaml
Pingping Linb7a7d2b2016-08-19 18:11:36 +0000100# $(RUN_TOSCA) cord-volt-devices.yaml
101
102#cord-subscriber:
103# $(RUN_TOSCA) cord-test-subscriber.yaml
104
105clean-nodes:
106 rm -f nodes.yaml
107
108update-nodes: nodes.yaml
109 $(RUN_TOSCA) nodes.yaml
110
111new-nodes: clean-nodes update-nodes vtn
112
113rebuild:
114 bash ../common/rebuild.sh $(XOS_BOOTSTRAP_PORT)
Matteo Scandolod6440302016-10-03 11:33:06 -0700115 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) xos
Pingping Linb7a7d2b2016-08-19 18:11:36 +0000116
117exampleservice: onboard-exampleservice
118 $(RUN_TOSCA) pod-exampleservice.yaml
119
120onboard-exampleservice:
121 sudo cp id_rsa key_import/exampleservice_rsa
122 sudo cp id_rsa.pub key_import/exampleservice_rsa.pub
123 $(RUN_TOSCA_BOOTSTRAP) ../common/disable-onboarding.yaml
124 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/exampleservice/xos/exampleservice-onboard.yaml
125 $(RUN_TOSCA_BOOTSTRAP) exampleservice-synchronizer.yaml
126 $(RUN_TOSCA_BOOTSTRAP) ../common/enable-onboarding.yaml
Matteo Scandolod6440302016-10-03 11:33:06 -0700127 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) services/exampleservice
128 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) xos
129 bash ../common/wait_for_xos_port.sh $(XOS_UI_PORT)
Pingping Linb7a7d2b2016-08-19 18:11:36 +0000130
131cord-monitoringservice: ceilometer_custom_images onboard-monitoringservice
132 $(RUN_TOSCA) monitoringservice.yaml
133 $(RUN_TOSCA) monitoringtenant.yaml
134
135onboard-monitoringservice: download-monitoringservice
136 sudo cp id_rsa key_import/monitoringservice_rsa
137 sudo cp id_rsa.pub key_import/monitoringservice_rsa.pub
138 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/monitoring/xos/monitoring-onboard.yaml
139 $(RUN_TOSCA_BOOTSTRAP) monitoring_synchronizer.yaml
Matteo Scandolod6440302016-10-03 11:33:06 -0700140 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) services/monitoring
141 bash ../common/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) xos
142 bash ../common/wait_for_xos_port.sh $(XOS_UI_PORT)
Pingping Linb7a7d2b2016-08-19 18:11:36 +0000143
144download-monitoringservice:
145 make -f ../common/Makefile.services monitoring_services
146
147nodes.yaml:
148 export SETUPDIR=.; bash ../common/make-nodes-yaml.sh
149
150images.yaml:
151 export SETUPDIR=.; bash ../common/make-images-yaml.sh
152
153vtn-external.yaml:
154 export SETUPDIR=.; bash ./make-vtn-external-yaml.sh
155
156fabric.yaml:
157 export SETUPDIR=.; bash ./make-fabric-yaml.sh
158
159virtualbng_json:
160 export SETUPDIR=.; bash ./make-virtualbng-json.sh
161
162vtn_network_cfg_json:
163 export SETUPDIR=.; bash ./make-vtn-networkconfig-json.sh
164
165stop:
166 test ! -s $(DOCKER_COMPOSE_YML) || sudo docker-compose -p $(DOCKER_PROJECT) -f $(DOCKER_COMPOSE_YML) stop
167 sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) stop
168
169rm: stop
170 test ! -s $(DOCKER_COMPOSE_YML) || sudo docker-compose -p $(DOCKER_PROJECT) -f $(DOCKER_COMPOSE_YML) rm -f
171 sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) rm -f
172
173showlogs:
174 sudo docker-compose -p $(DOCKER_PROJECT) -f $(DOCKER_COMPOSE_YML) logs
175
176showlogs_bootstrap:
177 sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) logs
178
179cleanup: stop rm
180 ./cleanup.sh
181 bash -c "source ./admin-openrc.sh; nova list --all-tenants; neutron net-list"
182
183ceilometer_custom_images: images/ceilometer-service-trusty-server-multi-nic.img images/ceilometer-trusty-server-multi-nic.img
184 #TODO: Add logic for service VM custom image (ceilometer-service-trusty-server-multi-nic)
185 bash -c "source ./admin-openrc.sh; glance image-show ceilometer-trusty-server-multi-nic || glance image-create --name ceilometer-trusty-server-multi-nic --disk-format qcow2 --file ./images/ceilometer-trusty-server-multi-nic.compressed.qcow2 --container-format bare"
186
187#vsg_custom_images: images/vsg-1.1.img
Pingping Lin5681d7d2016-09-13 23:29:50 +0000188# bash -c "source ./admin-openrc.sh; glance image-show vsg-1.1 || glance image-create --name vsg-1.1 --disk-format qcow2 --file ./images/vsg-1.1.img --container-format bare"
Pingping Linb7a7d2b2016-08-19 18:11:36 +0000189
190images/ceilometer-trusty-server-multi-nic.img: images
191 bash -c "source ./admin-openrc.sh; glance image-show ceilometer-trusty-server-multi-nic || wget http://www.vicci.org/cord/ceilometer-trusty-server-multi-nic.compressed.qcow2 -P ./images"
192
193images/ceilometer-service-trusty-server-multi-nic.img: images
194 #TODO: Add logic for service VM custom image (ceilometer-service-trusty-server-multi-nic) once image is uploaded into vicci portal
195 #bash -c "source ../setup/admin-openrc.sh; glance image-show ceilometer-service-trusty-server-multi-nic || wget http://www.vicci.org/cord/ceilometer-service-trusty-server-multi-nic.compressed.qcow2 -P ./images"
196
197#images/vsg-1.1.img: images
198# [ -s images/vsg-1.1.img ] || wget http://www.vicci.org/cord/vsg-1.1.img -P ./images
199
200images:
201 mkdir -p ./images
202
203.PHONY: local_containers
204local_containers: prereqs download_xos
205 make -f ../common/Makefile.containers update_certs xos_base xos_devel synchronizer onboarding_synchronizer
206
Matteo Scandolo1105c5b2016-10-03 11:25:34 -0700207slicing-ui:
208 $(RUN_TOSCA) ./mcord-slicing-ui.yaml