# 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:16:07 +0000 (0:00:00.020) 0:00:00.020 ******* ok: [sut] TASK [linux-system-roles.certificate : Set version specific variables] ********* Thursday 18 August 2022 22:16:08 +0000 (0:00:01.205) 0:00:01.225 ******* included: /WORKDIR/dist-git-certificate-use_distro_python_cryptography-GEkvSr/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:16:08 +0000 (0:00:00.057) 0:00:01.283 ******* ok: [sut] TASK [linux-system-roles.certificate : Set platform/version specific variables] *** Thursday 18 August 2022 22:16:08 +0000 (0:00:00.470) 0:00:01.754 ******* 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_9.yml) => { "ansible_loop_var": "item", "changed": false, "item": "RedHat_9.yml", "skip_reason": "Conditional result was False" } skipping: [sut] => (item=RedHat_9.1.yml) => { "ansible_loop_var": "item", "changed": false, "item": "RedHat_9.1.yml", "skip_reason": "Conditional result was False" } TASK [linux-system-roles.certificate : Ensure certificate role dependencies are installed] *** Thursday 18 August 2022 22:16:08 +0000 (0:00:00.074) 0:00:01.828 ******* changed: [sut] => { "changed": true, "rc": 0, "results": [ "Installed: python3-ply-3.11-14.el9.noarch", "Installed: python3-pyasn1-0.4.8-6.el9.noarch", "Installed: python3-cffi-1.14.5-5.el9.x86_64", "Installed: python3-pycparser-2.20-6.el9.noarch", "Installed: python3-cryptography-36.0.1-2.el9.x86_64" ] } TASK [linux-system-roles.certificate : Ensure provider packages are installed] *** Thursday 18 August 2022 22:16:12 +0000 (0:00:03.292) 0:00:05.120 ******* changed: [sut] => (item=certmonger) => { "__certificate_provider": "certmonger", "ansible_loop_var": "__certificate_provider", "changed": true, "rc": 0, "results": [ "Installed: nss-softokn-3.79.0-11.el9_0.x86_64", "Installed: certmonger-0.79.14-7.el9.x86_64", "Installed: nss-softokn-freebl-3.79.0-11.el9_0.x86_64", "Installed: nss-sysinit-3.79.0-11.el9_0.x86_64", "Installed: nss-util-3.79.0-11.el9_0.x86_64", "Installed: nspr-4.34.0-11.el9_0.x86_64", "Installed: nss-3.79.0-11.el9_0.x86_64" ] } TASK [linux-system-roles.certificate : Ensure pre-scripts hooks directory exists] *** Thursday 18 August 2022 22:16:15 +0000 (0:00:03.542) 0:00:08.663 ******* 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:16:16 +0000 (0:00:00.792) 0:00:09.456 ******* 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:16:16 +0000 (0:00:00.363) 0:00:09.820 ******* 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": "sysinit.target network.target dbus-broker.service system.slice syslog.target systemd-journald.socket basic.target dbus.socket", "AllowIsolate": "no", "AssertResult": "no", "AssertTimestampMonotonic": "0", "Before": "shutdown.target", "BlockIOAccounting": "no", "BlockIOWeight": "[not set]", "BusName": "org.fedorahosted.certmonger", "CPUAccounting": "yes", "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 cap_checkpoint_restore", "CleanResult": "success", "CollectMode": "inactive", "ConditionResult": "no", "ConditionTimestampMonotonic": "0", "ConfigurationDirectoryMode": "0755", "Conflicts": "shutdown.target", "ControlPID": "0", "CoredumpFilter": "0x33", "DefaultDependencies": "yes", "DefaultMemoryLow": "0", "DefaultMemoryMin": "0", "Delegate": "no", "Description": "Certificate monitoring and PKI enrollment", "DevicePolicy": "auto", "DynamicUser": "no", "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 }", "ExecStartEx": "{ path=/usr/sbin/certmonger ; argv[]=/usr/sbin/certmonger -S -p /run/certmonger.pid -n $OPTS ; flags= ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }", "ExitType": "main", "FailureAction": "none", "FileDescriptorStoreMax": "0", "FinalKillSignal": "9", "FragmentPath": "/usr/lib/systemd/system/certmonger.service", "FreezerState": "running", "GID": "[not set]", "GuessMainPID": "yes", "IOAccounting": "no", "IOReadBytes": "18446744073709551615", "IOReadOperations": "18446744073709551615", "IOSchedulingClass": "2", "IOSchedulingPriority": "4", "IOWeight": "[not set]", "IOWriteBytes": "18446744073709551615", "IOWriteOperations": "18446744073709551615", "IPAccounting": "no", "IPEgressBytes": "[no data]", "IPEgressPackets": "[no data]", "IPIngressBytes": "[no data]", "IPIngressPackets": "[no data]", "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": "524288", "LimitNOFILESoft": "1024", "LimitNPROC": "13959", "LimitNPROCSoft": "13959", "LimitRSS": "infinity", "LimitRSSSoft": "infinity", "LimitRTPRIO": "0", "LimitRTPRIOSoft": "0", "LimitRTTIME": "infinity", "LimitRTTIMESoft": "infinity", "LimitSIGPENDING": "13959", "LimitSIGPENDINGSoft": "13959", "LimitSTACK": "infinity", "LimitSTACKSoft": "8388608", "LoadState": "loaded", "LockPersonality": "no", "LogLevelMax": "-1", "LogRateLimitBurst": "0", "LogRateLimitIntervalUSec": "0", "LogsDirectoryMode": "0755", "MainPID": "0", "ManagedOOMMemoryPressure": "auto", "ManagedOOMMemoryPressureLimit": "0", "ManagedOOMPreference": "none", "ManagedOOMSwap": "auto", "MemoryAccounting": "yes", "MemoryAvailable": "infinity", "MemoryCurrent": "[not set]", "MemoryDenyWriteExecute": "no", "MemoryHigh": "infinity", "MemoryLimit": "infinity", "MemoryLow": "0", "MemoryMax": "infinity", "MemoryMin": "0", "MemorySwapMax": "infinity", "MountAPIVFS": "no", "NFileDescriptorStore": "0", "NRestarts": "0", "NUMAPolicy": "n/a", "Names": "certmonger.service", "NeedDaemonReload": "no", "Nice": "0", "NoNewPrivileges": "no", "NonBlocking": "no", "NotifyAccess": "none", "OOMPolicy": "stop", "OOMScoreAdjust": "0", "OnFailureJobMode": "replace", "OnSuccessJobMode": "fail", "PIDFile": "/run/certmonger.pid", "PartOf": "dbus-broker.service", "Perpetual": "no", "PrivateDevices": "no", "PrivateIPC": "no", "PrivateMounts": "no", "PrivateNetwork": "no", "PrivateTmp": "no", "PrivateUsers": "no", "ProcSubset": "all", "ProtectClock": "no", "ProtectControlGroups": "no", "ProtectHome": "no", "ProtectHostname": "no", "ProtectKernelLogs": "no", "ProtectKernelModules": "no", "ProtectKernelTunables": "no", "ProtectProc": "default", "ProtectSystem": "no", "RefuseManualStart": "no", "RefuseManualStop": "no", "ReloadResult": "success", "RemainAfterExit": "no", "RemoveIPC": "no", "Requires": "system.slice dbus.socket sysinit.target", "Restart": "no", "RestartKillSignal": "15", "RestartUSec": "100ms", "RestrictNamespaces": "no", "RestrictRealtime": "no", "RestrictSUIDSGID": "no", "Result": "success", "RootDirectoryStartOnly": "no", "RuntimeDirectoryMode": "0755", "RuntimeDirectoryPreserve": "no", "RuntimeMaxUSec": "infinity", "RuntimeRandomizedExtraUSec": "0", "SameProcessGroup": "no", "SecureBits": "0", "SendSIGHUP": "no", "SendSIGKILL": "yes", "Slice": "system.slice", "StandardError": "inherit", "StandardInput": "null", "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": "2147483646", "TTYReset": "no", "TTYVHangup": "no", "TTYVTDisallocate": "no", "TasksAccounting": "yes", "TasksCurrent": "[not set]", "TasksMax": "22334", "TimeoutAbortUSec": "1min 30s", "TimeoutCleanUSec": "infinity", "TimeoutStartFailureMode": "terminate", "TimeoutStartUSec": "1min 30s", "TimeoutStopFailureMode": "terminate", "TimeoutStopUSec": "1min 30s", "TimerSlackNSec": "50000", "Transient": "no", "Type": "dbus", "UID": "[not set]", "UMask": "0022", "UnitFilePreset": "disabled", "UnitFileState": "disabled", "UtmpMode": "init", "WatchdogSignal": "6", "WatchdogTimestampMonotonic": "0", "WatchdogUSec": "infinity" } } TASK [linux-system-roles.certificate : Ensure certificate requests] ************ Thursday 18 August 2022 22:16:18 +0000 (0:00:01.249) 0:00:11.070 ******* 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:16:21 +0000 (0:00:03.775) 0:00:14.845 ******* ok: [sut] TASK [Verify each certificate] ************************************************* Thursday 18 August 2022 22:16:22 +0000 (0:00:00.748) 0:00:15.593 ******* included: /WORKDIR/dist-git-certificate-use_distro_python_cryptography-GEkvSr/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-GEkvSr/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-GEkvSr/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:16:22 +0000 (0:00:00.097) 0:00:15.691 ******* ok: [sut] => { "ansible_facts": { "__virtualenv_path": "/tmp/certificate-tests-venv" }, "changed": false } TASK [Ensure python3 is installed] ********************************************* Thursday 18 August 2022 22:16:22 +0000 (0:00:00.052) 0:00:15.743 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install the package, force upgrade] ************************************** Thursday 18 August 2022 22:16:23 +0000 (0:00:01.016) 0:00:16.760 ******* 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: Requirement already satisfied: pip in ./certificate-tests-venv/lib/python3.9/site-packages (21.2.3) Collecting pip Downloading pip-22.2.2-py3-none-any.whl (2.0 MB) Installing collected packages: pip Attempting uninstall: pip Found existing installation: pip 21.2.3 Uninstalling pip-21.2.3: Successfully uninstalled pip-21.2.3 Successfully installed pip-22.2.2 TASK [Ensure Python's cryptography is installed] ******************************* Thursday 18 August 2022 22:16:30 +0000 (0:00:06.745) 0:00:23.505 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install certreader] ****************************************************** Thursday 18 August 2022 22:16:31 +0000 (0:00:01.036) 0:00:24.541 ******* 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) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.1/4.1 MB 21.5 MB/s eta 0:00:00 Collecting pyasn1 Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.1/77.1 kB 14.5 MB/s eta 0:00:00 Collecting pyyaml Downloading PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (661 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 661.8/661.8 kB 38.9 MB/s eta 0:00:00 Collecting cffi>=1.12 Downloading cffi-1.15.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (441 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 441.2/441.2 kB 37.7 MB/s eta 0:00:00 Collecting pycparser Downloading pycparser-2.21-py2.py3-none-any.whl (118 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 118.7/118.7 kB 19.7 MB/s eta 0:00:00 Using legacy 'setup.py install' for certreader, since package 'wheel' is not installed. Installing collected packages: pyasn1, pyyaml, pycparser, cffi, 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:16:35 +0000 (0:00:03.612) 0:00:28.154 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660860979.3801694, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "27885741f9efb94703a38c6b2ba18ce4f98ba704", "ctime": 1660860979.3771694, "dev": 51716, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 16812676, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660860979.3771694, "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": "4048555039", "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:16:35 +0000 (0:00:00.507) 0:00:28.661 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate file owner and group] ********************************* Thursday 18 August 2022 22:16:35 +0000 (0:00:00.087) 0:00:28.749 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate permissions] ****************************************** Thursday 18 August 2022 22:16:35 +0000 (0:00:00.074) 0:00:28.824 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve key file stats] ************************************************* Thursday 18 August 2022 22:16:36 +0000 (0:00:00.126) 0:00:28.951 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660860979.2781687, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "9f88d9a9a40e4b8b33a320391f3a90b078580785", "ctime": 1660860979.3771694, "dev": 51716, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 8401275, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660860979.3771694, "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": "1641726968", "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:16:36 +0000 (0:00:00.320) 0:00:29.271 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key file owner and group] ***************************************** Thursday 18 August 2022 22:16:36 +0000 (0:00:00.095) 0:00:29.366 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Parse certificate] ******************************************************* Thursday 18 August 2022 22:16:36 +0000 (0:00:00.087) 0:00:29.454 ******* ok: [sut] => { "changed": false, "cmd": [ "/tmp/certificate-tests-venv/bin/certreader2json", "/etc/pki/tls/certs/mycert_many_self_signed.crt" ], "delta": "0:00:00.272755", "end": "2022-08-18 22:16:37.275199", "rc": 0, "start": "2022-08-18 22:16:37.002444" } 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": "89:93:6A:FD:80:42:1A:89:DF:41:99:C6:86:60:FB:41:BF:51:B4:95", "critical": false }, "authorityKeyIdentifier": { "value": "3A:8F:E6:BC:F0:D9:93:1E:F0:3D:FC:39:56:BE:18:6C:A7:04:45:9A", "critical": false } }, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "08:7C:6A:61:E9:48:B8:F1:84:35:A7:BD:A5:5F:4A:E1:BC:5D:AE:7D:D1:B0:F7:9A:BF:EA:BD:F0:1C:06:BF:69:54:43:C3:67:AF:E3:42:A7:8D:D6:57:F9:4D:7B:E1:F7:C4:8F:E7:90:11:88:C8:C5:5D:EA:05:BC:A4:15:FE:6F:A4:1E:02:49:32:F3:DD:B8:A7:AB:3C:81:8E:F4:D4:4A:7A:FA:1D:EB:9C:F9:C7:D0:8F:8F:55:D3:23:52:61:9F:8D:1C:4D:2D:F0:86:32:13:4D:E1:87:F5:6D:09:04:51:8E:59:35:6C:EB:B6:86:A4:7E:1F:09:F1:57:30:87:C2:CD:C7:F9:7B:0C:AF:83:EF:40:1B:72:AF:15:D0:F9:E9:3B:57:B4:33:99:5A:C9:FE:4E:57:D9:E0:D1:9E:F1:EF:AE:02:EB:4A:78:13:6C:C8:B6:A0:1A:D5:1D:E2:75:12:BB:61:F7:3B:36:DA:60:C6:20:88:AC:22:04:98:8F:99:4B:5E:C1:40:0F:46:85:FE:B1:9A:6D:91:BA:6B:98:AE:EA:54:55:C9:97:B9:3D:C0:E4:A6:DF:32:66:CD:6B:EE:15:15:06:FD:6E:F8:F3:0E:6F:D2:F5:66:80:F9:42:30:1A:51:E7:07:F3:BB:53:8B:B4:71:4F:4A:42:D7:7E:6B" }, "key_size": 2048, "validity": { "not_valid_after": "2023-08-18 22:16:18", "not_valid_before": "2022-08-18 22:16:19" } } TASK [Load certificate YAML to cert_issued variable] *************************** Thursday 18 August 2022 22:16:37 +0000 (0:00:00.755) 0:00:30.209 ******* ok: [sut] => { "ansible_facts": { "cert_issued": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "3A:8F:E6:BC:F0:D9:93:1E:F0:3D:FC:39:56:BE:18:6C:A7:04:45:9A" }, "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": "89:93:6A:FD:80:42:1A:89:DF:41:99:C6:86:60:FB:41:BF:51:B4:95" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "08:7C:6A:61:E9:48:B8:F1:84:35:A7:BD:A5:5F:4A:E1:BC:5D:AE:7D:D1:B0:F7:9A:BF:EA:BD:F0:1C:06:BF:69:54:43:C3:67:AF:E3:42:A7:8D:D6:57:F9:4D:7B:E1:F7:C4:8F:E7:90:11:88:C8:C5:5D:EA:05:BC:A4:15:FE:6F:A4:1E:02:49:32:F3:DD:B8:A7:AB:3C:81:8E:F4:D4:4A:7A:FA:1D:EB:9C:F9:C7:D0:8F:8F:55:D3:23:52:61:9F:8D:1C:4D:2D:F0:86:32:13:4D:E1:87:F5:6D:09:04:51:8E:59:35:6C:EB:B6:86:A4:7E:1F:09:F1:57:30:87:C2:CD:C7:F9:7B:0C:AF:83:EF:40:1B:72:AF:15:D0:F9:E9:3B:57:B4:33:99:5A:C9:FE:4E:57:D9:E0:D1:9E:F1:EF:AE:02:EB:4A:78:13:6C:C8:B6:A0:1A:D5:1D:E2:75:12:BB:61:F7:3B:36:DA:60:C6:20:88:AC:22:04:98:8F:99:4B:5E:C1:40:0F:46:85:FE:B1:9A:6D:91:BA:6B:98:AE:EA:54:55:C9:97:B9:3D:C0:E4:A6:DF:32:66:CD:6B:EE:15:15:06:FD:6E:F8:F3:0E:6F:D2:F5:66:80:F9:42:30:1A:51:E7:07:F3:BB:53:8B:B4:71:4F:4A:42:D7:7E:6B" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.com" } ], "validity": { "not_valid_after": "2023-08-18 22:16:18", "not_valid_before": "2022-08-18 22:16:19" } } }, "changed": false } TASK [Verify certificate subject] ********************************************** Thursday 18 August 2022 22:16:37 +0000 (0:00:00.086) 0:00:30.296 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate SAN] ************************************************** Thursday 18 August 2022 22:16:37 +0000 (0:00:00.174) 0:00:30.471 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key size] ********************************************************* Thursday 18 August 2022 22:16:37 +0000 (0:00:00.131) 0:00:30.602 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Key Usage] ******************************************** Thursday 18 August 2022 22:16:37 +0000 (0:00:00.111) 0:00:30.713 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Extended Key Usage] *********************************** Thursday 18 August 2022 22:16:38 +0000 (0:00:00.169) 0:00:30.882 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve auto-renew flag] ************************************************ Thursday 18 August 2022 22:16:38 +0000 (0:00:00.087) 0:00:30.970 ******* 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.059423", "end": "2022-08-18 22:16:38.421772", "rc": 0, "start": "2022-08-18 22:16:38.362349" } STDOUT: yes TASK [Verify certificate auto-renew flag] ************************************** Thursday 18 August 2022 22:16:38 +0000 (0:00:00.374) 0:00:31.344 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Set virtualenv_path] ***************************************************** Thursday 18 August 2022 22:16:38 +0000 (0:00:00.171) 0:00:31.516 ******* ok: [sut] => { "ansible_facts": { "__virtualenv_path": "/tmp/certificate-tests-venv" }, "changed": false } TASK [Ensure python3 is installed] ********************************************* Thursday 18 August 2022 22:16:38 +0000 (0:00:00.295) 0:00:31.811 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install the package, force upgrade] ************************************** Thursday 18 August 2022 22:16:40 +0000 (0:00:01.074) 0:00:32.886 ******* 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.9/site-packages (22.2.2) TASK [Ensure Python's cryptography is installed] ******************************* Thursday 18 August 2022 22:16:41 +0000 (0:00:01.134) 0:00:34.021 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install certreader] ****************************************************** Thursday 18 August 2022 22:16:42 +0000 (0:00:01.057) 0:00:35.078 ******* 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.9/site-packages (0.1.1) Requirement already satisfied: cryptography in ./certificate-tests-venv/lib/python3.9/site-packages (from certreader>=0.1.1) (37.0.4) Requirement already satisfied: pyasn1 in ./certificate-tests-venv/lib/python3.9/site-packages (from certreader>=0.1.1) (0.4.8) Requirement already satisfied: pyyaml in ./certificate-tests-venv/lib/python3.9/site-packages (from certreader>=0.1.1) (6.0) Requirement already satisfied: cffi>=1.12 in ./certificate-tests-venv/lib/python3.9/site-packages (from cryptography->certreader>=0.1.1) (1.15.1) Requirement already satisfied: pycparser in ./certificate-tests-venv/lib/python3.9/site-packages (from cffi>=1.12->cryptography->certreader>=0.1.1) (2.21) TASK [Retrieve certificate file stats] ***************************************** Thursday 18 August 2022 22:16:43 +0000 (0:00:00.904) 0:00:35.983 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660860980.4391773, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "8253aacfa2d217c39f6ba3efecf7064343c7d37c", "ctime": 1660860980.4361773, "dev": 51716, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 16812843, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660860980.4361773, "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": "3040225234", "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:16:43 +0000 (0:00:00.274) 0:00:36.257 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate file owner and group] ********************************* Thursday 18 August 2022 22:16:43 +0000 (0:00:00.057) 0:00:36.315 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate permissions] ****************************************** Thursday 18 August 2022 22:16:43 +0000 (0:00:00.078) 0:00:36.394 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve key file stats] ************************************************* Thursday 18 August 2022 22:16:43 +0000 (0:00:00.090) 0:00:36.485 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660860980.3561766, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "1ea5182111f45a5dc68eafe17f0fecbd95ae4cf4", "ctime": 1660860980.4361773, "dev": 51716, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 8401324, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660860980.4361773, "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": "1519256712", "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:16:43 +0000 (0:00:00.267) 0:00:36.753 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key file owner and group] ***************************************** Thursday 18 August 2022 22:16:43 +0000 (0:00:00.067) 0:00:36.820 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Parse certificate] ******************************************************* Thursday 18 August 2022 22:16:44 +0000 (0:00:00.126) 0:00:36.947 ******* ok: [sut] => { "changed": false, "cmd": [ "/tmp/certificate-tests-venv/bin/certreader2json", "/etc/pki/tls/certs/other-cert.crt" ], "delta": "0:00:00.267710", "end": "2022-08-18 22:16:44.600063", "rc": 0, "start": "2022-08-18 22:16:44.332353" } 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": "26:74:6A:22:08:85:8D:C8:5D:56:CD:2A:BE:A0:D3:BB:93:9C:85:2B", "critical": false }, "authorityKeyIdentifier": { "value": "3A:8F:E6:BC:F0:D9:93:1E:F0:3D:FC:39:56:BE:18:6C:A7:04:45:9A", "critical": false } }, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "CA:93:6E:F3:B0:65:08:FA:30:4C:EB:F9:DF:EA:A8:E8:D8:88:21:71:58:F4:36:AC:2A:3D:98:47:98:AE:A9:8E:1F:61:06:C9:A0:EE:1E:39:D1:DD:F4:5D:B9:0D:43:35:9A:2E:00:A2:0E:BC:4A:49:CA:43:53:9C:E9:93:A7:8E:FA:5F:C1:8A:25:B8:18:9F:AB:87:48:CE:C3:74:BF:0D:A4:37:0F:3D:42:38:48:E4:54:A3:C7:57:27:18:20:D7:E4:62:49:BA:7D:2B:96:C4:B3:72:F3:AC:73:A3:BC:1F:56:E7:89:12:E4:FA:5C:53:A2:3A:95:DE:D9:CA:DE:08:18:F5:93:BD:41:AC:8E:EF:7A:20:10:D2:C1:3B:BE:58:ED:1F:12:5D:4D:68:5E:5A:B2:0B:62:8F:FF:87:85:AD:0B:DA:27:B3:18:09:EF:A1:DB:4D:6E:05:36:EA:6F:EE:D2:BF:72:09:F1:B1:F0:2E:43:70:FB:BA:FF:8E:9F:A3:EB:60:B6:6B:E2:FC:9F:16:6D:C8:95:79:44:2A:2A:BD:B9:FE:5A:AD:03:10:AA:E6:C8:88:A4:E2:BC:DA:EF:F0:28:62:42:B7:67:04:18:61:54:0D:A1:2B:67:14:37:CE:AC:41:31:DB:2A:BB:75:74:F8:C4:36:36:4A:C7:D7:76" }, "key_size": 2048, "validity": { "not_valid_after": "2023-08-18 22:16:18", "not_valid_before": "2022-08-18 22:16:20" } } TASK [Load certificate YAML to cert_issued variable] *************************** Thursday 18 August 2022 22:16:44 +0000 (0:00:00.563) 0:00:37.510 ******* ok: [sut] => { "ansible_facts": { "cert_issued": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "3A:8F:E6:BC:F0:D9:93:1E:F0:3D:FC:39:56:BE:18:6C:A7:04:45:9A" }, "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": "26:74:6A:22:08:85:8D:C8:5D:56:CD:2A:BE:A0:D3:BB:93:9C:85:2B" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "CA:93:6E:F3:B0:65:08:FA:30:4C:EB:F9:DF:EA:A8:E8:D8:88:21:71:58:F4:36:AC:2A:3D:98:47:98:AE:A9:8E:1F:61:06:C9:A0:EE:1E:39:D1:DD:F4:5D:B9:0D:43:35:9A:2E:00:A2:0E:BC:4A:49:CA:43:53:9C:E9:93:A7:8E:FA:5F:C1:8A:25:B8:18:9F:AB:87:48:CE:C3:74:BF:0D:A4:37:0F:3D:42:38:48:E4:54:A3:C7:57:27:18:20:D7:E4:62:49:BA:7D:2B:96:C4:B3:72:F3:AC:73:A3:BC:1F:56:E7:89:12:E4:FA:5C:53:A2:3A:95:DE:D9:CA:DE:08:18:F5:93:BD:41:AC:8E:EF:7A:20:10:D2:C1:3B:BE:58:ED:1F:12:5D:4D:68:5E:5A:B2:0B:62:8F:FF:87:85:AD:0B:DA:27:B3:18:09:EF:A1:DB:4D:6E:05:36:EA:6F:EE:D2:BF:72:09:F1:B1:F0:2E:43:70:FB:BA:FF:8E:9F:A3:EB:60:B6:6B:E2:FC:9F:16:6D:C8:95:79:44:2A:2A:BD:B9:FE:5A:AD:03:10:AA:E6:C8:88:A4:E2:BC:DA:EF:F0:28:62:42:B7:67:04:18:61:54:0D:A1:2B:67:14:37:CE:AC:41:31:DB:2A:BB:75:74:F8:C4:36:36:4A:C7:D7:76" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.org" } ], "validity": { "not_valid_after": "2023-08-18 22:16:18", "not_valid_before": "2022-08-18 22:16:20" } } }, "changed": false } TASK [Verify certificate subject] ********************************************** Thursday 18 August 2022 22:16:44 +0000 (0:00:00.090) 0:00:37.601 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate SAN] ************************************************** Thursday 18 August 2022 22:16:44 +0000 (0:00:00.071) 0:00:37.672 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key size] ********************************************************* Thursday 18 August 2022 22:16:44 +0000 (0:00:00.063) 0:00:37.736 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Key Usage] ******************************************** Thursday 18 August 2022 22:16:44 +0000 (0:00:00.107) 0:00:37.843 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Extended Key Usage] *********************************** Thursday 18 August 2022 22:16:45 +0000 (0:00:00.081) 0:00:37.925 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve auto-renew flag] ************************************************ Thursday 18 August 2022 22:16:45 +0000 (0:00:00.073) 0:00:37.999 ******* 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.059298", "end": "2022-08-18 22:16:45.439076", "rc": 0, "start": "2022-08-18 22:16:45.379778" } STDOUT: yes TASK [Verify certificate auto-renew flag] ************************************** Thursday 18 August 2022 22:16:45 +0000 (0:00:00.330) 0:00:38.329 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Set virtualenv_path] ***************************************************** Thursday 18 August 2022 22:16:45 +0000 (0:00:00.102) 0:00:38.432 ******* ok: [sut] => { "ansible_facts": { "__virtualenv_path": "/tmp/certificate-tests-venv" }, "changed": false } TASK [Ensure python3 is installed] ********************************************* Thursday 18 August 2022 22:16:45 +0000 (0:00:00.066) 0:00:38.498 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install the package, force upgrade] ************************************** Thursday 18 August 2022 22:16:46 +0000 (0:00:01.038) 0:00:39.536 ******* 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.9/site-packages (22.2.2) TASK [Ensure Python's cryptography is installed] ******************************* Thursday 18 August 2022 22:16:47 +0000 (0:00:01.121) 0:00:40.658 ******* ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do TASK [Install certreader] ****************************************************** Thursday 18 August 2022 22:16:48 +0000 (0:00:01.025) 0:00:41.683 ******* 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.9/site-packages (0.1.1) Requirement already satisfied: cryptography in ./certificate-tests-venv/lib/python3.9/site-packages (from certreader>=0.1.1) (37.0.4) Requirement already satisfied: pyasn1 in ./certificate-tests-venv/lib/python3.9/site-packages (from certreader>=0.1.1) (0.4.8) Requirement already satisfied: pyyaml in ./certificate-tests-venv/lib/python3.9/site-packages (from certreader>=0.1.1) (6.0) Requirement already satisfied: cffi>=1.12 in ./certificate-tests-venv/lib/python3.9/site-packages (from cryptography->certreader>=0.1.1) (1.15.1) Requirement already satisfied: pycparser in ./certificate-tests-venv/lib/python3.9/site-packages (from cffi>=1.12->cryptography->certreader>=0.1.1) (2.21) TASK [Retrieve certificate file stats] ***************************************** Thursday 18 August 2022 22:16:49 +0000 (0:00:00.975) 0:00:42.659 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660860981.7801874, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "13b3fc66c184aec5a093542c6ca0caa32ac217de", "ctime": 1660860981.7781873, "dev": 51716, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 16812618, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660860981.7781873, "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": "2867313473", "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:16:50 +0000 (0:00:00.339) 0:00:42.998 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate file owner and group] ********************************* Thursday 18 August 2022 22:16:50 +0000 (0:00:00.085) 0:00:43.084 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate permissions] ****************************************** Thursday 18 August 2022 22:16:50 +0000 (0:00:00.129) 0:00:43.213 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve key file stats] ************************************************* Thursday 18 August 2022 22:16:50 +0000 (0:00:00.173) 0:00:43.387 ******* ok: [sut] => { "changed": false, "stat": { "atime": 1660860981.7061868, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "a7877b2a6745efa3e26893d6759c2c26a3378c9b", "ctime": 1660860981.7781873, "dev": 51716, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 8401464, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1660860981.7781873, "nlink": 1, "path": "/etc/pki/tls/private/another-cert.key", "pw_name": "root", "readable": true, "rgrp": false, "roth": false, "rusr": true, "size": 1704, "uid": 0, "version": "938452946", "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:16:50 +0000 (0:00:00.320) 0:00:43.708 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key file owner and group] ***************************************** Thursday 18 August 2022 22:16:50 +0000 (0:00:00.108) 0:00:43.816 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Parse certificate] ******************************************************* Thursday 18 August 2022 22:16:51 +0000 (0:00:00.152) 0:00:43.969 ******* ok: [sut] => { "changed": false, "cmd": [ "/tmp/certificate-tests-venv/bin/certreader2json", "/etc/pki/tls/certs/another-cert.crt" ], "delta": "0:00:00.264948", "end": "2022-08-18 22:16:51.631345", "rc": 0, "start": "2022-08-18 22:16:51.366397" } 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": "24:A8:5A:A5:FB:09:02:9E:EA:C6:5B:A6:21:89:4F:D4:16:42:D1:4D", "critical": false }, "authorityKeyIdentifier": { "value": "3A:8F:E6:BC:F0:D9:93:1E:F0:3D:FC:39:56:BE:18:6C:A7:04:45:9A", "critical": false } }, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "74:4B:BC:89:81:A8:A7:96:B4:F1:30:60:56:BE:6B:06:62:9D:01:4B:90:0E:5B:54:91:5E:44:71:F0:01:2D:32:25:1D:0C:19:B9:D2:32:67:14:9C:63:08:BF:13:7F:57:3D:62:66:87:89:83:E0:E3:06:70:BD:D1:6F:F1:8F:2A:B7:22:1E:A1:FB:0C:E0:AA:51:71:1B:64:FB:A9:FF:6E:C7:86:BF:84:38:C4:B3:FA:D3:57:84:7E:EB:1A:2F:71:BE:73:F8:99:AB:C9:6D:73:93:67:6A:1C:EF:7C:5A:9C:BE:9F:F0:67:B7:0D:7E:E6:1B:4E:51:C2:1D:5F:50:FE:3A:A2:FB:88:A9:9B:40:F4:53:99:1A:BC:A9:98:56:78:D8:E0:4F:1C:74:99:0E:8E:6B:30:3F:7B:22:2C:33:4B:C6:AF:AB:CA:20:79:92:A5:74:51:80:30:18:9A:DF:D8:F1:A5:F1:62:C6:95:5B:86:84:66:3F:39:8F:2C:5F:92:37:71:1D:2C:FD:92:DE:3D:CB:CF:8E:0B:7D:CC:3E:4B:AE:7D:6F:38:C3:10:93:F3:1F:C8:28:76:DE:49:02:48:D5:AB:B1:B0:F7:16:9B:C7:05:22:42:31:DC:14:4F:F5:71:23:B0:E8:C5:C7:08:59:54:40:79:88:DA:C5:2A:50" }, "key_size": 2048, "validity": { "not_valid_after": "2023-08-18 22:16:18", "not_valid_before": "2022-08-18 22:16:21" } } TASK [Load certificate YAML to cert_issued variable] *************************** Thursday 18 August 2022 22:16:51 +0000 (0:00:00.596) 0:00:44.565 ******* ok: [sut] => { "ansible_facts": { "cert_issued": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "3A:8F:E6:BC:F0:D9:93:1E:F0:3D:FC:39:56:BE:18:6C:A7:04:45:9A" }, "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": "24:A8:5A:A5:FB:09:02:9E:EA:C6:5B:A6:21:89:4F:D4:16:42:D1:4D" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "74:4B:BC:89:81:A8:A7:96:B4:F1:30:60:56:BE:6B:06:62:9D:01:4B:90:0E:5B:54:91:5E:44:71:F0:01:2D:32:25:1D:0C:19:B9:D2:32:67:14:9C:63:08:BF:13:7F:57:3D:62:66:87:89:83:E0:E3:06:70:BD:D1:6F:F1:8F:2A:B7:22:1E:A1:FB:0C:E0:AA:51:71:1B:64:FB:A9:FF:6E:C7:86:BF:84:38:C4:B3:FA:D3:57:84:7E:EB:1A:2F:71:BE:73:F8:99:AB:C9:6D:73:93:67:6A:1C:EF:7C:5A:9C:BE:9F:F0:67:B7:0D:7E:E6:1B:4E:51:C2:1D:5F:50:FE:3A:A2:FB:88:A9:9B:40:F4:53:99:1A:BC:A9:98:56:78:D8:E0:4F:1C:74:99:0E:8E:6B:30:3F:7B:22:2C:33:4B:C6:AF:AB:CA:20:79:92:A5:74:51:80:30:18:9A:DF:D8:F1:A5:F1:62:C6:95:5B:86:84:66:3F:39:8F:2C:5F:92:37:71:1D:2C:FD:92:DE:3D:CB:CF:8E:0B:7D:CC:3E:4B:AE:7D:6F:38:C3:10:93:F3:1F:C8:28:76:DE:49:02:48:D5:AB:B1:B0:F7:16:9B:C7:05:22:42:31:DC:14:4F:F5:71:23:B0:E8:C5:C7:08:59:54:40:79:88:DA:C5:2A:50" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.net" } ], "validity": { "not_valid_after": "2023-08-18 22:16:18", "not_valid_before": "2022-08-18 22:16:21" } } }, "changed": false } TASK [Verify certificate subject] ********************************************** Thursday 18 August 2022 22:16:51 +0000 (0:00:00.138) 0:00:44.704 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate SAN] ************************************************** Thursday 18 August 2022 22:16:51 +0000 (0:00:00.110) 0:00:44.814 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key size] ********************************************************* Thursday 18 August 2022 22:16:52 +0000 (0:00:00.110) 0:00:44.925 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Key Usage] ******************************************** Thursday 18 August 2022 22:16:52 +0000 (0:00:00.172) 0:00:45.097 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Extended Key Usage] *********************************** Thursday 18 August 2022 22:16:52 +0000 (0:00:00.094) 0:00:45.191 ******* ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve auto-renew flag] ************************************************ Thursday 18 August 2022 22:16:52 +0000 (0:00:00.136) 0:00:45.328 ******* 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.058905", "end": "2022-08-18 22:16:52.763314", "rc": 0, "start": "2022-08-18 22:16:52.704409" } STDOUT: yes TASK [Verify certificate auto-renew flag] ************************************** Thursday 18 August 2022 22:16:52 +0000 (0:00:00.338) 0:00:45.667 ******* 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:16:53 +0000 (0:00:00.213) 0:00:45.880 ******* =============================================================================== Install the package, force upgrade -------------------------------------- 6.75s linux-system-roles.certificate : Ensure certificate requests ------------ 3.78s Install certreader ------------------------------------------------------ 3.61s linux-system-roles.certificate : Ensure provider packages are installed --- 3.54s linux-system-roles.certificate : Ensure certificate role dependencies are installed --- 3.29s linux-system-roles.certificate : Ensure provider service is running ----- 1.25s Gathering Facts --------------------------------------------------------- 1.21s Install the package, force upgrade -------------------------------------- 1.13s Install the package, force upgrade -------------------------------------- 1.12s Ensure python3 is installed --------------------------------------------- 1.07s Ensure Python's cryptography is installed ------------------------------- 1.06s Ensure python3 is installed --------------------------------------------- 1.04s Ensure Python's cryptography is installed ------------------------------- 1.04s Ensure Python's cryptography is installed ------------------------------- 1.03s Ensure python3 is installed --------------------------------------------- 1.02s Install certreader ------------------------------------------------------ 0.98s Install certreader ------------------------------------------------------ 0.91s linux-system-roles.certificate : Ensure pre-scripts hooks directory exists --- 0.79s Parse certificate ------------------------------------------------------- 0.76s Gathering Facts --------------------------------------------------------- 0.75s ---^---^---^---^---^--- # 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. ---^---^---^---^---^---