Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 7e12369

Browse files
Merge pull request #21 from ucloud/v0.1.9
fixed default shutdown shell
2 parents 83c7b3e + 9c152cc commit 7e12369

File tree

1 file changed

+14
-4
lines changed

1 file changed

+14
-4
lines changed

‎pkg/controller/service/generator.go‎

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -140,11 +140,21 @@ func generateRedisShutdownConfigMap(rc *redisv1beta1.RedisCluster, labels map[st
140140
envSentinelHost := fmt.Sprintf("REDIS_SENTINEL_%s_SERVICE_HOST", strings.ToUpper(rc.Name))
141141
envSentinelPort := fmt.Sprintf("REDIS_SENTINEL_%s_SERVICE_PORT_SENTINEL", strings.ToUpper(rc.Name))
142142
shutdownContent := fmt.Sprintf(`#!/usr/bin/env sh
143-
set -eou pipefail
144-
master=$(redis-cli -h ${%s} -p ${%s} --csv SENTINEL get-master-addr-by-name mymaster | tr ',' ' ' | tr -d '\"' |cut -d' ' -f1)
143+
master=""
144+
response_code=""
145+
while [ "$master" = "" ]; do
146+
echo "Asking sentinel who is master..."
147+
master=$(redis-cli -h ${%s} -p ${%s} --csv SENTINEL get-master-addr-by-name mymaster | tr ',' ' ' | tr -d '\"' |cut -d' ' -f1)
148+
sleep 1
149+
done
150+
echo "Master is $master, doing redis save..."
145151
redis-cli SAVE
146-
if [[ $master == $(hostname -i) ]]; then
147-
redis-cli -h ${%s} -p ${%s} SENTINEL failover mymaster
152+
if [ $master = $(hostname -i) ]; then
153+
while [ ! "$response_code" = "OK" ]; do
154+
response_code=$(redis-cli -h ${%s} -p ${%s} SENTINEL failover mymaster)
155+
echo "after failover with code $response_code"
156+
sleep 1
157+
done
148158
fi`, envSentinelHost, envSentinelPort, envSentinelHost, envSentinelPort)
149159

150160
return &corev1.ConfigMap{

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /