This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
nezha-nz-talon/.gitlab-ci.yml
2023-11-10 16:21:38 +08:00

86 lines
2.4 KiB
YAML

# docker镜像
image: git.mesalab.cn:7443/nezha/nz-build-env:1.5
# 定义全局变量
variables:
MINIO_HOST: 'http://192.168.40.48:2020/'
MINIO_USER: 'admin'
MINIO_PWD: "Nezha@02!"
MAVEN_REPO: "/etc/maven/repository/"
# 依赖的docker服务
services:
# - mariadb
# - redis
# 开始执行脚本前所需执行脚本
before_script:
- echo "begin ci"
# 脚本执行完后的钩子,执行所需脚本
after_script:
- echo "end ci"
# 该ci pipeline适合的场景
stages:
- build
- test
# maven setting /usr/share/maven/conf/settings.xml
cache:
paths:
- $MAVEN_REPO
# 定义的任务
build_rpm:
stage: build
# 所需执行的脚本
script:
- env | sort
- pwd
- chmod +x ./tools/package.sh
- ./tools/package.sh
artifacts:
name: "$CI_PROJECT_NAME-$CI_COMMIT_REF_NAME-$CI_COMMIT_SHORT_SHA"
when: on_success
paths:
- ./target/*.xjar
- ./target/xjar
expire_in: 1 week
# 在哪个分支上可用
only:
- /^rel-.*$/i
# 指定哪个ci runner跑该工作
tags:
- nezha
# 定义的任务
dev_build:
stage: test
# 所需执行的脚本
script:
- env | sort
- pwd
- export FILE_NAME=$CI_PROJECT_NAME-$CI_COMMIT_REF_NAME-$CI_COMMIT_SHORT_SHA.tar.gz
- export BRANCH_ARRAY=(${CI_COMMIT_REF_NAME//-/ })
- echo -e "version=${BRANCH_ARRAY[1]}\ncommit=$CI_COMMIT_SHORT_SHA\nbuildDate=`date +'%Y%m%d%H%m%S'`" >>./src/main/resources/version.properties
- mvn clean install -Dxjar.password=111111 -Dxjar.excludes=/db/*,/static/**/*
- cd ./target
- go build xjar.go
- chmod +x xjar
- "git log -100 --pretty=format:'%ad : %s' >> git-log.html"
- tar -zcvf $FILE_NAME xjar nz-talon.xjar git-log.html
- md5sum $FILE_NAME > $CI_PROJECT_NAME-$CI_COMMIT_REF_NAME-latest.tar.gz.md5sum.txt
- mc alias set nz $MINIO_HOST $MINIO_USER $MINIO_PWD
- mc cp $FILE_NAME nz/ci-cd/nz-talon/$FILE_NAME
- mc cp $FILE_NAME nz/ci-cd/nz-talon/$CI_PROJECT_NAME-$CI_COMMIT_REF_NAME-latest.tar.gz
- mc cp $CI_PROJECT_NAME-$CI_COMMIT_REF_NAME-latest.tar.gz.md5sum.txt nz/ci-cd/nz-talon/$CI_PROJECT_NAME-$CI_COMMIT_REF_NAME-latest.tar.gz.md5sum.txt
- cd ../
artifacts:
name: "$CI_PROJECT_NAME-$CI_COMMIT_REF_NAME-$CI_COMMIT_SHORT_SHA"
when: on_success
paths:
- ./target/*.xjar
- ./target/xjar
expire_in: 1 week
# 在哪个分支上可用
only:
- /^dev-.*$/i
# 指定哪个ci runner跑该工作
tags:
- nezha