Merge pull request 'main' (#1) from main into dev_vite
All checks were successful
AiDA WEB-Node.js Develop 分支构建部署123 / build (18.18.0) (push) Has been skipped
All checks were successful
AiDA WEB-Node.js Develop 分支构建部署123 / build (18.18.0) (push) Has been skipped
Reviewed-on: #1
This commit was merged in pull request #1.
This commit is contained in:
56
.gitea/workflows/develop_build.yaml
Normal file
56
.gitea/workflows/develop_build.yaml
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
name: AiDA WEB-Node.js Develop 分支构建部署123
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- dev_vite
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
if: "contains(github.event.head_commit.message, '[run build]')"
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
node-version: [ 18.18.0 ]
|
||||||
|
|
||||||
|
env:
|
||||||
|
REMOTE_DEPLOY_PATH: /workspace/workspace_aida/DevelopVersion/develop-aida-web-front
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: 1.检出代码
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: 2.设置 Node.js 环境
|
||||||
|
uses: actions/setup-node@v6
|
||||||
|
with:
|
||||||
|
node-version: ${{ matrix.node-version }}
|
||||||
|
- run: npm install
|
||||||
|
- run: npm run build:dev
|
||||||
|
- run: ls -l
|
||||||
|
|
||||||
|
- name: 3.同步文件到远程服务器
|
||||||
|
uses: appleboy/scp-action@v0.1.7
|
||||||
|
with:
|
||||||
|
host: ${{ secrets.SERVER_HOST }}
|
||||||
|
username: ${{ secrets.SERVER_USER }}
|
||||||
|
key: ${{ secrets.SSH_KEY }}
|
||||||
|
source: "./dist/*"
|
||||||
|
target: ${{ env.REMOTE_DEPLOY_PATH }}
|
||||||
|
ssh_options: "-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
|
||||||
|
strip_components: 0
|
||||||
|
|
||||||
|
- name: 4. 远程重载 Nginx 配置
|
||||||
|
uses: appleboy/ssh-action@v1.0.3
|
||||||
|
with:
|
||||||
|
host: ${{ secrets.SERVER_HOST }}
|
||||||
|
username: ${{ secrets.SERVER_USER }}
|
||||||
|
key: ${{ secrets.SSH_KEY }}
|
||||||
|
# 核心:执行 Nginx 重载命令
|
||||||
|
script: |
|
||||||
|
echo "尝试重载 Nginx 服务..."
|
||||||
|
# 💡 注意:执行此命令需要服务器用户具有 sudo 权限,并且配置了 NOPASSWD。
|
||||||
|
# 否则工作流可能会因为权限不足而失败。
|
||||||
|
sudo systemctl reload nginx
|
||||||
|
echo "Nginx 重载命令已发送。"
|
||||||
50
.gitea/workflows/develop_build_manual.yaml
Normal file
50
.gitea/workflows/develop_build_manual.yaml
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
name: 手动触发 AiDA WEB-Node.js Develop 分支构建部署
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
node-version: [ 18.18.0 ]
|
||||||
|
env:
|
||||||
|
REMOTE_DEPLOY_PATH: /workspace/workspace_aida/DevelopVersion/develop-aida-web-front
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: 1.检出代码
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: 2.设置 Node.js 环境
|
||||||
|
uses: actions/setup-node@v6
|
||||||
|
with:
|
||||||
|
node-version: ${{ matrix.node-version }}
|
||||||
|
- run: npm install
|
||||||
|
- run: npm run build:dev
|
||||||
|
- run: ls -l
|
||||||
|
|
||||||
|
- name: 3.同步文件到远程服务器
|
||||||
|
uses: appleboy/scp-action@v0.1.7
|
||||||
|
with:
|
||||||
|
host: ${{ secrets.SERVER_HOST }}
|
||||||
|
username: ${{ secrets.SERVER_USER }}
|
||||||
|
key: ${{ secrets.SSH_KEY }}
|
||||||
|
source: "./dist/*"
|
||||||
|
target: ${{ env.REMOTE_DEPLOY_PATH }}
|
||||||
|
ssh_options: "-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
|
||||||
|
strip_components: 0
|
||||||
|
|
||||||
|
- name: 4. 远程重载 Nginx 配置
|
||||||
|
uses: appleboy/ssh-action@v1.0.3
|
||||||
|
with:
|
||||||
|
host: ${{ secrets.SERVER_HOST }}
|
||||||
|
username: ${{ secrets.SERVER_USER }}
|
||||||
|
key: ${{ secrets.SSH_KEY }}
|
||||||
|
# 核心:执行 Nginx 重载命令
|
||||||
|
script: |
|
||||||
|
echo "尝试重载 Nginx 服务..."
|
||||||
|
# 💡 注意:执行此命令需要服务器用户具有 sudo 权限,并且配置了 NOPASSWD。
|
||||||
|
# 否则工作流可能会因为权限不足而失败。
|
||||||
|
sudo systemctl reload nginx
|
||||||
|
echo "Nginx 重载命令已发送。"
|
||||||
53
.gitea/workflows/prod_build_manual.yaml
Normal file
53
.gitea/workflows/prod_build_manual.yaml
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
name: AiDA WEB-Node.js StableVersion 分支构建部署
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
node-version: [ 18.18.0 ]
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: 1.检出代码
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: StableVersion
|
||||||
|
|
||||||
|
- name: 2.打印当前分支信息
|
||||||
|
run: |
|
||||||
|
echo "Current branch being deployed is: $(git rev-parse --abbrev-ref HEAD)"
|
||||||
|
echo "The code is from the 'main' branch, as specified in 'actions/checkout'."
|
||||||
|
|
||||||
|
- name: 3.设置 Node.js 环境 ${{ matrix.node-version }}
|
||||||
|
uses: actions/setup-node@v6
|
||||||
|
with:
|
||||||
|
node-version: ${{ matrix.node-version }}
|
||||||
|
- run: npm install
|
||||||
|
- run: npm run build
|
||||||
|
- run: ls -l
|
||||||
|
|
||||||
|
- name: 3.5. 手动安装 AWS CLI v2 # 新增步骤:确保 aws 命令可用
|
||||||
|
run: |
|
||||||
|
echo "安装 AWS CLI V2..."
|
||||||
|
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
|
||||||
|
unzip awscliv2.zip
|
||||||
|
sudo ./aws/install --update
|
||||||
|
aws --version
|
||||||
|
echo "AWS CLI V2 安装完成。"
|
||||||
|
|
||||||
|
- name: 4.配置 AWS 凭证
|
||||||
|
uses: aws-actions/configure-aws-credentials@main
|
||||||
|
with:
|
||||||
|
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||||
|
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||||
|
aws-region: 'ap-east-1'
|
||||||
|
|
||||||
|
- name: 5.同步 dist 目录到 S3
|
||||||
|
run: |
|
||||||
|
aws s3 sync dist/* s3://${{ secrets.S3_BUCKET_NAME }}/ --acl public-read
|
||||||
|
|
||||||
|
- name: 6.部署完成
|
||||||
|
run: echo "构建和部署到 S3 任务完成。"
|
||||||
56
.gitea/workflows/prod_build_schedule.yaml
Normal file
56
.gitea/workflows/prod_build_schedule.yaml
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
name: AiDA WEB-Node.js StableVersion 分支构建部署
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
# cron为UTC时区,构建时间=部署时间-8小时 {*分 (-8)时 *日 *月 *周} ---
|
||||||
|
# 示例: 1月1日22点22分触发构建 cron写作 - '22 14 1 1 *'
|
||||||
|
- cron: '22 14 1 1 *'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
node-version: [ 18.18.0 ]
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: 1.检出代码
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: StableVersion
|
||||||
|
|
||||||
|
- name: 2.打印当前分支信息
|
||||||
|
run: |
|
||||||
|
echo "Current branch being deployed is: $(git rev-parse --abbrev-ref HEAD)"
|
||||||
|
echo "The code is from the 'main' branch, as specified in 'actions/checkout'."
|
||||||
|
|
||||||
|
- name: 3.设置 Node.js 环境 ${{ matrix.node-version }}
|
||||||
|
uses: actions/setup-node@v6
|
||||||
|
with:
|
||||||
|
node-version: ${{ matrix.node-version }}
|
||||||
|
- run: npm install
|
||||||
|
- run: npm run build
|
||||||
|
- run: ls -l
|
||||||
|
|
||||||
|
- name: 3.5. 手动安装 AWS CLI v2 # 新增步骤:确保 aws 命令可用
|
||||||
|
run: |
|
||||||
|
echo "安装 AWS CLI V2..."
|
||||||
|
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
|
||||||
|
unzip awscliv2.zip
|
||||||
|
sudo ./aws/install --update
|
||||||
|
aws --version
|
||||||
|
echo "AWS CLI V2 安装完成。"
|
||||||
|
|
||||||
|
- name: 4.配置 AWS 凭证
|
||||||
|
uses: aws-actions/configure-aws-credentials@main
|
||||||
|
with:
|
||||||
|
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||||
|
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||||
|
aws-region: 'ap-east-1'
|
||||||
|
|
||||||
|
- name: 5.同步 dist 目录到 S3
|
||||||
|
run: |
|
||||||
|
aws s3 sync dist/* s3://${{ secrets.S3_BUCKET_NAME }}/ --acl public-read
|
||||||
|
|
||||||
|
- name: 6.部署完成
|
||||||
|
run: echo "构建和部署到 S3 任务完成。"
|
||||||
Reference in New Issue
Block a user