community.general.etcd3 (8.5.0) — module

Set or delete key value pairs from an etcd3 cluster

Authors: Jean-Philippe Evrard (@evrardjp), Victor Fauth (@vfauth)

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

Sets or deletes values in etcd3 cluster using its v3 api.

Needs python etcd3 lib to work


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Store a value "bar" under the key "foo" for a cluster located "http://localhost:2379"
  community.general.etcd3:
    key: "foo"
    value: "baz3"
    host: "localhost"
    port: 2379
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Authenticate using user/password combination with a timeout of 10 seconds
  community.general.etcd3:
    key: "foo"
    value: "baz3"
    state: "present"
    user: "someone"
    password: "password123"
    timeout: 10
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Authenticate using TLS certificates
  community.general.etcd3:
    key: "foo"
    value: "baz3"
    state: "present"
    ca_cert: "/etc/ssl/certs/CA_CERT.pem"
    client_cert: "/etc/ssl/certs/cert.crt"
    client_key: "/etc/ssl/private/key.pem"

Inputs

    
key:
    description:
    - the key where the information is stored in the cluster
    required: true
    type: str

host:
    default: localhost
    description:
    - the IP address of the cluster
    type: str

port:
    default: 2379
    description:
    - the port number used to connect to the cluster
    type: int

user:
    description:
    - The etcd user to authenticate with.
    type: str

state:
    choices:
    - present
    - absent
    description:
    - the state of the value for the key.
    - can be present or absent
    required: true
    type: str

value:
    description:
    - the information stored
    required: true
    type: str

ca_cert:
    description:
    - The Certificate Authority to use to verify the etcd host.
    - Required if O(client_cert) and O(client_key) are defined.
    type: path

timeout:
    description:
    - The socket level timeout in seconds.
    type: int

password:
    description:
    - The password to use for authentication.
    - Required if O(user) is defined.
    type: str

client_key:
    description:
    - PEM formatted file that contains your private key to be used for SSL client authentication.
    - Required if O(client_cert) is defined.
    type: path

client_cert:
    description:
    - PEM formatted certificate chain file to be used for SSL client authentication.
    - Required if O(client_key) is defined.
    type: path

Outputs

key:
  description: The key that was queried
  returned: always
  type: str
old_value:
  description: The previous value in the cluster
  returned: always
  type: str