Build Config
Конфигурация сборки (Build Config) — описывает как будет выполнена сборка:
с помощью какой стратегии;
какие источники будут использованы для входных и выходных данных;
какие триггеры будут использованы;
когда будет выполнена новая сборка;
какие наборы триггеров будут использованы.
Build Config определяется с помощью объекта REST — Build Config. Build Config можно использовать в POST для API сервера, чтобы создать новую версию приложения.
Подсказка
Build Config создается автоматически. При необходимости Build Config можно настроить самостоятельно.
На примере ниже Build Config запускает новую сборку каждый раз, когда изменяется тег образа контейнера или исходный код:
kind: BuildConfig
apiVersion: build.openshift.io/v1
metadata:
name: "ruby-sample-build"
spec:
runPolicy: "Serial"
triggers:
-
type: "GitHub"
github:
secret: "secret101"
- type: "Generic"
generic:
secret: "secret101"
-
type: "ImageChange"
source:
git:
uri: "https://github.com/openshift/ruby-hello-world"
strategy:
sourceStrategy:
from:
kind: "ImageStreamTag"
name: "ruby-20-centos7:latest"
output:
to:
kind: "ImageStreamTag"
name: "origin-ruby-sample:latest"
postCommit:
script: "bundle exec rake test"
Где:
metadata.name
— создает новую Build Config с именем ruby-sample-build.runPolicy
— позволяет установить одновременное или последовательное выполнение сборок. По умолчанию данный параметр имеет значениеserial
— новые сборки будут выполняться последовательно.triggers
— укажите список триггеров, которые запускают создание новой сборки.source
— определяет источник сборки. Тип источника сборки определяет источник входных данных сборки. Источником входных данных сборки может быть, например, Git (указывает на местоположение хранилища Git) или Binary (локальная файловая система).strategy
— определяет стратегию сборки. В приведенном примере используется образ контейнераruby-20-centos7
для определения Source-2-Image.output
— определяет репозиторий, в который будет помещен образ контейнера.postCommit
— определяет дополнительные хуки сборки.
См.также
Подробнее о Build Config здесь.