ansible-base/ansible/roles/acme/tasks/main.json

92 lines
2.5 KiB
JSON
Raw Normal View History

2023-11-20 02:07:08 +01:00
[
{
"name": "packages",
"become": true,
"ansible.builtin.apt": {
"state": "present",
"pkg": [
"openssl"
]
}
},
{
"name": "create signing request",
"community.crypto.openssl_csr": {
"state": "present",
"common_name": "{{var_acme_domain_path}}.{{var_acme_domain_base}}",
"path": "{{var_acme_ssl_directory}}/csr/{{var_acme_domain_path}}.{{var_acme_domain_base}}.pem"
}
},
{
"name": "init",
"community.crypto.acme_certificate": {
"acme_version": 1,
"account_email": "{{var_acme_acme_account_email}}",
"path": "{{var_acme_ssl_directory}}/csr/{{var_acme_domain_path}}.{{var_acme_domain_base}}.pem",
"challenge": "dns-01",
"dest": "{{var_acme_ssl_directory}}/certs/{{var_acme_domain_path}}.{{var_acme_domain_base}}.pem",
"fullchain_dest": "{{var_acme_ssl_directory}}/fullchains/{{var_acme_domain_path}}.{{var_acme_domain_base}}.pem"
},
"register": "temp_acme_data"
},
{
"name": "dns challenge | login",
"ansible.builtin.uri": {
"url": "https://api.domrobot.com/jsonrpc/",
"method": "POST",
"headers": {
"Content-Type": "application/json"
},
"body_format": "json",
"body": {
"method": "account.login",
"params": {
"user": "{{var_acme_inwx_username}}",
"pass": "{{var_acme_inwx_password}}"
}
}
},
"register": "temp_inwx_login_result"
},
{
"name": "dns challenge | execute",
"ansible.builtin.uri": {
"url": "https://api.domrobot.com/jsonrpc/",
"method": "POST",
"headers": {
"Content-Type": "application/json",
"Cookie": "{{var_acme_temp_inwx_login_result._accesstoken}}"
},
"body_format": "json",
"body": {
"method": "nameserver.updateRecord",
"params": {
"domain": "{{var_acme_domain_base}}",
"name": "_acme_challenge.{{var_acme_domain_path}}",
"type": "TXT",
"content": "{{var_acme_temp_acme_data.challenge_data['sample.com']['dns-01'].record}}"
}
}
}
},
{
"name": "dns challenge | wait",
"ansible.builtin.pause": {
"second": 60
}
},
{
"name": "finalize",
"community.crypto.acme_certificate": {
"data": "{{var_acme_temp_acme_data}}",
"acme_version": 1,
"account_email": "{{var_acme_acme_account_email}}",
"path": "{{var_acme_ssl_directory}}/csr/{{var_acme_domain_path}}.{{var_acme_domain_base}}.pem",
"challenge": "dns-01",
"dest": "{{var_acme_ssl_directory}}/certs/{{var_acme_domain_path}}.{{var_acme_domain_base}}.pem",
"fullchain_dest": "{{var_acme_ssl_directory}}/fullchains/{{var_acme_domain_path}}.{{var_acme_domain_base}}.pem"
}
}
]