From 86f081a13943630cd9b0a5a25460845cd3b683b8 Mon Sep 17 00:00:00 2001 From: xiang <27800734@qq.com> Date: Sat, 10 May 2025 15:37:27 +0800 Subject: [PATCH] 1 --- .gitlab-ci.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 24b0576..ea3d6ac 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -98,3 +98,28 @@ deploy_production: only: - release + +deploy_master: + stage: deploy + before_script: + - Version=$(sed -n 's/.*\([^<]*\)<\/Version>.*/\1/p' ./${ProjectName}/${ProjectName}.csproj) + - MasterVersion=v${Version}.${CI_PIPELINE_ID} + ## 安装ssh-agent + - 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y )' + - eval $(ssh-agent -s) + + ## 将GitLab服务器私钥添加到ssh-agent代理中 + - chmod 400 "$SSH_PRIVATE_KEY" + - ssh-add "$SSH_PRIVATE_KEY" + + ## 创建~/.ssh目录 + - mkdir -p ~/.ssh + - chmod 700 ~/.ssh + + ## 创建SSH_KNOWN_HOSTS + - cp "$SSH_KNOWN_HOSTS2" ~/.ssh/known_hosts + - chmod 644 ~/.ssh/known_hosts + script: + - ssh -t ${Server_Ip2} "(docker stop ${PackageName} && docker rm ${PackageName} || echo 'Container ${PackageName} not found, skipping removal.') && docker login -u ${Ali_Docker_UserName} -p ${Ali_Docker_Password} ${Ali_Docker_Registry} && docker run -e TZ=Asia/Shanghai -d --restart=always -v /data/yesblog:/app/files --name ${PackageName} -p ${AppPort}:8080 ${MasterDockerImage}:${MasterVersion}" + only: + - master