github_deploy_key - Управление ключами развертывания для репозиториев GitHub.
Новое в версии 2.4.
Обзор
- Добавляет или удаляет ключи развертывания для репозиториев GitHub. Поддерживает аутентификацию с использованием имени пользователя и пароля, имени пользователя и пароля и кода двухфакторной аутентификации (OTP), токена OAuth2 или токена доступа.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python-requests
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| force |
| Если true, принудительно добавляет ключ развертывания, удалив любой существующий ключ развертывания с тем же открытым ключом или названием. |
| key обязательно | Значение по умолчанию: None | Открытый ключ SSH для добавления в репозиторий в качестве ключа развертывания. |
| name обязательно | Значение по умолчанию: None | Имя для ключа развертывания. псевдонимы: title, label |
| otp | Значение по умолчанию: None | 6-значный одноразовый пароль для двухфакторной аутентификации. Требуется вместе с username и password. псевдонимы: 2fa_token |
| owner обязательно | Значение по умолчанию: None | Имя индивидуальной учетной записи или организации, владеющей репозиторием GitHub. псевдонимы: account, organization |
| password | Значение по умолчанию: None | Пароль для аутентификации. Здесь можно использовать токен доступа вместо пароля. |
| read_only |
| Если true, ключ развертывания сможет только читать содержимое репозитория. В противном случае ключ развертывания сможет читать и записывать. |
| repo обязательно | Значение по умолчанию: None | Название репозитория GitHub. псевдонимы: repository |
| state |
| Состояние ключа развертывания. |
| token | Значение по умолчанию: None | Токен OAuth2 или токен доступа для аутентификации. Взаимоисключительно с password. |
| username | Значение по умолчанию: None | Имя пользователя для аутентификации. |
Примечания
Примечание
- Обратитесь к документации API GitHub здесь: https://developer.github.com/v3/repos/keys/.
Примеры
# add a new read-only deploy key to a GitHub repository using basic authentication
- github_deploy_key:
owner: "johndoe"
repo: "example"
name: "new-deploy-key"
key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAwXxn7kIMNWzcDfou..."
read_only: yes
username: "johndoe"
password: "supersecretpassword"
# remove an existing deploy key from a GitHub repository
- github_deploy_key:
owner: "johndoe"
repository: "example"
name: "new-deploy-key"
key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAwXxn7kIMNWzcDfou..."
force: yes
username: "johndoe"
password: "supersecretpassword"
state: absent
# add a new deploy key to a GitHub repository, replace an existing key, use an OAuth2 token to authenticate
- github_deploy_key:
owner: "johndoe"
repository: "example"
name: "new-deploy-key"
key: "{{ lookup('file', '~/.ssh/github.pub') }}"
force: yes
token: "ABAQDAwXxn7kIMNWzcDfo..."
# re-add a deploy key to a GitHub repository but with a different name
- github_deploy_key:
owner: "johndoe"
repository: "example"
name: "replace-deploy-key"
key: "{{ lookup('file', '~/.ssh/github.pub') }}"
username: "johndoe"
password: "supersecretpassword"
# add a new deploy key to a GitHub repository using 2FA
- github_deploy_key:
owner: "johndoe"
repo: "example"
name: "new-deploy-key-2"
key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAwXxn7kIMNWzcDfou..."
username: "johndoe"
password: "supersecretpassword"
otp: 123456
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| error строка | failed | сообщение об ошибке, возвращенное API GitHub Пример: ключ уже используется |
| http_status_code целое число | failed | код HTTP-статуса, возвращенный API GitHub Пример: 400 |
| id целое число | changed | идентификатор ключа, назначенный GitHub для ключа развертывания Пример: 24381901 |
| msg строка | всегда | сообщение состояния, описывающее то, что произошло Пример: Ключ развертывания добавлен успешно |
Статус
Этот модуль помечен как preview, что означает, что он не гарантирует обратную совместимость интерфейса.
Автор
- Ali (@bincyber)
Подсказка
Если вы заметили какие-либо проблемы в этой документации, вы можете изменить этот документ, чтобы улучшить его.
© 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/modules/github_deploy_key_module.html