479c04d34c
- 新增 build-service-server.yaml 和 build-test-server.yaml 文件 - 设置 pnpm 安装和项目构建步骤 - 实现代码部署到测试和生产服务器的功能 - 添加域名替换和 SSH 密钥配置
60 lines
1.5 KiB
YAML
60 lines
1.5 KiB
YAML
name: 'Build and Deploy Vue3'
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- deploy
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Install pnpm
|
|
run: |
|
|
npm install -g pnpm
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
pnpm install
|
|
|
|
- name: 替换域名
|
|
run: |
|
|
find . -type f -exec sed -i 's|apiservertest.s1f.ren|cloudapi.007idc.cn|g' {} +
|
|
|
|
- name: Build project
|
|
run: |
|
|
pnpm build
|
|
|
|
- name: Save artifact
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: vue3-build
|
|
path: |
|
|
./dist
|
|
|
|
deploy:
|
|
needs: build
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Download Artifact
|
|
uses: actions/download-artifact@v3
|
|
with:
|
|
name: vue3-build
|
|
|
|
- name: Set up SSH
|
|
run: |
|
|
mkdir -p ~/.ssh
|
|
echo "${{ secrets.PUBLICT_PRIVATE_KEY }}" > ~/.ssh/id_rsa
|
|
chmod 600 ~/.ssh/id_rsa
|
|
|
|
- name: Deploy to server
|
|
run: |
|
|
ssh-keyscan -H ${{ vars.WEB_SERVICE_SERVER_IP_1 }} >> ~/.ssh/known_hosts
|
|
scp -o StrictHostKeyChecking=no -r ./* ${{ vars.ROOT_USER_NAME }}@${{ vars.WEB_SERVICE_SERVER_IP_1 }}:/home/www/cloud/
|
|
ssh-keyscan -H ${{ vars.WEB_SERVICE_SERVER_IP_2 }} >> ~/.ssh/known_hosts
|
|
scp -o StrictHostKeyChecking=no -r ./* ${{ vars.ROOT_USER_NAME }}@${{ vars.WEB_SERVICE_SERVER_IP_2 }}:/home/www/cloud/
|
|
|