Skip to content

Commit 91ae466

Browse files
committed
add missing cases of openshift deployment
Signed-off-by: Sunyanan Choochotkaew <[email protected]>
1 parent a01ca5f commit 91ae466

File tree

7 files changed

+148
-26
lines changed

7 files changed

+148
-26
lines changed

Makefile

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -72,21 +72,31 @@ test: build-test test-pipeline test-estimator test-model-server test-offline-tra
7272

7373
# set image
7474
set-image:
75-
cd ./manifests/base && kustomize edit set image kepler_model_server=$(IMAGE)
76-
cd ./manifests/server && kustomize edit set image kepler_model_server=$(IMAGE)
75+
@cd ./manifests/base && kustomize edit set image kepler_model_server=$(IMAGE)
76+
@cd ./manifests/server && kustomize edit set image kepler_model_server=$(IMAGE)
7777

7878
# deploy
7979
_deploy:
80-
$(MAKE) set-image
81-
kustomize build ./manifests/base|kubectl apply -f -
80+
@$(MAKE) set-image
81+
@kustomize build ./manifests/base|kubectl apply -f -
82+
83+
# print
84+
_print:
85+
@$(MAKE) set-image
86+
@kustomize build ./manifests/base|cat
8287

8388
cleanup:
8489
kustomize build manifests/base|kubectl delete -f -
8590

8691
deploy:
87-
chmod +x ./manifests/set.sh
88-
./manifests/set.sh "${OPTS}"
89-
$(MAKE) _deploy
92+
@chmod +x ./manifests/set.sh
93+
@./manifests/set.sh "${OPTS}"
94+
@$(MAKE) _deploy
95+
96+
manifest:
97+
@chmod +x ./manifests/set.sh
98+
@./manifests/set.sh "${OPTS}"
99+
@$(MAKE) _print
90100

91101
e2e-test:
92102
chmod +x ./tests/e2e_test.sh
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
namespace: kepler
2+
3+
patchesStrategicMerge:
4+
- ./patch/patch-estimator-sidecar.yaml
5+
- ./patch/patch-openshift.yaml
6+
7+
resources:
8+
- ../kepler
9+
- ./openshift/scc.yaml
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
namespace: kepler
2+
3+
patchesStrategicMerge:
4+
- ./patch/patch-estimator-sidecar.yaml
5+
- ./patch/patch-model-server.yaml
6+
- ./patch/patch-openshift.yaml
7+
8+
resources:
9+
- ../kepler
10+
- ../server
11+
- ./openshift/scc.yaml

manifests/base/openshift/scc.yaml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# scc for the Kepler
2+
kind: SecurityContextConstraints
3+
apiVersion: security.openshift.io/v1
4+
metadata:
5+
name: kepler-scc
6+
# To allow running privilegedContainers
7+
allowPrivilegedContainer: true
8+
allowHostDirVolumePlugin: true
9+
allowHostNetwork: false
10+
allowHostPorts: false
11+
allowHostIPC: false
12+
allowHostPID: true
13+
readOnlyRootFilesystem: true
14+
defaultAddCapabilities:
15+
- SYS_ADMIN
16+
runAsUser:
17+
type: RunAsAny
18+
seLinuxContext:
19+
type: RunAsAny
20+
fsGroup:
21+
type: RunAsAny
22+
volumes:
23+
- configMap
24+
- projected
25+
- emptyDir
26+
- hostPath
27+
- secret
28+
users:
29+
- kepler
30+
- system:serviceaccount:kepler:kepler-sa
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
namespace: kepler
2+
3+
patchesStrategicMerge:
4+
- ./patch/patch-model-server.yaml
5+
- ./patch/patch-openshift.yaml
6+
7+
resources:
8+
- ../kepler
9+
- ../server
10+
- ./openshift/scc.yaml
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
apiVersion: v1
2+
kind: Namespace
3+
metadata:
4+
annotations:
5+
openshift.io/description: "Kepler exporter"
6+
openshift.io/display-name: ""
7+
name: kepler
8+
---
9+
apiVersion: apps/v1
10+
kind: DaemonSet
11+
metadata:
12+
name: kepler-exporter
13+
namespace: kepler
14+
spec:
15+
template:
16+
spec:
17+
containers:
18+
- name: kepler-exporter
19+
volumeMounts:
20+
- name: kernel-src
21+
mountPath: /usr/src/kernels
22+
- name: kernel-debug
23+
mountPath: /sys/kernel/debug
24+
securityContext:
25+
privileged: true
26+
volumes:
27+
- name: kernel-debug
28+
hostPath:
29+
path: /sys/kernel/debug
30+
type: Directory
31+
- name: kernel-src
32+
hostPath:
33+
path: /usr/src/kernels
34+
type: Directory

