Files
cf_imes_server/pipeline
T
2024-07-22 17:11:55 +08:00

48 lines
1.9 KiB
Plaintext

variables:
# sonner scanner 安装目录
SCANNER_HOME : "/usr/local/sonar-scanner-4.6.2.2472-linux"
# 扫描代码路径
SCAN_DIR : "src"
# 制品目录
ARTIFACT_PATH : 'target/*.jar'
# maven 仓库地址
MAVEN_REPO: /root/.m2/repository
stages:
- compile
编译:
stage: compile
tags:
- test
# interruptible 当新管道在同一分支上启动时,可以取消正在运行的作业。
interruptible: true
# 是否允许失败,允许的话如果当前阶段运行失败还会继续执行下一个阶段
allow_failure: false
# 运行脚本
script:
- java -version
- mvn -version
# maven 编译
- mvn -Dmaven.repo.local=$MAVEN_REPO clean -U package -Dfile.encoding=UTF-8 -DskipTests=true
# 代码扫描
- "$SCANNER_HOME/bin/sonar-scanner -Dsonar.projectKey=${CI_PROJECT_NAME} \
-Dsonar.projectName=${CI_PROJECT_NAME} \
-Dsonar.projectVersion=${CI_COMMIT_REF_NAME} \
-Dsonar.ws.timeout=30 \
-Dsonar.projectDescription=${CI_PROJECT_TITLE} \
-Dsonar.links.homepage=${CI_PROJECT_URL} \
-Dsonar.sources=${SCAN_DIR} \
-Dsonar.sourceEncoding=UTF-8 \
-Dsonar.java.binaries=target/classes \
-Dsonar.java.test.binaries=target/test-classes \
-Dsonar.java.surefire.report=target/surefire-reports \
-Dsonar.branch.name=${CI_COMMIT_REF_NAME}"
- ls -lh target/
# Maven编译,所以会有Jar包产物,这里定义产物的过期时间
artifacts:
name: $PROJECT
expire_in: 1 days
paths:
- target/*.jar