@@ -23,30 +23,28 @@ spec:
23
23
terminationGracePeriodSeconds : {{ .Values.terminationGracePeriod }}
24
24
{{- if ne .Values.bootstrapHostName "" }}
25
25
initContainers :
26
- - name : check -group-init-container
27
- image : " {{ .Values.image .repository }}:{{ .Values.image .tag }}"
26
+ - name : configure -group
27
+ image : " {{ .Values.initContainerImage .repository }}:{{ .Values.initContainerImage .tag }}"
28
28
command :
29
- - bash
29
+ - sh
30
30
- ' -c'
31
31
- |
32
- echo '### Begin init container ###'
32
+ echo '### Begin configuring group ###'
33
33
34
34
GROUP_CFG_TEMPLATE='{"group-name":"%s"}'
35
35
GROUP_CFG=$(printf "$GROUP_CFG_TEMPLATE" "$MARKLOGIC_GROUP")
36
36
37
- GROUP_RESP_CODE=`curl --anyauth -m 20 -s -o /dev/null -w "%{http_code}" -X GET http://${BOOTSTRAP_HOST_NAME }:8002/manage/v2/groups/${MARKLOGIC_GROUP} --anyauth --user ${MARKLOGIC_ADMIN_USERNAME}:${MARKLOGIC_ADMIN_PASSWORD}`
38
-
37
+ GROUP_RESP_CODE=`curl --anyauth -m 20 -s -o /dev/null -w "%{http_code}" -X GET http://${MARKLOGIC_BOOTSTRAP_HOST }:8002/manage/v2/groups/${MARKLOGIC_GROUP} --anyauth --user ${MARKLOGIC_ADMIN_USERNAME}:${MARKLOGIC_ADMIN_PASSWORD}`
38
+
39
39
if [[ ${GROUP_RESP_CODE} -eq 200 ]]; then
40
40
echo "Group $MARKLOGIC_GROUP is already configured on the MarkLogic cluster."
41
41
else
42
42
echo "Group $MARKLOGIC_GROUP does not exist, creating $MARKLOGIC_GROUP on the MarkLogic cluster"
43
- curl --anyauth --user ${MARKLOGIC_ADMIN_USERNAME}:${MARKLOGIC_ADMIN_PASSWORD} -m 20 -s -X POST -d "${GROUP_CFG}" -H "Content-type: application/json" http://${BOOTSTRAP_HOST_NAME }:8002/manage/v2/groups
43
+ curl --anyauth --user ${MARKLOGIC_ADMIN_USERNAME}:${MARKLOGIC_ADMIN_PASSWORD} -m 20 -s -X POST -d "${GROUP_CFG}" -H "Content-type: application/json" http://${MARKLOGIC_BOOTSTRAP_HOST }:8002/manage/v2/groups
44
44
sleep 20s
45
45
fi
46
46
echo '### init container execution completed ###'
47
47
env :
48
- - name : " BOOTSTRAP_HOST_NAME"
49
- value : {{ .Values.bootstrapHostName }}
50
48
- name : MARKLOGIC_GROUP
51
49
value : {{ .Values.group.name }}
52
50
- name : MARKLOGIC_ADMIN_USERNAME
59
57
secretKeyRef :
60
58
name : {{ include "marklogic.fullname" . }}
61
59
key : password
60
+ envFrom :
61
+ - configMapRef :
62
+ name : {{ include "marklogic.fullname" . }}
62
63
{{- end }}
63
64
containers :
64
65
- name : marklogic-server
@@ -81,13 +82,12 @@ spec:
81
82
secretKeyRef :
82
83
name : {{ include "marklogic.fullname" . }}
83
84
key : password
84
- - name : MARKLOGIC_WALLET_PASSWORD
85
- valueFrom :
86
- secretKeyRef :
87
- name : {{ include "marklogic.fullname" . }}
88
- key : walletPassword
89
85
- name : MARKLOGIC_GROUP
90
86
value : {{ .Values.group.name }}
87
+ - name : POD_NAME
88
+ valueFrom :
89
+ fieldRef :
90
+ fieldPath : metadata.name
91
91
envFrom :
92
92
- configMapRef :
93
93
name : {{ include "marklogic.fullname" . }}
@@ -121,19 +121,22 @@ spec:
121
121
local TIMESTAMP=$(date +"%Y-%m-%d %T.%3N")
122
122
echo "${TIMESTAMP} $@" > /proc/$pid/fd/1
123
123
}
124
-
125
- while [ ! -f /var/opt/MarkLogic/ready ]; do
126
- sleep 5s
127
- done
128
124
log "Info: [poststart] Begin Poststart Hook Execution"
129
-
130
- GROUP_CFG_TEMPLATE='{"group-name":"%s"}'
131
- GROUP_CFG=$(printf "$GROUP_CFG_TEMPLATE" "$MARKLOGIC_GROUP")
132
- log "Info: [poststart] Updating Default group on cluster"
133
- AUTH_CURL="curl --anyauth --user "${MARKLOGIC_ADMIN_USERNAME}":"${MARKLOGIC_ADMIN_PASSWORD}" -m 20 -s "
134
-
135
- $AUTH_CURL -X PUT -H "Content-type: application/json" -d "${GROUP_CFG}" http://localhost:8002/manage/v2/groups/Default/properties
136
- sleep 10s
125
+ if [[ $MARKLOGIC_GROUP == "Default" || $POD_NAME != *-0 ]]; then
126
+ log "Info: [poststart] This is not a bootstrap host or group specified is Default"
127
+ exit 1
128
+ else
129
+ while [ ! -f /var/opt/MarkLogic/ready ]; do
130
+ sleep 5s
131
+ done
132
+
133
+ GROUP_CFG_TEMPLATE='{"group-name":"%s"}'
134
+ GROUP_CFG=$(printf "$GROUP_CFG_TEMPLATE" "$MARKLOGIC_GROUP")
135
+
136
+ log "Info: [poststart] Updating Default group on cluster"
137
+ curl --anyauth -m 20 -s -X PUT -H "Content-type: application/json" -d "${GROUP_CFG}" http://localhost:8002/manage/v2/groups/Default/properties --user ${MARKLOGIC_ADMIN_USERNAME}:${MARKLOGIC_ADMIN_PASSWORD}
138
+ sleep 10s
139
+ fi
137
140
log "Info: [poststart] Poststart Hook Execution Completed"
138
141
{{- end }}
139
142
preStop :
0 commit comments