Python
Semaphore может выполнять Python-скрипты напрямую. Для этого создайте шаблон задачи Python.
Создание шаблона Python
- Перейдите в раздел Шаблоны задач и нажмите кнопку Новый шаблон.
- Выберите Python в качестве типа приложения.
- Настройте шаблон:
| Поле | Описание |
|---|---|
| Название | Понятное название шаблона |
| Репозиторий | Репозиторий, содержащий ваш .py-скрипт |
| Playbook / Скрипт | Относительный путь к скрипту, например scripts/deploy.py |
| Группы переменных | Группы переменных, значения которых передаются как переменные окружения |
- Нажмите Создать.
- Нажмите Запустить, чтобы выполнить шаблон.
Передача переменных в скрипты
Переменные из выбранных Групп переменных передаются как переменные окружения. Обращайтесь к ним в 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означает успех; любой ненулевой код выхода помечает задачу как неудачную.