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 令牌或个人访问令牌。与 |
|
用于身份验证的用户名。使用个人访问令牌时不应设置 |
属性
属性 |
支持 |
描述 |
---|---|---|
支持: 完全 |
可以在 |
|
支持: 无 |
在 diff 模式下运行时,将返回有关已更改(或可能需要在 |
说明
注意
请参阅 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为部署密钥分配的密钥标识符 返回: 已更改 示例: |
|
描述发生了什么的状态消息 返回: 总是 示例: |