Spec-Zone.ru › Ansible

Модуль community.general.github_deploy_key – Управляет ключами развертывания для репозиториев GitHub

Примечание

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

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

Чтобы установить её, используйте: ansible-galaxy collection install community.general.

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

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

Обзор

  • Добавляет или удаляет ключи развертывания для репозиториев GitHub. Поддерживает аутентификацию с использованием имени пользователя и пароля, имени пользователя, пароля и кода двухфакторной аутентификации (OTP), токена OAuth2 или токена личного доступа. Требуются права администратора репозитория.

Параметры

Параметр

Комментарии

force

boolean

Если true, принудительно добавляет ключ развертывания, удаляя все существующие ключи развертывания с тем же открытым ключом или названием.

Варианты:

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

github_url

string

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

Базовый URL API GitHub.

По умолчанию: "https://api.github.com"

key

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

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

name

псевдонимы: title, label

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

Название ключа развертывания.

otp

integer

Одноразовый пароль из 6 цифр для двухфакторной аутентификации. Требуется вместе с username и password.

owner

псевдонимы: account, organization

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

Имя личной учетной записи или организации, которой принадлежит репозиторий GitHub.

password

string

Пароль для аутентификации. Вместо комбинации username и password можно использовать токен личного доступа.

read_only

boolean

Если true, ключ развертывания позволяет только читать содержимое репозитория. В противном случае ключ развертывания позволяет читать и записывать данные.

Варианты:

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

repo

псевдоним: repository

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

Название репозитория GitHub.

state

string

Состояние ключа развертывания.

Варианты:

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

token

string

Токен OAuth2 или токен личного доступа для аутентификации. Взаимоисключающий с password.

username

string

Имя пользователя для аутентификации. Не следует указывать при использовании токена личного доступа.

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: full

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

diff_mode

Поддержка: none

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

Примечания

Примечание

  • Документация API GitHub доступна здесь: https://developer.github.com/v3/repos/keys/.

Примеры

- name: Add a new read-only deploy key to a GitHub repository using basic authentication
  community.general.github_deploy_key:
    owner: "johndoe"
    repo: "example"
    name: "new-deploy-key"
    key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAwXxn7kIMNWzcDfou..."
    read_only: true
    username: "johndoe"
    password: "supersecretpassword"

- name: Remove an existing deploy key from a GitHub repository
  community.general.github_deploy_key:
    owner: "johndoe"
    repository: "example"
    name: "new-deploy-key"
    key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAwXxn7kIMNWzcDfou..."
    force: true
    username: "johndoe"
    password: "supersecretpassword"
    state: absent

- name: Add a new deploy key to a GitHub repository, replace an existing key, use an OAuth2 token to authenticate
  community.general.github_deploy_key:
    owner: "johndoe"
    repository: "example"
    name: "new-deploy-key"
    key: "{{ lookup('file', '~/.ssh/github.pub') }}"
    force: true
    token: "ABAQDAwXxn7kIMNWzcDfo..."

- name: Re-add a deploy key to a GitHub repository but with a different name
  community.general.github_deploy_key:
    owner: "johndoe"
    repository: "example"
    name: "replace-deploy-key"
    key: "{{ lookup('file', '~/.ssh/github.pub') }}"
    username: "johndoe"
    password: "supersecretpassword"

- name: Add a new deploy key to a GitHub repository using 2FA
  community.general.github_deploy_key:
    owner: "johndoe"
    repo: "example"
    name: "new-deploy-key-2"
    key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAwXxn7kIMNWzcDfou..."
    username: "johndoe"
    password: "supersecretpassword"
    otp: 123456

- name: Add a read-only deploy key to a repository hosted on GitHub Enterprise
  community.general.github_deploy_key:
    github_url: "https://api.example.com"
    owner: "janedoe"
    repo: "example"
    name: "new-deploy-key"
    key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAwXxn7kIMNWzcDfou..."
    read_only: true
    username: "janedoe"
    password: "supersecretpassword"

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

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

Ключ

Описание

error

string

Сообщение об ошибке, возвращенное API GitHub.

Возвращается: failed

Пример: "key is already in use"

http_status_code

integer

Код состояния HTTP, возвращенный API GitHub.

Возвращается: failed

Пример: 400

id

integer

Идентификатор ключа развертывания, присвоенный GitHub.

Возвращается: changed

Пример: 24381901

msg

string

Сообщение о состоянии, описывающее произошедшее.

Возвращается: always

Пример: "Deploy key added successfully"

Авторы

  • Ali (@bincyber)

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

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

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

Spec-Zone.ru

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