1
1
#! /bin/bash
2
2
3
3
setup () {
4
- mkdir -p /kontinuous/{src,status}/${PIPELINE_ID } /${BUILD_ID } /${STAGE_ID }
4
+ mkdir -p /kontinuous/{src,status}/${KONTINUOUS_PIPELINE_ID } /${KONTINUOUS_BUILD_ID } /${KONTINUOUS_STAGE_ID }
5
5
}
6
6
7
7
prepare_kube_config () {
@@ -11,7 +11,7 @@ prepare_kube_config() {
11
11
12
12
wait_for_ready () {
13
13
echo " Waiting for ready signal..."
14
- until [[ -f /kontinuous/status/${PIPELINE_ID } /${BUILD_ID } /${STAGE_ID } /ready ]]; do
14
+ until [[ -f /kontinuous/status/${KONTINUOUS_PIPELINE_ID } /${KONTINUOUS_BUILD_ID } /${KONTINUOUS_STAGE_ID } /ready ]]; do
15
15
sleep 5
16
16
done
17
17
}
@@ -39,7 +39,7 @@ deploy(){
39
39
return 1
40
40
fi
41
41
42
- kubectl create -f ${deployFile}
42
+ kubectl apply -f ${deployFile}
43
43
if [[ " $? " != " 0" ]]; then
44
44
echo " Deploy Failed. Unable to deploy app."
45
45
return 1
@@ -68,7 +68,7 @@ clean(){
68
68
run_image () {
69
69
local pod_name=" $1 "
70
70
# get which node the current job is running on
71
- local node_name=$( kubectl get pods ${pod_name} -o template --template=" {{ .spec.nodeName }}" --namespace=${NAMESPACE } )
71
+ local node_name=$( kubectl get pods ${pod_name} -o template --template=" {{ .spec.nodeName }}" --namespace=${KONTINUOUS_NAMESPACE } )
72
72
73
73
# prepare vars
74
74
local commands=" ` for cmd in ${COMMAND} ; do echo \" - ${cmd} \" ; done` "
@@ -77,7 +77,7 @@ run_image() {
77
77
# do the sed thingy
78
78
cp /root/pod_template.yml /tmp/pod.yml
79
79
sed -i " s|__POD_NAME__|${pod_name} |g" /tmp/pod.yml
80
- sed -i " s|__NAMESPACE__|${NAMESPACE } |g" /tmp/pod.yml
80
+ sed -i " s|__NAMESPACE__|${KONTINUOUS_NAMESPACE } |g" /tmp/pod.yml
81
81
sed -i " s|__WORKING_DIR__|${WORKING_DIR} |g" /tmp/pod.yml
82
82
sed -i " s|__NODE_NAME__|${node_name} |g" /tmp/pod.yml
83
83
sed -i " s|__IMAGE__|${IMAGE} |g" /tmp/pod.yml
@@ -86,17 +86,17 @@ run_image() {
86
86
echo " env:" >> /tmp/pod.yml
87
87
echo " $env_vars " >> /tmp/pod.yml
88
88
89
- kubectl create -f /tmp/pod.yml
89
+ kubectl apply -f /tmp/pod.yml
90
90
}
91
91
92
92
generate_result (){
93
93
local result=" $1 "
94
94
if [[ " $result " != " 0" ]]; then
95
- touch /kontinuous/status/${PIPELINE_ID } /${BUILD_ID } /${STAGE_ID } /fail
95
+ touch /kontinuous/status/${KONTINUOUS_PIPELINE_ID } /${KONTINUOUS_BUILD_ID } /${KONTINUOUS_STAGE_ID } /fail
96
96
echo " Build Fail"
97
97
exit 1
98
98
else
99
- touch /kontinuous/status/${PIPELINE_ID } /${BUILD_ID } /${STAGE_ID } /success
99
+ touch /kontinuous/status/${KONTINUOUS_PIPELINE_ID } /${KONTINUOUS_BUILD_ID } /${KONTINUOUS_STAGE_ID } /success
100
100
echo " Build Successful"
101
101
exit 0
102
102
fi
@@ -109,7 +109,7 @@ wait_for_success() {
109
109
local exit_code_line=" "
110
110
until [[ " ${exit_code_line} " != " " ]]; do
111
111
sleep 5
112
- exit_code_line=$( kubectl get pods ${pod_name} -cmd -o yaml --namespace=" ${NAMESPACE } " | grep exitCode)
112
+ exit_code_line=$( kubectl get pods ${pod_name} -cmd -o yaml --namespace=" ${KONTINUOUS_NAMESPACE } " | grep exitCode)
113
113
done
114
114
115
115
local exit_code=$( echo ${exit_code_line} | awk ' {print $2}' )
@@ -136,7 +136,7 @@ run_command() {
136
136
fi
137
137
138
138
# run image as a pod in the same node as this job
139
- local pod_name=$( kubectl get pods --namespace=${NAMESPACE } --selector=" pipeline=${PIPELINE_ID } ,build=${BUILD_ID } ,stage=${STAGE_ID } " --no-headers | awk ' {print $1}' )
139
+ local pod_name=$( kubectl get pods --namespace=${KONTINUOUS_NAMESPACE } --selector=" pipeline=${KONTINUOUS_PIPELINE_ID } ,build=${KONTINUOUS_BUILD_ID } ,stage=${KONTINUOUS_STAGE_ID } " --no-headers | awk ' {print $1}' )
140
140
run_image ${pod_name}
141
141
142
142
wait_for_success " ${pod_name} "
@@ -145,7 +145,7 @@ run_command() {
145
145
echo " Command Agent Logs:"
146
146
echo " -------------------"
147
147
# print logs afterwards
148
- kubectl logs --namespace=" ${NAMESPACE } " " ${pod_name} -cmd"
148
+ kubectl logs --namespace=" ${KONTINUOUS_NAMESPACE } " " ${pod_name} -cmd"
149
149
150
150
# cleanup
151
151
kubectl delete -f /tmp/pod.yml || true
0 commit comments