Make Observatory staging deploy rerunnable (#155)
Some checks are pending
CI / lint-and-test (push) Waiting to run
Some checks are pending
CI / lint-and-test (push) Waiting to run
This commit is contained in:
parent
92da54d804
commit
53c8de0a19
1 changed files with 12 additions and 3 deletions
|
|
@ -74,12 +74,21 @@ jobs:
|
|||
set -euo pipefail
|
||||
tag="${GITHUB_SHA::12}"
|
||||
image="${REGION}-docker.pkg.dev/${PROJECT_ID}/${REPOSITORY}/${IMAGE_NAME}:${tag}"
|
||||
digest="$(gcloud artifacts docker images describe "${image}" \
|
||||
--project="${PROJECT_ID}" \
|
||||
--format='value(image_summary.digest)' 2>/dev/null || true)"
|
||||
if [[ -n "${digest}" ]]; then
|
||||
docker pull "${image}"
|
||||
else
|
||||
docker build -f Dockerfile.observatory-read-adapter -t "${image}" .
|
||||
fi
|
||||
docker run --rm --env PYTHONPYCACHEPREFIX=/tmp/pycache \
|
||||
"${image}" python -m compileall -q /app/observatory_read_adapter
|
||||
docker run --rm "${image}" python -c 'import observatory_read_adapter; print("adapter-import-ok")'
|
||||
if [[ -z "${digest}" ]]; then
|
||||
docker push "${image}" | tee docker-push.log
|
||||
digest="$(awk '/digest: sha256:/ {print $3}' docker-push.log | tail -1)"
|
||||
fi
|
||||
test -n "${digest}"
|
||||
image_ref="${image}@${digest}"
|
||||
printf 'image_ref=%s\n' "${image_ref}" >> "${GITHUB_OUTPUT}"
|
||||
|
|
|
|||
Loading…
Reference in a new issue