Spec-Zone.ru › Ansible

community.okd.openshift_build модуль – Запуск нового билда или отмена запущенных, ожидающих или новых билдов.

Примечание

Этот модуль является частью коллекции community.okd (версия 3.0.1).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.okd. Для использования этого модуля необходимы дополнительные требования, см. Требования для получения подробной информации.

Для использования в плейбуке укажите: community.okd.openshift_build.

Новый в community.okd 2.3.0

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата

Описание

  • Этот модуль запускает новый билд из предоставленной конфигурации или имени билда.
  • Этот модуль также может отменить новый, ожидающий или запущенный билд, запросив плавную остановку билда. Может быть задержка между запросом на отмену билда и моментом его завершения.
  • Также можно перезапустить новый билд, когда текущий был отменён.
  • Аналогично oc cancel-build и oc start-build.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • python >= 3.6
  • kubernetes >= 12.0.0

Параметры

Параметр

Комментарии

api_key

строка

Токен, используемый для аутентификации с API. Также может быть указан через переменную окружения K8S_AUTH_API_KEY.

build_args

список / элементы=словарь

Укажите список пар "ключ-значение" для передачи в Docker во время сборки.

name

строка / обязательно

Имя аргумента docker build.

value

строка / обязательно

Значение аргумента docker build.

build_config_name

строка

Укажите имя конфигурации сборки, из которой будет запущена новая сборка.

Взаимоисключительно с параметром build_name.

build_name

строка

Укажите имя сборки, которую необходимо перезапустить.

Взаимоисключительно с параметром build_config_name.

build_phases

список / элементы=строка

Список состояний для отмены сборки.

Игнорируется, когда state=started.

Варианты:

  • "New"
  • "Pending"
  • "Running"

По умолчанию: []

ca_cert

псевдонимы: ssl_ca_cert

путь

Путь к сертификату CA, используемому для аутентификации с API. Необходимо указать полный цепочку сертификатов, чтобы избежать ошибок валидации сертификатов. Также может быть указан через переменную окружения K8S_AUTH_SSL_CA_CERT.

client_cert

псевдонимы: cert_file

путь

Путь к сертификату, используемому для аутентификации с API. Также может быть указан через переменную окружения K8S_AUTH_CERT_FILE.

client_key

псевдонимы: key_file

путь

Путь к файлу ключа, используемому для аутентификации с API. Также может быть указан через переменную окружения K8S_AUTH_KEY_FILE.

commit

строка

Укажите идентификатор коммита исходного кода, который должна использовать сборка; требуется сборка на основе Git-репозитория.

context

строка

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

env_vars

список / элементы=словарь

Укажите список пар "ключ-значение" для переменной окружения, которую нужно установить для контейнера сборки.

name

строка / обязательно

Имя переменной окружения.

value

строка / обязательно

Значение переменной окружения.

host

строка

Укажите URL для доступа к API. Также может быть указан через переменную окружения K8S_AUTH_HOST.

impersonate_groups

список / элементы=строка

добавлено в kubernetes.core 2.3.0

Группа(ы) для имитации при операции.

Также может быть указан через переменную окружения K8S_AUTH_IMPERSONATE_GROUPS. Пример: Group1,Group2

impersonate_user

строка

добавлено в kubernetes.core 2.3.0

Имя пользователя для имитации при операции.

Также может быть указано через переменную окружения K8S_AUTH_IMPERSONATE_USER.

incremental

логическое

Переопределяет параметр инкрементальной сборки в сборке по стратегии источника, игнорируется, если не указан.

Варианты:

  • false
  • true

kubeconfig

любой

Путь к существующему файлу конфигурации Kubernetes. Если не указано, и не указаны другие параметры подключения, клиент Kubernetes попытается загрузить файл конфигурации по умолчанию из ~/.kube/config. Также может быть указан через переменную окружения K8S_AUTH_KUBECONFIG.

Несколько файлов конфигурации Kubernetes можно указать, используя разделитель ';' для платформы Windows или ':' для других платформ.

Конфигурация Kubernetes может быть предоставлена в виде словаря. Эта функция требует версии python kubernetes client >= 17.17.0. Добавлено в версии 2.2.0.

END_OF_DOCUMENT_MARKER

namespace

string / required

Укажите пространство имен для сборки или конфигурации сборки.

no_cache

boolean

Переопределяет параметр noCache в сборке docker-strategy, игнорируется, если не указан.

Варианты:

  • false
  • true

no_proxy

string

добавлено в kubernetes.core 2.3.0

Список хостов/доменов/IP/CIDR, разделенных запятыми, которые не должны проходить через прокси. Также может быть указан через переменную среды K8S_AUTH_NO_PROXY.

Обратите внимание, что этот модуль не использует типичные параметры прокси из среды (например, NO_PROXY).

Для этой функции требуется kubernetes>=19.15.0. Если библиотека kubernetes меньше 19.15.0, она завершается ошибкой, даже если no_proxy установлен правильно.

Пример значения: “localhost,.local,.example.com,127.0.0.1,127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16”

password

string

Укажите пароль для аутентификации с API. Также может быть указан через переменную среды K8S_AUTH_PASSWORD.

Пожалуйста, прочитайте описание параметра username для обсуждения того, когда этот параметр применим.

persist_config

boolean

Сохранять ли токены обновления конфигурации kube. Также может быть указано через переменную среды K8S_AUTH_PERSIST_CONFIG.

