Update versions of addons
[icn.git] / Makefile
1 SHELL:=/bin/bash
2
3 help:
4         @echo "  Targets:"
5         @echo "  jump_server      -- install jump server into this machine"
6         @echo "  unit             -- run the unit tests"
7         @echo "  verifier         -- run verifier tests for CI & CD logs"
8         @echo "  vm_cluster       -- deploy VM compute cluster"
9         @echo "  pod11_cluster    -- deploy pod11 compute cluster"
10         @echo "  help             -- this help output"
11
12 install: jump_server
13
14 # The jump server
15
16 jump_server: management_cluster \
17         tools \
18         ironic_bridge \
19         controllers
20
21 jump_server_clean: ironic_bridge_clean \
22         management_cluster_clean
23
24 # The jump server requires a K8s cluster to install into
25
26 management_cluster:
27         source user_config.sh && \
28         ./deploy/kud/kud_bm_launch.sh minimal
29
30 management_cluster_clean:
31         ./deploy/kud/kud_bm_launch.sh reset
32
33 # Tools used during the installation of jump server components
34
35 tools: kustomize \
36         clusterctl \
37         flux_cli \
38         sops \
39         emcoctl
40
41 kustomize:
42         ./deploy/kustomize/kustomize.sh deploy
43
44 clusterctl:
45         ./deploy/clusterctl/clusterctl.sh deploy
46
47 flux_cli:
48         ./deploy/flux-cli/flux-cli.sh deploy
49
50 sops:
51         ./deploy/sops/sops.sh deploy
52
53 emcoctl: golang
54         ./deploy/emcoctl/emcoctl.sh deploy
55
56 golang:
57         ./deploy/golang/golang.sh deploy
58
59 kubectl:
60         ./deploy/kubectl/kubectl.sh deploy
61
62 yq:
63         ./deploy/yq.sh deploy
64
65 # Provisioning network configuration in the jump server
66
67 ironic_bridge:
68         source user_config.sh && env && \
69         ./deploy/ironic/ironic.sh deploy-bridge
70
71 ironic_bridge_clean:
72         ./deploy/ironic/ironic.sh clean-bridge
73
74 # Jump server components
75
76 controllers: baremetal_operator \
77         cluster_api \
78         flux
79
80 baremetal_operator: ironic cert_manager
81         ./deploy/baremetal-operator/baremetal-operator.sh deploy
82
83 baremetal_operator_clean:
84         ./deploy/baremetal-operator/baremetal-operator.sh clean
85
86 ironic:
87         ./deploy/ironic/ironic.sh deploy
88
89 cert_manager:
90         ./deploy/cert-manager/cert-manager.sh deploy
91
92 cluster_api:
93         ./deploy/cluster-api/cluster-api.sh deploy
94
95 flux:
96         ./deploy/flux/flux.sh deploy
97
98 # Example compute clusters
99
100 pod11_cluster:
101         ./deploy/site/pod11/pod11.sh deploy
102         ./deploy/site/pod11/pod11.sh wait
103         ./deploy/kata/kata.sh test
104         ./deploy/addons/addons.sh test
105
106 pod11_cluster_clean:
107         ./deploy/site/pod11/pod11.sh clean
108
109 vm_cluster:
110         ./deploy/site/vm/vm.sh deploy
111         ./deploy/site/vm/vm.sh wait
112         ./deploy/kata/kata.sh test
113         ./deploy/addons/addons.sh test
114
115 vm_cluster_clean:
116         ./deploy/site/vm/vm.sh clean
117
118 # Test targets
119
120 unit: bashate
121
122 bashate:
123         bashate -i E006,E003,E002,E010,E011,E042,E043 `find . -type f -not -path './ci/jjb/shell/*' -not -path './build/*' -name "*.sh"`
124
125 verifier: vm_verifier
126
127 vm_verifier: jump_server \
128         vm_cluster \
129         vm_cluster_clean \
130         jump_server_clean
131
132 bm_verifier: jump_server \
133         pod11_cluster \
134         pod11_cluster_clean \
135         jump_server_clean
136
137 SDWAN_VERIFIER_PATH:=$(CURDIR)/sdwan/test
138 sdwan_verifier:
139         pushd $(SDWAN_VERIFIER_PATH) && bash sdwan_verifier.sh && popd
140
141 # Development targets
142 source: flux_cli kubectl kustomize yq
143         ./deploy/baremetal-operator/baremetal-operator.sh build-source
144         ./deploy/cdi-operator/cdi-operator.sh build-source
145         ./deploy/cdi/cdi.sh build-source
146         ./deploy/cert-manager/cert-manager.sh build-source
147         ./deploy/cluster/cluster.sh build-source
148         ./deploy/cpu-manager/cpu-manager.sh build-source
149         ./deploy/ironic/ironic.sh build-source
150         ./deploy/kata/kata.sh build-source
151         ./deploy/kubevirt-operator/kubevirt-operator.sh build-source
152         ./deploy/kubevirt/kubevirt.sh build-source
153         ./deploy/multus-cni/multus-cni.sh build-source
154         ./deploy/nodus/nodus.sh build-source
155         ./deploy/qat-plugin/qat-plugin.sh build-source