# STDOUT: ---v---v---v---v---v--- Using /etc/ansible/ansible.cfg as config file PLAY [Issue many self-signed certificates] ************************************* TASK [Gathering Facts] ********************************************************* Thursday 18 August 2022 22:18:35 +0000 (0:00:00.020) 0:00:00.021 ******* ok: [sut] TASK [linux-system-roles.certificate : Set version specific variables] ********* Thursday 18 August 2022 22:18:37 +0000 (0:00:01.097) 0:00:01.118 ******* included: /WORKDIR/dist-git-certificate-use_distro_python_cryptography-ir2vbc/tests/roles/linux-system-roles.certificate/tasks/set_vars.yml for sut TASK [linux-system-roles.certificate : Ensure ansible_facts used by role] ****** Thursday 18 August 2022 22:18:37 +0000 (0:00:00.040) 0:00:01.159 ******* ok: [sut] TASK [linux-system-roles.certificate : Set platform/version specific variables] *** Thursday 18 August 2022 22:18:37 +0000 (0:00:00.461) 0:00:01.620 ******* skipping: [sut] => (item=RedHat.yml) => { "ansible_loop_var": "item", "changed": false, "item": "RedHat.yml", "skip_reason": "Conditional result was False" } skipping: [sut] => (item=RedHat.yml) => { "ansible_loop_var": "item", "changed": false, "item": "RedHat.yml", "skip_reason": "Conditional result was False" } skipping: [sut] => (item=RedHat_8.yml) => { "ansible_loop_var": "item", "changed": false, "item": "RedHat_8.yml", "skip_reason": "Conditional result was False" } skipping: [sut] => (item=RedHat_8.7.yml) => { "ansible_loop_var": "item", "changed": false, "item": "RedHat_8.7.yml", "skip_reason": "Conditional result was False" } TASK [linux-system-roles.certificate : Ensure certificate role dependencies are installed] *** Thursday 18 August 2022 22:18:37 +0000 (0:00:00.062) 0:00:01.682 ******* changed: [sut] => { "changed": true, "rc": 0, "results": [ "Installed: python3-pyasn1-0.3.7-6.el8.noarch" ] } TASK [linux-system-roles.certificate : Ensure provider packages are installed] *** Thursday 18 August 2022 22:18:41 +0000 (0:00:03.577) 0:00:05.260 ******* changed: [sut] => (item=certmonger) => { "__certificate_provider": "certmonger", "ansible_loop_var": "__certificate_provider", "changed": true, "rc": 0, "results": [ "Installed: xmlrpc-c-1.51.0-8.el8.x86_64", "Installed: xmlrpc-c-client-1.51.0-8.el8.x86_64", "Installed: certmonger-0.79.13-5.el8.x86_64" ] } TASK [linux-system-roles.certificate : Ensure pre-scripts hooks directory exists] *** Thursday 18 August 2022 22:18:45 +0000 (0:00:04.038) 0:00:09.298 ******* changed: [sut] => (item=certmonger) => { "__certificate_provider": "certmonger", "ansible_loop_var": "__certificate_provider", "changed": true, "gid": 0, "group": "root", "mode": "0700", "owner": "root", "path": "/etc/certmonger//pre-scripts", "secontext": "unconfined_u:object_r:etc_t:s0", "size": 6, "state": "directory", "uid": 0 } TASK [linux-system-roles.certificate : Ensure post-scripts hooks directory exists] *** Thursday 18 August 2022 22:18:45 +0000 (0:00:00.459) 0:00:09.758 ******* changed: [sut] => (item=certmonger) => { "__certificate_provider": "certmonger", "ansible_loop_var": "__certificate_provider", "changed": true, "gid": 0, "group": "root", "mode": "0700", "owner": "root", "path": "/etc/certmonger//post-scripts", "secontext": "unconfined_u:object_r:etc_t:s0", "size": 6, "state": "directory", "uid": 0 } TASK [linux-system-roles.certificate : Ensure provider service is running] ***** Thursday 18 August 2022 22:18:46 +0000 (0:00:00.296) 0:00:10.054 ******* changed: [sut] => (item=certmonger) => { "__certificate_provider": "certmonger", "ansible_loop_var": "__certificate_provider", "changed": true, "enabled": true, "name": "certmonger", "state": "started", "status": { "ActiveEnterTimestampMonotonic": "0", "ActiveExitTimestampMonotonic": "0", "ActiveState": "inactive", "After": "systemd-journald.socket dbus.socket basic.target sysinit.target dbus.service network.target syslog.target system.slice", "AllowIsolate": "no", "AllowedCPUs": "", "AllowedMemoryNodes": "", "AmbientCapabilities": "", "AssertResult": "no", "AssertTimestampMonotonic": "0", "Before": "shutdown.target", "BlockIOAccounting": "no", "BlockIOWeight": "[not set]", "BusName": "org.fedorahosted.certmonger", "CPUAccounting": "no", "CPUAffinity": "", "CPUAffinityFromNUMA": "no", "CPUQuotaPerSecUSec": "infinity", "CPUQuotaPeriodUSec": "infinity", "CPUSchedulingPolicy": "0", "CPUSchedulingPriority": "0", "CPUSchedulingResetOnFork": "no", "CPUShares": "[not set]", "CPUUsageNSec": "[not set]", "CPUWeight": "[not set]", "CacheDirectoryMode": "0755", "CanFreeze": "yes", "CanIsolate": "no", "CanReload": "no", "CanStart": "yes", "CanStop": "yes", "CapabilityBoundingSet": "cap_chown cap_dac_override cap_dac_read_search cap_fowner cap_fsetid cap_kill cap_setgid cap_setuid cap_setpcap cap_linux_immutable cap_net_bind_service cap_net_broadcast cap_net_admin cap_net_raw cap_ipc_lock cap_ipc_owner cap_sys_module cap_sys_rawio cap_sys_chroot cap_sys_ptrace cap_sys_pacct cap_sys_admin cap_sys_boot cap_sys_nice cap_sys_resource cap_sys_time cap_sys_tty_config cap_mknod cap_lease cap_audit_write cap_audit_control cap_setfcap cap_mac_override cap_mac_admin cap_syslog cap_wake_alarm cap_block_suspend cap_audit_read cap_perfmon cap_bpf", "CollectMode": "inactive", "ConditionResult": "no", "ConditionTimestampMonotonic": "0", "ConfigurationDirectoryMode": "0755", "Conflicts": "shutdown.target", "ControlPID": "0", "DefaultDependencies": "yes", "DefaultMemoryLow": "0", "DefaultMemoryMin": "0", "Delegate": "no", "Description": "Certificate monitoring and PKI enrollment", "DevicePolicy": "auto", "DynamicUser": "no", "EffectiveCPUs": "", "EffectiveMemoryNodes": "", "EnvironmentFiles": "/etc/sysconfig/certmonger (ignore_errors=yes)", "ExecMainCode": "0", "ExecMainExitTimestampMonotonic": "0", "ExecMainPID": "0", "ExecMainStartTimestampMonotonic": "0", "ExecMainStatus": "0", "ExecStart": "{ path=/usr/sbin/certmonger ; argv[]=/usr/sbin/certmonger -S -p /run/certmonger.pid -n $OPTS ; ignore_errors=no ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }", "FailureAction": "none", "FileDescriptorStoreMax": "0", "FragmentPath": "/usr/lib/systemd/system/certmonger.service", "FreezerState": "running", "GID": "[not set]", "GuessMainPID": "yes", "IOAccounting": "no", "IOSchedulingClass": "0", "IOSchedulingPriority": "0", "IOWeight": "[not set]", "IPAccounting": "no", "IPEgressBytes": "18446744073709551615", "IPEgressPackets": "18446744073709551615", "IPIngressBytes": "18446744073709551615", "IPIngressPackets": "18446744073709551615", "Id": "certmonger.service", "IgnoreOnIsolate": "no", "IgnoreSIGPIPE": "yes", "InactiveEnterTimestampMonotonic": "0", "InactiveExitTimestampMonotonic": "0", "JobRunningTimeoutUSec": "infinity", "JobTimeoutAction": "none", "JobTimeoutUSec": "infinity", "KeyringMode": "private", "KillMode": "control-group", "KillSignal": "15", "LimitAS": "infinity", "LimitASSoft": "infinity", "LimitCORE": "infinity", "LimitCORESoft": "0", "LimitCPU": "infinity", "LimitCPUSoft": "infinity", "LimitDATA": "infinity", "LimitDATASoft": "infinity", "LimitFSIZE": "infinity", "LimitFSIZESoft": "infinity", "LimitLOCKS": "infinity", "LimitLOCKSSoft": "infinity", "LimitMEMLOCK": "65536", "LimitMEMLOCKSoft": "65536", "LimitMSGQUEUE": "819200", "LimitMSGQUEUESoft": "819200", "LimitNICE": "0", "LimitNICESoft": "0", "LimitNOFILE": "262144", "LimitNOFILESoft": "1024", "LimitNPROC": "14143", "LimitNPROCSoft": "14143", "LimitRSS": "infinity", "LimitRSSSoft": "infinity", "LimitRTPRIO": "0", "LimitRTPRIOSoft": "0", "LimitRTTIME": "infinity", "LimitRTTIMESoft": "infinity", "LimitSIGPENDING": "14143", "LimitSIGPENDINGSoft": "14143", "LimitSTACK": "infinity", "LimitSTACKSoft": "8388608", "LoadState": "loaded", "LockPersonality": "no", "LogLevelMax": "-1", "LogRateLimitBurst": "0", "LogRateLimitIntervalUSec": "0", "LogsDirectoryMode": "0755", "MainPID": "0", "MemoryAccounting": "yes", "MemoryCurrent": "[not set]", "MemoryDenyWriteExecute": "no", "MemoryHigh": "infinity", "MemoryLimit": "infinity", "MemoryLow": "0", "MemoryMax": "infinity", "MemoryMin": "0", "MemorySwapMax": "infinity", "MountAPIVFS": "no", "MountFlags": "", "NFileDescriptorStore": "0", "NRestarts": "0", "NUMAMask": "", "NUMAPolicy": "n/a", "Names": "certmonger.service", "NeedDaemonReload": "no", "Nice": "0", "NoNewPrivileges": "no", "NonBlocking": "no", "NotifyAccess": "none", "OOMScoreAdjust": "0", "OnFailureJobMode": "replace", "PIDFile": "/run/certmonger.pid", "PartOf": "dbus.service", "PermissionsStartOnly": "no", "Perpetual": "no", "PrivateDevices": "no", "PrivateMounts": "no", "PrivateNetwork": "no", "PrivateTmp": "no", "PrivateUsers": "no", "ProtectControlGroups": "no", "ProtectHome": "no", "ProtectKernelModules": "no", "ProtectKernelTunables": "no", "ProtectSystem": "no", "RefuseManualStart": "no", "RefuseManualStop": "no", "RemainAfterExit": "no", "RemoveIPC": "no", "Requires": "sysinit.target system.slice dbus.socket", "Restart": "no", "RestartUSec": "100ms", "RestrictNamespaces": "no", "RestrictRealtime": "no", "RestrictSUIDSGID": "no", "Result": "success", "RootDirectoryStartOnly": "no", "RuntimeDirectoryMode": "0755", "RuntimeDirectoryPreserve": "no", "RuntimeMaxUSec": "infinity", "SameProcessGroup": "no", "SecureBits": "0", "SendSIGHUP": "no", "SendSIGKILL": "yes", "Slice": "system.slice", "StandardError": "inherit", "StandardInput": "null", "StandardInputData": "", "StandardOutput": "journal", "StartLimitAction": "none", "StartLimitBurst": "5", "StartLimitIntervalUSec": "10s", "StartupBlockIOWeight": "[not set]", "StartupCPUShares": "[not set]", "StartupCPUWeight": "[not set]", "StartupIOWeight": "[not set]", "StateChangeTimestampMonotonic": "0", "StateDirectoryMode": "0755", "StatusErrno": "0", "StopWhenUnneeded": "no", "SubState": "dead", "SuccessAction": "none", "SyslogFacility": "3", "SyslogLevel": "6", "SyslogLevelPrefix": "yes", "SyslogPriority": "30", "SystemCallErrorNumber": "0", "TTYReset": "no", "TTYVHangup": "no", "TTYVTDisallocate": "no", "TasksAccounting": "yes", "TasksCurrent": "[not set]", "TasksMax": "22628", "TimeoutStartUSec": "1min 30s", "TimeoutStopUSec": "1min 30s", "TimerSlackNSec": "50000", "Transient": "no", "Type": "dbus", "UID": "[not set]", "UMask": "0022", "UnitFilePreset": "disabled", "UnitFileState": "disabled", "UtmpMode": "init", "WatchdogTimestampMonotonic": "0", "WatchdogUSec": "0" } } TASK [linux-system-roles.certificate : Ensure certificate requests] ************ Thursday 18 August 2022 22:18:47 +0000 (0:00:01.262) 0:00:11.317 ******* changed: [sut] => (item={'name': 'mycert_many_self_signed', 'dns': 'www.example.com', 'ca': 'self-sign'}) => { "ansible_loop_var": "item", "changed": true, "item": { "ca": "self-sign", "dns": "www.example.com", "name": "mycert_many_self_signed" } } MSG: Certificate requested (new). changed: [sut] => (item={'name': 'other-cert', 'dns': 'www.example.org', 'ca': 'self-sign'}) => { "ansible_loop_var": "item", "changed": true, "item": { "ca": "self-sign", "dns": "www.example.org", "name": "other-cert" } } MSG: Certificate requested (new). changed: [sut] => (item={'name': 'another-cert', 'dns': 'www.example.net', 'ca': 'self-sign'}) => { "ansible_loop_var": "item", "changed": true, "item": { "ca": "self-sign", "dns": "www.example.net", "name": "another-cert" } } MSG: Certificate requested (new). PLAY [Verify certificate] ****************************************************** TASK [Gathering Facts] ********************************************************* Thursday 18 August 2022 22:18:49 +0000 (0:00:02.241) 0:00:13.558 ******* ok: [sut] TASK [Verify each certificate] ************************************************* Thursday 18 August 2022 22:18:50 +0000 (0:00:00.743) 0:00:14.302 ******* included: /WORKDIR/dist-git-certificate-use_distro_python_cryptography-ir2vbc/tests/tasks/assert_certificate_parameters.yml for sut => (item={'path': '/etc/pki/tls/certs/mycert_many_self_signed.crt', 'key_path': '/etc/pki/tls/private/mycert_many_self_signed.key', 'subject': [{'name': 'commonName', 'oid': '2.5.4.3', 'value': 'www.example.com'}], 'subject_alt_name': [{'name': 'DNS', 'value': 'www.example.com'}]}) included: /WORKDIR/dist-git-certificate-use_distro_python_cryptography-ir2vbc/tests/tasks/assert_certificate_parameters.yml for sut => (item={'path': '/etc/pki/tls/certs/other-cert.crt', 'key_path': '/etc/pki/tls/private/other-cert.key', 'subject': [{'name': 'commonName', 'oid': '2.5.4.3', 'value': 'www.example.org'}], 'subject_alt_name': [{'name': 'DNS', 'value': 'www.example.org'}]}) included: /WORKDIR/dist-git-certificate-use_distro_python_cryptography-ir2vbc/tests/tasks/assert_certificate_parameters.yml for sut => (item={'path': '/etc/pki/tls/certs/another-cert.crt', 'key_path': '/etc/pki/tls/private/another-cert.key', 'subject': [{'name': 'commonName', 'oid': '2.5.4.3', 'value': 'www.example.net'}], 'subject_alt_name': [{'name': 'DNS', 'value': 'www.example.net'}]}) TASK [Set virtualenv_path] ***************************************************** Thursday 18 August 2022 22:18:50 +0000 (0:00:00.079) 0:00:14.382 ******* ok: [sut] => { "ansible_facts": { "__virtualenv_path": "/tmp/certificate-tests-venv" }, "changed": false } TASK [Ensure python3 is installed] ********************************************* Thursday 18 August 2022 22:18:50 +0000 (0:00:00.042) 0:00:14.424 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install the package, force upgrade] ************************************** Thursday 18 August 2022 22:18:52 +0000 (0:00:01.775) 0:00:16.199 ******* changed: [sut] => { "changed": true, "cmd": [ "/tmp/certificate-tests-venv/bin/pip3", "install", "-U", "pip" ], "name": [ "pip" ], "requirements": null, "state": "latest", "version": null, "virtualenv": "/tmp/certificate-tests-venv" } STDOUT: Collecting pip Downloading https://files.pythonhosted.org/packages/a4/6d/6463d49a933f547439d6b5b98b46af8742cc03ae83543e4d7688c2420f8b/pip-21.3.1-py3-none-any.whl (1.7MB) Installing collected packages: pip Found existing installation: pip 9.0.3 Uninstalling pip-9.0.3: Successfully uninstalled pip-9.0.3 Successfully installed pip-21.3.1 STDERR: You are using pip version 21.3.1, however version 22.2.2 is available. You should consider upgrading via the 'pip install --upgrade pip' command. TASK [Ensure Python's cryptography is installed] ******************************* Thursday 18 August 2022 22:18:57 +0000 (0:00:05.196) 0:00:21.396 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install certreader] ****************************************************** Thursday 18 August 2022 22:18:59 +0000 (0:00:01.767) 0:00:23.163 ******* changed: [sut] => { "changed": true, "cmd": [ "/tmp/certificate-tests-venv/bin/pip3", "install", "certreader>=0.1.1" ], "name": [ "certreader>=0.1.1" ], "requirements": null, "state": "present", "version": null, "virtualenv": "/tmp/certificate-tests-venv" } STDOUT: Collecting certreader>=0.1.1 Downloading certreader-0.1.1.tar.gz (4.4 kB) Preparing metadata (setup.py): started Preparing metadata (setup.py): finished with status 'done' Collecting cryptography Downloading cryptography-37.0.4-cp36-abi3-manylinux_2_24_x86_64.whl (4.1 MB) Collecting pyasn1 Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB) Collecting pyyaml Downloading PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (603 kB) Collecting cffi>=1.12 Downloading cffi-1.15.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (402 kB) Collecting pycparser Downloading pycparser-2.21-py2.py3-none-any.whl (118 kB) Using legacy 'setup.py install' for certreader, since package 'wheel' is not installed. Installing collected packages: pycparser, cffi, pyyaml, pyasn1, cryptography, certreader Running setup.py install for certreader: started Running setup.py install for certreader: finished with status 'done' Successfully installed certreader-0.1.1 cffi-1.15.1 cryptography-37.0.4 pyasn1-0.4.8 pycparser-2.21 pyyaml-6.0 TASK [Retrieve certificate file stats] ***************************************** Thursday 18 August 2022 22:19:03 +0000 (0:00:04.383) 0:00:27.547 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660861127.9458368, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "35c282b6035dc66d1b7ee1558611724dd34f6bcd", "ctime": 1660861127.941837, "dev": 51715, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 8389975, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660861127.941837, "nlink": 1, "path": "/etc/pki/tls/certs/mycert_many_self_signed.crt", "pw_name": "root", "readable": true, "rgrp": false, "roth": false, "rusr": true, "size": 1294, "uid": 0, "version": "1375838829", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if certificate file exists] *************************************** Thursday 18 August 2022 22:19:03 +0000 (0:00:00.429) 0:00:27.976 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate file owner and group] ********************************* Thursday 18 August 2022 22:19:03 +0000 (0:00:00.048) 0:00:28.025 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate permissions] ****************************************** Thursday 18 August 2022 22:19:04 +0000 (0:00:00.098) 0:00:28.123 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve key file stats] ************************************************* Thursday 18 August 2022 22:19:04 +0000 (0:00:00.105) 0:00:28.229 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660861127.8818386, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "9121a643d56ac5c64b6c666f780b9e6141d46656", "ctime": 1660861127.941837, "dev": 51715, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 16799760, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660861127.941837, "nlink": 1, "path": "/etc/pki/tls/private/mycert_many_self_signed.key", "pw_name": "root", "readable": true, "rgrp": false, "roth": false, "rusr": true, "size": 1704, "uid": 0, "version": "3164852366", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if key file exists] *********************************************** Thursday 18 August 2022 22:19:04 +0000 (0:00:00.303) 0:00:28.532 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key file owner and group] ***************************************** Thursday 18 August 2022 22:19:04 +0000 (0:00:00.078) 0:00:28.611 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Parse certificate] ******************************************************* Thursday 18 August 2022 22:19:04 +0000 (0:00:00.101) 0:00:28.712 ******* ok: [sut] => { "changed": false, "cmd": [ "/tmp/certificate-tests-venv/bin/certreader2json", "/etc/pki/tls/certs/mycert_many_self_signed.crt" ], "delta": "0:00:00.341304", "end": "2022-08-18 22:19:05.389671", "rc": 0, "start": "2022-08-18 22:19:05.048367" } STDOUT: { "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.com" } ], "extensions": { "keyUsage": { "value": [ "digital_signature", "key_encipherment" ], "critical": false }, "subjectAltName": { "value": [ { "name": "DNS", "value": "www.example.com" } ], "critical": false }, "extendedKeyUsage": { "value": [ { "name": "id-kp-serverAuth", "oid": "1.3.6.1.5.5.7.3.1" }, { "name": "id-kp-clientAuth", "oid": "1.3.6.1.5.5.7.3.2" } ], "critical": false }, "basicConstraints": { "value": { "ca": false }, "critical": true }, "subjectKeyIdentifier": { "value": "D2:2F:01:40:56:52:16:2A:68:A1:2B:6F:ED:39:F4:12:1E:57:91:EF", "critical": false }, "authorityKeyIdentifier": { "value": "4B:04:C0:A9:F8:B4:1D:9D:44:6B:E5:44:DA:2D:DA:4B:74:5F:63:B4", "critical": false } }, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "76:19:EB:19:6B:46:E3:44:2A:63:8E:83:7A:74:5E:87:3B:A8:53:5D:54:5B:20:25:19:67:D2:00:41:E4:F1:39:0B:4A:17:FD:12:88:B7:FC:86:39:93:6E:9E:E0:39:04:A8:9C:D2:32:AA:21:0E:A7:24:CB:50:A5:03:35:55:53:BE:90:C3:F1:9F:9F:B8:01:55:25:0A:EB:04:17:D8:0E:8D:8E:0E:46:C3:F8:9A:F1:ED:B9:E8:69:7B:19:F1:98:01:EF:6D:CB:7F:45:F4:47:C5:AF:C9:93:52:16:B7:20:E2:26:17:72:CF:4F:85:A2:BB:F7:A7:9D:B6:EF:E1:01:C0:D5:44:CB:3A:AE:8E:36:CA:92:98:E1:1D:14:C9:2A:6D:B1:F6:12:83:E2:E0:8C:AF:1B:E4:24:4F:D2:09:4F:9D:C8:F7:BA:D5:1C:25:F5:60:92:87:2A:0C:E6:86:41:17:8C:F1:F1:29:59:7A:80:E8:48:91:00:1D:82:2A:E6:A4:FF:C7:16:09:D3:36:DF:BB:71:93:4B:35:A9:3B:C6:C7:66:AC:0E:78:F8:5B:6F:C9:65:5A:6B:36:8F:B9:40:6F:DC:68:C0:C8:3A:3B:C1:80:34:8C:E3:8B:C1:0F:80:15:9C:94:64:2C:53:8F:31:F4:58:64:A8:2B:31:7E:08" }, "key_size": 2048, "validity": { "not_valid_after": "2023-08-18 22:18:47", "not_valid_before": "2022-08-18 22:18:47" } } STDERR: /tmp/certificate-tests-venv/lib64/python3.6/site-packages/certreader/parse.py:1: CryptographyDeprecationWarning: Python 3.6 is no longer supported by the Python core team. Therefore, support for it is deprecated in cryptography and will be removed in a future release. from cryptography import x509 TASK [Load certificate YAML to cert_issued variable] *************************** Thursday 18 August 2022 22:19:05 +0000 (0:00:00.749) 0:00:29.461 ******* ok: [sut] => { "ansible_facts": { "cert_issued": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "4B:04:C0:A9:F8:B4:1D:9D:44:6B:E5:44:DA:2D:DA:4B:74:5F:63:B4" }, "basicConstraints": { "critical": true, "value": { "ca": false } }, "extendedKeyUsage": { "critical": false, "value": [ { "name": "id-kp-serverAuth", "oid": "1.3.6.1.5.5.7.3.1" }, { "name": "id-kp-clientAuth", "oid": "1.3.6.1.5.5.7.3.2" } ] }, "keyUsage": { "critical": false, "value": [ "digital_signature", "key_encipherment" ] }, "subjectAltName": { "critical": false, "value": [ { "name": "DNS", "value": "www.example.com" } ] }, "subjectKeyIdentifier": { "critical": false, "value": "D2:2F:01:40:56:52:16:2A:68:A1:2B:6F:ED:39:F4:12:1E:57:91:EF" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "76:19:EB:19:6B:46:E3:44:2A:63:8E:83:7A:74:5E:87:3B:A8:53:5D:54:5B:20:25:19:67:D2:00:41:E4:F1:39:0B:4A:17:FD:12:88:B7:FC:86:39:93:6E:9E:E0:39:04:A8:9C:D2:32:AA:21:0E:A7:24:CB:50:A5:03:35:55:53:BE:90:C3:F1:9F:9F:B8:01:55:25:0A:EB:04:17:D8:0E:8D:8E:0E:46:C3:F8:9A:F1:ED:B9:E8:69:7B:19:F1:98:01:EF:6D:CB:7F:45:F4:47:C5:AF:C9:93:52:16:B7:20:E2:26:17:72:CF:4F:85:A2:BB:F7:A7:9D:B6:EF:E1:01:C0:D5:44:CB:3A:AE:8E:36:CA:92:98:E1:1D:14:C9:2A:6D:B1:F6:12:83:E2:E0:8C:AF:1B:E4:24:4F:D2:09:4F:9D:C8:F7:BA:D5:1C:25:F5:60:92:87:2A:0C:E6:86:41:17:8C:F1:F1:29:59:7A:80:E8:48:91:00:1D:82:2A:E6:A4:FF:C7:16:09:D3:36:DF:BB:71:93:4B:35:A9:3B:C6:C7:66:AC:0E:78:F8:5B:6F:C9:65:5A:6B:36:8F:B9:40:6F:DC:68:C0:C8:3A:3B:C1:80:34:8C:E3:8B:C1:0F:80:15:9C:94:64:2C:53:8F:31:F4:58:64:A8:2B:31:7E:08" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.com" } ], "validity": { "not_valid_after": "2023-08-18 22:18:47", "not_valid_before": "2022-08-18 22:18:47" } } }, "changed": false } TASK [Verify certificate subject] ********************************************** Thursday 18 August 2022 22:19:05 +0000 (0:00:00.097) 0:00:29.559 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate SAN] ************************************************** Thursday 18 August 2022 22:19:05 +0000 (0:00:00.097) 0:00:29.657 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key size] ********************************************************* Thursday 18 August 2022 22:19:05 +0000 (0:00:00.080) 0:00:29.737 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Key Usage] ******************************************** Thursday 18 August 2022 22:19:05 +0000 (0:00:00.100) 0:00:29.838 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Extended Key Usage] *********************************** Thursday 18 August 2022 22:19:05 +0000 (0:00:00.099) 0:00:29.938 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve auto-renew flag] ************************************************ Thursday 18 August 2022 22:19:05 +0000 (0:00:00.067) 0:00:30.005 ******* ok: [sut] => { "changed": false, "cmd": "set -euo pipefail; getcert list -f /etc/pki/tls/certs/mycert_many_self_signed.crt | grep 'auto-renew' | sed 's/^\\s\\+auto-renew: //g'", "delta": "0:00:00.073786", "end": "2022-08-18 22:19:06.259287", "rc": 0, "start": "2022-08-18 22:19:06.185501" } STDOUT: yes TASK [Verify certificate auto-renew flag] ************************************** Thursday 18 August 2022 22:19:06 +0000 (0:00:00.325) 0:00:30.331 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Set virtualenv_path] ***************************************************** Thursday 18 August 2022 22:19:06 +0000 (0:00:00.071) 0:00:30.402 ******* ok: [sut] => { "ansible_facts": { "__virtualenv_path": "/tmp/certificate-tests-venv" }, "changed": false } TASK [Ensure python3 is installed] ********************************************* Thursday 18 August 2022 22:19:06 +0000 (0:00:00.042) 0:00:30.445 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install the package, force upgrade] ************************************** Thursday 18 August 2022 22:19:08 +0000 (0:00:01.783) 0:00:32.228 ******* ok: [sut] => { "changed": false, "cmd": [ "/tmp/certificate-tests-venv/bin/pip3", "install", "-U", "pip" ], "name": [ "pip" ], "requirements": null, "state": "latest", "version": null, "virtualenv": "/tmp/certificate-tests-venv" } STDOUT: Requirement already satisfied: pip in ./certificate-tests-venv/lib/python3.6/site-packages (21.3.1) TASK [Ensure Python's cryptography is installed] ******************************* Thursday 18 August 2022 22:19:09 +0000 (0:00:01.131) 0:00:33.360 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install certreader] ****************************************************** Thursday 18 August 2022 22:19:11 +0000 (0:00:01.737) 0:00:35.098 ******* ok: [sut] => { "changed": false, "cmd": [ "/tmp/certificate-tests-venv/bin/pip3", "install", "certreader>=0.1.1" ], "name": [ "certreader>=0.1.1" ], "requirements": null, "state": "present", "version": null, "virtualenv": "/tmp/certificate-tests-venv" } STDOUT: Requirement already satisfied: certreader>=0.1.1 in ./certificate-tests-venv/lib/python3.6/site-packages (0.1.1) Requirement already satisfied: cryptography in ./certificate-tests-venv/lib/python3.6/site-packages (from certreader>=0.1.1) (37.0.4) Requirement already satisfied: pyasn1 in ./certificate-tests-venv/lib/python3.6/site-packages (from certreader>=0.1.1) (0.4.8) Requirement already satisfied: pyyaml in ./certificate-tests-venv/lib/python3.6/site-packages (from certreader>=0.1.1) (6.0) Requirement already satisfied: cffi>=1.12 in ./certificate-tests-venv/lib/python3.6/site-packages (from cryptography->certreader>=0.1.1) (1.15.1) Requirement already satisfied: pycparser in ./certificate-tests-venv/lib/python3.6/site-packages (from cffi>=1.12->cryptography->certreader>=0.1.1) (2.21) TASK [Retrieve certificate file stats] ***************************************** Thursday 18 August 2022 22:19:12 +0000 (0:00:00.946) 0:00:36.045 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660861128.6798162, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "d3dff4dd8cf0b9274f30356101b9d2a7cb13468e", "ctime": 1660861128.6758163, "dev": 51715, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 8389976, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660861128.6758163, "nlink": 1, "path": "/etc/pki/tls/certs/other-cert.crt", "pw_name": "root", "readable": true, "rgrp": false, "roth": false, "rusr": true, "size": 1294, "uid": 0, "version": "1113307041", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if certificate file exists] *************************************** Thursday 18 August 2022 22:19:12 +0000 (0:00:00.264) 0:00:36.309 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate file owner and group] ********************************* Thursday 18 August 2022 22:19:12 +0000 (0:00:00.046) 0:00:36.356 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate permissions] ****************************************** Thursday 18 August 2022 22:19:12 +0000 (0:00:00.068) 0:00:36.424 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve key file stats] ************************************************* Thursday 18 August 2022 22:19:12 +0000 (0:00:00.064) 0:00:36.489 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660861128.619818, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "385b85c6aca7991f8e62203991ed29fa771651b6", "ctime": 1660861128.6758163, "dev": 51715, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 16799762, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660861128.6758163, "nlink": 1, "path": "/etc/pki/tls/private/other-cert.key", "pw_name": "root", "readable": true, "rgrp": false, "roth": false, "rusr": true, "size": 1704, "uid": 0, "version": "3711663960", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if key file exists] *********************************************** Thursday 18 August 2022 22:19:12 +0000 (0:00:00.265) 0:00:36.755 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key file owner and group] ***************************************** Thursday 18 August 2022 22:19:12 +0000 (0:00:00.047) 0:00:36.803 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Parse certificate] ******************************************************* Thursday 18 August 2022 22:19:12 +0000 (0:00:00.071) 0:00:36.874 ******* ok: [sut] => { "changed": false, "cmd": [ "/tmp/certificate-tests-venv/bin/certreader2json", "/etc/pki/tls/certs/other-cert.crt" ], "delta": "0:00:00.335819", "end": "2022-08-18 22:19:13.389298", "rc": 0, "start": "2022-08-18 22:19:13.053479" } STDOUT: { "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.org" } ], "extensions": { "keyUsage": { "value": [ "digital_signature", "key_encipherment" ], "critical": false }, "subjectAltName": { "value": [ { "name": "DNS", "value": "www.example.org" } ], "critical": false }, "extendedKeyUsage": { "value": [ { "name": "id-kp-serverAuth", "oid": "1.3.6.1.5.5.7.3.1" }, { "name": "id-kp-clientAuth", "oid": "1.3.6.1.5.5.7.3.2" } ], "critical": false }, "basicConstraints": { "value": { "ca": false }, "critical": true }, "subjectKeyIdentifier": { "value": "82:04:32:29:DB:D7:1D:1F:12:B7:BD:1C:E7:DA:21:BE:8A:18:95:06", "critical": false }, "authorityKeyIdentifier": { "value": "4B:04:C0:A9:F8:B4:1D:9D:44:6B:E5:44:DA:2D:DA:4B:74:5F:63:B4", "critical": false } }, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "07:B8:47:81:0D:19:57:8B:01:74:5A:AE:64:9B:BC:E0:E4:4F:A8:D7:58:F2:06:81:9F:6E:5C:F5:CD:E0:0D:AB:C4:D0:FD:89:45:D6:36:BB:1D:17:A3:2F:46:3B:0E:16:D3:82:49:48:F8:BD:BF:80:1C:85:83:8F:58:55:50:B9:E6:AB:70:FB:7A:E7:8B:F8:3D:A5:69:F2:86:6F:56:17:8E:01:22:64:89:0A:E6:14:15:39:90:AA:D7:D4:AD:A4:17:7E:0D:84:3C:B6:9A:F0:2E:EF:DE:19:5D:28:10:D8:31:4B:B6:B7:AB:E1:C5:7D:04:EF:DD:3A:CB:90:B5:3C:B3:A9:C5:48:22:66:45:2A:C8:63:A2:A3:52:57:9D:27:BD:9E:4C:25:C5:49:08:E1:43:6B:94:0F:FC:29:32:F4:F4:7A:F3:EE:65:6B:84:A8:CC:8D:DC:69:69:BB:9B:EA:4C:65:97:FA:61:D1:9B:34:A5:AE:13:21:32:18:65:56:16:1F:FF:E3:72:B2:EE:38:D5:3B:E3:3E:C2:2F:BF:39:B7:BC:D4:17:EB:73:73:C6:3D:59:45:7D:0C:3C:EE:5B:7C:DB:42:9B:14:37:99:29:1A:A6:3F:91:1B:02:D8:AC:AB:7C:29:D9:79:46:24:47:C8:06:1E:DD:96:2A:25:EB" }, "key_size": 2048, "validity": { "not_valid_after": "2023-08-18 22:18:47", "not_valid_before": "2022-08-18 22:18:48" } } STDERR: /tmp/certificate-tests-venv/lib64/python3.6/site-packages/certreader/parse.py:1: CryptographyDeprecationWarning: Python 3.6 is no longer supported by the Python core team. Therefore, support for it is deprecated in cryptography and will be removed in a future release. from cryptography import x509 TASK [Load certificate YAML to cert_issued variable] *************************** Thursday 18 August 2022 22:19:13 +0000 (0:00:00.587) 0:00:37.461 ******* ok: [sut] => { "ansible_facts": { "cert_issued": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "4B:04:C0:A9:F8:B4:1D:9D:44:6B:E5:44:DA:2D:DA:4B:74:5F:63:B4" }, "basicConstraints": { "critical": true, "value": { "ca": false } }, "extendedKeyUsage": { "critical": false, "value": [ { "name": "id-kp-serverAuth", "oid": "1.3.6.1.5.5.7.3.1" }, { "name": "id-kp-clientAuth", "oid": "1.3.6.1.5.5.7.3.2" } ] }, "keyUsage": { "critical": false, "value": [ "digital_signature", "key_encipherment" ] }, "subjectAltName": { "critical": false, "value": [ { "name": "DNS", "value": "www.example.org" } ] }, "subjectKeyIdentifier": { "critical": false, "value": "82:04:32:29:DB:D7:1D:1F:12:B7:BD:1C:E7:DA:21:BE:8A:18:95:06" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "07:B8:47:81:0D:19:57:8B:01:74:5A:AE:64:9B:BC:E0:E4:4F:A8:D7:58:F2:06:81:9F:6E:5C:F5:CD:E0:0D:AB:C4:D0:FD:89:45:D6:36:BB:1D:17:A3:2F:46:3B:0E:16:D3:82:49:48:F8:BD:BF:80:1C:85:83:8F:58:55:50:B9:E6:AB:70:FB:7A:E7:8B:F8:3D:A5:69:F2:86:6F:56:17:8E:01:22:64:89:0A:E6:14:15:39:90:AA:D7:D4:AD:A4:17:7E:0D:84:3C:B6:9A:F0:2E:EF:DE:19:5D:28:10:D8:31:4B:B6:B7:AB:E1:C5:7D:04:EF:DD:3A:CB:90:B5:3C:B3:A9:C5:48:22:66:45:2A:C8:63:A2:A3:52:57:9D:27:BD:9E:4C:25:C5:49:08:E1:43:6B:94:0F:FC:29:32:F4:F4:7A:F3:EE:65:6B:84:A8:CC:8D:DC:69:69:BB:9B:EA:4C:65:97:FA:61:D1:9B:34:A5:AE:13:21:32:18:65:56:16:1F:FF:E3:72:B2:EE:38:D5:3B:E3:3E:C2:2F:BF:39:B7:BC:D4:17:EB:73:73:C6:3D:59:45:7D:0C:3C:EE:5B:7C:DB:42:9B:14:37:99:29:1A:A6:3F:91:1B:02:D8:AC:AB:7C:29:D9:79:46:24:47:C8:06:1E:DD:96:2A:25:EB" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.org" } ], "validity": { "not_valid_after": "2023-08-18 22:18:47", "not_valid_before": "2022-08-18 22:18:48" } } }, "changed": false } TASK [Verify certificate subject] ********************************************** Thursday 18 August 2022 22:19:13 +0000 (0:00:00.066) 0:00:37.528 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate SAN] ************************************************** Thursday 18 August 2022 22:19:13 +0000 (0:00:00.069) 0:00:37.597 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key size] ********************************************************* Thursday 18 August 2022 22:19:13 +0000 (0:00:00.050) 0:00:37.648 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Key Usage] ******************************************** Thursday 18 August 2022 22:19:13 +0000 (0:00:00.067) 0:00:37.715 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Extended Key Usage] *********************************** Thursday 18 August 2022 22:19:13 +0000 (0:00:00.066) 0:00:37.782 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve auto-renew flag] ************************************************ Thursday 18 August 2022 22:19:13 +0000 (0:00:00.066) 0:00:37.848 ******* ok: [sut] => { "changed": false, "cmd": "set -euo pipefail; getcert list -f /etc/pki/tls/certs/other-cert.crt | grep 'auto-renew' | sed 's/^\\s\\+auto-renew: //g'", "delta": "0:00:00.072999", "end": "2022-08-18 22:19:14.103663", "rc": 0, "start": "2022-08-18 22:19:14.030664" } STDOUT: yes TASK [Verify certificate auto-renew flag] ************************************** Thursday 18 August 2022 22:19:14 +0000 (0:00:00.326) 0:00:38.175 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Set virtualenv_path] ***************************************************** Thursday 18 August 2022 22:19:14 +0000 (0:00:00.066) 0:00:38.242 ******* ok: [sut] => { "ansible_facts": { "__virtualenv_path": "/tmp/certificate-tests-venv" }, "changed": false } TASK [Ensure python3 is installed] ********************************************* Thursday 18 August 2022 22:19:14 +0000 (0:00:00.041) 0:00:38.284 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install the package, force upgrade] ************************************** Thursday 18 August 2022 22:19:15 +0000 (0:00:01.732) 0:00:40.017 ******* ok: [sut] => { "changed": false, "cmd": [ "/tmp/certificate-tests-venv/bin/pip3", "install", "-U", "pip" ], "name": [ "pip" ], "requirements": null, "state": "latest", "version": null, "virtualenv": "/tmp/certificate-tests-venv" } STDOUT: Requirement already satisfied: pip in ./certificate-tests-venv/lib/python3.6/site-packages (21.3.1) TASK [Ensure Python's cryptography is installed] ******************************* Thursday 18 August 2022 22:19:17 +0000 (0:00:01.132) 0:00:41.149 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install certreader] ****************************************************** Thursday 18 August 2022 22:19:18 +0000 (0:00:01.732) 0:00:42.882 ******* ok: [sut] => { "changed": false, "cmd": [ "/tmp/certificate-tests-venv/bin/pip3", "install", "certreader>=0.1.1" ], "name": [ "certreader>=0.1.1" ], "requirements": null, "state": "present", "version": null, "virtualenv": "/tmp/certificate-tests-venv" } STDOUT: Requirement already satisfied: certreader>=0.1.1 in ./certificate-tests-venv/lib/python3.6/site-packages (0.1.1) Requirement already satisfied: cryptography in ./certificate-tests-venv/lib/python3.6/site-packages (from certreader>=0.1.1) (37.0.4) Requirement already satisfied: pyasn1 in ./certificate-tests-venv/lib/python3.6/site-packages (from certreader>=0.1.1) (0.4.8) Requirement already satisfied: pyyaml in ./certificate-tests-venv/lib/python3.6/site-packages (from certreader>=0.1.1) (6.0) Requirement already satisfied: cffi>=1.12 in ./certificate-tests-venv/lib/python3.6/site-packages (from cryptography->certreader>=0.1.1) (1.15.1) Requirement already satisfied: pycparser in ./certificate-tests-venv/lib/python3.6/site-packages (from cffi>=1.12->cryptography->certreader>=0.1.1) (2.21) TASK [Retrieve certificate file stats] ***************************************** Thursday 18 August 2022 22:19:19 +0000 (0:00:00.958) 0:00:43.840 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660861129.3177984, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "2e6cd3b77b5e6909bf7ae5eecc9a8120aef3edcd", "ctime": 1660861129.3137987, "dev": 51715, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 8389977, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660861129.3137987, "nlink": 1, "path": "/etc/pki/tls/certs/another-cert.crt", "pw_name": "root", "readable": true, "rgrp": false, "roth": false, "rusr": true, "size": 1294, "uid": 0, "version": "2995136226", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if certificate file exists] *************************************** Thursday 18 August 2022 22:19:20 +0000 (0:00:00.264) 0:00:44.105 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate file owner and group] ********************************* Thursday 18 August 2022 22:19:20 +0000 (0:00:00.046) 0:00:44.152 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate permissions] ****************************************** Thursday 18 August 2022 22:19:20 +0000 (0:00:00.098) 0:00:44.250 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve key file stats] ************************************************* Thursday 18 August 2022 22:19:20 +0000 (0:00:00.071) 0:00:44.321 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660861129.2568002, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "a986cc0b778124f3f8bb68544576020c0f907bd1", "ctime": 1660861129.3137987, "dev": 51715, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 16799813, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660861129.3137987, "nlink": 1, "path": "/etc/pki/tls/private/another-cert.key", "pw_name": "root", "readable": true, "rgrp": false, "roth": false, "rusr": true, "size": 1708, "uid": 0, "version": "2326734607", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if key file exists] *********************************************** Thursday 18 August 2022 22:19:20 +0000 (0:00:00.268) 0:00:44.590 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key file owner and group] ***************************************** Thursday 18 August 2022 22:19:20 +0000 (0:00:00.049) 0:00:44.640 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Parse certificate] ******************************************************* Thursday 18 August 2022 22:19:20 +0000 (0:00:00.098) 0:00:44.739 ******* ok: [sut] => { "changed": false, "cmd": [ "/tmp/certificate-tests-venv/bin/certreader2json", "/etc/pki/tls/certs/another-cert.crt" ], "delta": "0:00:00.337883", "end": "2022-08-18 22:19:21.255630", "rc": 0, "start": "2022-08-18 22:19:20.917747" } STDOUT: { "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.net" } ], "extensions": { "keyUsage": { "value": [ "digital_signature", "key_encipherment" ], "critical": false }, "subjectAltName": { "value": [ { "name": "DNS", "value": "www.example.net" } ], "critical": false }, "extendedKeyUsage": { "value": [ { "name": "id-kp-serverAuth", "oid": "1.3.6.1.5.5.7.3.1" }, { "name": "id-kp-clientAuth", "oid": "1.3.6.1.5.5.7.3.2" } ], "critical": false }, "basicConstraints": { "value": { "ca": false }, "critical": true }, "subjectKeyIdentifier": { "value": "1B:62:CA:A4:4F:06:E3:D1:1C:51:A9:9B:35:55:96:E1:C0:B9:84:80", "critical": false }, "authorityKeyIdentifier": { "value": "4B:04:C0:A9:F8:B4:1D:9D:44:6B:E5:44:DA:2D:DA:4B:74:5F:63:B4", "critical": false } }, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "16:06:6F:A3:F2:65:D5:84:6F:B0:71:C9:CD:D2:2A:DC:ED:C4:DC:06:22:67:36:93:7A:10:B1:95:9E:47:D1:96:6F:A7:C1:1F:73:97:57:D6:27:FB:9C:1E:75:E1:42:81:72:D2:84:D3:38:5C:45:05:8E:D0:6C:5A:E4:B5:25:59:23:8E:88:5F:38:10:DA:C9:D7:31:94:A5:53:C9:67:DA:97:CB:51:3E:80:4E:07:B7:ED:46:BB:64:56:59:32:3D:12:6D:87:12:7B:82:9C:B4:50:88:AB:F2:06:51:08:D6:4C:B8:95:64:FD:19:F5:62:B2:0B:43:4A:FE:D5:7B:C3:61:0B:D0:35:40:07:AC:30:32:C7:C8:F6:A1:A5:2E:AA:5D:E5:B2:F5:B4:73:58:89:BA:65:CB:C4:87:C3:15:B7:09:6A:B6:AE:A4:CA:50:13:E9:67:AF:02:07:D8:C7:3E:6B:1F:74:16:BD:46:E4:A1:48:2E:E4:D5:4E:B0:64:C9:E0:F1:DD:40:09:82:9B:FE:C6:46:63:60:B4:FD:F5:F2:3E:B2:B6:29:36:35:37:B5:0E:45:F7:74:A2:07:04:2D:C4:8F:1C:C7:F9:A1:50:4C:FC:2B:1A:37:65:FB:D0:B7:B7:D8:78:99:2D:F1:17:13:A2:C9:7F:A1:0D:FA:31:8F" }, "key_size": 2048, "validity": { "not_valid_after": "2023-08-18 22:18:47", "not_valid_before": "2022-08-18 22:18:49" } } STDERR: /tmp/certificate-tests-venv/lib64/python3.6/site-packages/certreader/parse.py:1: CryptographyDeprecationWarning: Python 3.6 is no longer supported by the Python core team. Therefore, support for it is deprecated in cryptography and will be removed in a future release. from cryptography import x509 TASK [Load certificate YAML to cert_issued variable] *************************** Thursday 18 August 2022 22:19:21 +0000 (0:00:00.589) 0:00:45.328 ******* ok: [sut] => { "ansible_facts": { "cert_issued": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "4B:04:C0:A9:F8:B4:1D:9D:44:6B:E5:44:DA:2D:DA:4B:74:5F:63:B4" }, "basicConstraints": { "critical": true, "value": { "ca": false } }, "extendedKeyUsage": { "critical": false, "value": [ { "name": "id-kp-serverAuth", "oid": "1.3.6.1.5.5.7.3.1" }, { "name": "id-kp-clientAuth", "oid": "1.3.6.1.5.5.7.3.2" } ] }, "keyUsage": { "critical": false, "value": [ "digital_signature", "key_encipherment" ] }, "subjectAltName": { "critical": false, "value": [ { "name": "DNS", "value": "www.example.net" } ] }, "subjectKeyIdentifier": { "critical": false, "value": "1B:62:CA:A4:4F:06:E3:D1:1C:51:A9:9B:35:55:96:E1:C0:B9:84:80" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "16:06:6F:A3:F2:65:D5:84:6F:B0:71:C9:CD:D2:2A:DC:ED:C4:DC:06:22:67:36:93:7A:10:B1:95:9E:47:D1:96:6F:A7:C1:1F:73:97:57:D6:27:FB:9C:1E:75:E1:42:81:72:D2:84:D3:38:5C:45:05:8E:D0:6C:5A:E4:B5:25:59:23:8E:88:5F:38:10:DA:C9:D7:31:94:A5:53:C9:67:DA:97:CB:51:3E:80:4E:07:B7:ED:46:BB:64:56:59:32:3D:12:6D:87:12:7B:82:9C:B4:50:88:AB:F2:06:51:08:D6:4C:B8:95:64:FD:19:F5:62:B2:0B:43:4A:FE:D5:7B:C3:61:0B:D0:35:40:07:AC:30:32:C7:C8:F6:A1:A5:2E:AA:5D:E5:B2:F5:B4:73:58:89:BA:65:CB:C4:87:C3:15:B7:09:6A:B6:AE:A4:CA:50:13:E9:67:AF:02:07:D8:C7:3E:6B:1F:74:16:BD:46:E4:A1:48:2E:E4:D5:4E:B0:64:C9:E0:F1:DD:40:09:82:9B:FE:C6:46:63:60:B4:FD:F5:F2:3E:B2:B6:29:36:35:37:B5:0E:45:F7:74:A2:07:04:2D:C4:8F:1C:C7:F9:A1:50:4C:FC:2B:1A:37:65:FB:D0:B7:B7:D8:78:99:2D:F1:17:13:A2:C9:7F:A1:0D:FA:31:8F" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.net" } ], "validity": { "not_valid_after": "2023-08-18 22:18:47", "not_valid_before": "2022-08-18 22:18:49" } } }, "changed": false } TASK [Verify certificate subject] ********************************************** Thursday 18 August 2022 22:19:21 +0000 (0:00:00.064) 0:00:45.393 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate SAN] ************************************************** Thursday 18 August 2022 22:19:21 +0000 (0:00:00.069) 0:00:45.462 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key size] ********************************************************* Thursday 18 August 2022 22:19:21 +0000 (0:00:00.048) 0:00:45.510 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Key Usage] ******************************************** Thursday 18 August 2022 22:19:21 +0000 (0:00:00.067) 0:00:45.577 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Extended Key Usage] *********************************** Thursday 18 August 2022 22:19:21 +0000 (0:00:00.097) 0:00:45.675 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve auto-renew flag] ************************************************ Thursday 18 August 2022 22:19:21 +0000 (0:00:00.099) 0:00:45.775 ******* ok: [sut] => { "changed": false, "cmd": "set -euo pipefail; getcert list -f /etc/pki/tls/certs/another-cert.crt | grep 'auto-renew' | sed 's/^\\s\\+auto-renew: //g'", "delta": "0:00:00.072521", "end": "2022-08-18 22:19:22.026000", "rc": 0, "start": "2022-08-18 22:19:21.953479" } STDOUT: yes TASK [Verify certificate auto-renew flag] ************************************** Thursday 18 August 2022 22:19:22 +0000 (0:00:00.322) 0:00:46.097 ******* ok: [sut] => { "changed": false } MSG: All assertions passed PLAY RECAP ********************************************************************* sut : ok=76 changed=8 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0 Thursday 18 August 2022 22:19:22 +0000 (0:00:00.107) 0:00:46.205 ******* =============================================================================== Install the package, force upgrade -------------------------------------- 5.20s Install certreader ------------------------------------------------------ 4.38s linux-system-roles.certificate : Ensure provider packages are installed --- 4.04s linux-system-roles.certificate : Ensure certificate role dependencies are installed --- 3.58s linux-system-roles.certificate : Ensure certificate requests ------------ 2.24s Ensure python3 is installed --------------------------------------------- 1.78s Ensure python3 is installed --------------------------------------------- 1.78s Ensure Python's cryptography is installed ------------------------------- 1.77s Ensure Python's cryptography is installed ------------------------------- 1.74s Ensure python3 is installed --------------------------------------------- 1.73s Ensure Python's cryptography is installed ------------------------------- 1.73s linux-system-roles.certificate : Ensure provider service is running ----- 1.26s Install the package, force upgrade -------------------------------------- 1.13s Install the package, force upgrade -------------------------------------- 1.13s Gathering Facts --------------------------------------------------------- 1.10s Install certreader ------------------------------------------------------ 0.96s Install certreader ------------------------------------------------------ 0.95s Parse certificate ------------------------------------------------------- 0.75s Gathering Facts --------------------------------------------------------- 0.74s Parse certificate ------------------------------------------------------- 0.59s ---^---^---^---^---^--- # STDERR: ---v---v---v---v---v--- [DEPRECATION WARNING]: [defaults]callback_whitelist option, normalizing names to new standard, use callbacks_enabled instead. This feature will be removed from ansible-core in version 2.15. Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg. ---^---^---^---^---^---