Skip to content

🗑️chore: 删除package-lock.json并更新依赖管理方式 #35

🗑️chore: 删除package-lock.json并更新依赖管理方式

🗑️chore: 删除package-lock.json并更新依赖管理方式 #35

Workflow file for this run

name: Deploy
on:
# 恢复push触发器,但添加过滤条件
push:
branches: [ master ] # 触发分支,根据你的分支名称调整
# 允许您从 "Actions" 选项卡手动运行此工作流
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
# 只有当提交消息包含[deploy]标记时才执行部署
if: contains(github.event.head_commit.message, '[deploy]')
steps:
- name: 检验代码
uses: actions/checkout@v4
- name: 使用 Node.js
uses: actions/setup-node@v4
with:
node-version: 20 # 使用你项目所需的 Node.js 版本
- name: 检查 Node 版本
run: npm --version
- name: 安装依赖关系
run: npm install
- name: 构建 Vue 项目
run: npm run build # 假设你的构建命令是 npm run build
- name: 通过 SSH 部署到服务器
env:
SERVER_IP: ${{ secrets.SERVER_IP }}
SERVER_USER: ${{ secrets.SERVER_USER }}
DEPLOY_PATH: ${{ secrets.DEPLOY_PATH }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
run: |
# 配置 SSH 密钥
mkdir -p ~/.ssh
echo "$SSH_PRIVATE_KEY" | tr -d '\r' > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
echo -e "Host *\n\tStrictHostKeyChecking no" > ~/.ssh/config
# 上传构建文件到服务器(使用 scp,可替换为 rsync)
scp -r ./dist/* "$SERVER_USER"@"$SERVER_IP":"$DEPLOY_PATH"