114 lines
4.1 KiB
YAML
114 lines
4.1 KiB
YAML
variables: #变量
|
|
#网关
|
|
MES_BACK_CONTAINER: "mowen-blog-admin-api"
|
|
MES_BACK_IMAGE: "mowen-blog-admin-api"
|
|
MES_BACK_PORT: 8080
|
|
MAVEN_OPTS: "-Djava.awt.headless=true -Dmaven.repo.local=/mydata/jun/back_project/.m2" #指定maven的存储目录
|
|
cache:
|
|
paths:
|
|
- /mydata/jun/back_project/.m2
|
|
|
|
stages:
|
|
- build
|
|
- deploy
|
|
|
|
build-dev:jdk17:
|
|
stage: build
|
|
script:
|
|
- echo "=============== 开始编译打包任务 ==============="
|
|
- mvn clean package -DskipTests -P dev
|
|
#服务
|
|
- mkdir -p /mydata/mowen-blog/back_project/app
|
|
- cp Dockerfile /mydata/mowen-blog/back_project/app
|
|
- cp mes-admin/target/mowen-admin-dev-1.0.0.jar /mydata/mowen-blog/back_project/app
|
|
|
|
artifacts:
|
|
paths:
|
|
- build/
|
|
only:
|
|
- dev #当有代码合到主干时触发这个job
|
|
tags:
|
|
- blog-dev
|
|
image: moshangjunmowen/maven-jdk17:v3
|
|
|
|
build-test:jdk17:
|
|
stage: build
|
|
script:
|
|
- echo "=============== 开始编译打包任务 ==============="
|
|
- mvn clean package -Dmaven.test.skip=true -P test
|
|
#服务
|
|
- mkdir -p /mydata/mowen-blog/back_project/app
|
|
- cp Dockerfile /mydata/mowen-blog/back_project/app
|
|
- cp mes-admin/target/mowen-admin-test-1.0.0.jar /mydata/mowen-blog/back_project/app
|
|
|
|
artifacts:
|
|
paths:
|
|
- build/
|
|
only:
|
|
- test #当有代码合到主干时触发这个job
|
|
tags:
|
|
- mes-test
|
|
image: moshangjunmowen/maven-jdk17:v3
|
|
|
|
build-prod:jdk17:
|
|
stage: build
|
|
script:
|
|
- echo "=============== 开始编译打包任务 ==============="
|
|
- mvn clean package -Dmaven.test.skip=true -P prod
|
|
#服务
|
|
- mkdir -p /mydata/mowen-blog/back_project/app
|
|
- cp Dockerfile /mydata/mowen-blog/back_project/app
|
|
- cp mes-admin/target/mowen-admin-prod-1.0.0.jar /mydata/mowen-blog/back_project/app
|
|
|
|
artifacts:
|
|
paths:
|
|
- build/
|
|
only:
|
|
- main #当有代码合到主干时触发这个job
|
|
tags:
|
|
- pioneer-mes-prod
|
|
image: moshangjunmowen/maven-jdk17:v3
|
|
|
|
deploy-dev:jdk17:
|
|
stage: deploy
|
|
image: docker:29.4.3 #目的是为了在docker环境下的runner能执行docker命令
|
|
script:
|
|
- echo "=============== 开始部署应用 ==============="
|
|
- docker ps -a|grep $MES_BACK_CONTAINER && docker stop $MES_BACK_CONTAINER && docker rm $MES_BACK_CONTAINER || echo "not exist"
|
|
- docker images |grep $MES_BACK_IMAGE && docker rmi -f $MES_BACK_IMAGE || echo "not exist"
|
|
- docker build --build-arg JAR_FILE=mowen-admin-dev-1.0.0.jar -t $MES_BACK_IMAGE /mydata/mowen-blog/back_project/app
|
|
- docker run -d --restart=always --network=host --log-opt max-size=50m --log-opt max-file=3 --name $MES_BACK_CONTAINER $MES_BACK_IMAGE
|
|
only:
|
|
- dev #当有代码合到主干时触发这个job
|
|
tags:
|
|
- dev
|
|
|
|
|
|
deploy-test:jdk17:
|
|
stage: deploy
|
|
image: docker:29.4.3 #目的是为了在docker环境下的runner能执行docker命令
|
|
script:
|
|
- echo "=============== 开始部署应用 ==============="
|
|
- docker ps -a|grep $MES_BACK_CONTAINER && docker stop $MES_BACK_CONTAINER && docker rm $MES_BACK_CONTAINER || echo "not exist"
|
|
- docker images |grep $MES_BACK_IMAGE && docker rmi -f $MES_BACK_IMAGE || echo "not exist"
|
|
- docker build --build-arg JAR_FILE=mowen-admin-test-1.0.0.jar -t $MES_BACK_IMAGE /mydata/mowen-blog/back_project/app
|
|
- docker run -d --restart=always --network=host --log-opt max-size=50m --log-opt max-file=3 --name $MES_BACK_CONTAINER $MES_BACK_IMAGE
|
|
only:
|
|
- test #当有代码合到主干时触发这个job
|
|
tags:
|
|
- mes-test
|
|
|
|
deploy-prod:jdk17:
|
|
stage: deploy
|
|
image: docker:29.4.3 #目的是为了在docker环境下的runner能执行docker命令
|
|
script:
|
|
#服务
|
|
- docker ps -a|grep $MES_BACK_CONTAINER && docker stop $MES_BACK_CONTAINER && docker rm $MES_BACK_CONTAINER || echo "not exist"
|
|
- docker images |grep $MES_BACK_IMAGE && docker rmi -f $MES_BACK_IMAGE || echo "not exist"
|
|
- docker build --build-arg JAR_FILE=mowen-admin-prod-1.0.0.jar -t $MES_BACK_IMAGE /mydata/mowen-blog/back_project/app
|
|
- docker run -d --restart=always --network=host --log-opt max-size=50m --log-opt max-file=5 --name $MES_BACK_CONTAINER $MES_BACK_IMAGE
|
|
only:
|
|
- main #当有代码合到主干时触发这个job
|
|
tags:
|
|
- pioneer-mes-prod
|