78 lines
4.9 KiB
Markdown
78 lines
4.9 KiB
Markdown
# Запуск скрипта на уделенном сервере по команде:
|
||
```bash
|
||
curl -sSL https://gitlab.alex2py.ru/uristalex/server-tools/raw/branch/main/ip_analyzer.py | python3 - $(curl -s ifconfig.me)
|
||
```
|
||
|
||
# Инструкция: Удаленный запуск анализатора IP через Gitea Actions
|
||
|
||
Эта инструкция поможет вам настроить автоматический или ручной запуск скрипта `ip_analyzer.py` на удаленном сервере с использованием встроенного CI/CD Gitea (Gitea Actions).
|
||
|
||
## Шаг 1: Подготовка репозитория в Gitea
|
||
|
||
1. Создайте новый репозиторий в вашем инстансе Gitea (или используйте существующий).
|
||
2. Загрузите в корень репозитория файл `ip_analyzer.py`.
|
||
|
||
## Шаг 2: Включение Gitea Actions
|
||
|
||
1. Перейдите в настройки вашего репозитория в Gitea (`Настройки` -> `Общие`).
|
||
2. Найдите раздел **Репозиторий (Repository)** -> **Дополнительные возможности (Advanced Settings)**.
|
||
3. Поставьте галочку **Включить действия репозитория (Enable Repository Actions)**.
|
||
4. Нажмите `Сохранить`.
|
||
|
||
*(Примечание: Убедитесь, что администратор Gitea настроил и подключил Gitea Runner для вашего сервера. Без активного раннера (Runner) сценарии выполняться не будут).*
|
||
|
||
## Шаг 3: Создание Workflow (сценария CI/CD)
|
||
|
||
Мы создадим сценарий, который позволит запускать скрипт вручную прямо из веб-интерфейса Gitea, передавая нужный IP-адрес как параметр перед запуском.
|
||
|
||
1. В корне вашего репозитория создайте директорию `.gitea/workflows/` (именно `.gitea`, а не `.github`, хотя Gitea Actions совместимы с синтаксисом GitHub).
|
||
2. Внутри этой директории создайте файл `analyze-ip.yaml` (полный путь: `.gitea/workflows/analyze-ip.yaml`).
|
||
3. Вставьте в этот файл следующий код:
|
||
|
||
```yaml
|
||
name: IP Analyzer
|
||
|
||
# Разрешаем ручной запуск (workflow_dispatch) с вводом параметров
|
||
on:
|
||
workflow_dispatch:
|
||
inputs:
|
||
ip_address:
|
||
description: 'IP-адрес для анализа'
|
||
required: true
|
||
default: '8.8.8.8'
|
||
|
||
jobs:
|
||
analyze:
|
||
runs-on: ubuntu-latest # Укажите здесь метку вашего Gitea Runner (например, ubuntu-latest, debian и т.д.)
|
||
steps:
|
||
- name: Checkout кода
|
||
uses: actions/checkout@v3
|
||
|
||
- name: Установка Python
|
||
uses: actions/setup-python@v4
|
||
with:
|
||
python-version: '3.10'
|
||
|
||
- name: Запуск анализатора
|
||
run: |
|
||
echo "Запуск скрипта для IP: ${{ github.event.inputs.ip_address }}"
|
||
python ip_analyzer.py ${{ github.event.inputs.ip_address }}
|
||
```
|
||
|
||
4. Закоммитьте и отправьте (push) этот файл в Gitea-репозиторий.
|
||
|
||
## Шаг 4: Запуск проверки через веб-интерфейс Gitea
|
||
|
||
1. Откройте ваш репозиторий в Gitea.
|
||
2. В верхнем меню перейдите на вкладку **Действия (Actions)**.
|
||
3. В левом боковом меню выберите ваш workflow: `IP Analyzer`.
|
||
4. В правой части экрана (вверху списка запусков) нажмите кнопку **Запустить процесс (Run Workflow)**.
|
||
5. Появится выпадающее меню. В поле `ip_address` введите IP-адрес сервера, который вы хотите проверить (например, `1.1.1.1` или IP нужного сервера).
|
||
6. Нажмите зеленую кнопку запуска.
|
||
|
||
## Шаг 5: Просмотр результатов
|
||
|
||
1. После запуска появится новая задача в списке с желтым значком "В процессе". Кликните на неё.
|
||
2. Нажмите на блок `analyze` (название задачи).
|
||
3. Перед вами откроется консоль Gitea Runner'а.
|
||
4. Раскройте шаг **Запуск анализатора**. В нем вы увидите подробный текстовый вывод работы вашего скрипта `ip_analyzer.py` со всей собранной информацией об IP-адресе. |