diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 8a0ec75..d2db47d 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -16,9 +16,47 @@ jobs: echo "当前目录: $(pwd)" echo "工作目录: ${{ gitea.workspace }}" + - name: 安装Go环境 + run: | + echo "🔧 安装Go 1.22环境..." + + # 检查是否已安装Go + if command -v go &> /dev/null; then + echo "✅ Go已安装: $(go version)" + else + echo "📥 下载并安装Go..." + + # 下载Go 1.22 + GO_VERSION="1.22.0" + GO_ARCH="linux-amd64" + GO_URL="https://go.dev/dl/go${GO_VERSION}.${GO_ARCH}.tar.gz" + + echo "下载Go ${GO_VERSION}..." + wget -q ${GO_URL} -O go.tar.gz + + # 解压到/usr/local + echo "解压Go到/usr/local..." + sudo tar -C /usr/local -xzf go.tar.gz + + # 设置环境变量 + export PATH=$PATH:/usr/local/go/bin + export GOROOT=/usr/local/go + export GOPATH=$HOME/go + + # 验证安装 + echo "验证Go安装..." + /usr/local/go/bin/go version + + # 清理下载文件 + rm go.tar.gz + + echo "✅ Go安装完成" + fi + - name: 检查Go环境 run: | echo "🔍 检查Go环境..." + export PATH=$PATH:/usr/local/go/bin go version go env GOPATH go env GOROOT @@ -26,18 +64,21 @@ jobs: - name: 下载依赖 run: | echo "📦 下载Go模块依赖..." + export PATH=$PATH:/usr/local/go/bin go mod download echo "✅ 依赖下载完成" - name: 验证依赖 run: | echo "🔍 验证Go模块..." + export PATH=$PATH:/usr/local/go/bin go mod verify echo "✅ 模块验证完成" - name: 构建项目 run: | echo "🔨 开始构建 Epic Go 项目..." + export PATH=$PATH:/usr/local/go/bin go build -v -o epic-game-service main.go echo "✅ 构建完成" @@ -51,6 +92,7 @@ jobs: - name: 显示项目信息 run: | echo "📋 项目信息:" + export PATH=$PATH:/usr/local/go/bin echo "Go 版本: $(go version)" echo "模块名称: $(go list -m)" echo "构建时间: $(date)"