From 7d4440b6ea5bbaa73ccee62f1bf6bcf4fb3020da Mon Sep 17 00:00:00 2001 From: hu xiaotong <416314413@163.com> Date: Thu, 26 Jun 2025 16:54:26 +0800 Subject: [PATCH] =?UTF-8?q?ci:=20=E6=B7=BB=E5=8A=A0=20Gitea=20Actions=20?= =?UTF-8?q?=E7=A4=BA=E4=BE=8B=E5=B7=A5=E4=BD=9C=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 ci.yaml 文件,定义 Gitea Actions 示例 --- .gitea/workflows/ci.yaml | 36 +++++++++++++++++++++++------------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 4ed59f2..8b938a9 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -13,6 +13,7 @@ jobs: image: gitea-ci-bash:latest steps: - name: 检出代码 + shell: bash run: | echo "📥 检出代码到工作目录..." echo "当前目录: $(pwd)" @@ -26,7 +27,7 @@ jobs: # 拉取代码(使用token鉴权) git clone --depth=1 -b "$BRANCH_NAME" "http://1c18ee1ab9a9cb291506d0c5c016a33be7d59e8c:x-oauth-basic@gitea.htoop.cn/${{ gitea.repository }}.git" . if [ $? -ne 0 ]; then - echo "❌ 代码检出失败1" + echo "❌ 代码检出失败" exit 1 fi @@ -48,6 +49,7 @@ jobs: ls -la - name: 安装Go环境 + shell: bash run: | echo "🔧 安装Go 1.22环境..." if [ -x /usr/local/go/bin/go ]; then @@ -91,6 +93,7 @@ jobs: fi - name: 检查Go环境 + shell: bash run: | echo "🔍 检查Go环境..." export PATH=$PATH:/usr/local/go/bin @@ -99,6 +102,7 @@ jobs: go env GOROOT - name: 下载依赖 + shell: bash run: | echo "📦 下载Go模块依赖..." export PATH=$PATH:/usr/local/go/bin @@ -123,6 +127,7 @@ jobs: go list -m all | head -10 - name: 验证依赖 + shell: bash run: | echo "🔍 验证Go模块..." export PATH=$PATH:/usr/local/go/bin @@ -130,6 +135,7 @@ jobs: echo "✅ 模块验证完成" - name: 构建项目 + shell: bash run: | echo "🔨 开始构建 Epic Go 项目..." export PATH=$PATH:/usr/local/go/bin @@ -137,12 +143,14 @@ jobs: echo "✅ 构建完成" - name: 检查构建产物 + shell: bash run: | echo "📦 构建产物信息:" ls -la epic-game-service echo "文件大小: $(du -h epic-game-service | cut -f1)" - name: 显示项目信息 + shell: bash run: | echo "📋 项目信息:" export PATH=$PATH:/usr/local/go/bin @@ -153,6 +161,7 @@ jobs: echo "提交: ${{ gitea.sha }}" - name: 准备部署 + shell: bash run: | echo "🚀 准备部署..." echo "运行器操作系统: ${{ runner.os }}" @@ -164,6 +173,7 @@ jobs: echo "📦 部署包已准备完成" - name: 复制构建产物到目标目录并重命名 + shell: bash run: | echo "📤 复制构建产物到 /opt/dockeropt/epic-go 并重命名为 main ..." mkdir -p /opt/dockeropt/epic-go @@ -171,20 +181,20 @@ jobs: echo "✅ 构建产物已复制并重命名为 /opt/dockeropt/epic-go/main" ls -l /opt/dockeropt/epic-go - name: 重启 Docker 容器 + shell: bash run: | echo "♻️ 重启 epic-go 容器..." - # 自动安装 docker CLI,优先用国内源 - if command -v docker &> /dev/null; then - echo "docker 已安装: $(docker --version)" - elif command -v apt-get &> /dev/null; then - apt-get update && apt-get install -y docker.io - elif command -v apk &> /dev/null; then - echo "http://mirrors.aliyun.com/alpine/v3.20/main" > /etc/apk/repositories - echo "http://mirrors.aliyun.com/alpine/v3.20/community" >> /etc/apk/repositories - apk update - apk add --no-cache docker-cli - elif command -v yum &> /dev/null; then - yum install -y docker + if ! command -v docker &> /dev/null; then + if command -v apt-get &> /dev/null; then + apt-get update && apt-get install -y docker.io + elif command -v apk &> /dev/null; then + echo "http://mirrors.aliyun.com/alpine/v3.20/main" > /etc/apk/repositories + echo "http://mirrors.aliyun.com/alpine/v3.20/community" >> /etc/apk/repositories + apk update + apk add --no-cache docker-cli + elif command -v yum &> /dev/null; then + yum install -y docker + fi fi docker ps -a docker restart epic-go