community.digitalocean.digital_ocean_sshkey_info – Gather information about DigitalOcean SSH keys

Note

This plugin is part of the community.digitalocean collection.

To install it use: ansible-galaxy collection install community.digitalocean.

To use it in a playbook, specify: community.digitalocean.digital_ocean_sshkey_info.

Synopsis

  • This module can be used to gather information about DigitalOcean SSH keys.

  • This module replaces the digital_ocean_sshkey_facts module.

Requirements

The below requirements are needed on the host that executes this module.

  • python >= 2.6

Parameters

Parameter Choices/Defaults Comments
oauth_token
string
DigitalOcean OAuth token.
There are several other environment variables which can be used to provide this value.
i.e., - 'DO_API_TOKEN', 'DO_API_KEY', 'DO_OAUTH_TOKEN' and 'OAUTH_TOKEN'

aliases: api_token
timeout
integer
Default:
30
The timeout in seconds used for polling DigitalOcean's API.
validate_certs
boolean
    Choices:
  • no
  • yes ←
If set to no, the SSL certificates will not be validated.
This should only set to no used on personally controlled sites using self-signed certificates.

Notes

Note

  • Version 2 of DigitalOcean API is used.

Examples

- name: Gather information about DigitalOcean SSH keys
  community.digitalocean.digital_ocean_sshkey_info:
    oauth_token: "{{ my_do_key }}"
  register: ssh_keys

- name: Set facts based on the gathered information
  set_fact:
    pubkey: "{{ item.public_key }}"
  loop: "{{ ssh_keys.data | community.general.json_query(ssh_pubkey) }}"
  vars:
    ssh_pubkey: "[?name=='ansible_ctrl']"

- name: Print SSH public key
  debug:
    msg: "{{ pubkey }}"

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
data
dictionary
success and no resource constraint
List of SSH keys on DigitalOcean

Sample:
[{'fingerprint': '3b:16:bf:e4:8b:00:8b:b8:59:8c:a9:d3:f0:19:45:fa', 'id': 512189, 'name': 'My SSH Public Key', 'public_key': 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAQQDDHr/jh2Jy4yALcK4JyWbVkPRaWmhck3IgCoeOO3z1e2dBowLh64QAM+Qb72pxekALga2oi4GvT+TlWNhzPH4V example'}]


Authors

  • Patrick Marques (@pmarques)