Перейти к основному содержимому

Python

Semaphore может выполнять Python-скрипты напрямую. Для этого создайте шаблон задачи Python.

Создание шаблона Python

  1. Перейдите в раздел Шаблоны задач и нажмите кнопку Новый шаблон.
  2. Выберите Python в качестве типа приложения.
  3. Настройте шаблон:
ПолеОписание
НазваниеПонятное название шаблона
РепозиторийРепозиторий, содержащий ваш .py-скрипт
Playbook / СкриптОтносительный путь к скрипту, например scripts/deploy.py
Группы переменныхГруппы переменных, значения которых передаются как переменные окружения
  1. Нажмите Создать.
  2. Нажмите Запустить, чтобы выполнить шаблон.

Передача переменных в скрипты

Переменные из выбранных Групп переменных передаются как переменные окружения. Обращайтесь к ним в Python через os.environ:

import os

target = os.environ.get("TARGET_HOST")
print(f"Deploying to {target}")

Версия Python и зависимости

Semaphore использует тот бинарный файл python3, который находится в PATH в среде выполнения.

  • Установка из бинарного файла/пакета: убедитесь, что на хосте установлен нужный python3.
  • Docker: используйте собственный образ с требуемой версией Python.
  • Docker (дополнительные пакеты): смонтируйте requirements.txt по пути /etc/semaphore/requirements.txt в контейнере сервера или runner’а. Semaphore устанавливает его во встроенное виртуальное окружение Python при каждом запуске контейнера. См. Установка дополнительных зависимостей Python.

Примечания

  • Скрипты выполняются в неинтерактивном режиме.
  • Код выхода 0 означает успех; любой ненулевой код выхода помечает задачу как неудачную.