Build Config

Build Config в OpenShift Container Platform — объект, который определяет каким образом и с помощью каких параметров будет выполнена сборка (Build). Например, Build Config может содержать описание стратегии сборки, входных и выходных данных сборки, а также триггеров.

Объект Build Config создается автоматически при развертывании приложения.

Чтобы внести измениние в исходный код Build Config или добавть объект вручную выполните следующие действия:

  1. Войдите в веб-консоль Administrator.

  2. Перейдите в меню Workloads → Build Configs.

  3. Нажмите на кнопку Сreate Build Config.

  4. Добавьте исходный код Build Config вручную или внесите необходимые изменения.

Ниже приведен пример исходного кода объекта Build Config, который запускает новую сборку каждый раз, когда изменяется тег образа контейнера или исходный код: Cпецификация создает новый BuildConfigфайл с именем ruby-sample-build:

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"

Где:

  • name — имя объекта Build Config.

  • runPolicy — позволяет установить одновременное или последовательное выполнение сборок. По умолчанию данный параметр имеет значение Serial — новые сборки будут выполняться последовательно.

  • triggers — в этом разделе укажите список триггеров, которые запускают создание новой сборки.

  • source — определяет источник сборки. Тип источника сборки определяет источник входных данных для сборки. Источником входных данных для сборки может быть, например, Git (указывает на местоположение хранилища Git) или Binary (локальная файловая система).

  • strategy — определяет стратегию сборки. В приведенном примере используется образ контейнера ruby-20-centos7 для определения Source-2-Image.

  • output — определяет репозиторий, в который будет помещен образ контейнера.

  • postCommit — определяет дополнительные хуки сборки.

См.также

Подробнее о Build Config здесь.