34 lines
932 B
YAML
34 lines
932 B
YAML
name: 部署到生产环境
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
pull_request:
|
|
branches: [ main ]
|
|
workflow_dispatch:
|
|
inputs:
|
|
reason:
|
|
description: '手动触发部署的原因'
|
|
required: false
|
|
default: '手动部署'
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: 安装依赖工具
|
|
run: sudo apt-get install -y sshpass expect
|
|
|
|
- name: 执行部署
|
|
run: |
|
|
sshpass -p "${{ secrets.SERVER_PASSWORD }}" ssh -o StrictHostKeyChecking=no -p 42422 ${{ secrets.SERVER_USER }}@${{ secrets.SERVER_ADDRESS }} 'sudo systemctl stop neobot.service && cd /home/luoxiaolei/neobot/NeoBot && git pull origin main && sudo systemctl start neobot.service'
|
|
continue-on-error: true
|
|
|
|
- name: 检查部署状态
|
|
if: failure()
|
|
run: |
|
|
echo "部署失败!请检查服务器日志。"
|
|
exit 1
|