community.general.gitlab_project_variable – Создаёт/обновляет/удаляет переменные проектов GitLab
Примечание
Этот плагин является частью коллекции community.general (версия 2.0.1).
Для его установки используйте: ansible-galaxy collection install community.general.
Чтобы использовать его в книге задач, укажите: community.general.gitlab_project_variable.
Обзор
- Если переменная проекта не существует, она будет создана.
- Если переменная проекта существует, её значение будет обновлено, если значения отличаются.
- Переменные, которые не изменяются в книге задач, но не изменяются в проекте GitLab, остаются неизменными (purge —
false) или будут удалены (purge —true).
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.7
- python-gitlab python модуль
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_password строка | Пароль для аутентификации с API | |
| api_token строка / обязательно | Токен доступа GitLab с правами API. | |
| api_url строка | Разрешаемый конечный пункт для API | |
| api_username строка | Имя пользователя для аутентификации с API | |
| project строка / обязательно | Путь и имя проекта. | |
| purge булево |
| При установке в значение true, все переменные, которые не указаны как неизменённые в задаче, будут удалены. |
| state строка |
| Создание или удаление переменной проекта. Возможные значения present и absent. |
| validate_certs булево |
| Требовать или нет проверку SSL-сертификатов при указании https конечной точки. |
| vars словарь | Значение по умолчанию: {} | Когда элемент списка — простая пара ключ-значение, значения masked и protected установятся в false. Когда элемент списка — словарь с ключами value, masked и protected, пользователь может полностью управлять тем, должно ли значение быть замаскированным, защищённым или обоими. Поддержка защищённых значений требует GitLab >= 9.3. Поддержка замаскированных значений требует GitLab >= 11.10. Значение value должно быть строкой или числом. Поле variable_type должно быть строкой, либо env_var, что является значением по умолчанию, либо file.Поле environment_scope должно быть строкой, определяющей область видимости переменной. Если значение замаскировано, оно должно быть в Base64 и иметь длину не менее 8 символов. См. документацию GitLab по допустимым значениям для замаскированной переменной (https://docs.gitlab.com/ce/ci/variables/#masked-variables). |
Примеры
- name: Set or update some CI/CD variables
community.general.gitlab_project_variable:
api_url: https://gitlab.com
api_token: secret_access_token
project: markuman/dotfiles
purge: false
vars:
ACCESS_KEY_ID: abc123
SECRET_ACCESS_KEY: 321cba
- name: Set or update some CI/CD variables
community.general.gitlab_project_variable:
api_url: https://gitlab.com
api_token: secret_access_token
project: markuman/dotfiles
purge: false
vars:
ACCESS_KEY_ID: abc123
SECRET_ACCESS_KEY:
value: 3214cbad
masked: true
protected: true
variable_type: env_var
environment_scope: '*'
- name: Delete one variable
community.general.gitlab_project_variable:
api_url: https://gitlab.com
api_token: secret_access_token
project: markuman/dotfiles
state: absent
vars:
ACCESS_KEY_ID: abc123
Возвращаемые значения
Общие значения, возвращаемые модулем, описаны здесь, а следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое | Описание | |
|---|---|---|---|
| project_variable словарь | всегда | Четыре списка имён переменных, которые были добавлены, обновлены, удалены или существуют. | |
| added список / элементы=строка | всегда | Список переменных, которые были созданы. Пример: ['ACCESS_KEY_ID', 'SECRET_ACCESS_KEY'] | |
| removed список / элементы=строка | всегда | Список переменных, которые были удалены. Пример: ['ACCESS_KEY_ID', 'SECRET_ACCESS_KEY'] | |
| untouched список / элементы=строка | всегда | Список переменных, которые существуют. Пример: ['ACCESS_KEY_ID', 'SECRET_ACCESS_KEY'] | |
| updated список / элементы=строка | всегда | Список переменных, значения которых были изменены. Пример: ['ACCESS_KEY_ID', 'SECRET_ACCESS_KEY'] | |
Авторы
- Markus Bergholz (@markuman)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/gitlab_project_variable_module.html