simedkom/.gitlab-ci.yml
Muhammad Alfin Afif Al Farizi Farham b058d11d9e Update file .gitlab-ci.yml
2026-03-17 06:24:53 +07:00

71 lines
1.4 KiB
YAML

stages:
- mirror
- build
- deploy
variables:
IMAGE_NAME: purwakarta-diskominfo-simedkom-new
IMAGE_TAG: v1.0.0
CONTAINER_NAME: purwakarta-diskominfo-simedkom-new
mirror:
stage: mirror
image: alpine:latest
tags:
- docker
variables:
GIT_DEPTH: 0
before_script:
- apk add --no-cache git
script:
- git config --global user.email "mirror@pratama.live"
- git config --global user.name "Pratama CI Mirror"
- git checkout $CI_COMMIT_REF_NAME
- rm -f .gitlab-ci.yml Dockerfile docker-compose.yml
- rm -rf .gitlab
- git add -A
- TREE=$(git write-tree)
- ORIGINAL_COMMIT=$(git rev-parse --short HEAD)
- COMMIT=$(echo "Automated mirror from main@$ORIGINAL_COMMIT" | git commit-tree $TREE -p HEAD)
- git remote remove pwk || true
- git remote add pwk https://$MIRROR_PWK_USERNAME:$MIRROR_PWK_TOKEN@$MIRROR_PWK_URL
- git push pwk $COMMIT:dev --force
only:
- main
build:
stage: build
timeout: 60m
image: docker:latest
services:
- docker:dind
tags:
- docker
script:
- docker info
- docker build -t $IMAGE_NAME:$IMAGE_TAG .
deploy:
stage: deploy
timeout: 60m
image: docker:latest
services:
- docker:dind
tags:
- docker
before_script:
- echo -e "$ENV_FILE" > .env
script:
- docker compose down || true
- docker compose up -d
only:
- main