1 Star 0 Fork 0

Carlos/kuaidihelp_admin

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
.gitlab-ci.yml 4.65 KB
一键复制 编辑 原始数据 按行查看 历史
yangyongming 提交于 2023-04-20 14:02 . build: 更新ci
image: ${image}
stages:
- auto
- deploy_to_test
- deploy_to_rc
- deploy_to_prod
cache:
key: ${CI_PROJECT_NAME}
paths:
- node_modules/
before_script:
- test -z ${CI_PROJECT_NAME} && exit 1
- test -z ${test_ip} && exit 1
- test -z ${rc_ip} && exit 1
- test -z ${prod_ip} && exit 1
- test -z ${prod_ip_jdk} && exit 1
- test -z ${port} && exit 1
- test -z ${debug} || sleep 600
- echo "${devops_ip} ${devops_domain}" >>/etc/hosts
auto_deploy_prod:
stage: auto
script:
- python /root/auto_deploy_prod.py
only:
- master
tags:
- shared_runner_tags
cache: {}
when: manual
deploy_test:
stage: deploy_to_test
script:
- if [[ "$CI_COMMIT_MESSAGE" == *"$PUBLIC_TAG"* ]]; then
ssh-keyscan -H -t ecdsa -p ${port} ${test_ip} > ~/.ssh/known_hosts;
rsync -avztmH -e "ssh -p ${port}" ./public/ ${test_ip}:/kuaibao/www/${STATIC_NAME:="unset"}/static/${CI_PROJECT_NAME:="unset"}/;
echo '仅上传public文件夹,后续任务中断...';
exit 0;
fi
- npm run deploy test '${dd_access_token}' '${dd_secret}' '${CI_COMMIT_MESSAGE}'
- ssh-keyscan -H -t ecdsa -p ${port} ${test_ip} > ~/.ssh/known_hosts
- rsync -avztmH -e "ssh -p ${port}" --exclude-from="exclude.txt" --delete ./dist/ ${test_ip}:/kuaibao/www/${STATIC_NAME:="unset"}/static/${CI_PROJECT_NAME:="unset"}/
- rsync -avztH -e "ssh -p ${port}" --include-from="include.txt" --delete ./dist/ ${test_ip}:/kuaibao/www/${PHP_PROJECT_NAME:="unset"}/public/${DIST_NAME:='dist'}/
- if [[ ${PHP_PROJECT_NAME_INDEX} ]]; then
rsync -avztH -e "ssh -p ${port}" dist/index.html ${test_ip}:/kuaibao/www/${PHP_PROJECT_NAME}/${PHP_PROJECT_NAME_INDEX};
fi
only:
- test
tags:
- shared_runner_tags
deploy_rc:
stage: deploy_to_rc
script:
- npm run deploy deploy_rc '${dd_access_token}' '${dd_secret}' '${CI_COMMIT_MESSAGE}'
- ssh-keyscan -H -t ecdsa -p ${port} ${rc_ip} > ~/.ssh/known_hosts
- rsync -avztmH -e "ssh -p ${port}" --exclude-from="exclude.txt" --delete ./dist/ ${rc_ip}:/kuaibao/www/${STATIC_NAME:="unset"}/static/${CI_PROJECT_NAME:="unset"}/
- rsync -avztH -e "ssh -p ${port}" --include-from="include.txt" --delete ./dist/ ${rc_ip}:/kuaibao/www/${PHP_PROJECT_NAME:="unset"}/public/${DIST_NAME:='dist'}/
- if [[ ${PHP_PROJECT_NAME_INDEX} ]]; then
rsync -avztH -e "ssh -p ${port}" dist/index.html ${rc_ip}:/kuaibao/www/${PHP_PROJECT_NAME}/${PHP_PROJECT_NAME_INDEX};
fi
- if [[ ${PHP_PROJECT_NAME_RC} ]]; then
rsync -avztH -e "ssh -p ${port}" --include-from="include.txt" --delete ./dist/ ${rc_ip}:/kuaibao/www/${PHP_PROJECT_NAME_RC:="unset"}/public/${DIST_NAME:='dist'}/;
rsync -avztH -e "ssh -p ${port}" dist/index.html ${rc_ip}:/kuaibao/www/${PHP_PROJECT_NAME_RC}/${PHP_PROJECT_NAME_INDEX};
fi
#- python /root/sendmail.py
only:
- tags
except:
- /^v\d*.\d+.\d+$/
- /^\d+$/
tags:
- shared_runner_tags
deploy_prod:
stage: deploy_to_prod
script:
- if [[ "$CI_COMMIT_MESSAGE" == *"$PUBLIC_TAG"* ]]; then
ssh-keyscan -H -t ecdsa -p ${port} ${prod_ip} > ~/.ssh/known_hosts;
rsync -avztmH -e "ssh -p ${port}" ./public/ ${prod_ip}:/kuaibao/www/${STATIC_NAME:="unset"}/static/${CI_PROJECT_NAME:="unset"}/;
echo '仅上传public文件夹,后续任务中断...';
exit 0;
fi
- if [[ ${PHP_PROJECT_NAME} == 'kuaidihelp_m' ]];
then
prod_ip_jdk=${prod_ip_m};
echo m站,将prod_ip_jdk更新为prod_ip_m;
elif [[ ${CI_PROJECT_NAME} == 'kuaidihelp_wzg' ]];
then
prod_ip_jdk=${prod_ip_wzg};
echo 微掌柜,将prod_ip_jdk更新为prod_ip_wzg;
elif [[ ${CI_PROJECT_NAME} != 'judanke_'* ]];
then
prod_ip_jdk=${prod_ip};
echo 非聚单客项目,将prod_ip_jdk更新为prod_ip;
fi;
- npm run deploy deploy '${dd_access_token}' '${dd_secret}' '${CI_COMMIT_MESSAGE}'
- ssh-keyscan -H -t ecdsa -p ${port} ${prod_ip} > ~/.ssh/known_hosts
- rsync -avztmH -e "ssh -p ${port}" --exclude-from="exclude.txt" --delete ./dist/ ${prod_ip}:/kuaibao/www/${STATIC_NAME:="unset"}/static/${CI_PROJECT_NAME:="unset"}/
- ssh-keyscan -H -t ecdsa -p ${port} ${prod_ip_jdk} > ~/.ssh/known_hosts
- rsync -avztH -e "ssh -p ${port}" --include-from="include.txt" --delete ./dist/ ${prod_ip_jdk}:/kuaibao/www/${PHP_PROJECT_NAME:="unset"}/public/${DIST_NAME:='dist'}/
- if [[ ${PHP_PROJECT_NAME_INDEX} ]]; then
rsync -avztH -e "ssh -p ${port}" dist/index.html ${prod_ip_jdk}:/kuaibao/www/${PHP_PROJECT_NAME}/${PHP_PROJECT_NAME_INDEX};
fi
- python /root/sendmail.py
only:
- tags
except:
- /^v.\d+.\d+(?i:rc)$/
- /^\d+(?i:rc)$/
tags:
- shared_runner_tags
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/CarlosW/kuaidihelp_admin.git
git@gitee.com:CarlosW/kuaidihelp_admin.git
CarlosW
kuaidihelp_admin
kuaidihelp_admin
master

搜索帮助

23e8dbc6 1850385 7e0993f3 1850385