Назад | Перейти на главную страницу

Как мне контролировать использование диска Bamboo?

Вот сценарий:

Наш исходный код находится на Github.

Здесь на работе мы запускаем Bamboo (в настоящее время 2.7.3) на сервере Linux.

У нас есть несколько сборок, которые передаются удаленным агентам (например, для сборки программного обеспечения iPhone). На удаленном агенте Bamboo клонирует исходный код из Github, выполняет сборку, а затем загружает артефакты на сервер. Это работает именно так, как мы хотим / ожидаем.

Проблема в том, что сервер Bamboo, похоже, тоже проверяет репозиторий git, и он делает это для каждого отдельного плана сборки, который у нас есть. Для этих проверок он занимает значительный процент дискового пространства, и я не вижу способа отключить их.

Любые идеи?

Если вам не нужно запускать какие-либо задания на главном сервере Bamboo, вы можете отключить локальный агент по умолчанию. См. Документацию Bamboo.

При первом запуске плана Bamboo выполняет полное клонирование, сохраняет данные в каталоге локального кэша и завершает сборку. При последующих сборках Bamboo выполняет git-выборку из удаленного репозитория, чтобы увидеть, есть ли дополнительные изменения, и, если да, обновляет локальный кеш. Как и при первом запуске, данные для плана затем извлекаются из локального кеша. Следовательно, более быстрая проверка.

Если требуется удалить репозиторий git из агента и клонировать его заново для каждой сборки, достаточно просто включить "Force Clean Build" в вашей задаче проверки исходного кода в вашем плане.

Если вы хотите сохранить дисковое пространство, достаточно включить «Чистить рабочий каталог после каждой сборки» вариант в конфигурации плана. Этот параметр увеличивает время сборки, особенно если у вас большие репозитории Git, но определенно экономит место на диске.

Вам также может быть интересно проголосовать за этот запрос функции - БАМ-13589. Надеюсь, что это прояснит.

Эта статья объясняет, как сохраненные кеши Git ускоряют сборку.