From 8f593235492b95953077ae5bfd758ee7e06742ec Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 09:45:18 +0000 Subject: [PATCH 01/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 74 ++++++++++++++++++++++++++++---------------------- 1 file changed, 42 insertions(+), 32 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 56cb3c9..477c479 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,11 +1,10 @@ stages: - build - - deploy - - push + - save + - sync variables: ProjectPath: "mongo.games.com/game" - DeployPath: "mongo.games.com/deploy" default: tags: @@ -33,47 +32,58 @@ build-job: done < shell/programs.txt deploy-job: - stage: deploy + stage: save script: - # 拉取 - - echo "拉取deploy" - - cd $GOPATH/src/$DeployPath - - git checkout $CI_COMMIT_REF_NAME - - git pull - - # 拷贝data目录 - - echo '拷贝data目录' - cd $GOPATH/src/$ProjectPath - - cp -rfvp data/* $GOPATH/src/$DeployPath/data - + # 拷贝文件 + - echo '拷贝文件' + - mkdir -p ./temp + - mkdir -p ./temp/data + - cp -rfp ./data/* ./temp/data # 删除自定义配置 - echo '删除自定义配置' - | while IFS= read -r line do - echo "删除 $line 配置" - rm $GOPATH/src/$DeployPath/data/$line - done < shell/exclude.txt - + echo "删除 $line 配置" + rm ./temp/data/$line + done < ./shell/exclude.txt # 拷贝可执行程序 - echo '拷贝可执行程序' - | while IFS= read -r line do - echo "拷贝 $line" - cp -rf $line/$line $GOPATH/src/$DeployPath/ - echo "删除 $line" - rm -rf $line/$line - done < shell/programs.txt + echo "拷贝 $line" + mv ./$line/$line ./temp/$line + done < ./shell/programs.txt push_job: - stage: push + stage: sync script: - # 提交代码 - - echo '提交代码' - - cd $GOPATH/src/$DeployPath - - git config user.email "ci@example.com" # 设置提交者的 email - - git config user.name "GitLab CI" # 设置提交者的名称 - - git add . - - git commit -m "auto commit pipelineId $CI_PIPELINE_ID" - - git push origin $CI_COMMIT_REF_NAME \ No newline at end of file + - cd $GOPATH/src/$ProjectPath + - | + if [ "$CI_COMMIT_BRANCH" == "develop" ]; then + SSH_PRIVATE_KEY = $SSH_PRIVATE_KEY_DEVELOP + REMOTE_HOST = $REMOTE_HOST_DEVELOP + REMOTE_USER = $REMOTE_USER_DEVELOP + REMOTE_PATH = $REMOTE_PATH_DEVELOP + elif [ "$CI_COMMIT_BRANCH" == "release" ]; then + SSH_PRIVATE_KEY = $SSH_PRIVATE_KEY_BETA + REMOTE_HOST = $REMOTE_HOST_BETA + REMOTE_USER = $REMOTE_USER_BETA + REMOTE_PATH = $REMOTE_PATH_BETA + else + echo "不支持的分支"; + exit 1; + fi + + - echo "Setting up SSH keys..." + # 设置 .ssh 目录并写入 SSH 私钥 + - mkdir -p ~/.ssh + - echo "$SSH_PRIVATE_KEY" | tr -d '\r' > ~/.ssh/id_rsa + - chmod 600 ~/.ssh/id_rsa + - ssh-keyscan -H "$REMOTE_HOST" >> ~/.ssh/known_hosts + + # 使用 rsync 将文件同步到远程服务器 + - echo "Deploying to remote server using rsync..." + - rsync -avz --delete build/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_PATH \ No newline at end of file From cb527866c81c3fd8e4e3c1c748b803fe19c9baf5 Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 09:50:41 +0000 Subject: [PATCH 02/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 477c479..14fc3ac 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -63,15 +63,15 @@ push_job: - cd $GOPATH/src/$ProjectPath - | if [ "$CI_COMMIT_BRANCH" == "develop" ]; then - SSH_PRIVATE_KEY = $SSH_PRIVATE_KEY_DEVELOP - REMOTE_HOST = $REMOTE_HOST_DEVELOP - REMOTE_USER = $REMOTE_USER_DEVELOP - REMOTE_PATH = $REMOTE_PATH_DEVELOP + SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_DEVELOP" + REMOTE_HOST="$REMOTE_HOST_DEVELOP" + REMOTE_USER="$REMOTE_USER_DEVELOP" + REMOTE_PATH="$REMOTE_PATH_DEVELOP" elif [ "$CI_COMMIT_BRANCH" == "release" ]; then - SSH_PRIVATE_KEY = $SSH_PRIVATE_KEY_BETA - REMOTE_HOST = $REMOTE_HOST_BETA - REMOTE_USER = $REMOTE_USER_BETA - REMOTE_PATH = $REMOTE_PATH_BETA + SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_BETA" + REMOTE_HOST="$REMOTE_HOST_BETA" + REMOTE_USER="$REMOTE_USER_BETA" + REMOTE_PATH="$REMOTE_PATH_BETA" else echo "不支持的分支"; exit 1; From e6299e8626926346fc1233805d0305c39091b65f Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 09:52:56 +0000 Subject: [PATCH 03/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 44 +++++++++----------------------------------- 1 file changed, 9 insertions(+), 35 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 14fc3ac..c209fcb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -31,32 +31,6 @@ build-job: cd .. done < shell/programs.txt -deploy-job: - stage: save - script: - - cd $GOPATH/src/$ProjectPath - # 拷贝文件 - - echo '拷贝文件' - - mkdir -p ./temp - - mkdir -p ./temp/data - - cp -rfp ./data/* ./temp/data - # 删除自定义配置 - - echo '删除自定义配置' - - | - while IFS= read -r line - do - echo "删除 $line 配置" - rm ./temp/data/$line - done < ./shell/exclude.txt - # 拷贝可执行程序 - - echo '拷贝可执行程序' - - | - while IFS= read -r line - do - echo "拷贝 $line" - mv ./$line/$line ./temp/$line - done < ./shell/programs.txt - push_job: stage: sync script: @@ -77,13 +51,13 @@ push_job: exit 1; fi - - echo "Setting up SSH keys..." - # 设置 .ssh 目录并写入 SSH 私钥 - - mkdir -p ~/.ssh - - echo "$SSH_PRIVATE_KEY" | tr -d '\r' > ~/.ssh/id_rsa - - chmod 600 ~/.ssh/id_rsa - - ssh-keyscan -H "$REMOTE_HOST" >> ~/.ssh/known_hosts + - echo "Setting up SSH keys..." + # 设置 .ssh 目录并写入 SSH 私钥 + - mkdir -p ~/.ssh + - echo "$SSH_PRIVATE_KEY" | tr -d '\r' > ~/.ssh/id_rsa + - chmod 600 ~/.ssh/id_rsa + - ssh-keyscan -H "$REMOTE_HOST" >> ~/.ssh/known_hosts - # 使用 rsync 将文件同步到远程服务器 - - echo "Deploying to remote server using rsync..." - - rsync -avz --delete build/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_PATH \ No newline at end of file + # 使用 rsync 将文件同步到远程服务器 + - echo "Deploying to remote server using rsync..." + - rsync -avz --delete build/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_PATH \ No newline at end of file From 44404279dd4709ebdfeeec02e6c2c648c26e92cc Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 09:58:22 +0000 Subject: [PATCH 04/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c209fcb..087c984 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -31,6 +31,33 @@ build-job: cd .. done < shell/programs.txt +deploy-job: + stage: save + script: + - cd $GOPATH/src/$ProjectPath + # 拷贝文件 + - echo '拷贝文件' + - rm -rf ./temp + - mkdir ./temp + - mkdir ./temp/data + - cp -rfp ./data/* ./temp/data + # 删除自定义配置 + - echo '删除自定义配置' + - | + while IFS= read -r line + do + echo "删除 $line 配置" + rm ./temp/data/$line + done < ./shell/exclude.txt + # 拷贝可执行程序 + - echo '拷贝可执行程序' + - | + while IFS= read -r line + do + echo "拷贝 $line" + mv ./$line/$line ./temp/$line + done < ./shell/programs.txt + push_job: stage: sync script: From 052c8e96f5532154b982303e784d991ba55af583 Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 10:04:32 +0000 Subject: [PATCH 05/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 087c984..7a265b5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -62,8 +62,7 @@ push_job: stage: sync script: - cd $GOPATH/src/$ProjectPath - - | - if [ "$CI_COMMIT_BRANCH" == "develop" ]; then + - if [ "$CI_COMMIT_BRANCH" == "develop" ]; then SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_DEVELOP" REMOTE_HOST="$REMOTE_HOST_DEVELOP" REMOTE_USER="$REMOTE_USER_DEVELOP" From f9d780a8a809ddb0b38f4b5099cdde633804080c Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 10:05:13 +0000 Subject: [PATCH 06/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7a265b5..60f8fc5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -86,4 +86,4 @@ push_job: # 使用 rsync 将文件同步到远程服务器 - echo "Deploying to remote server using rsync..." - - rsync -avz --delete build/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_PATH \ No newline at end of file + - rsync -avz --delete ./temp $REMOTE_USER@$REMOTE_HOST:$REMOTE_PATH \ No newline at end of file From c7a1e607cf94dfb465c23903e8ae1ab8d0bab3fb Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 10:07:10 +0000 Subject: [PATCH 07/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 60f8fc5..feb4156 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -63,20 +63,20 @@ push_job: script: - cd $GOPATH/src/$ProjectPath - if [ "$CI_COMMIT_BRANCH" == "develop" ]; then - SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_DEVELOP" - REMOTE_HOST="$REMOTE_HOST_DEVELOP" - REMOTE_USER="$REMOTE_USER_DEVELOP" - REMOTE_PATH="$REMOTE_PATH_DEVELOP" + SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_DEVELOP"; + REMOTE_HOST="$REMOTE_HOST_DEVELOP"; + REMOTE_USER="$REMOTE_USER_DEVELOP"; + REMOTE_PATH="$REMOTE_PATH_DEVELOP"; elif [ "$CI_COMMIT_BRANCH" == "release" ]; then - SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_BETA" - REMOTE_HOST="$REMOTE_HOST_BETA" - REMOTE_USER="$REMOTE_USER_BETA" - REMOTE_PATH="$REMOTE_PATH_BETA" + SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_BETA"; + REMOTE_HOST="$REMOTE_HOST_BETA"; + REMOTE_USER="$REMOTE_USER_BETA"; + REMOTE_PATH="$REMOTE_PATH_BETA"; else echo "不支持的分支"; exit 1; fi - + - echo "$REMOTE_HOST" - echo "Setting up SSH keys..." # 设置 .ssh 目录并写入 SSH 私钥 - mkdir -p ~/.ssh @@ -86,4 +86,4 @@ push_job: # 使用 rsync 将文件同步到远程服务器 - echo "Deploying to remote server using rsync..." - - rsync -avz --delete ./temp $REMOTE_USER@$REMOTE_HOST:$REMOTE_PATH \ No newline at end of file + - rsync -avz --delete build/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_PATH \ No newline at end of file From ae4a44a1b385da2ffe21888136a573647ea415e5 Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 10:07:28 +0000 Subject: [PATCH 08/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index feb4156..3b1accb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -86,4 +86,4 @@ push_job: # 使用 rsync 将文件同步到远程服务器 - echo "Deploying to remote server using rsync..." - - rsync -avz --delete build/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_PATH \ No newline at end of file + - rsync -avz --delete ./temp $REMOTE_USER@$REMOTE_HOST:$REMOTE_PATH \ No newline at end of file From 2ee789d927f8559e1f34ecd959b5018bae625e06 Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 10:15:59 +0000 Subject: [PATCH 09/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3b1accb..1cc0996 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -63,18 +63,16 @@ push_job: script: - cd $GOPATH/src/$ProjectPath - if [ "$CI_COMMIT_BRANCH" == "develop" ]; then - SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_DEVELOP"; - REMOTE_HOST="$REMOTE_HOST_DEVELOP"; - REMOTE_USER="$REMOTE_USER_DEVELOP"; - REMOTE_PATH="$REMOTE_PATH_DEVELOP"; + SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_DEVELOP"; + REMOTE_HOST="$REMOTE_HOST_DEVELOP"; + REMOTE_USER="$REMOTE_USER_DEVELOP"; elif [ "$CI_COMMIT_BRANCH" == "release" ]; then - SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_BETA"; - REMOTE_HOST="$REMOTE_HOST_BETA"; - REMOTE_USER="$REMOTE_USER_BETA"; - REMOTE_PATH="$REMOTE_PATH_BETA"; + SSH_PRIVATE_KEY="$SSH_PRIVATE_KEY_BETA"; + REMOTE_HOST="$REMOTE_HOST_BETA"; + REMOTE_USER="$REMOTE_USER_BETA"; else - echo "不支持的分支"; - exit 1; + echo "不支持的分支"; + exit 1; fi - echo "$REMOTE_HOST" - echo "Setting up SSH keys..." From 61a37386e442b1af61208539027a651800d297fd Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 10:17:12 +0000 Subject: [PATCH 10/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1cc0996..b8e0e31 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -84,4 +84,4 @@ push_job: # 使用 rsync 将文件同步到远程服务器 - echo "Deploying to remote server using rsync..." - - rsync -avz --delete ./temp $REMOTE_USER@$REMOTE_HOST:$REMOTE_PATH \ No newline at end of file + - rsync -avz --delete ./temp $REMOTE_USER@$REMOTE_HOST:$REMOTE_DEPLOY_PATH \ No newline at end of file From 37407d45ad57a80613e70d5affaed0e32d5b655e Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 13:15:55 +0000 Subject: [PATCH 11/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b8e0e31..b241c12 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,6 +12,9 @@ default: build-job: stage: build + only: + - develop + - release script: - git checkout $CI_COMMIT_REF_NAME # 拷贝到GOPATH @@ -33,6 +36,9 @@ build-job: deploy-job: stage: save + only: + - develop + - release script: - cd $GOPATH/src/$ProjectPath # 拷贝文件 @@ -60,6 +66,9 @@ deploy-job: push_job: stage: sync + only: + - develop + - release script: - cd $GOPATH/src/$ProjectPath - if [ "$CI_COMMIT_BRANCH" == "develop" ]; then From 93a24359830c992b96b5398af260dd45adb58fe1 Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 13:18:57 +0000 Subject: [PATCH 12/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b241c12..89c3f37 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -83,14 +83,15 @@ push_job: echo "不支持的分支"; exit 1; fi - - echo "$REMOTE_HOST" - - echo "Setting up SSH keys..." + # 设置 .ssh 目录并写入 SSH 私钥 + - echo "设置 SSH keys..." - mkdir -p ~/.ssh - echo "$SSH_PRIVATE_KEY" | tr -d '\r' > ~/.ssh/id_rsa - chmod 600 ~/.ssh/id_rsa - ssh-keyscan -H "$REMOTE_HOST" >> ~/.ssh/known_hosts # 使用 rsync 将文件同步到远程服务器 + - echo "同步到服务器" - echo "Deploying to remote server using rsync..." - rsync -avz --delete ./temp $REMOTE_USER@$REMOTE_HOST:$REMOTE_DEPLOY_PATH \ No newline at end of file From 1fa6e1bb5f651c6433be90b1687e4e0f844c6976 Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 13:19:44 +0000 Subject: [PATCH 13/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 89c3f37..55d01a2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -34,7 +34,7 @@ build-job: cd .. done < shell/programs.txt -deploy-job: +save-job: stage: save only: - develop @@ -64,7 +64,7 @@ deploy-job: mv ./$line/$line ./temp/$line done < ./shell/programs.txt -push_job: +sync_job: stage: sync only: - develop From aa1fa6d1d7b375a3338bf11207953050bb15527d Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 13:21:09 +0000 Subject: [PATCH 14/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 55d01a2..ef5ae70 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -25,8 +25,7 @@ build-job: # 编译 - echo '编译' - go env -w GO111MODULE=off - - | - while IFS= read -r line + - while IFS= read -r line do cd $line echo "编译 $line" @@ -49,16 +48,14 @@ save-job: - cp -rfp ./data/* ./temp/data # 删除自定义配置 - echo '删除自定义配置' - - | - while IFS= read -r line + - while IFS= read -r line do echo "删除 $line 配置" rm ./temp/data/$line done < ./shell/exclude.txt # 拷贝可执行程序 - echo '拷贝可执行程序' - - | - while IFS= read -r line + - while IFS= read -r line do echo "拷贝 $line" mv ./$line/$line ./temp/$line From f9996389d4c3fb4876582103f69949f7dbc5c0e3 Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 13:23:51 +0000 Subject: [PATCH 15/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ef5ae70..55d01a2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -25,7 +25,8 @@ build-job: # 编译 - echo '编译' - go env -w GO111MODULE=off - - while IFS= read -r line + - | + while IFS= read -r line do cd $line echo "编译 $line" @@ -48,14 +49,16 @@ save-job: - cp -rfp ./data/* ./temp/data # 删除自定义配置 - echo '删除自定义配置' - - while IFS= read -r line + - | + while IFS= read -r line do echo "删除 $line 配置" rm ./temp/data/$line done < ./shell/exclude.txt # 拷贝可执行程序 - echo '拷贝可执行程序' - - while IFS= read -r line + - | + while IFS= read -r line do echo "拷贝 $line" mv ./$line/$line ./temp/$line From 52a19245b7483693d82d68dd112fb5f52b1e67d3 Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 14:16:30 +0000 Subject: [PATCH 16/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 55d01a2..4304195 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -94,4 +94,4 @@ sync_job: # 使用 rsync 将文件同步到远程服务器 - echo "同步到服务器" - echo "Deploying to remote server using rsync..." - - rsync -avz --delete ./temp $REMOTE_USER@$REMOTE_HOST:$REMOTE_DEPLOY_PATH \ No newline at end of file + - rsync -avz --delete ./temp/* $REMOTE_USER@$REMOTE_HOST:$REMOTE_DEPLOY_PATH \ No newline at end of file From a4f6aab012a07a99e2a6b68da9616ea2f585559d Mon Sep 17 00:00:00 2001 From: skeleton Date: Tue, 15 Oct 2024 14:27:50 +0000 Subject: [PATCH 17/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4304195..8cbe633 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -94,4 +94,4 @@ sync_job: # 使用 rsync 将文件同步到远程服务器 - echo "同步到服务器" - echo "Deploying to remote server using rsync..." - - rsync -avz --delete ./temp/* $REMOTE_USER@$REMOTE_HOST:$REMOTE_DEPLOY_PATH \ No newline at end of file + - rsync -avz --delete ./temp/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_DEPLOY_PATH \ No newline at end of file From 216d84c669677c14d13df8438189f7752633b31c Mon Sep 17 00:00:00 2001 From: skeleton Date: Wed, 16 Oct 2024 01:08:21 +0000 Subject: [PATCH 18/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8cbe633..810bc90 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -15,6 +15,7 @@ build-job: only: - develop - release + resource_group: $RESOURCE_GROUP script: - git checkout $CI_COMMIT_REF_NAME # 拷贝到GOPATH @@ -39,6 +40,7 @@ save-job: only: - develop - release + resource_group: $RESOURCE_GROUP script: - cd $GOPATH/src/$ProjectPath # 拷贝文件 @@ -69,6 +71,7 @@ sync_job: only: - develop - release + resource_group: $RESOURCE_GROUP script: - cd $GOPATH/src/$ProjectPath - if [ "$CI_COMMIT_BRANCH" == "develop" ]; then From d3e0e4958cdbec5bc78f2b5e1028b3b86b48d786 Mon Sep 17 00:00:00 2001 From: skeleton Date: Wed, 16 Oct 2024 01:21:48 +0000 Subject: [PATCH 19/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 810bc90..086e6ee 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -15,7 +15,7 @@ build-job: only: - develop - release - resource_group: $RESOURCE_GROUP + resource_group: $CI_PIPELINE_ID script: - git checkout $CI_COMMIT_REF_NAME # 拷贝到GOPATH @@ -40,7 +40,7 @@ save-job: only: - develop - release - resource_group: $RESOURCE_GROUP + resource_group: $CI_PIPELINE_ID script: - cd $GOPATH/src/$ProjectPath # 拷贝文件 @@ -71,7 +71,7 @@ sync_job: only: - develop - release - resource_group: $RESOURCE_GROUP + resource_group: $CI_PIPELINE_ID script: - cd $GOPATH/src/$ProjectPath - if [ "$CI_COMMIT_BRANCH" == "develop" ]; then From 5ff7b463c236ed53675156880e6957b98b8e8993 Mon Sep 17 00:00:00 2001 From: skeleton Date: Wed, 16 Oct 2024 01:24:54 +0000 Subject: [PATCH 20/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 086e6ee..0ceb8ed 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,6 +17,7 @@ build-job: - release resource_group: $CI_PIPELINE_ID script: + - echo "$CI_PIPELINE_ID" - git checkout $CI_COMMIT_REF_NAME # 拷贝到GOPATH - echo '拷贝到GOPATH' From 0f04aa40e27c5d0cfe92df5b4363289813d61f74 Mon Sep 17 00:00:00 2001 From: skeleton Date: Wed, 16 Oct 2024 01:32:31 +0000 Subject: [PATCH 21/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0ceb8ed..3b319a6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,3 +1,9 @@ +workflow: + rules: + - if: $CI_PIPELINE_SOURCE == "push" + when: always + - when: never + stages: - build - save @@ -15,9 +21,8 @@ build-job: only: - develop - release - resource_group: $CI_PIPELINE_ID + resource_group: $RESOURCE_GROUP script: - - echo "$CI_PIPELINE_ID" - git checkout $CI_COMMIT_REF_NAME # 拷贝到GOPATH - echo '拷贝到GOPATH' @@ -41,7 +46,7 @@ save-job: only: - develop - release - resource_group: $CI_PIPELINE_ID + resource_group: $RESOURCE_GROUP script: - cd $GOPATH/src/$ProjectPath # 拷贝文件 @@ -72,7 +77,7 @@ sync_job: only: - develop - release - resource_group: $CI_PIPELINE_ID + resource_group: $RESOURCE_GROUP script: - cd $GOPATH/src/$ProjectPath - if [ "$CI_COMMIT_BRANCH" == "develop" ]; then From 69c4bbf011765a43ed5dfcf956339bd241829bee Mon Sep 17 00:00:00 2001 From: skeleton Date: Wed, 16 Oct 2024 01:39:51 +0000 Subject: [PATCH 22/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3b319a6..810bc90 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,9 +1,3 @@ -workflow: - rules: - - if: $CI_PIPELINE_SOURCE == "push" - when: always - - when: never - stages: - build - save From 16c4f270e5fc8c5a144370955ae686f519a8b768 Mon Sep 17 00:00:00 2001 From: skeleton Date: Wed, 16 Oct 2024 01:57:11 +0000 Subject: [PATCH 23/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0.gitlab-ci.yml=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 810bc90..aef6f4d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,7 +1,9 @@ stages: + - lock - build - save - sync + - unlock variables: ProjectPath: "mongo.games.com/game" @@ -10,12 +12,24 @@ default: tags: - gitlab +# 锁定作业,防止并发流水线执行 +lock_job: + stage: lock + script: + - | + if [ -f /tmp/ci_lock ]; then + echo "流水线已在运行,等待..." + exit 1 + else + touch /tmp/ci_lock + echo "获得锁定,开始流水线。" + fi + build-job: stage: build only: - develop - release - resource_group: $RESOURCE_GROUP script: - git checkout $CI_COMMIT_REF_NAME # 拷贝到GOPATH @@ -40,7 +54,6 @@ save-job: only: - develop - release - resource_group: $RESOURCE_GROUP script: - cd $GOPATH/src/$ProjectPath # 拷贝文件 @@ -71,7 +84,6 @@ sync_job: only: - develop - release - resource_group: $RESOURCE_GROUP script: - cd $GOPATH/src/$ProjectPath - if [ "$CI_COMMIT_BRANCH" == "develop" ]; then @@ -97,4 +109,11 @@ sync_job: # 使用 rsync 将文件同步到远程服务器 - echo "同步到服务器" - echo "Deploying to remote server using rsync..." - - rsync -avz --delete ./temp/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_DEPLOY_PATH \ No newline at end of file + - rsync -avz --delete ./temp/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_DEPLOY_PATH + +# 解锁作业,释放锁定 +unlock_job: + stage: unlock + script: + - rm -f /tmp/ci_lock + - echo "释放锁定,流水线结束。" \ No newline at end of file