提交 7671e668 作者: 廖星辰

更新 .gitlab-ci.yml

上级 8945b9b4
cache:
paths:
- node_modules/
stages:
- sonar
- build
- deploy
variables:
CONTAINER_NAME: web_common_company_site
LAN_REPO: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018
WAN_REPO: registry.cn-beijing.aliyuncs.com/qianjia2018
cache:
paths:
- node_modules/
DEV_REPO: $WAN_REPO/qianjia_dev
PRED_REPO: $WAN_REPO/qianjia_pred
PROD_REPO: $LAN_REPO/qianjia_prod
variables:
PORT: "7084"
DOMAIN: "ts"
KUBECONFIG: /etc/deploy/config
LAN_REPO: registry-vpc.cn-beijing.aliyuncs.com
WAN_REPO: registry.cn-beijing.aliyuncs.com
DEV_REPO: qianjia_dev
PRED_REPO: qianjia_pred
PROD_REPO: qianjia_prod
sonar check:
# dev分支
sonar_check_job:
image: registry.cn-beijing.aliyuncs.com/qianjia2018/qianjia_dev:sonar1
stage: sonar
before_script:
- CONTAINER_NAME=`echo $CI_PROJECT_NAME | tr 'A-Z' 'a-z'| tr '_' '-'`
script:
- /opt/sonar-runner-2.4/bin/sonar-runner -Dsonar.projectName=$CONTAINER_NAME -Dsonar.projectKey=$CONTAINER_NAME -Dsonar.projectVersion=1.0 -Dsonar.sources=. -Dsonar.language=js -Dsonar.java.binaries=./*
allow_failure: true
tags:
- sonarqube-200
only:
- dev
build_push_image_dev:
build_push_image_dev_job:
image: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018/qianjia_public:mvn-docker-kube
stage: build
before_script:
- docker login --username=wangnannan@1520818330092673 --password="qj123123" registry-vpc.cn-beijing.aliyuncs.com
- docker login --username=$USERNAME --password=$PASSWORD registry-vpc.cn-beijing.aliyuncs.com
- CONTAINER_NAME=`echo $CI_PROJECT_NAME | tr 'A-Z' 'a-z'| tr '_' '-'`
- TAG=`expr substr $CI_COMMIT_SHA 1 8`
script:
- docker build -t $LAN_REPO/qianjia_dev:$CONTAINER_NAME -f Dockerfile-dev .
- docker push $LAN_REPO/qianjia_dev:$CONTAINER_NAME
- docker build -t $LAN_REPO/$DEV_REPO/$CONTAINER_NAME:$TAG -f Dockerfile-dev .
- docker push $LAN_REPO/$DEV_REPO/$CONTAINER_NAME:$TAG
tags:
- docker-run
- k8s
only:
- dev
build_push_image_pred:
stage: build
when: on_success
deploy_to_dev_job:
image: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018/qianjia_public:mvn-docker-kube
stage: deploy
before_script:
- docker login --username=wangnannan@1520818330092673 --password="qj123123" registry-vpc.cn-beijing.aliyuncs.com
- CONTAINER_NAME=`echo $CI_PROJECT_NAME | tr 'A-Z' 'a-z'| tr '_' '-'`
- TAG=`expr substr $CI_COMMIT_SHA 1 8`
script:
- docker build -t $LAN_REPO/qianjia_pred:$CONTAINER_NAME -f Dockerfile-pred .
- docker push $LAN_REPO/qianjia_pred:$CONTAINER_NAME
- bash ~/.local/bin/f200.sh $CONTAINER_NAME $PORT 80 $WAN_REPO/$DEV_REPO/$CONTAINER_NAME:$TAG guojia 192.168.10.200
tags:
- docker-run
- ssh-deploy
only:
- release
- dev
when: on_success
build_push_image_prod:
# release分支
build_push_image_pred_job:
image: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018/qianjia_public:mvn-docker-kube
stage: build
before_script:
- docker login --username=wangnannan@1520818330092673 --password="qj123123" registry-vpc.cn-beijing.aliyuncs.com
- docker login --username=$USERNAME --password=$PASSWORD registry-vpc.cn-beijing.aliyuncs.com
- CONTAINER_NAME=`echo $CI_PROJECT_NAME | tr 'A-Z' 'a-z'| tr '_' '-'`
- TAG=`expr substr $CI_COMMIT_SHA 1 8`
script:
- docker build -t $PROD_REPO:$CONTAINER_NAME -f Dockerfile-prod .
- docker push $PROD_REPO:$CONTAINER_NAME
- docker build -t $LAN_REPO/$PRED_REPO/$CONTAINER_NAME:$TAG -f Dockerfile-pred .
- docker push $LAN_REPO/$PRED_REPO/$CONTAINER_NAME:$TAG
tags:
- docker-run
- k8s
only:
- master
remote_run_image_dev:
- release
when: on_success
deploy_to_pred_job:
image: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018/qianjia_public:mvn-docker-kube
stage: deploy
before_script:
- CONTAINER_NAME=`echo $CI_PROJECT_NAME | tr 'A-Z' 'a-z'| tr '_' '-'`
- TAG=`expr substr $CI_COMMIT_SHA 1 8`
script:
- bash ~/.local/bin/f200.sh $CONTAINER_NAME 7084 80 $DEV_REPO:$CONTAINER_NAME guojia 192.168.10.200
- bash ~/.local/bin/fdeploy.sh $CONTAINER_NAME $PORT 80 $WAN_REPO/$PRED_REPO/$CONTAINER_NAME:$TAG zp 39.106.144.161
tags:
- shell-200
- ssh-deploy
only:
- dev
- release
when: on_success
remote_run_image_pred:
stage: deploy
# master分支
build_push_image_prod_job:
image: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018/qianjia_public:mvn-docker-kube
stage: build
before_script:
- docker login --username=$USERNAME --password=$PASSWORD registry-vpc.cn-beijing.aliyuncs.com
- CONTAINER_NAME=`echo $CI_PROJECT_NAME | tr 'A-Z' 'a-z'| tr '_' '-'`
- TAG=`expr substr $CI_COMMIT_SHA 1 8`
script:
- bash ~/.local/bin/fdeploy.sh $CONTAINER_NAME 7084 80 $PRED_REPO:$CONTAINER_NAME zp 39.106.144.161
- docker build -t $LAN_REPO/$PROD_REPO/$CONTAINER_NAME:$TAG -f Dockerfile-prod .
- docker push $LAN_REPO/$PROD_REPO/$CONTAINER_NAME:$TAG
tags:
- shell-prod
- k8s
only:
- release
- master
when: on_success
remote_run_image_prod:
deploy_to_prod_job:
image: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018/qianjia_public:mvn-docker-kube
stage: deploy
before_script:
- CONTAINER_NAME=`echo $CI_PROJECT_NAME | tr 'A-Z' 'a-z'| tr '_' '-'`
- TAG=`expr substr $CI_COMMIT_SHA 1 8`
script:
- bash ~/.local/bin/fdeploy.sh $CONTAINER_NAME 7084 80 $PROD_REPO:$CONTAINER_NAME zp 39.106.17.245
- mkdir -p /etc/deploy
- echo $KUBE_CONFIG |base64 -d > $KUBECONFIG
- sed -i s/APPNAME/$CONTAINER_NAME/g deployment.yaml
- sed -i s/NAMESPACE/$PROD_REPO/g deployment.yaml
- sed -i s/CONPORT/$PORT/g deployment.yaml
- sed -i s/TAG/$TAG/g deployment.yaml
- sed -i s/DOMAIN/$DOMAIN/g deployment.yaml
- kubectl apply -f deployment.yaml
tags:
- shell-prod
- k8s
only:
- master
when: on_success
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论