Files
Workflow config file is invalid. Please check your config file: EOF
编码猿 850a5fb27a
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 5m57s
build
2025-10-06 21:49:13 +08:00

91 lines
3.6 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# # 工作流名称
# name: Gitea Actions Demo
# # 运行名称在Gitea界面中显示的具体运行名称支持动态变量
# run-name: ${{ gitea.actor }} 正在测试 Gitea Actions 🚀
# # 触发条件当发生push事件时触发
# on: [push]
# # 作业定义
# jobs:
# # 作业名称探索Gitea Actions
# Explore-Gitea-Actions:
# # 运行环境在ubuntu-latest标签的runner上运行
# runs-on: ubuntu-latest
# # 步骤序列
# steps:
# - name: 执行远程 SSH 命令(密码认证)
# uses: appleboy/ssh-action@v1
# with:
# host: ${{ secrets.HOST }}
# username: ${{ secrets.USERNAME }}
# password: ${{ secrets.PASSWORD }}
# port: ${{ secrets.PORT }}
# script: |
# pwd
# cd /home/bmy/app-product
# ls -al
# # 步骤 2: 在管理机拉取最新代码并部署
# - name: 拉取代码并执行部署
# run: |
# # 1. 在 Runner 上安装 sshpass
# sudo apt-get update && sudo apt-get install -y sshpass
# # 2. 使用 sshpass 执行远程命令
# # -o StrictHostKeyChecking=no: 自动接受未知的主机密钥,避免 "Host key verification failed" 错误
# # sshpass -p '密码' ssh ...: 通过 sshpass 提供密码
# # -T: 禁用伪终端分配,避免相关警告
# sshpass -p '${{ secrets.PASSWORD }}' ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ${{ secrets.USERNAME }}@${{ secrets.HOST }} << 'EOF'
# # --- 以下为在管理机上执行的脚本 ---
# # 定义项目目录(管理机上的代码存放路径)
# PROJECT_DIR="/home/bmy/gitea_actions"
# # 进入项目目录,若不存在则克隆仓库
# if [ ! -d "$PROJECT_DIR" ]; then
# echo "项目目录不存在,克隆仓库..."
# # 假设管理机已配置好 Gitea 的访问权限 (如部署密钥)
# git clone git@git.bmycode.help:${{ gitea.repository }}.git $PROJECT_DIR
# cd $PROJECT_DIR
# else
# echo "拉取最新代码..."
# cd $PROJECT_DIR
# git checkout main
# git pull origin main
# fi
# # 执行部署脚本
# pwd
# ls
# # --- 远程脚本结束 ---
# EOF
# # 步骤1输出事件信息
# - run: echo "🎉 该作业由 ${{ gitea.event_name }} 事件自动触发。"
# # 步骤2输出运行环境信息
# - run: echo "🐧 该作业现在正在Gitea托管的 ${{ runner.os }} 服务器上运行!"
# # 步骤3输出分支和仓库信息
# - run: echo "🔎 您的分支名称是 ${{ gitea.ref }},您的仓库是 ${{ gitea.repository }}。"
# # 步骤4检出仓库代码具有名称的步骤
# - name: 检出仓库代码
# uses: actions/checkout@v4
# # 步骤5输出克隆完成信息
# - run: echo "💡 ${{ gitea.repository }} 仓库已克隆到runner。"
# # 步骤6准备测试提示
# - run: echo "🖥️ 工作流现已准备好在runner上测试您的代码。"
# # 步骤7列出仓库文件多行命令
# - name: 列出仓库中的文件
# run: |
# ls ${{ gitea.workspace }}
# # 步骤8输出作业状态
# - run: echo "🍏 此作业的状态是 ${{ job.status }}。"