hetzner.hcloud.certificate module – Create and manage certificates on the Hetzner Cloud.
Note
This module is part of the hetzner.hcloud collection (version 2.5.0).
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 hetzner.hcloud
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: hetzner.hcloud.certificate
.
Synopsis
Create, update and manage certificates on the Hetzner Cloud.
Aliases: hcloud_certificate
Requirements
The below requirements are needed on the host that executes this module.
python-dateutil >= 2.7.5
requests >=2.20
Parameters
Parameter |
Comments |
---|---|
The API Endpoint for the Hetzner Cloud. You can also set this option by using the Default: |
|
The API Token for the Hetzner Cloud. You can also set this option by using the |
|
Certificate and chain in PEM format, in order so that each record directly certifies the one preceding. Required if certificate does not exist and type=uploaded. |
|
Domains and subdomains that should be contained in the Certificate issued by Let’s Encrypt. Required if type=managed. Default: |
|
The ID of the Hetzner Cloud certificate to manage. Only required if no certificate name is given |
|
User-defined labels (key-value pairs) |
|
The Name of the Hetzner Cloud certificate to manage. Only required if no certificate id is given or a certificate does not exist. |
|
Certificate key in PEM format. Required if certificate does not exist and type=uploaded. |
|
State of the certificate. Choices:
|
|
Choose between uploading a Certificate in PEM format or requesting a managed Let’s Encrypt Certificate. Choices:
|
See Also
See also
- Documentation for Hetzner Cloud API
Complete reference for the Hetzner Cloud API.
Examples
- name: Create a basic certificate
hetzner.hcloud.certificate:
name: my-certificate
certificate: -----BEGIN CERTIFICATE-----...
private_key: -----BEGIN PRIVATE KEY-----...
state: present
- name: Create a certificate with labels
hetzner.hcloud.certificate:
name: my-certificate
certificate: -----BEGIN CERTIFICATE-----...
private_key: -----BEGIN PRIVATE KEY-----...
labels:
key: value
mylabel: 123
state: present
- name: Create a managed certificate
hetzner.hcloud.certificate:
name: my-certificate
type: managed
domain_names:
- example.com
- www.example.com
state: present
- name: Ensure the certificate is absent (remove if needed)
hetzner.hcloud.certificate:
name: my-certificate
state: absent
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
The certificate instance Returned: Always |
|
Certificate and chain in PEM format Returned: always Sample: |
|
List of Domains and Subdomains covered by the Certificate Returned: always |
|
Fingerprint of the certificate Returned: always Sample: |
|
Numeric identifier of the certificate Returned: always Sample: |
|
User-defined labels (key-value pairs) Returned: always |
|
Name of the certificate Returned: always Sample: |
|
Point in time when the Certificate stops being valid (in ISO-8601 format) Returned: always |
|
Point in time when the Certificate becomes valid (in ISO-8601 format) Returned: always |