This commit is contained in:
41
.gitea/workflows/deploy.yml
Normal file
41
.gitea/workflows/deploy.yml
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
name: 自动构建并部署Astro博客
|
||||||
|
|
||||||
|
# 触发条件:main分支有代码推送时执行
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ main ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-and-deploy:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
# 1. 拉取仓库最新代码
|
||||||
|
- name: 检出代码
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
# 2. 安装Node.js 20(Astro运行环境)
|
||||||
|
- name: 安装Node.js
|
||||||
|
uses: actions/setup-node@v4
|
||||||
|
with:
|
||||||
|
node-version: 20
|
||||||
|
cache: 'npm'
|
||||||
|
|
||||||
|
# 3. 安装依赖 + 打包Astro项目(生成dist目录)
|
||||||
|
- name: 安装依赖并构建
|
||||||
|
run: |
|
||||||
|
npm install
|
||||||
|
npm run build
|
||||||
|
|
||||||
|
# 4. 把打包好的dist文件同步到服务器Apache目录
|
||||||
|
- name: 同步到服务器
|
||||||
|
uses: appleboy/scp-action@master
|
||||||
|
with:
|
||||||
|
host: ${{ secrets.SERVER_IP }}
|
||||||
|
username: ${{ secrets.SERVER_USER }}
|
||||||
|
port: ${{ secrets.SERVER_PORT }}
|
||||||
|
key: ${{ secrets.SERVER_SSH_KEY }}
|
||||||
|
source: "dist/*"
|
||||||
|
target: "/var/www/blog/"
|
||||||
|
overwrite: true
|
||||||
Reference in New Issue
Block a user