Предупреждение
Garden 0.12.x EOL: Garden Acorn ( 0.12.x
) будет получать обновления безопасности до 30 июня 2024 г. После этого оно станет устаревшим, и мы прекратим его поддержку. Смотрите объявление.
Если вы любите Garden, пожалуйста, поставьте ★ звездочку этому репозиторию, чтобы выразить свою поддержку. Ищете поддержку? Присоединяйтесь к нашему Discord.
Краткое руководство • Веб-сайт • Документы • Примеры • Блог • Discord
Garden — это инструмент автоматизации DevOps, позволяющий быстрее разрабатывать и тестировать приложения Kubernetes.
Развертывание производственных сред для разработки, тестирования и CI по требованию.
Используйте одну и ту же конфигурацию и рабочие процессы на каждом этапе поставки программного обеспечения.
Ускорьте сборки и тестовые запуски с помощью интеллектуального кэширования.
Самый быстрый способ начать работу с Garden — воспользоваться нашим кратким руководством.
Подробное введение в Garden и подробную документацию можно найти в нашей документации.
Сад настраивается с помощью файлов garden.yml
. Для больших проектов вы можете разделить файлы и разместить их вместе с соответствующими частями вашего стека, даже в нескольких репозиториях.
(Упрощенная) конфигурация Garden для веб-приложения выглядит следующим образом:
вид: Имя развертывания: тип базы данных: helmspec: диаграмма:имя: postgresrepo: https://charts.bitnami.com/bitnami---kind: Имя сборки: apitype:Containersource: путь: ./api---kind: Имя развертывания: apitype: kubernetesdependents: [build.api, Deploy.postgres]spec: файлы: [./manifests/api/**/*]---kind: Testname: integtype: контейнерные зависимости: [deploy.api]spec: args: [npm, запустить, проверить: целое]
Вы можете собрать и развернуть этот проект с помощью:
развертывание сада
... и протестируйте его с помощью:
садовый тест
Чтобы создать среду предварительного просмотра для каждого запроса на извлечение, вы должны добавить в свой конвейер CI следующее:
развертывание сада --env предварительный просмотр
В Garden также есть специальный режим, называемый «режим синхронизации», который в реальном времени перезагружает изменения в запущенных службах, обеспечивая молниеносную быструю обратную связь при разработке . Чтобы включить его, запустите:
развертывание в саду --sync
Вы также можете запустить интерактивную консоль разработки (см. скриншот выше), из которой вы сможете создавать, развертывать и тестировать свой проект с помощью:
садовый разработчик
Stack Graph — ключевая функция Garden, которая обеспечивает эффективную разработку, тестирование и автоматизацию DevOps. Stack Graph позволяет вам объявлять структуру зависимостей вашего проекта и отслеживать изменения, чтобы избежать ненужных сборок, развертываний и тестовых запусков. Это что-то вроде конфигурации CI/CD, которую можно дополнительно использовать для разработки. Без Stack Graph многие из этих функций, которые отличают Garden от конкурентов, были бы невозможны или были бы гораздо менее эффективными.
Эффективная сборка и развертывание. Stack Graph позволяет Garden определить, какие части вашего проекта были изменены и нуждаются в перестроении или повторном развертывании, избегая ненужной работы и ускоряя процесс разработки.
Автоматическое тестирование: Garden может автоматически запускать тесты для частей вашего проекта, которые были изменены, благодаря Stack Graph. Это экономит время, поскольку все части вашего графа зависимостей известны и кэшируются.
Автоматизация DevOps. Stack Graph позволяет Garden автоматизировать многие аспекты процесса DevOps, включая сборку, тестирование и развертывание вашего проекта.
Для получения дополнительной информации о Stack Graph и о том, как работает Garden, см.:
Как работает сад
Видеотур по Stack Graph и руководство по началу работы
Garden подключаемый : способ выполнения действий зависит от используемых плагинов. Наш плагин Kubernetes в настоящее время является самым популярным, за ним следуют плагины Terraform и Pulumi. Для более подробного ознакомления с Garden и его плагинами посетите нашу документацию:
Плагин Кубернетеса
Плагин Терраформ
Плагин Пулуми
Присоединяйтесь к нашему сообществу Discord, чтобы задавать вопросы, оставлять отзывы или просто говорить привет?
Сад принимает взносы! Пожалуйста, ознакомьтесь с нашим руководством по участию для получения дополнительной информации.
Garden имеет лицензию Mozilla Public License 2.0 (MPL-2.0).