64 lines
1.8 KiB
YAML
64 lines
1.8 KiB
YAML
stages:
|
|
- build
|
|
- package
|
|
|
|
variables:
|
|
DOCKER_NS: kehui
|
|
DOCKER_IMG_NAME: kehui-server
|
|
DOCKER_REPO_URL: repo1.xqopen.cn:19443
|
|
|
|
DOCKER_ALI_NS: projs
|
|
DOCKER_ALI_IMG_NAME: kehui-server
|
|
DOCKER_ALI_REPO_URL: registry.cn-hangzhou.aliyuncs.com
|
|
|
|
DOCKER_STAGING_TAG: staging
|
|
DOCKER_PROD_TAG: prod
|
|
|
|
build:
|
|
stage: build
|
|
image: repo1.xqopen.cn:9443/library/gradle:4.3
|
|
tags:
|
|
- general
|
|
only:
|
|
- develop
|
|
artifacts:
|
|
expire_in: 3 days
|
|
paths:
|
|
- outputs/
|
|
cache:
|
|
paths:
|
|
- /root/.gradle
|
|
script:
|
|
- mkdir -p outputs
|
|
- gradle clean build
|
|
- mv build/libs/*.jar ./outputs/app.jar
|
|
|
|
package:
|
|
stage: package
|
|
image: repo1.xqopen.cn:9443/library/docker:latest
|
|
only:
|
|
#- master
|
|
- develop
|
|
variables:
|
|
DOCKER_DRIVER: overlay
|
|
services:
|
|
- docker:dind
|
|
before_script:
|
|
- docker info
|
|
tags:
|
|
- docker-build
|
|
# when: manual
|
|
script:
|
|
- TODAY=`date "+%Y%m%d"`
|
|
- "docker build
|
|
--build-arg ver=staging-${TODAY}#${CI_PIPELINE_ID}
|
|
--tag ${DOCKER_REPO_URL}/${DOCKER_NS}/${DOCKER_IMG_NAME}:${DOCKER_STAGING_TAG}
|
|
--tag ${DOCKER_REPO_URL}/${DOCKER_NS}/${DOCKER_IMG_NAME}:${DOCKER_STAGING_TAG}-${CI_PIPELINE_ID}
|
|
--tag ${DOCKER_ALI_REPO_URL}/${DOCKER_ALI_NS}/${DOCKER_ALI_IMG_NAME}:${DOCKER_STAGING_TAG}
|
|
--tag ${DOCKER_ALI_REPO_URL}/${DOCKER_ALI_NS}/${DOCKER_ALI_IMG_NAME}:${DOCKER_STAGING_TAG}-${CI_PIPELINE_ID}
|
|
. "
|
|
- docker push ${DOCKER_REPO_URL}/${DOCKER_NS}/${DOCKER_IMG_NAME}:${DOCKER_STAGING_TAG}
|
|
- docker push ${DOCKER_REPO_URL}/${DOCKER_NS}/${DOCKER_IMG_NAME}:${DOCKER_STAGING_TAG}-${CI_PIPELINE_ID}
|
|
- docker push ${DOCKER_ALI_REPO_URL}/${DOCKER_ALI_NS}/${DOCKER_ALI_IMG_NAME}:${DOCKER_STAGING_TAG}
|
|
- docker push ${DOCKER_ALI_REPO_URL}/${DOCKER_ALI_NS}/${DOCKER_ALI_IMG_NAME}:${DOCKER_STAGING_TAG}-${CI_PIPELINE_ID}
|