提交 7671e668 作者: 廖星辰

更新 .gitlab-ci.yml

上级 8945b9b4
cache:
paths:
- node_modules/
stages: stages:
- sonar - sonar
- build - build
- deploy - deploy
variables: cache:
CONTAINER_NAME: web_common_company_site paths:
- node_modules/
LAN_REPO: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018
WAN_REPO: registry.cn-beijing.aliyuncs.com/qianjia2018
DEV_REPO: $WAN_REPO/qianjia_dev variables:
PRED_REPO: $WAN_REPO/qianjia_pred PORT: "7084"
PROD_REPO: $LAN_REPO/qianjia_prod 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 image: registry.cn-beijing.aliyuncs.com/qianjia2018/qianjia_dev:sonar1
stage: sonar stage: sonar
before_script:
- CONTAINER_NAME=`echo $CI_PROJECT_NAME | tr 'A-Z' 'a-z'| tr '_' '-'`
script: 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=./* - /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: tags:
- sonarqube-200 - sonarqube-200
only: only:
- dev - dev
build_push_image_dev_job:
image: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018/qianjia_public:mvn-docker-kube
build_push_image_dev:
stage: build stage: build
before_script: 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: script:
- docker build -t $LAN_REPO/qianjia_dev:$CONTAINER_NAME -f Dockerfile-dev . - docker build -t $LAN_REPO/$DEV_REPO/$CONTAINER_NAME:$TAG -f Dockerfile-dev .
- docker push $LAN_REPO/qianjia_dev:$CONTAINER_NAME - docker push $LAN_REPO/$DEV_REPO/$CONTAINER_NAME:$TAG
tags: tags:
- docker-run - k8s
only: only:
- dev - dev
when: on_success
build_push_image_pred: deploy_to_dev_job:
stage: build image: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018/qianjia_public:mvn-docker-kube
stage: deploy
before_script: 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: script:
- docker build -t $LAN_REPO/qianjia_pred:$CONTAINER_NAME -f Dockerfile-pred . - bash ~/.local/bin/f200.sh $CONTAINER_NAME $PORT 80 $WAN_REPO/$DEV_REPO/$CONTAINER_NAME:$TAG guojia 192.168.10.200
- docker push $LAN_REPO/qianjia_pred:$CONTAINER_NAME
tags: tags:
- docker-run - ssh-deploy
only: 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 stage: build
before_script: 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: script:
- docker build -t $PROD_REPO:$CONTAINER_NAME -f Dockerfile-prod . - docker build -t $LAN_REPO/$PRED_REPO/$CONTAINER_NAME:$TAG -f Dockerfile-pred .
- docker push $PROD_REPO:$CONTAINER_NAME - docker push $LAN_REPO/$PRED_REPO/$CONTAINER_NAME:$TAG
tags: tags:
- docker-run - k8s
only: only:
- master - release
when: on_success
remote_run_image_dev: deploy_to_pred_job:
image: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018/qianjia_public:mvn-docker-kube
stage: deploy 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: 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: tags:
- shell-200 - ssh-deploy
only: only:
- dev - release
when: on_success 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: 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: tags:
- shell-prod - k8s
only: only:
- release - master
when: on_success when: on_success
deploy_to_prod_job:
remote_run_image_prod: image: registry-vpc.cn-beijing.aliyuncs.com/qianjia2018/qianjia_public:mvn-docker-kube
stage: deploy 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: 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: tags:
- shell-prod - k8s
only: only:
- master - master
when: on_success
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论