Fabric

Бесплатно
Открытый исходный код
Windows
macOS
Linux

Сайт: www.fabfile.org

Fabric — это библиотека на языке Python, предназначенная для упрощения удалённого выполнения команд по SSH и автоматизации задач системного администрирования и развёртывания приложений. Она предоставляет инструменты для запуска команд на одном или нескольких удалённых хостах, передачи файлов, управления средой выполнения и объединения последовательностей операций в повторно используемые сценарии. Fabric часто применяется для автоматизации рутинных операций, деплоя кода, настройки серверов и управления группами машин из локального окружения разработчика или администратора.

Изначально разработанная как легковесный фреймворк для автоматизации удалённых задач, Fabric эволюционировала, сохраняя фокус на простоте и выразительности интерфейса. Библиотека интегрируется с существующими инструментами управления конфигурацией и системами контроля версий, при этом предоставляет программируемый API для составления «фабрик» задач — функций, которые можно запускать вручную или как часть автоматизированного процесса. Fabric поддерживает аутентификацию по паролю и по ключам, управление контекстом выполнения и управление потоками ввода-вывода удалённых команд.

  • Удалённое выполнение команд: запуск произвольных shell-команд на удалённых хостах через SSH с возможностью получения вывода и кода завершения.
  • Параллельное выполнение: поддержка выполнения задач на нескольких хостах одновременно для ускорения операций над кластерами машин.
  • Передача файлов: гибкие средства для загрузки и скачивания файлов и директорий между локальной машиной и удалёнными серверами.
  • Управление контекстом: механизмы для установки рабочих директорий, переменных окружения и прав доступа на удалённых хостах в пределах выполняемых задач.
  • Скрипты и повторное использование: возможность объединять команды в функции и модули для создания переносимых и модульных сценариев автоматизации.
  • Аутентификация и безопасность: поддержка ключевой аутентификации SSH, агентов SSH и управления параметрами подключения.
  • Интеграция с инструментами разработки: совместимость с системами контроля версий и возможность включения в процессы CI/CD и деплой-пайплайны.
  • Лёгкость использования: декларативный и императивный API, ориентированный на простоту записи и чтения задач даже в сложных рабочих процессах.
Подробнее