timesheet/.gitlab-ci.yml
2022-11-21 11:42:47 +08:00

43 lines
1.3 KiB
YAML

variables:
MAVEN_CLI_OPTS: "-s $CI_PROJECT_DIR/.m2/settings.xml --batch-mode"
MAVEN_OPTS: "-Dmaven.repo.local=$CI_PROJECT_DIR/.m2/repository"
MAVEN_USER_HOME: "$CI_PROJECT_DIR/.m2"
REGISTRY_MIRROR: docker.repository.zcunsoft.com
stages:
- build
- package
.set-docker-tag: &set-docker-tag
- if [[ $CI_BUILD_REF_NAME == "main" ]];
then
export DOCKER_TAG=latest;
else
export DOCKER_TAG="${CI_BUILD_REF_NAME}";
fi
maven-build:
image: openjdk:8-slim
stage: build
cache:
key: maven-cache
paths:
- .m2/repository/
- .m2/wrapper/
script:
- ./mvnw $MAVEN_CLI_OPTS package
artifacts:
name: "$CI_PROJECT_NAME-$CI_COMMIT_REF_NAME"
paths:
- "ruoyi-admin/target/*.jar"
docker-build:
image:
name: gcr.io/kaniko-project/executor:debug
entrypoint: [""]
stage: package
script:
- *set-docker-tag
- mkdir -p /kaniko/.docker
- echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"gitlab-ci-token\",\"password\":\"$CI_JOB_TOKEN\"}}}" > /kaniko/.docker/config.json
- /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --build-arg JAR_FILE="$(ls ruoyi-admin/target/*.jar | sort | head -n 1)" --destination $CI_REGISTRY_IMAGE:$DOCKER_TAG --cache=true --registry-mirror=$REGISTRY_MIRROR