blob: 14f53a471714e187479d1b8f3ad17179f4f76d8a [file] [log] [blame]
Scott Baker50421662016-06-27 22:09:48 -07001include ../common/Makedefs
2
3CONFIG_DIR:=$(shell pwd)
4DOCKER_COMPOSE_YML=./onboarding-docker-compose/docker-compose.yml
5BOOTSTRAP_YML=./docker-compose-bootstrap.yml
6DOCKER_PROJECT=cordpod
7BOOTSTRAP_PROJECT=cordpodbs
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
Scott Bakerbda441d2016-06-28 14:14:31 -070016xos: prereqs dirs download_xos download_services bootstrap onboarding podconfig
Scott Baker50421662016-06-27 22:09:48 -070017
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 sudo rm -f onboarding-docker-compose/docker-compose.yml
29 sudo CONFIG_DIR=$(CONFIG_DIR) docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) up -d
30 bash ../common/wait_for_xos_port.sh 81
31 sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) run xos_bootstrap_ui python /opt/xos/tosca/run.py none - < ../common/fixtures.yaml
32 sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) run xos_bootstrap_ui python /opt/xos/tosca/run.py none - < ../common/mydeployment.yaml
33 $(RUN_TOSCA_BOOTSTRAP) xos.yaml
34
Scott Bakerbda441d2016-06-28 14:14:31 -070035download_xos:
36 make -f ../common/Makefile.services xos_core
37
Scott Baker50421662016-06-27 22:09:48 -070038download_services:
39 make -f ../common/Makefile.services
40
41update_services:
42 make -f ../common/Makefile.services update
43
44onboarding:
45 echo "[ONBOARDING]"
46 # on-board any services here
47 bash ../common/wait_for_onboarding_ready.sh 81 xos
48 $(RUN_TOSCA_BOOTSTRAP) ../common/disable-onboarding.yaml
49 sudo cp id_rsa key_import/vsg_rsa
50 sudo cp id_rsa.pub key_import/vsg_rsa.pub
51 sudo cp id_rsa key_import/volt_rsa
52 sudo cp id_rsa.pub key_import/volt_rsa.pub
53 sudo cp id_rsa key_import/onos_rsa
54 sudo cp id_rsa key_import/onos_rsa.pub
55 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/vrouter/xos/vrouter-onboard.yaml
56 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/olt/xos/volt-onboard.yaml
57 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/vsg/xos/vsg-onboard.yaml
58 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/vtn/xos/vtn-onboard.yaml
59 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/onos-service/xos/onos-onboard.yaml
60 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/fabric/xos/\fabric-onboard.yaml
61 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/vtr/xos/vtr-onboard.yaml
62 $(RUN_TOSCA_BOOTSTRAP) synchronizers.yaml
63 $(RUN_TOSCA_BOOTSTRAP) ../common/enable-onboarding.yaml
64 bash ../common/wait_for_onboarding_ready.sh 81 services/vrouter
65 bash ../common/wait_for_onboarding_ready.sh 81 services/volt
66 bash ../common/wait_for_onboarding_ready.sh 81 services/vsg
67 bash ../common/wait_for_onboarding_ready.sh 81 services/vtn
68 bash ../common/wait_for_onboarding_ready.sh 81 services/onos
69 bash ../common/wait_for_onboarding_ready.sh 81 services/fabric
70 bash ../common/wait_for_onboarding_ready.sh 81 services/vtr
71 bash ../common/wait_for_onboarding_ready.sh 81 xos
72 bash ../common/wait_for_xos_port.sh 80
73
74podconfig: nodes.yaml images.yaml
75 echo "[PODCONFIG]"
76 $(RUN_TOSCA) setup.yaml
77 $(RUN_TOSCA) nodes.yaml
78 $(RUN_TOSCA) images.yaml
79
80vtn: vtn-external.yaml
81 $(RUN_TOSCA) vtn-external.yaml
82
83fabric: fabric.yaml
Andy Bavier494e65a2016-07-19 15:07:57 -040084 cp ../../xos_services/fabric/config/network-cfg-quickstart.json .
Scott Baker50421662016-06-27 22:09:48 -070085 $(RUN_TOSCA) fabric.yaml
86
87cord: vsg_custom_images
88 $(RUN_TOSCA) mgmt-net.yaml
Andy Bavierdf3f0df2016-06-30 16:46:32 -040089 $(RUN_TOSCA) cord-services.yaml
Scott Baker50421662016-06-27 22:09:48 -070090 $(RUN_TOSCA) cord-volt-devices.yaml
91
Andy Bavierdf3f0df2016-06-30 16:46:32 -040092cord-subscriber:
93 $(RUN_TOSCA) cord-test-subscriber.yaml
94
Scott Baker50421662016-06-27 22:09:48 -070095clean-nodes:
96 rm -f nodes.yaml
97
98update-nodes: nodes.yaml
99 $(RUN_TOSCA) nodes.yaml
100
101new-nodes: clean-nodes update-nodes vtn
102
103exampleservice: onboard-exampleservice
104 $(RUN_TOSCA) pod-exampleservice.yaml
105
106onboard-exampleservice:
107 sudo cp id_rsa key_import/exampleservice_rsa
108 sudo cp id_rsa.pub key_import/exampleservice_rsa.pub
Scott Baker80a8e752016-07-14 12:01:21 -0700109 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/exampleservice/xos/exampleservice-onboard.yaml
Scott Bakerec4099c2016-07-25 08:55:16 -0700110 $(RUN_TOSCA_BOOTSTRAP) exampleservice-synchronizer.yaml
Scott Baker50421662016-06-27 22:09:48 -0700111 bash ../common/wait_for_onboarding_ready.sh 81 services/exampleservice
112 bash ../common/wait_for_onboarding_ready.sh 81 xos
113 bash ../common/wait_for_xos_port.sh 80
114
Scott Bakerd1545d32016-06-29 11:27:33 -0700115cord-monitoringservice: ceilometer_custom_images cord onboard-monitoringservice
116 $(RUN_TOSCA) monitoringservice.yaml
Scott Baker50421662016-06-27 22:09:48 -0700117
Scott Bakerd1545d32016-06-29 11:27:33 -0700118onboard-monitoringservice: download-monitoringservice
119 sudo cp id_rsa key_import/monitoringservice_rsa
120 sudo cp id_rsa.pub key_import/monitoringservice_rsa.pub
121 $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/monitoring/xos/monitoring-onboard.yaml
122 bash ../common/wait_for_onboarding_ready.sh 81 services/monitoring
Scott Baker50421662016-06-27 22:09:48 -0700123 bash ../common/wait_for_onboarding_ready.sh 81 xos
124 bash ../common/wait_for_xos_port.sh 80
125
Scott Bakerd1545d32016-06-29 11:27:33 -0700126download-monitoringservice:
Scott Baker50421662016-06-27 22:09:48 -0700127 make -f ../common/Makefile.services monitoring_services
128
129nodes.yaml:
130 export SETUPDIR=.; bash ../common/make-nodes-yaml.sh
131
132images.yaml:
133 export SETUPDIR=.; bash ../common/make-images-yaml.sh
134
135vtn-external.yaml:
136 export SETUPDIR=.; bash ./make-vtn-external-yaml.sh
137
138fabric.yaml:
139 export SETUPDIR=.; bash ./make-fabric-yaml.sh
140
141virtualbng_json:
142 export SETUPDIR=.; bash ./make-virtualbng-json.sh
143
144vtn_network_cfg_json:
145 export SETUPDIR=.; bash ./make-vtn-networkconfig-json.sh
146
147stop:
148 test ! -s $(DOCKER_COMPOSE_YML) || sudo docker-compose -p $(DOCKER_PROJECT) -f $(DOCKER_COMPOSE_YML) stop
149 sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) stop
150
151rm:
152 test ! -s $(DOCKER_COMPOSE_YML) || sudo docker-compose -p $(DOCKER_PROJECT) -f $(DOCKER_COMPOSE_YML) rm
153 sudo docker-compose -p $(BOOTSTRAP_PROJECT) -f $(BOOTSTRAP_YML) rm
154
155showlogs:
156 sudo MYIP=$(MYIP) docker-compose logs
157
158cleanup: stop rm
159 ./cleanup.sh
160 bash -c "source ./admin-openrc.sh; nova list --all-tenants; neutron net-list"
161
162ceilometer_custom_images: images/ceilometer-trusty-server-multi-nic.img
163 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.img --container-format bare"
164
165vsg_custom_images: images/vsg-1.0.img
166 bash -c "source ./admin-openrc.sh; glance image-show vsg-1.0 || glance image-create --name vsg-1.0 --disk-format qcow2 --file ./images/vsg-1.0.img --container-format bare"
167
168images/ceilometer-trusty-server-multi-nic.img: images
169 wget http://www.vicci.org/cord/ceilometer-trusty-server-multi-nic.compressed.qcow2 -P ./images
170 mv ./images/ceilometer-trusty-server-multi-nic.compressed.qcow2 ./images/ceilometer-trusty-server-multi-nic.img
171
172images/vsg-1.0.img: images
173 wget http://www.vicci.org/cord/vsg-1.0.img -P ./images
174
175images:
176 mkdir -p ./images
177
178.PHONY: local_containers
Scott Bakerbda441d2016-06-28 14:14:31 -0700179local_containers: prereqs download_xos
Scott Baker50421662016-06-27 22:09:48 -0700180 make -f ../common/Makefile.containers update_certs xos_devel synchronizer onboarding_synchronizer
181