feat(docker): restore failed Compose updates and retain recent releases
This commit is contained in:
1 parent
fe1ee8a6fe
commit
745d0b7247
4 files changed
+159
-16
No files matched your search
@@ -15,15 +15,28 @@ docker() {
|
||||
case "$1 ${2:-}" in
|
||||
'inspect --format')
|
||||
if [ "${@: -1}" = epicnext-cms-app ]; then [ "$SCENARIO" = ci-active ] && echo true; return 0; fi
|
||||
if [ "${@: -1}" = previous123 ] || [ -f "$TEST_DIR/restored" ]; then echo sha256:old; return 0; fi
|
||||
if [ "$SCENARIO" = wrong-image ]; then echo sha256:old; else echo sha256:new; fi ;;
|
||||
'image inspect')
|
||||
if [[ "$*" = *org.opencontainers* ]] && [[ "$*" = *sha256:old* ]]; then printf 'b%.0s' {1..40}; echo; return 0; fi
|
||||
if [[ "$*" = *org.opencontainers* ]]; then echo "$TEST_SHA"; else echo sha256:new; fi ;;
|
||||
'compose config') return 0 ;;
|
||||
'compose build') [ "$SCENARIO" != build-failure ] ;;
|
||||
'compose up') [ "$SCENARIO" != recreate-failure ] ;;
|
||||
'compose ps') echo container123 ;;
|
||||
'compose up')
|
||||
if [[ "$CMS_RELEASE" = rollback-* ]]; then
|
||||
[ "$SCENARIO" != rollback-failure ] || return 1
|
||||
touch "$TEST_DIR/restored"; return 0
|
||||
fi
|
||||
touch "$TEST_DIR/cutover"
|
||||
[ "$SCENARIO" != recreate-failure ] ;;
|
||||
'compose ps')
|
||||
if [ -f "$TEST_DIR/cutover" ]; then echo container123
|
||||
elif [ "$SCENARIO" != first-failure ]; then echo previous123; fi ;;
|
||||
'run --rm') [ "$SCENARIO" != migration-failure ] ;;
|
||||
'ps -aq') if [ "$SCENARIO" = retained-in-use ]; then echo other-container; fi ;;
|
||||
'exec container123')
|
||||
if [ -f "$TEST_DIR/restored" ]; then return 0; fi
|
||||
if [ "$SCENARIO" = first-failure ] || [ "$SCENARIO" = rollback-failure ]; then return 1; fi
|
||||
if [ "$SCENARIO" = wrong-release ]; then return 1; fi
|
||||
if [ "$SCENARIO" = wrong-public ] && [[ "$*" = *example.test* ]]; then return 1; fi ;;
|
||||
*) return 0 ;;
|
||||
|
||||
Reference in new issue
Block a user