Секреты ввода (Secret) и ConfigMaps

В некоторых сценариях сборки для операций построения требуются учетные данные или другие данные конфигурации, чтобы получить доступ к зависимым ресурсам. Вы можете определить секреты ввода и добавить ConfigMaps.

Например, при создании приложения Java через Maven можно настроить частное зеркало Maven Central или JCenter, доступ к которому осуществляется через учетные данные.

  • Чтобы загрузить библиотеки с этого частного зеркала, необходимо предоставить следующее:

    1. Settings.xml файл сконфигурированный с параметрами URL и подключения зеркала.

    2. Закрытый ключ, указанный в файле настроек, например .ssh или id_rsa.

  • Чтобы добавить секрет ввода и / или ConfigMap к существующему Build Config:

    1. Создайте ConfigMap, если он не существует. Для этого используйте команду:

      oc create configmap settings-mvn \
      --from-file=settings.xml=<path/to/settings.xml>
      

      В результате выполнения команды будет создан новый ConfigMap с именем settings-mvn, который содержит текстовое содержимое файла settings.xml.

    2. Создайте секрет если он не существует. Для этого используйте команду:

      oc create secret generic secret-mvn \
      --from-file=id_rsa=<path/to/.ssh/id_rsa>
      
    3. Добавьте ConfigMap и секрет в раздел Source существующего Build Config:

      source:
      git:
      url: https://github.com/wildfly/quickstart.git
      contextDir: helloworld
      configMaps:
       - configMap:
      name: settings-mvn
      secrets:
       - secret:
      name: secret-mvn
      
  • Чтобы добавить секрет и ConfigMap в новый Build Config, используйте команду:

    oc new-build \openshift/wildfly-101-centos7~https://github.com/wildfly/quickstart.git
    --context-dir helloworld --build-secret “secret-mvn” \\
    --build-config-map "settings-mvn"
    

    В процессе сборки приложения файлы settings.xml и id_rsa копируются в каталог, в котором находится исходный код.

См.также

Подробнее о входных данных сборки смотрите здесь.