1.1 KiB
1.1 KiB
Release image build
운영팀은 release tag의 clean checkout에서 아래 명령으로 이미지를 빌드한다.
git checkout v0.8.0
./scripts/build_release_image.sh trex-core:0.8.0
스크립트는 pyproject.toml의 canonical version과 image tag가 일치하는지 확인하고 현재
commit을 OCI org.opencontainers.image.revision label로, package version을
org.opencontainers.image.version label로 기록한다. Dirty checkout, version이 다른 image
tag, label 불일치, non-root user 불일치 또는 container --version smoke test 실패 시 종료
코드 0을 반환하지 않는다.
Registry 경로를 사용할 때도 version tag를 유지한다.
./scripts/build_release_image.sh registry.example/trex-core:0.8.0
docker push registry.example/trex-core:0.8.0
배포 전 docker image inspect에서 나온 revision과 image digest를
release-provenance-standard.md의 PRE/POST gate에 기록한다.
이 저장소는 registry publication을 자동화하지 않으므로 push 대상과 권한은 운영팀이 관리한다.