0
mongodb-docker/.woodpecker.yaml
0x1def 40a0a87530
All checks were successful
ci/tag Pipeline was successful
Imported CI
2024-09-03 23:51:06 +03:00

79 lines
2.2 KiB
YAML

# Environments
# RUN_PHASES=build-image|publish-quay|publish-ghcr|publish-ecr - execute workflow phases
# CI_MANUAL_TAG=0.0.1 - application release version, gets priority over CI_COMMIT_TAG
variables:
- &debian_image 'public.ecr.aws/docker/library/debian:bookworm-slim'
- &kaniko_image "gcr.io/kaniko-project/executor:v1.23.2-debug"
- &skopeo_image "quay.io/containers/skopeo:v1.15.2"
- &awscli_image "public.ecr.aws/aws-cli/aws-cli:2.17.42"
when:
- branch: main
event:
- manual
- branch:
exclude: main
event:
- manual
- tag
steps:
# prepare
set-env:
image: *debian_image
commands:
- .ci/set-env.sh
# image
image:
when:
evaluate: 'RUN_PHASES == "" || "build-image" in split(RUN_PHASES, ",")'
image: *kaniko_image
environment:
HARBOR_CREDS:
from_secret: fb_harbor_creds
commands:
- .ci/image.sh
# publish external
publish-quay:
when:
evaluate: '(RUN_PHASES == "" || "publish-quay" in split(RUN_PHASES, ",")) && (CI_COMMIT_TAG != "" || CI_MANUAL_TAG != "")'
image: *skopeo_image
environment:
DEST_REGISTRY: quay.io
DEST_CREDS:
from_secret: fb_quay_creds
commands:
- .ci/publish-external.sh
publish-ghcr:
when:
evaluate: '(RUN_PHASES == "" || "publish-ghcr" in split(RUN_PHASES, ",")) && (CI_COMMIT_TAG != "" || CI_MANUAL_TAG != "")'
image: *skopeo_image
environment:
DEST_REGISTRY: ghcr.io
DEST_CREDS:
from_secret: fb_ghcr_creds
commands:
- .ci/publish-external.sh
login-ecr:
when:
evaluate: '(RUN_PHASES == "" || "publish-ecr" in split(RUN_PHASES, ",")) && (CI_COMMIT_TAG != "" || CI_MANUAL_TAG != "")'
image: *awscli_image
environment:
AWS_ACCESS_KEY_ID:
from_secret: fb_ecr_key_id
AWS_SECRET_ACCESS_KEY:
from_secret: fb_ecr_key
commands:
- .ci/login-ecr.sh
publish-ecr:
environment:
DEST_REGISTRY: public.ecr.aws
when:
evaluate: '(RUN_PHASES == "" || "publish-ecr" in split(RUN_PHASES, ",")) && (CI_COMMIT_TAG != "" || CI_MANUAL_TAG != "")'
image: *skopeo_image
commands:
- .ci/publish-external.sh