manifests/set.sh

Lines changed: 37 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -33,35 +33,53 @@ fi
3333

3434
echo "Preparing manifests..."
3535

36-
if [ ! -z ${ESTIMATOR} ]; then
37-
echo "add estimator-sidecar"
38-
cp ./manifests/base/estimate-only/kustomization.yaml ./manifests/base/kustomization.yaml
39-
fi
40-
4136
if [ ! -z ${SERVER} ]; then
4237
echo "deploy model server"
4338
if [ ! -z ${ESTIMATOR} ]; then
44-
# with estimator, replace estimate-only with estimate-with-server
39+
echo "add estimator-sidecar"
40+
# OPTS="ESTIMATOR SERVER" --> base
4541
cp ./manifests/base/estimate-with-server/kustomization.yaml ./manifests/base/kustomization.yaml
42+
if [ ! -z ${OPENSHIFT_DEPLOY} ]; then
43+
echo "patch openshift deployment for exporter (estimator-with-server)"
44+
# OPTS="ESTIMATOR SERVER OPENSHIFT_DEPLOY" --> base
45+
cp ./manifests/base/openshift/estimate-with-server/kustomization.yaml ./manifests/base/kustomization.yaml
46+
fi
4647
else
48+
# OPTS="SERVER" --> base
4749
cp ./manifests/base/serve-only/kustomization.yaml ./manifests/base/kustomization.yaml
50+
if [ ! -z ${OPENSHIFT_DEPLOY} ]; then
51+
echo "patch openshift deployment for exporter (serve-only)"
52+
# OPTS="SERVER OPENSHIFT_DEPLOY" --> base
53+
cp ./manifests/base/openshift/serve-only/kustomization.yaml ./manifests/base/kustomization.yaml
54+
fi
4855
fi
49-
# default
50-
cp ./manifests/server/base/kustomization.yaml ./manifests/server/kustomization.yaml
51-
if [ ! -z ${OPENSHIFT_DEPLOY} ]; then
52-
# replace with openshift serve-only
53-
echo "openshift deployment"
54-
cp ./manifests/server/openshift/serve-only/kustomization.yaml ./manifests/server/kustomization.yaml
55-
fi
56-
56+
5757
if [ ! -z ${ONLINE_TRAINER} ]; then
58-
# replace with online-train
5958
echo "add online trainer"
60-
if [ ! -z ${OPENSHIFT_DEPLOY} ]; then
61-
cp ./manifests/server/openshift/online-train/kustomization.yaml ./manifests/server/kustomization.yaml
62-
else
63-
cp ./manifests/server/online-train/kustomization.yaml ./manifests/server/kustomization.yaml
59+
# OPTS="... SERVER ONLINE_TRAINER" --> server
60+
cp ./manifests/server/online-train/kustomization.yaml ./manifests/server/kustomization.yaml
61+
if [ ! -z ${OPENSHIFT_DEPLOY} ]; then
62+
echo "patch openshift deployment for server (with online trainer)"
63+
# OPTS="... SERVER ONLINE_TRAINER OPENSHIFT_DEPLOY" --> server
64+
cp ./manifests/server/openshift/online-train/kustomization.yaml ./manifests/server/kustomization.yaml
6465
fi
66+
else
67+
# OPTS="... SERVER" --> server
68+
cp ./manifests/server/base/kustomization.yaml ./manifests/server/kustomization.yaml
69+
if [ ! -z ${OPENSHIFT_DEPLOY} ]; then
70+
echo "patch openshift deployment for server"
71+
# OPTS="... SERVER OPENSHIFT_DEPLOY" --> server
72+
cp ./manifests/server/openshift/serve-only/kustomization.yaml ./manifests/server/kustomization.yaml
73+
fi
74+
fi
75+
elif [ ! -z ${ESTIMATOR} ]; then
76+
echo "add estimator-sidecar"
77+
# OPTS="ESTIMATOR" --> base
78+
cp ./manifests/base/estimate-only/kustomization.yaml ./manifests/base/kustomization.yaml
79+
if [ ! -z ${OPENSHIFT_DEPLOY} ]; then
80+
echo "patch openshift deployment for exporter (estimator-only)"
81+
# OPTS="ESTIMATOR OPENSHIFT_DEPLOY" --> base
82+
cp ./manifests/base/openshift/estimate-only/kustomization.yaml ./manifests/base/kustomization.yaml
6583
fi
6684
fi
6785

0 commit comments

Comments
 (0)