community.general.github_key module – Manage GitHub access keys
Note
This module is part of the community.general collection (version 7.5.2).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.general
.
To use it in a playbook, specify: community.general.github_key
.
Synopsis
Creates, removes, or updates GitHub access keys.
Aliases: source_control.github.github_key
Parameters
Parameter |
Comments |
---|---|
SSH key name |
|
SSH public key value. Required when |
|
Whether to remove a key, ensure that it exists, or update its value. Choices:
|
|
GitHub Access Token with permission to list and create public keys. |
Attributes
Attribute |
Support |
Description |
---|---|---|
Support: full |
Can run in |
|
Support: none |
Will return details on what has changed (or possibly needs changing in |
Examples
- name: Read SSH public key to authorize
ansible.builtin.shell: cat /home/foo/.ssh/id_rsa.pub
register: ssh_pub_key
- name: Authorize key with GitHub
local_action:
module: github_key
name: Access Key for Some Machine
token: '{{ github_access_token }}'
pubkey: '{{ ssh_pub_key.stdout }}'
# Alternatively, a single task can be used reading a key from a file on the controller
- name: Authorize key with GitHub
community.general.github_key:
name: Access Key for Some Machine
token: '{{ github_access_token }}'
pubkey: "{{ lookup('ansible.builtin.file', '/home/foo/.ssh/id_rsa.pub') }}"
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
An array of key objects that were deleted. Only present on state=absent Returned: When state=absent Sample: |
|
Metadata about the key just created. Only present on state=present Returned: success Sample: |
|
An array of keys matching the specified name. Only present on state=present Returned: When state=present Sample: |