Когда контекст k8s использует учетные данные пользователя с токенами обновления (например, oidc или gke/gcloud auth), токен обновляется библиотекой клиента python k8s, но по умолчанию не сохраняется. Таким образом, старый токен обновления может истечь, и следующая авторизация может завершиться ошибкой. Установка этого флага в true укажет клиенту python k8s сохранить новый токен обновления в файл конфигурации kube.

По умолчанию false.

Обратите внимание, что текущая версия библиотеки клиента python k8s еще не поддерживает установку этого флага в True.

Исправление для этой библиотеки python k8s находится здесь: https://github.com/kubernetes-client/python-base/pull/169

Варианты:

  • false
  • true

proxy

string

URL-адрес HTTP-прокси, который будет использоваться для соединения. Также может быть указан через переменную среды K8S_AUTH_PROXY.

Обратите внимание, что этот модуль не использует типичные параметры прокси из среды (например, HTTP_PROXY).

proxy_headers

dictionary

добавлено в kubernetes.core 2.0.0

Заголовок, используемый для HTTP-прокси.

Документацию можно найти здесь https://urllib3.readthedocs.io/en/latest/reference/urllib3.util.html?highlight=proxy_headers#urllib3.util.make_headers.

basic_auth

string

Имя пользователя:пароль, разделенные двоеточием, для заголовка базовой аутентификации.

Также может быть указано через переменную среды K8S_AUTH_PROXY_HEADERS_BASIC_AUTH.

proxy_basic_auth

string

Имя пользователя:пароль, разделенные двоеточием, для заголовка базовой аутентификации прокси.

Также может быть указано через переменную среды K8S_AUTH_PROXY_HEADERS_PROXY_BASIC_AUTH.

user_agent

string

Строка, представляющая нужный user-agent, например foo/1.0.

Также может быть указано через переменную среды K8S_AUTH_PROXY_HEADERS_USER_AGENT.

state

string

Определяет, следует ли запустить, отменить или перезапустить сборку.

При установке в restarted новая сборка будет создана после отмены текущей сборки.

Варианты:

  • "started" ← (по умолчанию)
  • "cancelled"
  • "restarted"

username

string

Укажите имя пользователя для аутентификации с API. Также может быть указано через переменную среды K8S_AUTH_USERNAME.

Обратите внимание, что это работает только с кластерами, настроенными на использование HTTP Basic Auth. Если ваш кластер использует другую форму аутентификации (например, OAuth2 в OpenShift), этот параметр не будет работать должным образом, и вам следует изучить модуль community.okd.k8s_auth, так как он может сделать то, что вам нужно.

validate_certs

псевдонимы: verify_ssl

boolean

Проверять ли SSL-сертификаты сервера API. Также может быть указано через переменную среды K8S_AUTH_VERIFY_SSL.

Варианты:

  • false
  • true

wait

boolean

Когда state=started, укажите, следует ли ждать завершения сборки и завершать работу с ненулевым кодом возврата, если сборка завершится неудачей.

Когда state=cancelled, укажите, следует ли ждать, пока фаза сборки не будет отменена.

Варианты:

  • false ← (по умолчанию)
  • true

wait_sleep

integer

Количество секунд для ожидания между проверками.

Игнорируется, если wait=false.

По умолчанию: 5

wait_timeout

integer

Сколько секунд ожидать завершения сборки.

Игнорируется, если wait=false.

По умолчанию: 120

Примечания

Примечание

  • Чтобы избежать ошибок проверки SSL-сертификатов, когда validate_certs равно True, необходимо предоставить полный цепочку сертификатов сервера API через ca_cert или в файле kubeconfig.

Примеры

# Starts build from build config default/hello-world
- name: Starts build from build config
  community.okd.openshift_build:
    namespace: default
    build_config_name: hello-world

# Starts build from a previous build "default/hello-world-1"
- name: Starts build from a previous build
  community.okd.openshift_build:
    namespace: default
    build_name: hello-world-1

# Cancel the build with the given name
- name: Cancel build from default namespace
  community.okd.openshift_build:
    namespace: "default"
    build_name: ruby-build-1
    state: cancelled

# Cancel the named build and create a new one with the same parameters
- name: Cancel build from default namespace and create a new one
  community.okd.openshift_build:
    namespace: "default"
    build_name: ruby-build-1
    state: restarted

# Cancel all builds created from 'ruby-build' build configuration that are in 'new' state
- name: Cancel build from default namespace and create a new one
  community.okd.openshift_build:
    namespace: "default"
    build_config_name: ruby-build
    build_phases:
      - New
    state: cancelled

Значения возврата

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

Ключ

Описание

builds

сложный

Начатые/отменённые сборки.

Возвращено: успех

api_version

строка

Версионированная схема данного представления объекта.

Возвращено: успех

kind

строка

Представляет REST-ресурс, который представляет этот объект.

Возвращено: успех

metadata

словарь

Стандартные метаданные объекта. Включают имя, пространство имён, аннотации, метки и т. д.

Возвращено: успех

spec

словарь

Уникальные атрибуты сборки.

Возвращено: успех

status

словарь

Текущие детали состояния объекта.

Возвращено: успех

Авторы

  • Aubin Bikouo (@abikouo)

Ссылки на коллекцию

  • Система отслеживания ошибок
  • Репозиторий (исходники)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/okd/openshift_build_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API