VM verify builds expect verifier target
[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 package_prerequisite:
32          pushd $(BMDIR) && ./01_install_package.sh && popd
33
34 bmh_clean: bmh_deprovision bmo_clean
35
36 bmh_deprovision:
37         pushd $(METAL3DIR) && ./01_metal3.sh deprovision && \
38         ./03_verify_deprovisioning.sh && ./01_metal3.sh clean && popd
39
40 bmo_clean:
41         ./deploy/baremetal-operator/baremetal-operator.sh clean
42
43 bmh_clean_host:
44         pushd $(BMDIR) && ./06_host_cleanup.sh && popd
45
46 clean_packages:
47         pushd $(BOOTLOADER_ENV) && \
48         ./02_clean_bootloader_package_req.sh --only-packages && popd
49
50 clean_bm_packages:
51         pushd $(BOOTLOADER_ENV) && \
52         ./02_clean_bootloader_package_req.sh --bm-cleanall && popd
53
54 bmh_preinstall:
55         source user_config.sh && env && \
56         pushd $(BMDIR) && ./02_configure.sh && popd && \
57         ./deploy/ironic/ironic.sh deploy
58
59 bmh_install: bmh_preinstall
60         ./deploy/cert-manager/cert-manager.sh deploy && \
61         ./deploy/baremetal-operator/baremetal-operator.sh deploy
62
63 bmh_provision:
64         source user_config.sh && env && \
65         pushd $(METAL3DIR) && ./01_metal3.sh provision && \
66         ./02_verify.sh && popd
67
68 clean_all: bmh_clean \
69         bmh_clean_host \
70         kud_bm_reset \
71         clean_packages
72
73 cluster_provision:
74         pushd $(BPA_OPERATOR) && make provision && popd
75
76 cluster: bmh_provision \
77         cluster_provision
78
79 kud_bm_deploy_mini:
80         pushd $(KUD_PATH) && ./kud_bm_launch.sh minimal v1 && popd
81
82 kud_bm_deploy:
83         pushd $(KUD_PATH) && ./kud_bm_launch.sh all v2 && popd
84
85 kud_bm_deploy_e2e:
86         pushd $(KUD_PATH) && ./kud_bm_launch.sh bm v2 && popd
87
88 kud_bm_reset:
89         pushd $(KUD_PATH) && ./kud_bm_launch.sh reset v1 && popd
90
91 sdwan_verifier:
92         pushd $(SDWAN_VERIFIER_PATH) && bash sdwan_verifier.sh && popd
93
94 capi_install:
95         ./deploy/cluster-api/cluster-api.sh deploy
96
97 flux_install:
98         ./deploy/flux/flux.sh deploy
99
100 bpa_op_install:
101         pushd $(BPA_OPERATOR) && make docker && make deploy && popd
102
103 bpa_op_install_e2e:
104         pushd $(BPA_OPERATOR) && make docker_e2e && make deploy && popd
105
106 bpa_op_delete:
107         pushd $(BPA_OPERATOR) && make delete && popd
108
109 bpa_op_e2e_bmh:
110         pushd $(BPA_OPERATOR) && make e2etest_bmh && popd
111
112 bpa_op_unit:
113         pushd $(BPA_OPERATOR) && make unit_test && popd
114
115 bpa_op_bmh_verifier: bpa_op_install_e2e bpa_op_e2e_bmh
116
117 bpa_rest_api_install:
118         pushd $(BPA_REST_API) && make deploy && popd
119
120 bpa_rest_api_uninstall:
121         pushd $(BPA_REST_API) && make clean && popd
122
123 bpa_rest_api_verifier:
124         pushd $(BPA_REST_API) && make e2e_test && popd
125
126 bpa_rest_api_unit:
127         pushd $(BPA_REST_API) && make unit_test && popd
128
129 unit: prerequisite \
130         bashate \
131         bpa_op_unit \
132         bpa_rest_api_unit
133
134 bashate:
135         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"`
136
137 prerequisite:
138         pushd $(ENV) && ./cd_package_installer.sh && popd
139
140 bm_verifer: package_prerequisite \
141         kud_bm_deploy_mini \
142         bmh_install \
143         bmh_provision \
144         bpa_op_bmh_verifier \
145         bpa_rest_api_verifier \
146         clean_all
147
148 verifier: vm_verifer
149
150 vm_verifier: jump_server \
151         vm_cluster \
152         vm_clean_all
153
154 vm_cluster:
155         ./deploy/site/vm/vm.sh deploy
156         ./deploy/site/vm/vm.sh wait
157         ./deploy/kata/kata.sh test
158         ./deploy/addons/addons.sh test
159
160 vm_clean_cluster:
161         ./deploy/site/vm/vm.sh clean
162
163 vm_clean_all: vm_clean_cluster \
164         bmo_clean \
165         bmh_clean_host \
166         kud_bm_reset \
167         clean_packages
168
169 bm_verify_nestedk8s: prerequisite \
170         kud_bm_deploy_e2e \
171         kud_bm_reset \
172         clean_bm_packages
173
174 kud_bm_verifier: prerequisite \
175         kud_bm_deploy_e2e \
176         kud_bm_reset \
177         clean_bm_packages
178
179 .PHONY: all bm_preinstall bm_install bashate