Commit 565f9402 authored by nanahira's avatar nanahira

ci

parent 930e150f
Pipeline #15783 failed
stages: stages:
- build - build
- deploy - deploy
variables: variables:
GIT_DEPTH: "1" GIT_DEPTH: "1"
CONTAINER_TEST_IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
CONTAINER_TEST_IMAGE_LITE: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-lite
CONTAINER_TEST_IMAGE_X: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-x
CONTAINER_TEST_IMAGE_NOVNC: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-novnc
CONTAINER_RELEASE_IMAGE: $CI_REGISTRY_IMAGE:latest
CONTAINER_RELEASE_IMAGE_LITE: $CI_REGISTRY_IMAGE:lite
CONTAINER_RELEASE_IMAGE_X: $CI_REGISTRY_IMAGE:x
CONTAINER_RELEASE_IMAGE_NOVNC: $CI_REGISTRY_IMAGE:novnc
DOCKERHUB_RELEASE_IMAGE: nanahira/mirai-cqhttp:latest
DOCKERHUB_RELEASE_IMAGE_LITE: nanahira/mirai-cqhttp:lite
DOCKERHUB_RELEASE_IMAGE_X: nanahira/mirai-cqhttp:x
DOCKERHUB_RELEASE_IMAGE_NOVNC: nanahira/mirai-cqhttp:novnc
before_script: before_script:
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
build: .build-image:
stage: build stage: build
tags:
- docker
script: script:
- docker build --pull --no-cache -t $CONTAINER_TEST_IMAGE_LITE . - docker build --pull -t $TARGET_IMAGE .
- docker build -t $CONTAINER_TEST_IMAGE_X -f Dockerfile.x --build-arg BASE_IMAGE=$CONTAINER_TEST_IMAGE_LITE . - docker push $TARGET_IMAGE
- docker build -t $CONTAINER_TEST_IMAGE_NOVNC -f Dockerfile.novnc --build-arg BASE_IMAGE=$CONTAINER_TEST_IMAGE_X .
- docker tag $CONTAINER_TEST_IMAGE_NOVNC $CONTAINER_TEST_IMAGE
- docker push $CONTAINER_TEST_IMAGE_LITE
- docker push $CONTAINER_TEST_IMAGE_X
- docker push $CONTAINER_TEST_IMAGE_NOVNC
- docker push $CONTAINER_TEST_IMAGE
deploy_latest_lite: build-x86:
stage: deploy extends: .build-image
tags: tags:
- docker - docker
script: variables:
- docker pull $CONTAINER_TEST_IMAGE_LITE TARGET_IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-x86
- docker tag $CONTAINER_TEST_IMAGE_LITE $CONTAINER_RELEASE_IMAGE_LITE
- docker push $CONTAINER_RELEASE_IMAGE_LITE
only:
- master
deploy_latest_x: build-x86:
stage: deploy extends: .build-image
tags: tags:
- docker - docker-arm
script: variables:
- docker pull $CONTAINER_TEST_IMAGE_X TARGET_IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-arm
- docker tag $CONTAINER_TEST_IMAGE_X $CONTAINER_RELEASE_IMAGE_X
- docker push $CONTAINER_RELEASE_IMAGE_X
only:
- master
deploy_latest_novnc: .deploy:
stage: deploy stage: deploy
tags: tags:
- docker - docker
script: script:
- docker pull $CONTAINER_TEST_IMAGE_NOVNC - docker pull $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-x86
- docker tag $CONTAINER_TEST_IMAGE_NOVNC $CONTAINER_RELEASE_IMAGE_NOVNC - docker pull $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-arm
- docker tag $CONTAINER_TEST_IMAGE_NOVNC $CONTAINER_RELEASE_IMAGE - docker manifest create $TARGET_IMAGE --amend $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-x86 --amend
- docker push $CONTAINER_RELEASE_IMAGE_NOVNC $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-arm
- docker push $CONTAINER_RELEASE_IMAGE - docker manifest push $TARGET_IMAGE
deploy_latest:
extends: .deploy
vars:
TARGET_IMAGE: $CI_REGISTRY_IMAGE:latest
only: only:
- master - master
deploy_dockerhub_lite: deploy_branch:
stage: deploy extends: .deploy
tags: vars:
- docker TARGET_IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
script:
- docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD
- docker pull $CONTAINER_TEST_IMAGE_LITE
- docker tag $CONTAINER_TEST_IMAGE_LITE $DOCKERHUB_RELEASE_IMAGE_LITE
- docker push $DOCKERHUB_RELEASE_IMAGE_LITE
only:
- master
deploy_dockerhub_x:
stage: deploy
tags:
- docker
script:
- docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD
- docker pull $CONTAINER_TEST_IMAGE_X
- docker tag $CONTAINER_TEST_IMAGE_X $DOCKERHUB_RELEASE_IMAGE_X
- docker push $DOCKERHUB_RELEASE_IMAGE_X
only:
- master
deploy_dockerhub_novnc:
stage: deploy
tags:
- docker
script:
- docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD
- docker pull $CONTAINER_TEST_IMAGE_NOVNC
- docker tag $CONTAINER_TEST_IMAGE_NOVNC $DOCKERHUB_RELEASE_IMAGE_NOVNC
- docker tag $CONTAINER_TEST_IMAGE_NOVNC $DOCKERHUB_RELEASE_IMAGE
- docker push $DOCKERHUB_RELEASE_IMAGE_NOVNC
- docker push $DOCKERHUB_RELEASE_IMAGE
only:
- master
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment