Build Config
Конфигурация сборки (Build Config) — описывает как будет выполнена сборка:
с помощью какой стратегии;
какие источники будут использованы для входных и выходных данных;
какие триггеры будут использованы;
когда будет выполнена новая сборка;
какие наборы триггеров будут использованы.
Build Config определяется с помощью объекта REST — Build Config. Build Config можно использовать в POST для API сервера, чтобы создать новую версию приложения.
Подсказка
Build Config в OpenShift Container Platform создается автоматически. При необходимости 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 здесь.