community.general.github_key module – Manage GitHub access keys
Note
This module is part of the community.general collection (version 9.4.0).
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.
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: |