ci: 添加 Gitea Actions 示例工作流

- 新增 ci.yaml 文件,定义 Gitea Actions 示例
This commit is contained in:
hu xiaotong
2025-06-26 16:54:26 +08:00
parent 5f52884d96
commit 7d4440b6ea

View File

@@ -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