diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..de79298 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,45 @@ +stages: + - build + +variables: + HARBOR_REGISTRY: harbor-in-k3s.cheverjohn.me + HARBOR_PROJECT: iloom + DOCKER_TLS_CERTDIR: "/certs" + +.build-template: &build-template + stage: build + image: docker:27 + services: + - docker:27-dind + before_script: + - echo "$HARBOR_PASSWORD" | docker login $HARBOR_REGISTRY -u "$HARBOR_USER" --password-stdin + script: + - | + if [ -n "$CI_COMMIT_TAG" ]; then + TAG="$CI_COMMIT_TAG" + else + TAG="main-${CI_COMMIT_SHORT_SHA}" + fi + - docker build -t $HARBOR_REGISTRY/$HARBOR_PROJECT/$IMAGE_NAME:$TAG -f $DOCKERFILE_PATH . + - docker push $HARBOR_REGISTRY/$HARBOR_PROJECT/$IMAGE_NAME:$TAG + rules: + - if: $CI_COMMIT_BRANCH == "main" + - if: $CI_COMMIT_TAG =~ /^v/ + +build-muyu-gateway: + <<: *build-template + variables: + IMAGE_NAME: muyu-gateway + DOCKERFILE_PATH: deploy/Dockerfile.gateway + +build-muyu-system-rpc: + <<: *build-template + variables: + IMAGE_NAME: muyu-system-rpc + DOCKERFILE_PATH: deploy/Dockerfile.system + +build-muyu-inventory-rpc: + <<: *build-template + variables: + IMAGE_NAME: muyu-inventory-rpc + DOCKERFILE_PATH: deploy/Dockerfile.inventory