Автоматическое развёртывание
Автоматическое развёртывание вашего приложения в Skitflow может быть выполнено двумя основными методами — с помощью Webhooks или Skitflow API. Каждый метод поддерживает различные платформы и обеспечивает оптимизированный процесс развёртывания.
Поддерживаемые сервисы:
Автоматическое развёртывание доступно только для следующих сервисов:
- Приложения
- Docker Compose
Github
Для Github мы предоставляем автоматическое развёртывание без какой-либо конфигурации. Ваше приложение будет автоматически развёрнуто при каждом пуше в репозиторий.
URL Webhook
Webhooks позволяют автоматически развёртывать ваше приложение при каждом изменении в исходном репозитории.
- GitHub
- GitLab
- Bitbucket
- Gitea
- DockerHub (только для приложений)
Шаги конфигурации
- Включите Auto Deploy: Переключите кнопку 'Auto Deploy' на вкладке general в настройках вашего приложения в Skitflow.
- Получите URL Webhook: Найдите URL Webhook в логах развёртывания.
- Настройте ваш репозиторий:
- Перейдите в настройки вашего репозитория на выбранной платформе.
- Добавьте URL webhook, предоставленный Skitflow.
- Убедитесь, что настройки соответствуют конфигурации, необходимой для срабатывания webhook.
Важные замечания
- Совпадение ветки: При использовании Git-провайдеров (GitHub, GitLab, Gitea и т.д.) убедитесь, что ветка, настроенная в Skitflow, совпадает с веткой, в которую вы пушите. Несоответствие приведёт к ошибке "Branch Not Match".
- Теги Docker: Для развёртываний с использованием DockerHub убедитесь, что запушенный тег совпадает с указанным в Skitflow.
- Шаги одинаковы для всех провайдеров.
Шаги практически одинаковы для всех Git-провайдеров: GitHub, GitLab, Bitbucket, Gitea.
Dockerhub (только для приложений)
Для настройки автоматических развёртываний через Dockerhub выполните следующие шаги:
- Перейдите к вашему приложению и выберите вкладку
Deployments. - Скопируйте
Webhook URL. - Перейдите в ваш репозиторий Dockerhub и выберите вкладку
Webhooks. - Укажите имя для webhook и вставьте
Webhook URL, скопированный на шаге 2. - Готово, теперь при каждом пуше в ваш репозиторий приложение будет запускать развёртывание в Skitflow.
Развёртывание будет запущено только если Tag совпадает с указанным в Skitflow.
Метод API
Развёртывайте ваше приложение программно с помощью Skitflow API из любого места. Это полезно, когда вы хотите запустить развёртывание из CI/CD-конвейера или скрипта.
Шаги развёртывания через API
Шаги:
- Сгенерируйте токен: Создайте API-токен в настройках вашего профиля в Skitflow.
- Получите ID приложения:
curl -X 'GET' \
'https://your-domain/api/project.all' \
-H 'accept: application/json' \
-H 'x-api-key: <token>'Эта команда выводит список всех проектов и сервисов. Определите applicationId для приложения, которое вы хотите развернуть.
- Запустите развёртывание:
curl -X 'POST' \
'https://your-domain/api/application.deploy' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'x-api-key: <token>' \
-d '{
"applicationId": "string"
}'Этот метод API обеспечивает гибкие, скриптуемые варианты развёртывания, подходящие для автоматизированных систем или ситуаций, когда прямая интеграция с репозиторием невозможна. Таким образом, вы можете развёртывать приложение откуда угодно, используя URL webhook или API.