Capistrano (программное обеспечение) - Capistrano (software)
Оригинальный автор (ы) | Джеймис Бак, Ли Хэмбли |
---|---|
Стабильный выпуск | 3.14.1[1] / 10 июня 2020 г. |
Репозиторий | github |
Написано в | Рубин |
Операционная система | Linux, OpenBSD, macOS |
Тип | Инструмент развертывания |
Лицензия | Лицензия MIT |
Интернет сайт | Capistranorb |
Capistrano является Открытый исходный код инструмент для запуска скриптов на нескольких серверах; его основное использование - развертывание веб-приложения. Он автоматизирует процесс предоставления новой версии приложения на одном или нескольких веб-серверы, включая вспомогательные задачи, такие как изменение баз данных.
Capistrano написано в Рубиновый язык и распространяется с использованием RubyGems распределительный канал. Это результат Рубин на рельсах фреймворк веб-приложений, но он также используется для развертывания веб-приложений, написанных на других языках, например, PHP.
Capistrano реализован в основном для использования на Оболочка UNIX командная строка. Пользователь может выбирать из множества рецептов капистрано, например для развертывания текущих изменений в веб-приложении или возврата к предыдущему состоянию развертывания.
Первоначально называвшаяся SwitchTower, название было изменено на Capistrano в марте 2006 года из-за конфликта товарных знаков.[2] Первоначальный автор, Джеймис Бак, 24 февраля 2009 г. объявил, что больше не поддерживает проект.[3]
Внутренности
Capistrano - это утилита и фреймворк для параллельного выполнения команд на нескольких удаленных машинах через SSH. Он использует простой предметно-ориентированный язык частично заимствовано из инструмента Грабли. Он также поддерживает туннелирование соединений через некоторый шлюз, что позволяет выполнять операции за VPN и межсетевыми экранами.
Capistrano изначально был разработан для упрощения и автоматизации развертывания веб-приложений в распределенных средах и изначально поставлялся в комплекте с набором задач, предназначенных для развертывания приложений Ruby on Rails. Задачи развертывания теперь (начиная с Capistrano 2.0) являются добровольными и требуют, чтобы клиенты явно указали «load 'deploy'» в своих рецептах.[4]
Пример Capfile
задача : xml_libs, : хосты => "www.capify.org" делать пробег "ls -x1 / usr / lib | grep -i xml"конец
Это определяет единственную задачу, называемую «xml_libs», и говорит, что она должна выполняться только на хосте «www.capify.org». При запуске он отобразит все файлы и подкаталоги в / usr / lib, которые содержат текст «xml» в своем имени. Предполагая, что capfile находится в текущем каталоге, пользователь выполнит эту задачу следующим образом:
крышка xml_libs
Смотрите также
- Ansible
- Повар
- Харроу
- Соль
- Кукольный
- Цшбач
- Сравнение программного обеспечения для управления конфигурацией с открытым исходным кодом
Рекомендации
- ^ "capistrano | RubyGems.org | хост вашего сообщества". RubyGems.org. Получено 2020-11-30.
- ^ «SwitchTower: переименовано». weblog.jamisbuck.org. 2006-03-05.
- ^ "{buckblogs: here}: Net :: SSH, Capistrano и Saying Goodbye". Weblog.jamisbuck.org. 2009-02-24. Получено 2014-03-21.
- ^ "capistrano / README.md at master · capistrano / capistrano · GitHub". Github.com. 2013-06-13. Получено 2014-03-21.
дальнейшее чтение
- Зигмунтович, Эзра; Тейт, Брюс; Бегин, Клинтон (май 2008 г.). Развертывание приложений Rails: пошаговое руководство. ISBN 978-0-9787392-0-1.