Files
state-corp-backend/scripts/ci/release-service-test.sh
Aleksandr Meshchriakov e060c36b6d
Some checks failed
State Corp Backend CI/CD / Quality gate (push) Successful in 3m32s
State Corp Backend CI/CD / Build linux/amd64 images once (push) Successful in 3m6s
State Corp Backend CI/CD / Refresh and release internal main (push) Has been skipped
State Corp Backend CI/CD / Release dev (push) Failing after 2s
State Corp Backend CI/CD / Release customer main (push) Has been skipped
ci: enforce digest-only dev releases
2026-08-27 13:57:27 +03:00

37 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
script_dir=$(CDPATH='' cd -- "$(dirname -- "$0")" && pwd)
test_dir=$(mktemp -d)
trap 'rm -rf "${test_dir}"' EXIT
true_path=$(type -P true)
cp "${true_path}" "${test_dir}/ssh"
digest="registry.dev.nii-ecos.ru/avm/state-corp-backend-web@sha256:$(printf '0%.0s' {1..64})"
encoded_fixture=$(printf fixture | base64)
release_env=(
PATH="${test_dir}:${PATH}"
RELEASE_HOST=10.10.0.124
RELEASE_USER=ecos-deploy
RELEASE_SERVICE_PATH=/opt/ecos-dev/release-service
RELEASE_SSH_KEY_B64="${encoded_fixture}"
RELEASE_KNOWN_HOSTS_B64="${encoded_fixture}"
)
env "${release_env[@]}" \
"${script_dir}/release-service.sh" \
state-corp-backend test-run "${digest}" "${digest}"
if env "${release_env[@]}" \
"${script_dir}/release-service.sh" \
state-corp-backend test-run \
registry.dev.nii-ecos.ru/avm/state-corp-backend-web:dev-deadbee \
registry.dev.nii-ecos.ru/avm/state-corp-backend-celery:dev-deadbee \
>/dev/null 2>&1; then
echo "mutable dev tags must be rejected" >&2
exit 1
fi
echo "release-service digest contract: PASS"