Update logic_CI.yml

This commit is contained in:
2026-01-22 10:12:02 +08:00
committed by GitHub
parent 4fa68652eb
commit e96f990724

View File

@@ -10,50 +10,38 @@ on:
default: 8080
type: number
# 核心修复1最高权限兜底解决私有仓库鉴权
# 仅保留必要权限和你最初一致
permissions:
contents: write
actions: write
contents: read
actions: read
env:
# Go编译优化
# 完全还原你最初的环境变量
CGO_ENABLED: 0
GO111MODULE: on
GOSUMDB: off
# 七牛云配置
QINIU_REMOTE_DIR: releases/
# 显式指定你的仓库地址解决not found核心问题
REPO_URL: https://github.com/72wo/blazing.git
jobs:
build-and-upload-qiniu:
runs-on: ubuntu-latest
steps:
# 核心修复2手动克隆仓库替代checkout彻底解决鉴权/地址问题
- name: 手动克隆当前仓库兜底方案
run: |
# 用GITHUB_TOKEN拼接鉴权地址避免匿名访问404
CLONE_URL="https://${{ github.actor }}:${{ github.token }}@github.com/72wo/blazing.git"
git clone --depth 1 $CLONE_URL $GITHUB_WORKSPACE
cd $GITHUB_WORKSPACE
# 确认克隆成功打印仓库信息
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git rev-parse HEAD
echo "✅ 仓库克隆成功当前Commit$(git rev-parse --short=8 HEAD)"
shell: bash
# 修复checkout还原你最初的极简配置+补全鉴权无任何多余配置
- uses: actions/checkout@v4
with:
fetch-depth: 1 # 和你最初一致仅拉取最新提交
token: ${{ github.token }} # 仅加这一行鉴权解决私有仓库克隆
# 生成版本号基于本地Git兜底无异常
# 生成版本号完全还原你最初的逻辑无cd无绝对路径
- name: 生成构建版本号
id: set-version
run: |
cd $GITHUB_WORKSPACE
VERSION="v$(git rev-parse --short=8 HEAD)"
echo "build_version=${VERSION}" >> $GITHUB_OUTPUT
echo "构建版本号:${VERSION}" >> $GITHUB_STEP_SUMMARY
shell: bash
# 缓存Go依赖双缓存加速
# 缓存Go依赖完全和你最初一致
- name: 缓存Go依赖
uses: actions/cache@v4
with:
@@ -65,24 +53,21 @@ jobs:
${{ runner.os }}-go-
fail-on-cache-miss: false
# 配置Go环境
# 配置Go环境完全和你最初一致
- name: 配置Go 1.25环境
uses: actions/setup-go@v5
with:
go-version: '1.25'
cache: true
# 预下载依赖
# 预下载依赖完全和你最初一致无cd
- name: 预下载Go依赖
run: |
cd $GITHUB_WORKSPACE
go mod download -x
run: go mod download -x
shell: bash
# 编译Logic服务产物校验
# 编译服务完全还原你最初的逻辑相对路径build无任何绝对路径
- name: 编译Logic服务
run: |
cd $GITHUB_WORKSPACE
mkdir -p build
BIN_NAME="logic_${{ steps.set-version.outputs.build_version }}"
go build -v \
@@ -92,7 +77,6 @@ jobs:
-ldflags "-s -w -buildid= -extldflags '-static'" \
-o ./build/${BIN_NAME} \
./logic
# 产物存在性校验
if [ ! -f ./build/${BIN_NAME} ]; then
echo "❌ 编译失败:产物${BIN_NAME}不存在"
exit 1
@@ -101,7 +85,7 @@ jobs:
echo "产物名称:${BIN_NAME}" >> $GITHUB_STEP_SUMMARY
shell: bash
# 上传七牛云绝对路径指定无目录问题
# 核心修复七牛云上传改回你最初的相对路径build删除所有$GITHUB_WORKSPACE
- name: 上传产物到七牛云
uses: cumt-robin/upload-to-qiniu-action@v1
with:
@@ -109,14 +93,13 @@ jobs:
secret_key: ${{ secrets.QINIU_SK }}
bucket: ${{ secrets.QINIU_BUCKET_NAME }}
region: z2
local_dir: $GITHUB_WORKSPACE/build
local_dir: build # 还原你最初的写法绝对正确
remote_dir: ${{ env.QINIU_REMOTE_DIR }}
overwrite: true
# 打印构建信息
# 打印信息完全还原你最初的逻辑无cd无绝对路径
- name: 打印构建完成信息
run: |
cd $GITHUB_WORKSPACE
BIN_NAME="logic_${{ steps.set-version.outputs.build_version }}"
CDN_URL="https://${{ secrets.QINIU_CDN_DOMAIN }}/${{ env.QINIU_REMOTE_DIR }}${BIN_NAME}"
echo "======================================"
@@ -128,12 +111,11 @@ jobs:
echo "启动命令:./${BIN_NAME} -port=${{ github.event.inputs.servicePort || 8080 }}"
echo "对应Commit${{ github.sha }}"
echo "======================================"
# 步骤摘要
echo "## ✅ 构建&分发完成" >> $GITHUB_STEP_SUMMARY
echo "- 版本号:${{ steps.set-version.outputs.build_version }}" >> $GITHUB_STEP_SUMMARY
echo "- 触发方式:${{ github.event_name == 'workflow_dispatch' && '手动触发' || '代码推送' }}" >> $GITHUB_STEP_SUMMARY
echo "- 服务端口:${{ github.event.inputs.servicePort || 8080 }}" >> $GITHUB_STEP_SUMMARY
echo "- 七牛云CDN地址[${CDN_URL}](${CDN_URL})" >> $GITHUB_STEP_SUMMARY
echo "- 启动命令:`./${BIN_NAME} -port=${{ github.event.inputs.servicePort || 8080 }}`" >> $GITHUB_STEP_SUMMARY
echo "- 对应Commit[${{ github.sha }}](https://${{ github.repository }}/commit/${{ github.sha }})" >> $GITHUB_STEP_SUMMARY
echo "- 对应Commit[${{ github.sha }}](https://github.com/${{ github.repository }}/commit/${{ github.sha }})" >> $GITHUB_STEP_SUMMARY
shell: bash