Files
2025-10-08 23:53:41 +07:00

37 lines
825 B
YAML

workflow:
rules:
- if: $CI_PIPELINE_SOURCE == "push" &&
$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH &&
$CI_COMMIT_MESSAGE =~ /(?i)\bdeploy\b/
when: always
- when: never
stages:
- build
- deploy
docker-build:
image: docker:cli
stage: build
services:
- docker:dind
variables:
DOCKER_IMAGE_NAME: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
before_script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
script:
- docker build --pull -t "$DOCKER_IMAGE_NAME" .
- docker push "$DOCKER_IMAGE_NAME"
rules:
- exists:
- Dockerfile
deploy:
image: curlimages/curl:8.10.1
stage: deploy
needs: ["docker-build"]
script:
- 'test -n "$WEBHOOK_URL"'
- curl -fsSL -X POST "$WEBHOOK_URL"
rules:
- if: $WEBHOOK_URL