Refactored BPA controller code for better testing
[icn.git] / Makefile
1 SHELL:=/bin/bash
2 ENV:=$(CURDIR)/env
3 BMDIR:=$(CURDIR)/env/metal3
4 METAL3DIR:=$(CURDIR)/deploy/metal3/scripts
5 METAL3VMDIR:=$(CURDIR)/deploy/metal3-vm
6 BPA_OPERATOR:=$(CURDIR)/cmd/bpa-operator/
7 KUD_PATH:=$(CURDIR)/deploy/kud
8 SDWAN_VERIFIER_PATH:=$(CURDIR)/sdwan/test
9 BPA_REST_API:=$(CURDIR)/cmd/bpa-restapi-agent
10
11
12 help:
13         @echo "  Targets:"
14         @echo "  test             -- run unit tests"
15         @echo "  installer        -- run icn installer"
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 all: bm_install
21
22 bm_preinstall:
23         pushd $(BMDIR) && ./01_install_package.sh && ./02_configure.sh && ./03_launch_prereq.sh && popd
24
25 bm_install:
26         pushd $(METAL3DIR) && ./metal3.sh && popd
27
28 bm_all: bm_preinstall bm_install
29
30 kud_bm_deploy_mini:
31         pushd $(KUD_PATH) && ./kud_bm_launch.sh minimal && popd
32
33 kud_bm_deploy:
34         pushd $(KUD_PATH) && ./kud_bm_launch.sh all && popd
35
36 metal3_prerequisite:
37         pushd $(METAL3VMDIR) && make bmh_install && popd
38
39 metal3_vm:
40         pushd $(METAL3VMDIR) && make bmh && popd
41
42 sdwan_verifier:
43         pushd $(SDWAN_VERIFIER_PATH) && bash sdwan_verifier.sh && popd
44
45 bpa_op_install:
46         pushd $(BPA_OPERATOR) && make docker && make deploy && popd
47
48 bpa_op_delete:
49         pushd $(BPA_OPERATOR) && make delete && popd
50
51 bpa_op_e2e:
52         pushd $(BPA_OPERATOR) && make e2etest && popd
53
54 bpa_op_verifier: bpa_op_install bpa_op_e2e
55
56 bpa_op_all: bm_all bpa_op_install
57
58 bpa_rest_api_install:
59         pushd $(BPA_REST_API) && make deploy && popd
60
61 bpa_rest_api_verifier:
62         pushd $(BPA_REST_API) && make e2e_test && popd
63
64 bashate:
65         bashate -i E006,E003,E002,E010,E011,E042,E043 `find . -type f -not -path './cmd/bpa-operator/vendor/*' -name *.sh`
66
67 prerequisite:
68         pushd $(ENV) && ./cd_package_installer.sh && popd
69
70 verify_all: prerequisite \
71         metal3_prerequisite \
72         kud_bm_deploy_mini \
73         metal3_vm \
74         bpa_op_verifier \
75         bpa_rest_api_verifier
76
77 verifier: verify_all
78
79 verify_nestedk8s: prerequisite \
80         kud_bm_deploy \
81         sdwan_verifier
82
83 .PHONY: all bm_preinstall bm_install bashate