community.general.github_deploy_key 模块 – 管理 GitHub 仓库的部署密钥
注意
此模块是 community.general 集合 (版本 10.1.0) 的一部分。
如果您使用的是 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.general
。
要在 playbook 中使用它,请指定:community.general.github_deploy_key
。
概要
添加或删除 GitHub 仓库的部署密钥。支持使用用户名和密码、用户名、密码和二次身份验证码 (OTP)、OAuth2 令牌或个人访问令牌进行身份验证。需要仓库的管理员权限。
参数
参数 |
注释 |
---|---|
如果为 选项
|
|
GitHub API 的基本 URL 默认值: |
|
要作为部署密钥添加到仓库的 SSH 公钥。 |
|
部署密钥的名称。 |
|
拥有 GitHub 仓库的个人帐户或组织的名称。 |
|
如果为 选项
|
|
GitHub 仓库的名称。 |
|
部署密钥的状态。 选项
|
|
用于身份验证的 OAuth2 令牌或个人访问令牌。与 |
|
用于身份验证的用户名。使用个人访问令牌时不应设置。 |
属性
属性 |
支持 |
描述 |
---|---|---|
支持:完全支持 |
可以在 |
|
支持:不支持 |
在差异模式下,将返回有关已更改内容(或可能需要在 |
备注
注意
请参考 GitHub 的 API 文档: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"
返回值
常用的返回值已在此处记录 此处,以下是此模块特有的字段
键 |
描述 |
---|---|
GitHub API 返回的错误消息 返回:失败 示例: |
|
GitHub API 返回的 HTTP 状态码 返回:失败 示例: |
|
GitHub 为部署密钥分配的密钥标识符 返回:已更改 示例: |
|
描述发生情况的状态消息 返回:始终 示例: |