Модуль community.general.gitlab_user — создание, обновление, удаление, блокировка и разблокировка пользователей GitLab
Примечание
Этот модуль входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.general. Для работы с этим модулем нужны дополнительные требования; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: community.general.gitlab_user.
Краткое описание
- Если пользователя нет в GitLab, он создаётся.
- Если пользователь существует и state=absent, он удаляется.
- Если пользователь существует и state=blocked, он блокируется.
- Если в данные пользователя внесены изменения, они применяются.
Требования
На хосте, на котором выполняется этот модуль, необходимы следующие компоненты.
- права администратора на сервере GitLab
- модуль Python python-gitlab
- requests (библиотека Python https://pypi.org/project/requests/)
Параметры
Параметр | Комментарии |
|---|---|
access_level string | Уровень доступа к группе. Значение Варианты:
|
api_job_token string добавлено в community.general 4.2.0 | Токен задания GitLab CI для входа. |
api_oauth_token string добавлено в community.general 4.2.0 | Токен OAuth GitLab для входа. |
api_password string | Пароль для аутентификации через API. |
api_token string | Токен доступа GitLab с разрешениями API. |
api_url string | Доступная по имени конечная точка API. |
api_username string | Имя пользователя для аутентификации через API. |
ca_path string добавлено в community.general 8.1.0 | Пакет сертификатов CA для проверки сертификата сервера GitLab. |
confirm boolean | Требовать подтверждение. Варианты:
|
string | Адрес электронной почты пользователя. Обязателен только если |
external boolean | Задать параметр внешнего пользователя для этого пользователя. Варианты:
|
group string | ID или полный путь родительской группы в формате group/name. Добавить пользователя в эту группу в качестве участника. |
identities list / elements=dictionary добавлено в community.general 3.3.0 | Список идентификаторов, которые нужно добавить или обновить для этого пользователя. Чтобы удалить все остальные идентификаторы пользователя, задайте |
|
extern_uid string |
ID пользователя для внешней идентификации. |
|
provider string |
Имя внешнего поставщика идентификации. |
isadmin boolean | Предоставить пользователю права администратора. Варианты:
|
name string | Имя пользователя, которого нужно создать. Обязательно только если |
overwrite_identities boolean добавлено в community.general 3.3.0 | Заменить идентификаторы идентификаторами, добавленными этим модулем. Это означает, что все идентификаторы пользователя, не указанные в Это выполняется только в том случае, если для Варианты:
|
password string | Пароль пользователя. Сервер GitLab требует, чтобы длина пароля составляла не менее 8 символов; задайте значение длиной 8 или более символов. |
reset_password boolean добавлено в community.general 3.3.0 | Может ли пользователь менять свой пароль. Варианты:
|
sshkey_expires_at string добавлено в community.general 3.1.0 | Дата истечения срока действия открытого ключа SSH в формате ISO 8601 Используется только при добавлении новых открытых ключей SSH. |
sshkey_file string | Сам открытый ключ SSH. |
sshkey_name string | Имя открытого ключа SSH. |
state string | Создать, удалить или заблокировать пользователя. Варианты:
|
username string / обязательный | Имя пользователя. |
validate_certs boolean | Проверять ли сертификаты SSL при указании конечной точки HTTPS. Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная | Может выполняться в режиме |
diff_mode | Поддержка: нет | В режиме diff возвращает сведения об изменениях (или о возможных изменениях в |
Примечания
Примечание
- Начиная с community.general 0.2.0, параметры name, email и password необязательны при удалении пользователя.
Примеры
- 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 string | Сообщение об ошибке, возвращённое API GitLab. Возвращается: при ошибке Пример: |
msg string | Сообщение об успехе или ошибке. Возвращается: всегда Пример: |
result dictionary | Ответ сервера, разобранный из JSON. Возвращается: всегда |
user dictionary | Объект API. Возвращается: всегда |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/gitlab_user_module.html