Spec-Zone.ru › Ansible 2.5

openshift - Запрос к API OpenShift

Новое в версии 2.5.

  • Обзор
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус
    • Автор

Обзор

  • Использует OpenShift Python-клиент для получения конкретного объекта по имени, всех совпадающих объектов в заданном пространстве имен или всех совпадающих объектов во всех пространствах имен.
  • Предоставляет доступ ко всему набору API K8s.
  • Поддерживает аутентификацию по файлу конфигурации, сертификатам, паролю или токену.

Требования

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

  • python >= 2.7
  • openshift == 0.4.1
  • PyYAML >= 3.11

Параметры

Параметр Варианты/Значения по умолчанию Конфигурация Комментарии
api_key
Токен, используемый для аутентификации с API. Также может быть задан через переменную среды K8S_AUTH_API_KEY.
api_version Значение по умолчанию:
v1
Используется для указания версии API. Если предоставлено определение ресурса, apiVersion из resource_definition переопределит это значение.
cert_file
Путь к сертификату, используемому для аутентификации с API. Также может быть задан через переменную среды K8S_AUTH_CERT_FILE.
context
Имя контекста, найденного в файле конфигурации. Также может быть задан через переменную среды K8S_AUTH_CONTEXT.
field_selector
Указание полей для запроса. Игнорируется, когда задано resource_name.
host
Указание URL для доступа к API. Также может быть задан через переменную среды K8S_AUTH_HOST.
key_file
Путь к файлу ключа, используемому для аутентификации с API. Также может быть задан через переменную среды K8S_AUTH_HOST.
kind
обязательно
Используется для указания модели объекта. Если предоставлено определение ресурса, kind из resource_definition переопределит это значение.
kubeconfig
Путь к существующему файлу конфигурации Kubernetes. Если не указан и не указаны другие параметры подключения, клиент openshift попытается загрузить файл конфигурации по умолчанию из ~/.kube/config.json. Также может быть задан через переменную среды K8S_AUTH_KUBECONFIG.
label_selector
Дополнительные метки для включения в запрос. Игнорируется, когда задано resource_name.
namespace
Ограничение объектов, возвращаемых в заданное пространство имен. Если предоставлено определение ресурса, значение metadata.namespace из resource_definition переопределит это значение.
password
Указание пароля для аутентификации с API. Также может быть задан через переменную среды K8S_AUTH_PASSWORD.
resource_definition
Указание YAML-конфигурации для объекта. ПРИМЕЧАНИЕ: kind, api_version, resource_name, namespace и resource_version будут переопределены соответствующими значениями, найденными в предоставленном resource_definition.
resource_name
Получение конкретного объекта по имени. Если предоставлено определение ресурса, значение metadata.name из resource_definition переопределит это значение.
src
Указание пути к файлу, содержащему валидное YAML-определение объекта. Взаимоисключающее с resource_definition. ПРИМЕЧАНИЕ: kind, api_version, resource_name и namespace будут переопределены соответствующими значениями, найденными в конфигурации, считанной из файла src.
Читает из локальной файловой системы. Для чтения из файловой системы контроллера Ansible используйте плагин поиска файлов или плагин поиска шаблонов, совместно с фильтром from_yaml, и передайте результат в resource_definition. См. Примеры ниже.
ssl_ca_cert
Путь к сертификату CA, используемому для аутентификации с API. Также может быть задан через переменную среды K8S_AUTH_SSL_CA_CERT.
username
Указание имени пользователя для аутентификации с API. Также может быть задан через переменную среды K8S_AUTH_USERNAME.
verify_ssl
    Варианты:
  • нет
  • да
Подтверждать ли сертификаты SSL сервера API. Также может быть задан через переменную среды K8S_AUTH_VERIFY_SSL.

Примечания

Примечание

  • OpenShift Python-клиент оборачивает K8s Python-клиент, предоставляя полный доступ ко всем API и моделям, доступным на обеих платформах. Подробности о версиях API и дополнительную информацию можно найти по адресу https://github.com/openshift/openshift-restclient-python

Примеры

- name: Fetch a list of projects
  set_fact:
    projects: "{{ lookup('openshift', api_version='v1', kind='Project') }}"

- name: Fetch all deployments
  set_fact:
    deployments: "{{ lookup('openshift', kind='DeploymentConfig', namespace='testing') }}"

- name: Fetch all deployments in a namespace
  set_fact:
    deployments: "{{ lookup('openshift', kind='DeploymentConfig', namespace='testing') }}"

- name: Fetch a specific deployment by name
  set_fact:
    deployments: "{{ lookup('openshift', kind='DeploymentConfig', namespace='testing', resource_name='elastic') }}"

- name: Fetch with label selector
  set_fact:
    service: "{{ lookup('openshift', kind='Service', label_selector='app=galaxy') }}"

# Use parameters from a YAML config

- name: Load config from the Ansible controller filesystem
  set_fact:
    config: "{{ lookup('file', 'service.yml') | from_yaml }}"

- name: Using the config (loaded from a file in prior task), fetch the latest version of the object
  set_fact:
    service: "{{ lookup('openshift', resource_definition=config) }}"

- name: Use a config from the local filesystem
  set_fact:
    service: "{{ lookup('openshift', src='service.yml') }}"

Возвращаемые значения

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

Ключ Возвращаемое значение Описание
_list
сложный тип
Один или несколько определений объектов, возвращенных из API.

status
сложный тип
успех
Текущие сведения о статусе объекта.

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

spec
сложный тип
успех
Конкретные атрибуты объекта. Будут отличаться в зависимости от api_version и kind.

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

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



Статус

Автор

  • НЕИЗВЕСТНО

Подсказка

Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/plugins/lookup/openshift.html

Spec-Zone.ru

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