Merge "Set FORCE_REPO_UPDATE to false"
[icn.git] / Makefile
1 SHELL:=/bin/bash
2 ENV:=$(CURDIR)/env
3 BMDIR:=$(CURDIR)/env/metal3
4 METAL3DIR:=$(CURDIR)/deploy/metal3/scripts
5 BPA_OPERATOR:=$(CURDIR)/cmd/bpa-operator/
6 KUD_PATH:=$(CURDIR)/deploy/kud
7 SDWAN_VERIFIER_PATH:=$(CURDIR)/sdwan/test
8 BPA_REST_API:=$(CURDIR)/cmd/bpa-restapi-agent
9 BOOTLOADER_ENV:=$(CURDIR)/env/ubuntu/bootloader-env
10
11 help:
12         @echo "  Targets:"
13         @echo "  test             -- run unit tests"
14         @echo "  jump_server      -- install jump server into this machine"
15         @echo "  cluster          -- provision cluster(s)"
16         @echo "  verifier         -- run verifier tests for CI & CD logs"
17         @echo "  unit             -- run the unit tests"
18         @echo "  help             -- this help output"
19
20 install: jump_server \
21         bmh_provision
22
23 jump_server: package_prerequisite \
24         kud_bm_deploy_mini \
25         bmh_install \
26         capi_install \
27         flux_install \
28         bpa_op_install \
29         bpa_rest_api_install
30
31 clean_jump_server: bmh_clean_host \
32         kud_bm_reset \
33         clean_packages
34
35 package_prerequisite:
36          pushd $(BMDIR) && ./01_install_package.sh && popd
37
38 bmh_clean: bmh_deprovision bmo_clean
39
40 bmh_deprovision:
41         pushd $(METAL3DIR) && ./01_metal3.sh deprovision && \
42         ./03_verify_deprovisioning.sh && ./01_metal3.sh clean && popd
43
44 bmo_clean:
45         ./deploy/baremetal-operator/baremetal-operator.sh clean
46
47 bmh_clean_host:
48         pushd $(BMDIR) && ./06_host_cleanup.sh && popd
49
50 clean_packages:
51         pushd $(BOOTLOADER_ENV) && \
52         ./02_clean_bootloader_package_req.sh --only-packages && popd
53
54 clean_bm_packages:
55         pushd $(BOOTLOADER_ENV) && \
56         ./02_clean_bootloader_package_req.sh --bm-cleanall && popd
57
58 bmh_preinstall:
59         source user_config.sh && env && \
60         pushd $(BMDIR) && ./02_configure.sh && popd && \
61         ./deploy/ironic/ironic.sh deploy
62
63 bmh_install: bmh_preinstall
64         ./deploy/cert-manager/cert-manager.sh deploy && \
65         ./deploy/baremetal-operator/baremetal-operator.sh deploy
66
67 bmh_provision:
68         source user_config.sh && env && \
69         pushd $(METAL3DIR) && ./01_metal3.sh provision && \
70         ./02_verify.sh && popd
71
72 clean_all: bmh_clean \
73         clean_jump_server
74
75 cluster_provision:
76         pushd $(BPA_OPERATOR) && make provision && popd
77
78 cluster: bmh_provision \
79         cluster_provision
80
81 kud_bm_deploy_mini:
82         pushd $(KUD_PATH) && ./kud_bm_launch.sh minimal v1 && popd
83
84 kud_bm_deploy:
85         pushd $(KUD_PATH) && ./kud_bm_launch.sh all v2 && popd
86
87 kud_bm_deploy_e2e:
88         pushd $(KUD_PATH) && ./kud_bm_launch.sh bm v2 && popd
89
90 kud_bm_reset:
91         pushd $(KUD_PATH) && ./kud_bm_launch.sh reset v1 && popd
92
93 sdwan_verifier:
94         pushd $(SDWAN_VERIFIER_PATH) && bash sdwan_verifier.sh && popd
95
96 capi_install:
97         ./deploy/cluster-api/cluster-api.sh deploy
98
99 flux_install:
100         ./deploy/flux/flux.sh deploy
101
102 bpa_op_install:
103         pushd $(BPA_OPERATOR) && make docker && make deploy && popd
104
105 bpa_op_install_e2e:
106         pushd $(BPA_OPERATOR) && make docker_e2e && make deploy && popd
107
108 bpa_op_delete:
109         pushd $(BPA_OPERATOR) && make delete && popd
110
111 bpa_op_e2e_bmh:
112         pushd $(BPA_OPERATOR) && make e2etest_bmh && popd
113
114 bpa_op_unit:
115         pushd $(BPA_OPERATOR) && make unit_test && popd
116
117 bpa_op_bmh_verifier: bpa_op_install_e2e bpa_op_e2e_bmh
118
119 bpa_rest_api_install:
120         pushd $(BPA_REST_API) && make deploy && popd
121
122 bpa_rest_api_uninstall:
123         pushd $(BPA_REST_API) && make clean && popd
124
125 bpa_rest_api_verifier:
126         pushd $(BPA_REST_API) && make e2e_test && popd
127
128 bpa_rest_api_unit:
129         pushd $(BPA_REST_API) && make unit_test && popd
130
131 unit: prerequisite \
132         bashate \
133         bpa_op_unit \
134         bpa_rest_api_unit
135
136 bashate:
137         bashate -i E006,E003,E002,E010,E011,E042,E043 `find . -type f -not -path './cmd/bpa-operator/vendor/*' -not -path './ci/jjb/shell/*' -name "*.sh"`
138
139 prerequisite:
140         pushd $(ENV) && ./cd_package_installer.sh && popd
141
142 bm_verifer: jump_server \
143         pod11_cluster \
144         pod11_clean_cluster \
145         clean_jump_server
146
147 pod11_cluster:
148         ./deploy/site/pod11/pod11.sh deploy
149         ./deploy/site/pod11/pod11.sh wait
150         ./deploy/kata/kata.sh test
151         ./deploy/addons/addons.sh test
152
153 pod11_clean_cluster:
154         ./deploy/site/pod11/pod11.sh clean
155
156 verifier: vm_verifer
157
158 vm_verifier: jump_server \
159         vm_cluster \
160         vm_clean_cluster \
161         clean_jump_server
162
163 vm_cluster:
164         ./deploy/site/vm/vm.sh deploy
165         ./deploy/site/vm/vm.sh wait
166         ./deploy/kata/kata.sh test
167         ./deploy/addons/addons.sh test
168
169 vm_clean_cluster:
170         ./deploy/site/vm/vm.sh clean
171
172 bm_verify_nestedk8s: prerequisite \
173         kud_bm_deploy_e2e \
174         kud_bm_reset \
175         clean_bm_packages
176
177 kud_bm_verifier: prerequisite \
178         kud_bm_deploy_e2e \
179         kud_bm_reset \
180         clean_bm_packages
181
182 .PHONY: all bm_preinstall bm_install bashate