community.general.packet_sshkey (8.5.0) — module

Create/delete an SSH key in Packet host

Authors: Tomas Karasek (@t0mk) <tom.to.the.k@gmail.com>

Install collection

Install with ansible-galaxy collection install community.general:==8.5.0


Add to requirements.yml

  collections:
    - name: community.general
      version: 8.5.0

Description

Create/delete an SSH key in Packet host.

API is documented at U(https://www.packet.net/help/api/#page:ssh-keys,header:ssh-keys-ssh-keys-post).


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# All the examples assume that you have your Packet API token in env var PACKET_API_TOKEN.
# You can also pass the api token in module param auth_token.

- name: Create sshkey from string
  hosts: localhost
  tasks:
    community.general.packet_sshkey:
      key: "{{ lookup('file', 'my_packet_sshkey.pub') }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create sshkey from file
  hosts: localhost
  tasks:
    community.general.packet_sshkey:
      label: key from file
      key_file: ~/ff.pub
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Remove sshkey by id
  hosts: localhost
  tasks:
    community.general.packet_sshkey:
      state: absent
      id: eef49903-7a09-4ca1-af67-4087c29ab5b6

Inputs

    
id:
    description:
    - UUID of the key which you want to remove.
    type: str

key:
    description:
    - Public Key string ({type} {base64 encoded key} {description}).
    type: str

label:
    aliases:
    - name
    description:
    - Label for the key. If you keep it empty, it will be read from key string.
    type: str

state:
    choices:
    - present
    - absent
    default: present
    description:
    - Indicate desired state of the target.
    type: str

key_file:
    description:
    - File with the public key.
    type: path

auth_token:
    description:
    - Packet API token. You can also supply it in environment variable E(PACKET_API_TOKEN).
    type: str

fingerprint:
    description:
    - Fingerprint of the key which you want to remove.
    type: str

Outputs

changed:
  description: True if a sshkey was created or removed.
  returned: always
  sample: true
  type: bool
sshkeys:
  description: Information about sshkeys that were created/removed.
  returned: always
  sample:
  - fingerprint: 5c:93:74:7c:ed:07:17:62:28:75:79:23:d6:08:93:46
    id: 41d61bd8-3342-428b-a09c-e67bdd18a9b7
    key: ssh-dss AAAAB3NzaC1kc3MAAACBAIfNT5S0ncP4BBJBYNhNPxFF9lqVhfPeu6SM1LoCocxqDc1AT3zFRi8hjIf6TLZ2AA4FYbcAWxLMhiBxZRVldT9GdBXile78kAK5z3bKTwq152DCqpxwwbaTIggLFhsU8wrfBsPWnDuAxZ0h7mmrCjoLIE3CNLDA/NmV3iB8xMThAAAAFQCStcesSgR1adPORzBxTr7hug92LwAAAIBOProm3Gk+HWedLyE8IfofLaOeRnbBRHAOL4z0SexKkVOnQ/LGN/uDIIPGGBDYTvXgKZT+jbHeulRJ2jKgfSpGKN4JxFQ8uzVH492jEiiUJtT72Ss1dCV4PmyERVIw+f54itihV3z/t25dWgowhb0int8iC/OY3cGodlmYb3wdcQAAAIBuLbB45djZXzUkOTzzcRDIRfhaxo5WipbtEM2B1fuBt2gyrvksPpH/LK6xTjdIIb0CxPu4OCxwJG0aOz5kJoRnOWIXQGhH7VowrJhsqhIc8gN9ErbO5ea8b1L76MNcAotmBDeTUiPw01IJ8MdDxfmcsCslJKgoRKSmQpCwXQtN2g==
      tomk@hp2
    label: mynewkey33
  type: list