|
|
|
---
|
|
|
|
- debug:
|
|
|
|
msg: "Executing tests with backend {{ select_crypto_backend }}"
|
|
|
|
|
|
|
|
- name: ({{select_crypto_backend}}) Get certificate info
|
|
|
|
openssl_certificate_info:
|
|
|
|
path: '{{ output_dir }}/cert_1.pem'
|
|
|
|
select_crypto_backend: '{{ select_crypto_backend }}'
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Check whether issuer and subject behave as expected
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- result.issuer.organizationalUnitName == 'ACME Department'
|
|
|
|
- "['organizationalUnitName', 'Crypto Department'] in result.issuer_ordered"
|
|
|
|
- "['organizationalUnitName', 'ACME Department'] in result.issuer_ordered"
|
|
|
|
- result.subject.organizationalUnitName == 'ACME Department'
|
|
|
|
- "['organizationalUnitName', 'Crypto Department'] in result.subject_ordered"
|
|
|
|
- "['organizationalUnitName', 'ACME Department'] in result.subject_ordered"
|
|
|
|
|
|
|
|
- name: Check SubjectKeyIdentifier and AuthorityKeyIdentifier
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- result.subject_key_identifier == "00:11:22:33"
|
|
|
|
- result.authority_key_identifier == "44:55:66:77"
|
|
|
|
- result.authority_cert_issuer == expected_authority_cert_issuer
|
|
|
|
- result.authority_cert_serial_number == 12345
|
|
|
|
vars:
|
|
|
|
expected_authority_cert_issuer:
|
|
|
|
- "DNS:ca.example.org"
|
|
|
|
- "IP:1.2.3.4"
|
|
|
|
when: select_crypto_backend != 'pyopenssl' and cryptography_version.stdout is version('1.3', '>=')
|
|
|
|
|
|
|
|
- name: Update result list
|
|
|
|
set_fact:
|
|
|
|
info_results: "{{ info_results + [result] }}"
|
|
|
|
|
|
|
|
- name: ({{select_crypto_backend}}) Get certificate info
|
|
|
|
openssl_certificate_info:
|
|
|
|
path: '{{ output_dir }}/cert_2.pem'
|
|
|
|
select_crypto_backend: '{{ select_crypto_backend }}'
|
|
|
|
valid_at:
|
|
|
|
today: "+0d"
|
|
|
|
past: "20190101235901Z"
|
|
|
|
twentydays: "+20d"
|
|
|
|
register: result
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- result.valid_at.today
|
|
|
|
- not result.valid_at.past
|
|
|
|
- not result.valid_at.twentydays
|
|
|
|
|
|
|
|
- name: Update result list
|
|
|
|
set_fact:
|
|
|
|
info_results: "{{ info_results + [result] }}"
|
|
|
|
|
|
|
|
- name: ({{select_crypto_backend}}) Get certificate info
|
|
|
|
openssl_certificate_info:
|
|
|
|
path: '{{ output_dir }}/cert_3.pem'
|
|
|
|
select_crypto_backend: '{{ select_crypto_backend }}'
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Check AuthorityKeyIdentifier
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- result.authority_key_identifier is none
|
|
|
|
- result.authority_cert_issuer == expected_authority_cert_issuer
|
|
|
|
- result.authority_cert_serial_number == 12345
|
|
|
|
vars:
|
|
|
|
expected_authority_cert_issuer:
|
|
|
|
- "DNS:ca.example.org"
|
|
|
|
- "IP:1.2.3.4"
|
|
|
|
when: select_crypto_backend != 'pyopenssl' and cryptography_version.stdout is version('1.3', '>=')
|
|
|
|
|
|
|
|
- name: Update result list
|
|
|
|
set_fact:
|
|
|
|
info_results: "{{ info_results + [result] }}"
|
|
|
|
|
|
|
|
- name: ({{select_crypto_backend}}) Get certificate info
|
|
|
|
openssl_certificate_info:
|
|
|
|
path: '{{ output_dir }}/cert_4.pem'
|
|
|
|
select_crypto_backend: '{{ select_crypto_backend }}'
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Check AuthorityKeyIdentifier
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- result.authority_key_identifier == "44:55:66:77"
|
|
|
|
- result.authority_cert_issuer is none
|
|
|
|
- result.authority_cert_serial_number is none
|
|
|
|
when: select_crypto_backend != 'pyopenssl' and cryptography_version.stdout is version('1.3', '>=')
|
|
|
|
|
|
|
|
- name: Update result list
|
|
|
|
set_fact:
|
|
|
|
info_results: "{{ info_results + [result] }}"
|
|
|
|
|
|
|
|
- name: ({{select_crypto_backend}}) Get certificate info for packaged cert 1
|
|
|
|
openssl_certificate_info:
|
|
|
|
path: '{{ role_path }}/files/cert1.pem'
|
|
|
|
select_crypto_backend: '{{ select_crypto_backend }}'
|
|
|
|
register: result
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "'ocsp_uri' in result"
|
|
|
|
- "result.ocsp_uri == 'http://ocsp.int-x3.letsencrypt.org'"
|
|
|
|
|
|
|
|
- name: Update result list
|
|
|
|
set_fact:
|
|
|
|
info_results: "{{ info_results + [result] }}"
|