Обновить .gitea/workflows/install.yaml
This commit is contained in:
@@ -1,37 +1,53 @@
|
|||||||
name: Install MSI on Specific Runner
|
name: Manual and Auto Deployment
|
||||||
on: [push]
|
on:
|
||||||
|
push:
|
||||||
|
branches: [main]
|
||||||
|
# Добавляем блок ручного запуска
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
run_mode:
|
||||||
|
description: 'Что запустить?'
|
||||||
|
required: true
|
||||||
|
default: 'all'
|
||||||
|
type: choice
|
||||||
|
options:
|
||||||
|
- 'all'
|
||||||
|
- 'docker_only'
|
||||||
|
- 'msi_only'
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
# Вариант 2: Параллельный запуск на конкретном списке машин (Матрица)
|
# 1. Работа с Docker (только если выбрано 'all' или 'docker_only')
|
||||||
deploy_all:
|
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
target_runner: [K4012-KOA]
|
|
||||||
|
|
||||||
runs-on: ${{ matrix.target_runner }}
|
|
||||||
steps:
|
|
||||||
- name: Install MSI and Create Log
|
|
||||||
shell: powershell
|
|
||||||
run: |
|
|
||||||
# Используем другой файл (git_MAX2.txt), как вы указали
|
|
||||||
Start-Process msiexec.exe -ArgumentList "/i C:\install\MAX.msi /qn /norestart" -Wait
|
|
||||||
"Installed successfully on $(hostname) at $(Get-Date)" | Out-File -FilePath "C:\install\git_MAX2.txt" -Encoding utf8
|
|
||||||
# Вариант 1: Запуск только на одном (или первом свободном) self-hosted раннере
|
|
||||||
install_single:
|
|
||||||
runs-on: self-hosted
|
|
||||||
steps:
|
|
||||||
- name: Install MSI and Create Log
|
|
||||||
shell: powershell
|
|
||||||
run: |
|
|
||||||
Start-Process msiexec.exe -ArgumentList "/i C:\install\MAX.msi /qn /norestart" -Wait
|
|
||||||
"Installed successfully on $(hostname) at $(Get-Date)" | Out-File -FilePath "C:\install\git_MAX.txt" -Encoding utf8
|
|
||||||
|
|
||||||
#docker-latest
|
|
||||||
docker-latest:
|
docker-latest:
|
||||||
|
if: github.event_name == 'push' || github.event.inputs.run_mode == 'all' || github.event.inputs.run_mode == 'docker_only'
|
||||||
runs-on: docker-latest
|
runs-on: docker-latest
|
||||||
container:
|
container:
|
||||||
image: node:18-alpine
|
image: node:18-alpine
|
||||||
steps:
|
steps:
|
||||||
- name: docker ps
|
- name: docker ps
|
||||||
shell: bash
|
shell: bash
|
||||||
run: docker ps
|
run: docker ps
|
||||||
|
|
||||||
|
# 2. Установка MSI на конкретный раннер
|
||||||
|
deploy_all:
|
||||||
|
if: github.event_name == 'push' || github.event.inputs.run_mode == 'all' || github.event.inputs.run_mode == 'msi_only'
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
target_runner: [K4012-KOA]
|
||||||
|
runs-on: ${{ matrix.target_runner }}
|
||||||
|
steps:
|
||||||
|
- name: Install MSI and Create Log
|
||||||
|
shell: powershell
|
||||||
|
run: |
|
||||||
|
Start-Process msiexec.exe -ArgumentList "/i C:\install\MAX.msi /qn /norestart" -Wait
|
||||||
|
"Installed successfully on $(hostname) at $(Get-Date)" | Out-File -FilePath "C:\install\git_MAX2.txt" -Encoding utf8
|
||||||
|
|
||||||
|
# 3. Установка на любой свободный self-hosted
|
||||||
|
install_single:
|
||||||
|
if: github.event_name == 'push' || github.event.inputs.run_mode == 'all' || github.event.inputs.run_mode == 'msi_only'
|
||||||
|
runs-on: self-hosted
|
||||||
|
steps:
|
||||||
|
- name: Install MSI and Create Log
|
||||||
|
shell: powershell
|
||||||
|
run: |
|
||||||
|
Start-Process msiexec.exe -ArgumentList "/i C:\install\MAX.msi /qn /norestart" -Wait
|
||||||
|
"Installed successfully on $(hostname) at $(Get-Date)" | Out-File -FilePath "C:\install\git_MAX.txt" -Encoding utf8
|
||||||
Reference in New Issue
Block a user