Spec-Zone.ru › Ansible

community.general.gitlab_user модуль — Создаёт/обновляет/удаляет/блокирует/разблокирует пользователей GitLab

Примечание

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

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

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

Чтобы использовать его в плейбуке, укажите: community.general.gitlab_user.

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

Описание

  • Если пользователя в GitLab нет, он будет создан.
  • Если пользователь существует и state=absent, он будет удалён.
  • Если пользователь существует и state=blocked, он будет заблокирован.
  • При внесении изменений в пользователя, он будет обновлён.

Требования

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

  • права администратора на сервере GitLab
  • python-gitlab модуль Python
  • requests (библиотека Python https://pypi.org/project/requests/)

Параметры

Параметр

Комментарии

access_level

строка

Уровень доступа к группе. Можно использовать один из следующих.

guest

reporter

developer

master (псевдоним для maintainer)

maintainer

owner

Варианты:

  • "guest" ← (по умолчанию)
  • "reporter"
  • "developer"
  • "master"
  • "maintainer"
  • "owner"

api_job_token

строка

добавлен в community.general 4.2.0

Токен GitLab CI задания для входа.

api_oauth_token

строка

добавлен в community.general 4.2.0

Токен GitLab OAuth для входа.

api_password

строка

Пароль для аутентификации по API.

api_token

строка

Токен доступа GitLab с правами API.

api_url

строка

Резолвимый конечный пункт API.

api_username

строка

Имя пользователя для аутентификации по API.

ca_path

строка

добавлен в community.general 8.1.0

Файл с сертификатами CA для проверки сертификата сервера GitLab.

confirm

булево

Требовать подтверждения.

Варианты:

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

email

строка

Электронная почта пользователя.

Требуется только если state=present.

external

булево

Определить внешний параметр для данного пользователя.

Варианты:

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

group

строка

Идентификатор или полный путь родительской группы в формате group/name.

Добавить пользователя в качестве члена этой группы.

identities

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

добавлен в community.general 3.3.0

Список идентификаторов, которые нужно добавить/обновить для этого пользователя.

Чтобы удалить все остальные идентификаторы у данного пользователя, установите overwrite_identities=true.

extern_uid

строка

Идентификатор пользователя для внешнего идентификатора.

provider

строка

Название внешнего поставщика идентификаторов

isadmin

булево

Предоставить права администратора пользователю.

Варианты:

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

name

строка

Имя пользователя, которого вы хотите создать.

Требуется только если state=present.

overwrite_identities

булево

добавлен в community.general 3.3.0

Перезаписать идентификаторы добавленными в этот модуль.

Это означает, что все идентификаторы, которые у пользователя есть и которые не указаны в identities, удаляются у пользователя.

Это делается только если для identities указан список. Чтобы удалить все идентификаторы, предоставьте пустой список.

Варианты:

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

password

строка

Пароль пользователя.

Сервер GitLab накладывает минимальную длину пароля в 8 символов, установите это значение с 8 или более символами.

reset_password

булево

добавлен в community.general 3.3.0

Может ли пользователь изменить свой пароль или нет.

Варианты:

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

sshkey_expires_at

строка

добавлен в community.general 3.1.0

Дата истечения срока действия открытого ключа SSH в формате ISO 8601 YYYY-MM-DDTHH:MM:SSZ.

Используется только при добавлении новых открытых ключей SSH.

sshkey_file

string

Сам SSH-открытый ключ.

sshkey_name

string

Имя SSH-открытого ключа.

state

string

Создать, удалить или заблокировать пользователя.

Выбор:

  • "present" ← (по умолчанию)
  • "absent"
  • "blocked"
  • "unblocked"

username

string / обязательно

Имя пользователя.

validate_certs

boolean

Проверять ли SSL-сертификаты при использовании HTTPS-адреса.

Выбор:

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

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может работать в режиме check_mode и возвращать прогноз изменения статуса без изменения целевого объекта.

diff_mode

Поддержка: отсутствует

Возвращает подробности об изменениях (или, возможно, о необходимости изменений в check_mode) в режиме сравнения.

Примечания

Примечание

  • Начиная с community.general 0.2.0 и выше, имя, адрес электронной почты и пароль являются необязательными при удалении пользователя.

Примеры

- name: "Delete GitLab User"
  community.general.gitlab_user:
    api_url: https://gitlab.example.com/
    api_token: "{{ access_token }}"
    username: myusername
    state: absent

- name: "Create GitLab User"
  community.general.gitlab_user:
    api_url: https://gitlab.example.com/
    validate_certs: true
    api_username: dj-wasabi
    api_password: "MySecretPassword"
    name: My Name
    username: myusername
    password: mysecretpassword
    email: me@example.com
    sshkey_name: MySSH
    sshkey_file: ssh-rsa AAAAB3NzaC1yc...
    state: present
    group: super_group/mon_group
    access_level: owner

- name: "Create GitLab User using external identity provider"
  community.general.gitlab_user:
    api_url: https://gitlab.example.com/
    validate_certs: true
    api_token: "{{ access_token }}"
    name: My Name
    username: myusername
    password: mysecretpassword
    email: me@example.com
    identities:
    - provider: Keycloak
      extern_uid: f278f95c-12c7-4d51-996f-758cc2eb11bc
    state: present
    group: super_group/mon_group
    access_level: owner

- name: "Block GitLab User"
  community.general.gitlab_user:
    api_url: https://gitlab.example.com/
    api_token: "{{ access_token }}"
    username: myusername
    state: blocked

- name: "Unblock GitLab User"
  community.general.gitlab_user:
    api_url: https://gitlab.example.com/
    api_token: "{{ access_token }}"
    username: myusername
    state: unblocked

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

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

Ключ

Описание

error

строка

сообщение об ошибке, возвращенное API GitLab

Возвращено: failed

Пример: "400: path is already in use"

msg

строка

Сообщение об успехе или об ошибке

Возвращено: всегда

Пример: "Success"

result

словарь

разбор json ответа от сервера

Возвращено: всегда

user

словарь

объект API

Возвращено: всегда

Авторы

  • Werner Dijkerman (@dj-wasabi)
  • Guillaume Martinez (@Lunik)
  • Lennert Mertens (@LennertMertens)
  • Stef Graces (@stgrace)

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

  • Отслеживание задач
  • Репозиторий (источники)
  • Задать вопрос
  • Отправить сообщение об ошибке
  • Запросить функцию
  • Связь

© 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/general/gitlab_user_module.html

Spec-Zone.ru

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