Adjust ARI tests to new Pebble (#837)
* Adjust ARI tests to new Pebble. * Fix key size for certificates to 2048 on all systems.pull/839/head
parent
01e7bf1f33
commit
ae35be3437
|
@ -8,7 +8,17 @@
|
||||||
# and should not be used as examples of how to write Ansible roles #
|
# and should not be used as examples of how to write Ansible roles #
|
||||||
####################################################################
|
####################################################################
|
||||||
|
|
||||||
- block:
|
- vars:
|
||||||
|
# ARI and profiles have been added in https://github.com/ansible/ansible/pull/TODO
|
||||||
|
# See also https://github.com/ansible/acme-test-container/pull/25
|
||||||
|
supports_ari: "{{ ansible_version.full is version('2.19', '>=') }}"
|
||||||
|
supports_profile: "{{ ansible_version.full is version('2.19', '>=') }}"
|
||||||
|
|
||||||
|
acme_certificate_profile: "{{ 'default' if supports_profile else omit }}"
|
||||||
|
|
||||||
|
block:
|
||||||
|
|
||||||
|
- block:
|
||||||
- name: Running tests with OpenSSL backend
|
- name: Running tests with OpenSSL backend
|
||||||
include_tasks: impl.yml
|
include_tasks: impl.yml
|
||||||
vars:
|
vars:
|
||||||
|
@ -19,17 +29,17 @@
|
||||||
# Old 0.9.8 versions have insufficient CLI support for signing with EC keys
|
# Old 0.9.8 versions have insufficient CLI support for signing with EC keys
|
||||||
when: openssl_version.stdout is version('1.0.0', '>=')
|
when: openssl_version.stdout is version('1.0.0', '>=')
|
||||||
|
|
||||||
- name: Remove output directory
|
- name: Remove output directory
|
||||||
file:
|
file:
|
||||||
path: "{{ remote_tmp_dir }}"
|
path: "{{ remote_tmp_dir }}"
|
||||||
state: absent
|
state: absent
|
||||||
|
|
||||||
- name: Re-create output directory
|
- name: Re-create output directory
|
||||||
file:
|
file:
|
||||||
path: "{{ remote_tmp_dir }}"
|
path: "{{ remote_tmp_dir }}"
|
||||||
state: directory
|
state: directory
|
||||||
|
|
||||||
- block:
|
- block:
|
||||||
- name: Running tests with cryptography backend
|
- name: Running tests with cryptography backend
|
||||||
include_tasks: impl.yml
|
include_tasks: impl.yml
|
||||||
vars:
|
vars:
|
||||||
|
|
|
@ -3,48 +3,38 @@
|
||||||
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
|
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
- name: Validate results
|
- vars:
|
||||||
|
can_have_cert_id: cert_1_info.authority_key_identifier is string
|
||||||
|
|
||||||
|
block:
|
||||||
|
|
||||||
|
- name: Validate results (generic)
|
||||||
assert:
|
assert:
|
||||||
that:
|
that:
|
||||||
- cert_1_renewal_1.should_renew == false
|
- cert_1_renewal_1.should_renew == false
|
||||||
- cert_1_renewal_1.msg == 'The certificate is still valid and no condition was reached'
|
- cert_1_renewal_1.msg == 'The certificate is still valid and no condition was reached'
|
||||||
- cert_1_renewal_1.supports_ari == supports_ari
|
|
||||||
- cert_1_renewal_1.cert_id is string or not can_have_cert_id
|
- cert_1_renewal_1.cert_id is string or not can_have_cert_id
|
||||||
- cert_1_renewal_1.exists == true
|
- cert_1_renewal_1.exists == true
|
||||||
- cert_1_renewal_1.parsable == true
|
- cert_1_renewal_1.parsable == true
|
||||||
- cert_1_renewal_2.should_renew == false
|
- cert_1_renewal_2.should_renew == false
|
||||||
- cert_1_renewal_2.msg == 'The certificate is still valid and no condition was reached'
|
- cert_1_renewal_2.msg == 'The certificate is still valid and no condition was reached'
|
||||||
- cert_1_renewal_2.supports_ari == supports_ari
|
|
||||||
- cert_1_renewal_2.cert_id is string or not can_have_cert_id
|
- cert_1_renewal_2.cert_id is string or not can_have_cert_id
|
||||||
- cert_1_renewal_2.exists == true
|
- cert_1_renewal_2.exists == true
|
||||||
- cert_1_renewal_2.parsable == true
|
- cert_1_renewal_2.parsable == true
|
||||||
- cert_1_renewal_3.should_renew == false
|
|
||||||
- cert_1_renewal_3.msg == 'The certificate is still valid and no condition was reached'
|
|
||||||
- cert_1_renewal_3.supports_ari == supports_ari
|
|
||||||
- cert_1_renewal_3.cert_id is string or not can_have_cert_id
|
- cert_1_renewal_3.cert_id is string or not can_have_cert_id
|
||||||
- cert_1_renewal_3.exists == true
|
- cert_1_renewal_3.exists == true
|
||||||
- cert_1_renewal_3.parsable == true
|
- cert_1_renewal_3.parsable == true
|
||||||
- cert_1_renewal_4.should_renew == true
|
|
||||||
- cert_1_renewal_4.msg == 'The certificate expires in 25 days'
|
|
||||||
- cert_1_renewal_4.supports_ari == supports_ari
|
|
||||||
- cert_1_renewal_4.cert_id is string or not can_have_cert_id
|
- cert_1_renewal_4.cert_id is string or not can_have_cert_id
|
||||||
- cert_1_renewal_4.exists == true
|
- cert_1_renewal_4.exists == true
|
||||||
- cert_1_renewal_4.parsable == true
|
- cert_1_renewal_4.parsable == true
|
||||||
- cert_1_renewal_5.should_renew == true
|
|
||||||
- cert_1_renewal_5.msg == 'The certificate expires in 25 days'
|
|
||||||
- cert_1_renewal_5.supports_ari == supports_ari
|
|
||||||
- cert_1_renewal_5.cert_id is string or not can_have_cert_id
|
- cert_1_renewal_5.cert_id is string or not can_have_cert_id
|
||||||
- cert_1_renewal_5.exists == true
|
- cert_1_renewal_5.exists == true
|
||||||
- cert_1_renewal_5.parsable == true
|
- cert_1_renewal_5.parsable == true
|
||||||
- cert_1_renewal_6.should_renew == true
|
|
||||||
- cert_1_renewal_6.msg.startswith("The remaining percentage 3.0% of the certificate's lifespan was reached on ")
|
|
||||||
- cert_1_renewal_6.supports_ari == supports_ari
|
|
||||||
- cert_1_renewal_6.cert_id is string or not can_have_cert_id
|
- cert_1_renewal_6.cert_id is string or not can_have_cert_id
|
||||||
- cert_1_renewal_6.exists == true
|
- cert_1_renewal_6.exists == true
|
||||||
- cert_1_renewal_6.parsable == true
|
- cert_1_renewal_6.parsable == true
|
||||||
- cert_1_renewal_7.should_renew == true
|
- cert_1_renewal_7.should_renew == true
|
||||||
- cert_1_renewal_7.msg == 'The certificate has already expired'
|
- cert_1_renewal_7.msg == 'The certificate has already expired'
|
||||||
- cert_1_renewal_7.supports_ari == false
|
|
||||||
- cert_1_renewal_7.cert_id is string or not can_have_cert_id
|
- cert_1_renewal_7.cert_id is string or not can_have_cert_id
|
||||||
- cert_1_renewal_7.exists == true
|
- cert_1_renewal_7.exists == true
|
||||||
- cert_1_renewal_7.parsable == true
|
- cert_1_renewal_7.parsable == true
|
||||||
|
@ -71,6 +61,44 @@
|
||||||
- cert_1_renewal_11.cert_id is not defined
|
- cert_1_renewal_11.cert_id is not defined
|
||||||
- cert_1_renewal_11.exists == true
|
- cert_1_renewal_11.exists == true
|
||||||
- cert_1_renewal_11.parsable == false
|
- cert_1_renewal_11.parsable == false
|
||||||
vars:
|
when: not supports_ari
|
||||||
can_have_cert_id: cert_1_info.authority_key_identifier is string
|
|
||||||
supports_ari: false
|
- name: Validate results without ARI
|
||||||
|
assert:
|
||||||
|
that:
|
||||||
|
- cert_1_renewal_1.supports_ari == false
|
||||||
|
- cert_1_renewal_2.supports_ari == false
|
||||||
|
- cert_1_renewal_3.should_renew == false
|
||||||
|
- cert_1_renewal_3.msg == 'The certificate is still valid and no condition was reached'
|
||||||
|
- cert_1_renewal_3.supports_ari == false
|
||||||
|
- cert_1_renewal_4.should_renew == true
|
||||||
|
- cert_1_renewal_4.msg == 'The certificate expires in 25 days'
|
||||||
|
- cert_1_renewal_4.supports_ari == false
|
||||||
|
- cert_1_renewal_5.should_renew == true
|
||||||
|
- cert_1_renewal_5.msg == 'The certificate expires in 25 days'
|
||||||
|
- cert_1_renewal_5.supports_ari == false
|
||||||
|
- cert_1_renewal_6.should_renew == true
|
||||||
|
- cert_1_renewal_6.msg.startswith("The remaining percentage 3.0% of the certificate's lifespan was reached on ")
|
||||||
|
- cert_1_renewal_6.supports_ari == false
|
||||||
|
- cert_1_renewal_7.supports_ari == false
|
||||||
|
when: not supports_ari
|
||||||
|
|
||||||
|
- name: Validate results with ARI
|
||||||
|
assert:
|
||||||
|
that:
|
||||||
|
- cert_1_renewal_1.supports_ari == supports_ari
|
||||||
|
- cert_1_renewal_2.supports_ari == supports_ari
|
||||||
|
- cert_1_renewal_3.should_renew == true
|
||||||
|
- cert_1_renewal_3.msg == 'The suggested renewal interval provided by ARI is in the past'
|
||||||
|
- cert_1_renewal_3.supports_ari == supports_ari
|
||||||
|
- cert_1_renewal_4.should_renew == true
|
||||||
|
- cert_1_renewal_4.msg == 'The suggested renewal interval provided by ARI is in the past'
|
||||||
|
- cert_1_renewal_4.supports_ari == supports_ari
|
||||||
|
- cert_1_renewal_5.should_renew == true
|
||||||
|
- cert_1_renewal_5.msg == 'The suggested renewal interval provided by ARI is in the past'
|
||||||
|
- cert_1_renewal_5.supports_ari == supports_ari
|
||||||
|
- cert_1_renewal_6.should_renew == true
|
||||||
|
- cert_1_renewal_6.msg == 'The suggested renewal interval provided by ARI is in the past'
|
||||||
|
- cert_1_renewal_6.supports_ari == supports_ari
|
||||||
|
- cert_1_renewal_7.supports_ari == false
|
||||||
|
when: supports_ari
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
certgen_title: Certificate 1
|
certgen_title: Certificate 1
|
||||||
certificate_name: cert-1
|
certificate_name: cert-1
|
||||||
key_type: rsa
|
key_type: rsa
|
||||||
rsa_bits: "{{ default_rsa_key_size }}"
|
rsa_bits: "{{ default_rsa_key_size_certificates }}"
|
||||||
subject_alt_name: "DNS:example.com"
|
subject_alt_name: "DNS:example.com"
|
||||||
subject_alt_name_critical: false
|
subject_alt_name_critical: false
|
||||||
account_key: account-ec256
|
account_key: account-ec256
|
||||||
|
|
|
@ -49,6 +49,7 @@
|
||||||
remaining_days: "{{ remaining_days }}"
|
remaining_days: "{{ remaining_days }}"
|
||||||
terms_agreed: "{{ terms_agreed }}"
|
terms_agreed: "{{ terms_agreed }}"
|
||||||
account_email: "{{ account_email }}"
|
account_email: "{{ account_email }}"
|
||||||
|
profile: "{{ acme_certificate_profile | default(omit) }}"
|
||||||
register: challenge_data
|
register: challenge_data
|
||||||
- name: ({{ certgen_title }}) Print challenge data
|
- name: ({{ certgen_title }}) Print challenge data
|
||||||
debug:
|
debug:
|
||||||
|
|
|
@ -4,10 +4,4 @@
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
default_rsa_key_size: 1024
|
default_rsa_key_size: 1024
|
||||||
default_rsa_key_size_certificates: >-
|
default_rsa_key_size_certificates: 2048
|
||||||
{{
|
|
||||||
2048 if
|
|
||||||
(ansible_os_family == "RedHat" and ansible_facts.distribution_major_version | int >= 8) or
|
|
||||||
(ansible_distribution == "Ubuntu" and ansible_facts.distribution_major_version | int >= 20)
|
|
||||||
else 1024
|
|
||||||
}}
|
|
||||||
|
|
Loading…
Reference in New Issue