Merge "Change the format of 'san' parameter in pki_certificates
variable"
This commit is contained in:
@@ -83,7 +83,10 @@ pki_search_certificates_pattern: "pki_certificates_"
|
|||||||
# - name: "SnakeWeb"
|
# - name: "SnakeWeb"
|
||||||
# provider: ownca
|
# provider: ownca
|
||||||
# cn: "www.snakeoil.com"
|
# cn: "www.snakeoil.com"
|
||||||
# san: "DNS:www.snakeoil.com,DNS:snakeoil.com"
|
# san:
|
||||||
|
# dns:
|
||||||
|
# - www.snakeoil.com
|
||||||
|
# - snakeoil.com
|
||||||
# - name: "SnakeMail"
|
# - name: "SnakeMail"
|
||||||
# signed_by: "SnakeRootIntermediate"
|
# signed_by: "SnakeRootIntermediate"
|
||||||
# provider: ownca
|
# provider: ownca
|
||||||
@@ -95,7 +98,12 @@ pki_search_certificates_pattern: "pki_certificates_"
|
|||||||
# - name: "myservice_{{ ansible_facts['hostname'] }}"
|
# - name: "myservice_{{ ansible_facts['hostname'] }}"
|
||||||
# cn: "{{ ansible_facts['hostname'] }}"
|
# cn: "{{ ansible_facts['hostname'] }}"
|
||||||
# provider: ownca
|
# provider: ownca
|
||||||
# san: "{{ 'DNS:' ~ ansible_facts['hostname'] ~ ',DNS:' ~ ansible_facts['fqdn'] ~ ',IP:' ~ ansible_facts['default_ipv4'] }}"
|
# san:
|
||||||
|
# dns:
|
||||||
|
# - "{{ ansible_facts['hostname'] }}"
|
||||||
|
# - "{{ ansible_facts['fqdn'] }}"
|
||||||
|
# ip:
|
||||||
|
# - "{{ ansible_facts['default_ipv4'] }}"
|
||||||
# signed_by: "SnakeRootIntermediate"
|
# signed_by: "SnakeRootIntermediate"
|
||||||
|
|
||||||
# set this to the name of the certificate to regenerate, or to 'true' to regenerate all
|
# set this to the name of the certificate to regenerate, or to 'true' to regenerate all
|
||||||
|
@@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
upgrade:
|
||||||
|
- |
|
||||||
|
The format of `san` parameter in a ``pki_certificates`` variable was
|
||||||
|
changed from a string to the dictonary of lists. New dict can
|
||||||
|
contain following keys: dns, ip, uri, other. These keys should
|
||||||
|
contain a list with all SANs that should be a part of the
|
||||||
|
certificate.
|
@@ -33,6 +33,13 @@
|
|||||||
register: cert_privkey
|
register: cert_privkey
|
||||||
|
|
||||||
- name: Create the CSR for {{ cert.name }}
|
- name: Create the CSR for {{ cert.name }}
|
||||||
|
vars:
|
||||||
|
generated_san: >-
|
||||||
|
{{
|
||||||
|
['DNS:' + (cert.san.dns | unique | join(',DNS:')) if cert.san.dns | default([]) else '',
|
||||||
|
'IP:' + (cert.san.ip | unique | join(',IP:')) if cert.san.ip | default([]) else '']
|
||||||
|
| select() | join(',')
|
||||||
|
}}
|
||||||
community.crypto.openssl_csr:
|
community.crypto.openssl_csr:
|
||||||
path: "{{ cert_dir ~ '/csr/' ~ cert.name ~ '.csr' }}"
|
path: "{{ cert_dir ~ '/csr/' ~ cert.name ~ '.csr' }}"
|
||||||
privatekey_path: "{{ cert_privkey.filename }}"
|
privatekey_path: "{{ cert_privkey.filename }}"
|
||||||
@@ -42,7 +49,9 @@
|
|||||||
basic_constraints: "{{ cert.basic_constraints | default(omit) }}"
|
basic_constraints: "{{ cert.basic_constraints | default(omit) }}"
|
||||||
key_usage: "{{ cert.key_usage | default(omit) }}"
|
key_usage: "{{ cert.key_usage | default(omit) }}"
|
||||||
extended_key_usage: "{{ cert.extended_key_usage | default(omit) }}"
|
extended_key_usage: "{{ cert.extended_key_usage | default(omit) }}"
|
||||||
subject_alt_name: "{{ cert.san | default(omit) }}"
|
# NOTE(damiandabrowski) After 2026.1 switch to just:
|
||||||
|
# subject_alt_name: "{{ generated_san | default(omit) }}"
|
||||||
|
subject_alt_name: "{{ (cert.san is defined and cert.san is not string) | ternary(generated_san, cert.san | default(omit)) }}"
|
||||||
country_name: "{{ cert.country_name | default(omit) }}"
|
country_name: "{{ cert.country_name | default(omit) }}"
|
||||||
state_or_province_name: "{{ cert.state_or_province_name | default(omit) }}"
|
state_or_province_name: "{{ cert.state_or_province_name | default(omit) }}"
|
||||||
locality_name: "{{ cert.locality_name | default(omit) }}"
|
locality_name: "{{ cert.locality_name | default(omit) }}"
|
||||||
|
Reference in New Issue
Block a user