# STDOUT: ---v---v---v---v---v--- ansible-playbook 2.9.27 config file = /etc/ansible/ansible.cfg configured module search path = ['/home/jenkins/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'] ansible python module location = /opt/ansible-2.9/lib/python3.9/site-packages/ansible executable location = /opt/ansible-2.9/bin/ansible-playbook python version = 3.9.18 (main, Sep 7 2023, 00:00:00) [GCC 11.4.1 20230605 (Red Hat 11.4.1-2)] Using /etc/ansible/ansible.cfg as config file Skipping callback 'actionable', as we already have a stdout callback. Skipping callback 'counter_enabled', as we already have a stdout callback. Skipping callback 'debug', as we already have a stdout callback. Skipping callback 'dense', as we already have a stdout callback. Skipping callback 'dense', as we already have a stdout callback. Skipping callback 'full_skip', as we already have a stdout callback. Skipping callback 'json', as we already have a stdout callback. Skipping callback 'minimal', as we already have a stdout callback. Skipping callback 'null', as we already have a stdout callback. Skipping callback 'oneline', as we already have a stdout callback. Skipping callback 'selective', as we already have a stdout callback. Skipping callback 'skippy', as we already have a stdout callback. Skipping callback 'stderr', as we already have a stdout callback. Skipping callback 'unixy', as we already have a stdout callback. Skipping callback 'yaml', as we already have a stdout callback. PLAYBOOK: tests_many_self_signed.yml ******************************************* 2 plays in /WORKDIR/git-weekly-cicac3q1sc/tests/tests_many_self_signed.yml PLAY [Issue many self-signed certificates] ************************************* TASK [Gathering Facts] ********************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tests_many_self_signed.yml:2 Saturday 10 February 2024 13:19:53 +0000 (0:00:00.013) 0:00:00.013 ***** ok: [sut] META: ran handlers TASK [linux-system-roles.certificate : Set version specific variables] ********* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:2 Saturday 10 February 2024 13:19:54 +0000 (0:00:00.647) 0:00:00.660 ***** included: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/set_vars.yml for sut TASK [linux-system-roles.certificate : Ensure ansible_facts used by role] ****** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/set_vars.yml:2 Saturday 10 February 2024 13:19:54 +0000 (0:00:00.011) 0:00:00.672 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [linux-system-roles.certificate : Check if system is ostree] ************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/set_vars.yml:11 Saturday 10 February 2024 13:19:54 +0000 (0:00:00.017) 0:00:00.689 ***** ok: [sut] => { "changed": false, "stat": { "exists": false } } TASK [linux-system-roles.certificate : Set flag to indicate system is ostree] *** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/set_vars.yml:16 Saturday 10 February 2024 13:19:54 +0000 (0:00:00.258) 0:00:00.947 ***** ok: [sut] => { "ansible_facts": { "__certificate_is_ostree": false }, "changed": false } TASK [linux-system-roles.certificate : Set platform/version specific variables] *** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/set_vars.yml:20 Saturday 10 February 2024 13:19:54 +0000 (0:00:00.019) 0:00:00.967 ***** skipping: [sut] => (item=RedHat.yml) => { "ansible_loop_var": "item", "changed": false, "item": "RedHat.yml", "skip_reason": "Conditional result was False" } skipping: [sut] => (item=CentOS.yml) => { "ansible_loop_var": "item", "changed": false, "item": "CentOS.yml", "skip_reason": "Conditional result was False" } ok: [sut] => (item=CentOS_9.yml) => { "ansible_facts": { "__certificate_certmonger_packages": [ "certmonger", "python3-packaging" ] }, "ansible_included_var_files": [ "/WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/vars/CentOS_9.yml" ], "ansible_loop_var": "item", "changed": false, "item": "CentOS_9.yml" } ok: [sut] => (item=CentOS_9.yml) => { "ansible_facts": { "__certificate_certmonger_packages": [ "certmonger", "python3-packaging" ] }, "ansible_included_var_files": [ "/WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/vars/CentOS_9.yml" ], "ansible_loop_var": "item", "changed": false, "item": "CentOS_9.yml" } TASK [linux-system-roles.certificate : Ensure certificate role dependencies are installed] *** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:5 Saturday 10 February 2024 13:19:54 +0000 (0:00:00.031) 0:00:00.998 ***** changed: [sut] => { "changed": true, "rc": 0, "results": [ "Installed: python3-pyasn1-0.4.8-6.el9.noarch", "Installed: python3-cffi-1.14.5-5.el9.x86_64", "Installed: python3-ply-3.11-14.el9.noarch", "Installed: python3-pycparser-2.20-6.el9.noarch", "Installed: python3-cryptography-36.0.1-4.el9.x86_64" ] } lsrpackages: python3-cryptography python3-dbus python3-pyasn1 TASK [linux-system-roles.certificate : Ensure provider packages are installed] *** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:24 Saturday 10 February 2024 13:19:59 +0000 (0:00:04.885) 0:00:05.884 ***** changed: [sut] => (item=certmonger) => { "__certificate_provider": "certmonger", "ansible_loop_var": "__certificate_provider", "changed": true, "rc": 0, "results": [ "Installed: python3-pyparsing-2.4.7-9.el9.noarch", "Installed: certmonger-0.79.17-1.el9.x86_64", "Installed: python3-packaging-20.9-5.el9.noarch" ] } lsrpackages: certmonger python3-packaging TASK [linux-system-roles.certificate : Ensure pre-scripts hooks directory exists] *** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:37 Saturday 10 February 2024 13:20:02 +0000 (0:00:03.123) 0:00:09.007 ***** 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] *** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:63 Saturday 10 February 2024 13:20:03 +0000 (0:00:00.290) 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//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] ***** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:92 Saturday 10 February 2024 13:20:03 +0000 (0:00:00.220) 0:00:09.518 ***** changed: [sut] => (item=certmonger) => { "__certificate_provider": "certmonger", "ansible_loop_var": "__certificate_provider", "changed": true, "enabled": true, "name": "certmonger", "state": "started", "status": { "AccessSELinuxContext": "system_u:object_r:certmonger_unit_file_t:s0", "ActiveEnterTimestampMonotonic": "0", "ActiveExitTimestampMonotonic": "0", "ActiveState": "inactive", "After": "syslog.target dbus.socket sysinit.target basic.target systemd-journald.socket network.target system.slice dbus-broker.service", "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", "ControlGroupId": "0", "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": "8388608", "LimitMEMLOCKSoft": "8388608", "LimitMSGQUEUE": "819200", "LimitMSGQUEUESoft": "819200", "LimitNICE": "0", "LimitNICESoft": "0", "LimitNOFILE": "524288", "LimitNOFILESoft": "1024", "LimitNPROC": "13974", "LimitNPROCSoft": "13974", "LimitRSS": "infinity", "LimitRSSSoft": "infinity", "LimitRTPRIO": "0", "LimitRTPRIOSoft": "0", "LimitRTTIME": "infinity", "LimitRTTIMESoft": "infinity", "LimitSIGPENDING": "13974", "LimitSIGPENDINGSoft": "13974", "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", "ReloadSignal": "1", "RemainAfterExit": "no", "RemoveIPC": "no", "Requires": "sysinit.target dbus.socket system.slice", "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": "22359", "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] ************ task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:104 Saturday 10 February 2024 13:20:04 +0000 (0:00:00.750) 0:00:10.269 ***** 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). TASK [linux-system-roles.certificate : Slurp the contents of the files] ******** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:156 Saturday 10 February 2024 13:20:06 +0000 (0:00:02.458) 0:00:12.727 ***** skipping: [sut] => (item=['cert', {'name': 'mycert_many_self_signed', 'dns': 'www.example.com', 'ca': 'self-sign'}]) => { "ansible_loop_var": "item", "changed": false, "item": [ "cert", { "ca": "self-sign", "dns": "www.example.com", "name": "mycert_many_self_signed" } ], "skip_reason": "Conditional result was False" } skipping: [sut] => (item=['cert', {'name': 'other-cert', 'dns': 'www.example.org', 'ca': 'self-sign'}]) => { "ansible_loop_var": "item", "changed": false, "item": [ "cert", { "ca": "self-sign", "dns": "www.example.org", "name": "other-cert" } ], "skip_reason": "Conditional result was False" } skipping: [sut] => (item=['cert', {'name': 'another-cert', 'dns': 'www.example.net', 'ca': 'self-sign'}]) => { "ansible_loop_var": "item", "changed": false, "item": [ "cert", { "ca": "self-sign", "dns": "www.example.net", "name": "another-cert" } ], "skip_reason": "Conditional result was False" } skipping: [sut] => (item=['key', {'name': 'mycert_many_self_signed', 'dns': 'www.example.com', 'ca': 'self-sign'}]) => { "ansible_loop_var": "item", "changed": false, "item": [ "key", { "ca": "self-sign", "dns": "www.example.com", "name": "mycert_many_self_signed" } ], "skip_reason": "Conditional result was False" } skipping: [sut] => (item=['key', {'name': 'other-cert', 'dns': 'www.example.org', 'ca': 'self-sign'}]) => { "ansible_loop_var": "item", "changed": false, "item": [ "key", { "ca": "self-sign", "dns": "www.example.org", "name": "other-cert" } ], "skip_reason": "Conditional result was False" } skipping: [sut] => (item=['key', {'name': 'another-cert', 'dns': 'www.example.net', 'ca': 'self-sign'}]) => { "ansible_loop_var": "item", "changed": false, "item": [ "key", { "ca": "self-sign", "dns": "www.example.net", "name": "another-cert" } ], "skip_reason": "Conditional result was False" } skipping: [sut] => (item=['ca', {'name': 'mycert_many_self_signed', 'dns': 'www.example.com', 'ca': 'self-sign'}]) => { "ansible_loop_var": "item", "changed": false, "item": [ "ca", { "ca": "self-sign", "dns": "www.example.com", "name": "mycert_many_self_signed" } ], "skip_reason": "Conditional result was False" } skipping: [sut] => (item=['ca', {'name': 'other-cert', 'dns': 'www.example.org', 'ca': 'self-sign'}]) => { "ansible_loop_var": "item", "changed": false, "item": [ "ca", { "ca": "self-sign", "dns": "www.example.org", "name": "other-cert" } ], "skip_reason": "Conditional result was False" } skipping: [sut] => (item=['ca', {'name': 'another-cert', 'dns': 'www.example.net', 'ca': 'self-sign'}]) => { "ansible_loop_var": "item", "changed": false, "item": [ "ca", { "ca": "self-sign", "dns": "www.example.net", "name": "another-cert" } ], "skip_reason": "Conditional result was False" } TASK [linux-system-roles.certificate : Create return data] ********************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:168 Saturday 10 February 2024 13:20:06 +0000 (0:00:00.038) 0:00:12.766 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [linux-system-roles.certificate : Stop tracking certificates] ************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:184 Saturday 10 February 2024 13:20:06 +0000 (0:00:00.018) 0:00:12.785 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [linux-system-roles.certificate : Remove files] *************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:189 Saturday 10 February 2024 13:20:06 +0000 (0:00:00.020) 0:00:12.805 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } META: ran handlers META: ran handlers PLAY [Verify certificate] ****************************************************** TASK [Gathering Facts] ********************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tests_many_self_signed.yml:18 Saturday 10 February 2024 13:20:06 +0000 (0:00:00.021) 0:00:12.827 ***** ok: [sut] META: ran handlers TASK [Verify each certificate] ************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tests_many_self_signed.yml:50 Saturday 10 February 2024 13:20:07 +0000 (0:00:00.541) 0:00:13.368 ***** included: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml for sut included: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml for sut included: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml for sut TASK [Set virtualenv_path] ***************************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:2 Saturday 10 February 2024 13:20:07 +0000 (0:00:00.036) 0:00:13.404 ***** ok: [sut] => { "ansible_facts": { "__virtualenv_path": "/tmp/certificate-tests-venv" }, "changed": false } TASK [Check if system is ostree] *********************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:9 Saturday 10 February 2024 13:20:07 +0000 (0:00:00.007) 0:00:13.412 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [Set flag to indicate system is ostree] *********************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:14 Saturday 10 February 2024 13:20:07 +0000 (0:00:00.015) 0:00:13.427 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [Ensure python3 is installed] ********************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:18 Saturday 10 February 2024 13:20:07 +0000 (0:00:00.015) 0:00:13.443 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [Ensure python3 is installed] ********************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:29 Saturday 10 February 2024 13:20:07 +0000 (0:00:00.015) 0:00:13.459 ***** ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do lsrpackages: python3-cryptography python3-pyasn1 TASK [Retrieve certificate file stats] ***************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:40 Saturday 10 February 2024 13:20:08 +0000 (0:00:00.953) 0:00:14.412 ***** ok: [sut] => { "changed": false, "stat": { "atime": 1707571204.8474495, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "8ce0f0a35dc91ec07ae2de065fce1a9360fbee32", "ctime": 1707571204.8444495, "dev": 51713, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 4516626, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1707571204.8444495, "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": "4200839214", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if certificate file exists] *************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:45 Saturday 10 February 2024 13:20:08 +0000 (0:00:00.215) 0:00:14.627 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate file owner and group] ********************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:51 Saturday 10 February 2024 13:20:08 +0000 (0:00:00.019) 0:00:14.647 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate permissions] ****************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:63 Saturday 10 February 2024 13:20:08 +0000 (0:00:00.021) 0:00:14.669 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve key file stats] ************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:69 Saturday 10 February 2024 13:20:08 +0000 (0:00:00.019) 0:00:14.688 ***** ok: [sut] => { "changed": false, "stat": { "atime": 1707571204.7754495, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "778f2b85b5d9e33356df9c0fbb9d4a41614ceee7", "ctime": 1707571204.8444495, "dev": 51713, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 288395, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1707571204.8444495, "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": "1310457658", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if key file exists] *********************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:74 Saturday 10 February 2024 13:20:08 +0000 (0:00:00.215) 0:00:14.903 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key file owner and group] ***************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:80 Saturday 10 February 2024 13:20:08 +0000 (0:00:00.019) 0:00:14.923 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Parse certificate] ******************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:92 Saturday 10 February 2024 13:20:08 +0000 (0:00:00.021) 0:00:14.944 ***** ok: [sut] => { "certificate": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "75:5E:AF:72:6B:79:AB:4A:66:C4:3E:53:EF:89:04:4F:2B:26:48:70" }, "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": "28:3C:D8:1D:37:08:E1:F4:D7:24:C4:BE:C5:A8:BD:F9:5B:C8:52:A7" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "91:68:FD:55:88:FE:62:32:EB:09:B2:15:7F:85:D9:B7:B4:3A:E0:EE:59:72:F8:CC:CD:1E:C1:F3:18:3C:2E:6D:CC:AA:99:A0:87:02:2A:4B:38:E8:52:C0:82:38:B7:1B:51:A6:4C:9F:15:A7:30:26:B4:7D:B1:22:71:81:77:E7:01:7D:82:34:2D:33:DD:3B:99:06:3B:75:AC:6E:D0:36:99:E8:D1:AF:03:4F:02:FC:9E:A5:3B:72:79:F8:14:B0:8D:D3:FB:93:1B:F0:AC:30:11:4E:5B:58:E3:89:01:C4:20:E4:35:BD:0C:73:04:A6:83:50:B5:D0:CF:38:07:97:FD:1E:5A:13:9E:B2:9B:56:54:C9:0A:2F:90:66:AD:D5:17:3E:0F:EB:21:8E:27:D8:C8:43:9E:7A:5E:09:F9:85:8A:78:CE:E9:59:56:E6:0C:58:CD:3B:4F:63:A1:01:D5:76:F2:43:E5:3F:F7:DE:97:9D:BD:1D:5C:06:72:8B:11:FB:CE:08:03:1E:45:97:A4:83:8C:B3:91:76:43:E8:3F:9C:04:8F:4A:CE:29:E0:32:80:E0:6C:FE:6B:6E:2B:29:93:2F:BA:EC:E3:1F:B9:D5:DE:C2:AC:3A:EE:DA:F0:8F:3A:B7:CE:AE:F7:2E:59:3B:A9:D5:E2:86:A4:6C:59:BC" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.com" } ], "validity": { "not_valid_after": "20250210132004Z", "not_valid_before": "20240210132004Z" } }, "changed": false } TASK [Load certificate YAML to cert_issued variable] *************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:98 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.380) 0:00:15.324 ***** ok: [sut] => { "ansible_facts": { "cert_issued": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "75:5E:AF:72:6B:79:AB:4A:66:C4:3E:53:EF:89:04:4F:2B:26:48:70" }, "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": "28:3C:D8:1D:37:08:E1:F4:D7:24:C4:BE:C5:A8:BD:F9:5B:C8:52:A7" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "91:68:FD:55:88:FE:62:32:EB:09:B2:15:7F:85:D9:B7:B4:3A:E0:EE:59:72:F8:CC:CD:1E:C1:F3:18:3C:2E:6D:CC:AA:99:A0:87:02:2A:4B:38:E8:52:C0:82:38:B7:1B:51:A6:4C:9F:15:A7:30:26:B4:7D:B1:22:71:81:77:E7:01:7D:82:34:2D:33:DD:3B:99:06:3B:75:AC:6E:D0:36:99:E8:D1:AF:03:4F:02:FC:9E:A5:3B:72:79:F8:14:B0:8D:D3:FB:93:1B:F0:AC:30:11:4E:5B:58:E3:89:01:C4:20:E4:35:BD:0C:73:04:A6:83:50:B5:D0:CF:38:07:97:FD:1E:5A:13:9E:B2:9B:56:54:C9:0A:2F:90:66:AD:D5:17:3E:0F:EB:21:8E:27:D8:C8:43:9E:7A:5E:09:F9:85:8A:78:CE:E9:59:56:E6:0C:58:CD:3B:4F:63:A1:01:D5:76:F2:43:E5:3F:F7:DE:97:9D:BD:1D:5C:06:72:8B:11:FB:CE:08:03:1E:45:97:A4:83:8C:B3:91:76:43:E8:3F:9C:04:8F:4A:CE:29:E0:32:80:E0:6C:FE:6B:6E:2B:29:93:2F:BA:EC:E3:1F:B9:D5:DE:C2:AC:3A:EE:DA:F0:8F:3A:B7:CE:AE:F7:2E:59:3B:A9:D5:E2:86:A4:6C:59:BC" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.com" } ], "validity": { "not_valid_after": "20250210132004Z", "not_valid_before": "20240210132004Z" } } }, "changed": false } TASK [Verify certificate subject] ********************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:102 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.020) 0:00:15.344 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate SAN] ************************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:111 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.019) 0:00:15.364 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key size] ********************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:120 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.019) 0:00:15.383 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Key Usage] ******************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:127 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.019) 0:00:15.402 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Extended Key Usage] *********************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:138 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.021) 0:00:15.424 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve auto-renew flag] ************************************************ task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:151 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.021) 0:00:15.445 ***** 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.046345", "end": "2024-02-10 13:20:09.487829", "rc": 0, "start": "2024-02-10 13:20:09.441484" } STDOUT: yes TASK [Verify certificate auto-renew flag] ************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:160 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.310) 0:00:15.755 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Set virtualenv_path] ***************************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:2 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.020) 0:00:15.776 ***** ok: [sut] => { "ansible_facts": { "__virtualenv_path": "/tmp/certificate-tests-venv" }, "changed": false } TASK [Check if system is ostree] *********************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:9 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.007) 0:00:15.783 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [Set flag to indicate system is ostree] *********************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:14 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.015) 0:00:15.799 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [Ensure python3 is installed] ********************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:18 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.016) 0:00:15.815 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [Ensure python3 is installed] ********************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:29 Saturday 10 February 2024 13:20:09 +0000 (0:00:00.015) 0:00:15.831 ***** ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do lsrpackages: python3-cryptography python3-pyasn1 TASK [Retrieve certificate file stats] ***************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:40 Saturday 10 February 2024 13:20:10 +0000 (0:00:00.977) 0:00:16.808 ***** ok: [sut] => { "changed": false, "stat": { "atime": 1707571205.656452, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "534b68acbc6819b3f471ea21f62614f9ec65e5ad", "ctime": 1707571205.6544518, "dev": 51713, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 4516627, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1707571205.6544518, "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": "3700209530", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if certificate file exists] *************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:45 Saturday 10 February 2024 13:20:10 +0000 (0:00:00.210) 0:00:17.019 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate file owner and group] ********************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:51 Saturday 10 February 2024 13:20:10 +0000 (0:00:00.018) 0:00:17.037 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate permissions] ****************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:63 Saturday 10 February 2024 13:20:10 +0000 (0:00:00.021) 0:00:17.058 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve key file stats] ************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:69 Saturday 10 February 2024 13:20:10 +0000 (0:00:00.018) 0:00:17.077 ***** ok: [sut] => { "changed": false, "stat": { "atime": 1707571205.5954518, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "ea4ab8b1b1e854010d2d0572511af80068d3237c", "ctime": 1707571205.6544518, "dev": 51713, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 288412, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1707571205.6544518, "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": "2979527501", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if key file exists] *********************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:74 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.216) 0:00:17.293 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key file owner and group] ***************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:80 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.020) 0:00:17.314 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Parse certificate] ******************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:92 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.022) 0:00:17.336 ***** ok: [sut] => { "certificate": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "75:5E:AF:72:6B:79:AB:4A:66:C4:3E:53:EF:89:04:4F:2B:26:48:70" }, "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": "96:98:B2:EB:6A:2E:21:1D:D7:C0:C7:EE:EC:19:5E:90:C8:50:18:21" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "2B:DC:4A:61:70:0F:B5:1A:92:0B:6F:06:5A:B1:96:95:07:8E:4D:2E:AE:71:4A:18:E4:A2:B6:3F:50:F8:E5:5A:55:EE:66:E8:2B:33:69:7D:02:7E:05:E8:6A:06:72:D9:84:D5:A8:5D:25:A2:E8:71:20:ED:B4:6C:89:8A:B8:DD:AD:8C:CE:85:60:5F:D3:48:BF:BF:1F:59:0D:BA:FC:58:9B:F5:EB:52:B1:CD:B8:30:A7:92:13:D1:1A:F8:82:98:79:6C:ED:26:54:B5:20:30:6A:C0:01:4E:A7:F0:B6:E3:8B:43:9E:5E:09:B9:49:EB:17:15:0F:17:83:9A:C9:65:4B:B9:CA:E2:39:1C:FF:DB:B7:22:6B:18:DA:3E:26:80:8F:A4:63:43:76:BF:C8:7F:60:70:C0:3B:C6:BE:55:FA:84:DB:B3:C5:BD:5F:45:A9:77:C7:B6:E5:04:1A:30:AE:AE:42:A9:08:3E:FC:73:3B:07:48:C1:F3:66:A0:EF:DC:78:FC:79:10:D0:86:7C:47:1F:9C:6A:82:AF:72:B9:D6:CC:05:07:70:CE:D6:1F:33:C2:F0:AD:ED:E2:5C:56:21:B7:ED:39:85:58:25:BA:D0:17:7C:DF:3D:8C:E9:2A:FD:CA:32:C3:CD:7B:EE:09:F7:86:5C:FD:8D:98:C8:D4:0A" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.org" } ], "validity": { "not_valid_after": "20250210132004Z", "not_valid_before": "20240210132005Z" } }, "changed": false } TASK [Load certificate YAML to cert_issued variable] *************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:98 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.256) 0:00:17.593 ***** ok: [sut] => { "ansible_facts": { "cert_issued": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "75:5E:AF:72:6B:79:AB:4A:66:C4:3E:53:EF:89:04:4F:2B:26:48:70" }, "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": "96:98:B2:EB:6A:2E:21:1D:D7:C0:C7:EE:EC:19:5E:90:C8:50:18:21" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "2B:DC:4A:61:70:0F:B5:1A:92:0B:6F:06:5A:B1:96:95:07:8E:4D:2E:AE:71:4A:18:E4:A2:B6:3F:50:F8:E5:5A:55:EE:66:E8:2B:33:69:7D:02:7E:05:E8:6A:06:72:D9:84:D5:A8:5D:25:A2:E8:71:20:ED:B4:6C:89:8A:B8:DD:AD:8C:CE:85:60:5F:D3:48:BF:BF:1F:59:0D:BA:FC:58:9B:F5:EB:52:B1:CD:B8:30:A7:92:13:D1:1A:F8:82:98:79:6C:ED:26:54:B5:20:30:6A:C0:01:4E:A7:F0:B6:E3:8B:43:9E:5E:09:B9:49:EB:17:15:0F:17:83:9A:C9:65:4B:B9:CA:E2:39:1C:FF:DB:B7:22:6B:18:DA:3E:26:80:8F:A4:63:43:76:BF:C8:7F:60:70:C0:3B:C6:BE:55:FA:84:DB:B3:C5:BD:5F:45:A9:77:C7:B6:E5:04:1A:30:AE:AE:42:A9:08:3E:FC:73:3B:07:48:C1:F3:66:A0:EF:DC:78:FC:79:10:D0:86:7C:47:1F:9C:6A:82:AF:72:B9:D6:CC:05:07:70:CE:D6:1F:33:C2:F0:AD:ED:E2:5C:56:21:B7:ED:39:85:58:25:BA:D0:17:7C:DF:3D:8C:E9:2A:FD:CA:32:C3:CD:7B:EE:09:F7:86:5C:FD:8D:98:C8:D4:0A" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.org" } ], "validity": { "not_valid_after": "20250210132004Z", "not_valid_before": "20240210132005Z" } } }, "changed": false } TASK [Verify certificate subject] ********************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:102 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.018) 0:00:17.611 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate SAN] ************************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:111 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.019) 0:00:17.631 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key size] ********************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:120 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.019) 0:00:17.650 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Key Usage] ******************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:127 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.019) 0:00:17.669 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Extended Key Usage] *********************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:138 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.021) 0:00:17.690 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve auto-renew flag] ************************************************ task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:151 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.021) 0:00:17.712 ***** 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.046042", "end": "2024-02-10 13:20:11.692394", "rc": 0, "start": "2024-02-10 13:20:11.646352" } STDOUT: yes TASK [Verify certificate auto-renew flag] ************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:160 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.248) 0:00:17.960 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Set virtualenv_path] ***************************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:2 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.020) 0:00:17.980 ***** ok: [sut] => { "ansible_facts": { "__virtualenv_path": "/tmp/certificate-tests-venv" }, "changed": false } TASK [Check if system is ostree] *********************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:9 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.008) 0:00:17.988 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [Set flag to indicate system is ostree] *********************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:14 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.016) 0:00:18.005 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [Ensure python3 is installed] ********************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:18 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.015) 0:00:18.021 ***** skipping: [sut] => { "changed": false, "skip_reason": "Conditional result was False" } TASK [Ensure python3 is installed] ********************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:29 Saturday 10 February 2024 13:20:11 +0000 (0:00:00.015) 0:00:18.037 ***** ok: [sut] => { "changed": false, "rc": 0, "results": [] } MSG: Nothing to do lsrpackages: python3-cryptography python3-pyasn1 TASK [Retrieve certificate file stats] ***************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:40 Saturday 10 February 2024 13:20:12 +0000 (0:00:00.972) 0:00:19.010 ***** ok: [sut] => { "changed": false, "stat": { "atime": 1707571206.338454, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "9bfee2ce43f3899abde2518e911c01e5b7fcb4f0", "ctime": 1707571206.335454, "dev": 51713, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 4516628, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1707571206.335454, "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": "2428706683", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if certificate file exists] *************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:45 Saturday 10 February 2024 13:20:12 +0000 (0:00:00.213) 0:00:19.223 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate file owner and group] ********************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:51 Saturday 10 February 2024 13:20:12 +0000 (0:00:00.019) 0:00:19.243 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate permissions] ****************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:63 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.021) 0:00:19.264 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve key file stats] ************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:69 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.019) 0:00:19.283 ***** ok: [sut] => { "changed": false, "stat": { "atime": 1707571206.2764537, "attr_flags": "", "attributes": [], "block_size": 4096, "blocks": 8, "charset": "us-ascii", "checksum": "cda674f0d32e61e0d834c952a3009c61fd473996", "ctime": 1707571206.335454, "dev": 51713, "device_type": 0, "executable": false, "exists": true, "gid": 0, "gr_name": "root", "inode": 289250, "isblk": false, "ischr": false, "isdir": false, "isfifo": false, "isgid": false, "islnk": false, "isreg": true, "issock": false, "isuid": false, "mimetype": "text/plain", "mode": "0600", "mtime": 1707571206.335454, "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": "3665951273", "wgrp": false, "woth": false, "writeable": true, "wusr": true, "xgrp": false, "xoth": false, "xusr": false } } TASK [Verify if key file exists] *********************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:74 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.214) 0:00:19.498 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key file owner and group] ***************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:80 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.019) 0:00:19.517 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Parse certificate] ******************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:92 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.021) 0:00:19.539 ***** ok: [sut] => { "certificate": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "75:5E:AF:72:6B:79:AB:4A:66:C4:3E:53:EF:89:04:4F:2B:26:48:70" }, "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": "85:12:0B:0C:32:C6:0F:BA:C9:B8:45:E1:F3:DD:2B:51:7D:E5:46:EB" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "7E:8E:60:A0:0A:FC:95:86:25:78:36:0C:21:25:39:CF:6F:6E:3C:FB:C8:1C:E3:C3:07:DA:0B:E8:29:88:5B:03:70:3F:BA:AC:15:22:38:56:95:C0:24:4B:9D:88:FB:22:0C:88:04:AC:8C:D9:04:1B:91:7B:40:1C:8D:63:C5:58:70:9E:BD:1F:34:45:43:6D:FB:A8:C3:9F:BF:D6:4B:06:44:FE:86:06:45:24:D5:8B:51:57:61:28:7D:5F:E8:48:5A:C9:DE:CA:84:FB:C4:86:A4:41:68:52:C0:BD:E6:19:4F:B3:BE:E0:96:6D:BB:E6:7D:C3:93:16:13:F3:DE:E5:D2:2E:04:FF:40:15:27:39:49:3A:AA:AB:5C:9B:4A:78:4E:1D:D4:67:F7:9B:33:34:92:EA:CC:A8:82:02:97:8B:CC:A9:3D:24:76:C7:84:75:F8:98:1D:22:3D:A5:86:1A:51:26:AD:DB:C7:17:6E:AD:34:0C:03:4D:E6:4A:47:96:07:43:65:1B:35:6A:55:7C:69:D8:33:76:45:B0:92:23:3C:D8:0D:8D:44:12:B9:2D:DC:22:19:C6:D3:C0:E1:19:D8:8C:E9:AE:C6:D2:FC:AA:BB:F7:73:C3:7B:D8:53:8D:22:63:42:D4:B2:59:38:BF:B9:7A:2A:06:09:E6:CC:37" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.net" } ], "validity": { "not_valid_after": "20250210132004Z", "not_valid_before": "20240210132006Z" } }, "changed": false } TASK [Load certificate YAML to cert_issued variable] *************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:98 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.257) 0:00:19.796 ***** ok: [sut] => { "ansible_facts": { "cert_issued": { "extensions": { "authorityKeyIdentifier": { "critical": false, "value": "75:5E:AF:72:6B:79:AB:4A:66:C4:3E:53:EF:89:04:4F:2B:26:48:70" }, "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": "85:12:0B:0C:32:C6:0F:BA:C9:B8:45:E1:F3:DD:2B:51:7D:E5:46:EB" } }, "key_size": 2048, "signature_algorithm": { "algorithm": "sha256WithRSAEncryption", "signature": "7E:8E:60:A0:0A:FC:95:86:25:78:36:0C:21:25:39:CF:6F:6E:3C:FB:C8:1C:E3:C3:07:DA:0B:E8:29:88:5B:03:70:3F:BA:AC:15:22:38:56:95:C0:24:4B:9D:88:FB:22:0C:88:04:AC:8C:D9:04:1B:91:7B:40:1C:8D:63:C5:58:70:9E:BD:1F:34:45:43:6D:FB:A8:C3:9F:BF:D6:4B:06:44:FE:86:06:45:24:D5:8B:51:57:61:28:7D:5F:E8:48:5A:C9:DE:CA:84:FB:C4:86:A4:41:68:52:C0:BD:E6:19:4F:B3:BE:E0:96:6D:BB:E6:7D:C3:93:16:13:F3:DE:E5:D2:2E:04:FF:40:15:27:39:49:3A:AA:AB:5C:9B:4A:78:4E:1D:D4:67:F7:9B:33:34:92:EA:CC:A8:82:02:97:8B:CC:A9:3D:24:76:C7:84:75:F8:98:1D:22:3D:A5:86:1A:51:26:AD:DB:C7:17:6E:AD:34:0C:03:4D:E6:4A:47:96:07:43:65:1B:35:6A:55:7C:69:D8:33:76:45:B0:92:23:3C:D8:0D:8D:44:12:B9:2D:DC:22:19:C6:D3:C0:E1:19:D8:8C:E9:AE:C6:D2:FC:AA:BB:F7:73:C3:7B:D8:53:8D:22:63:42:D4:B2:59:38:BF:B9:7A:2A:06:09:E6:CC:37" }, "subject": [ { "name": "commonName", "oid": "2.5.4.3", "value": "www.example.net" } ], "validity": { "not_valid_after": "20250210132004Z", "not_valid_before": "20240210132006Z" } } }, "changed": false } TASK [Verify certificate subject] ********************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:102 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.018) 0:00:19.815 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate SAN] ************************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:111 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.019) 0:00:19.834 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify key size] ********************************************************* task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:120 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.019) 0:00:19.853 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Key Usage] ******************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:127 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.018) 0:00:19.872 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Verify certificate Extended Key Usage] *********************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:138 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.021) 0:00:19.893 ***** ok: [sut] => { "changed": false } MSG: All assertions passed TASK [Retrieve auto-renew flag] ************************************************ task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:151 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.022) 0:00:19.916 ***** 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.046025", "end": "2024-02-10 13:20:13.897027", "rc": 0, "start": "2024-02-10 13:20:13.851002" } STDOUT: yes TASK [Verify certificate auto-renew flag] ************************************** task path: /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:160 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.248) 0:00:20.164 ***** ok: [sut] => { "changed": false } MSG: All assertions passed META: ran handlers META: ran handlers PLAY RECAP ********************************************************************* sut : ok=69 changed=6 unreachable=0 failed=0 skipped=14 rescued=0 ignored=0 Saturday 10 February 2024 13:20:13 +0000 (0:00:00.018) 0:00:20.183 ***** =============================================================================== linux-system-roles.certificate : Ensure certificate role dependencies are installed --- 4.89s /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:5 linux-system-roles.certificate : Ensure provider packages are installed --- 3.12s /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:24 linux-system-roles.certificate : Ensure certificate requests ------------ 2.46s /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:104 Ensure python3 is installed --------------------------------------------- 0.98s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:29 Ensure python3 is installed --------------------------------------------- 0.97s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:29 Ensure python3 is installed --------------------------------------------- 0.95s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:29 linux-system-roles.certificate : Ensure provider service is running ----- 0.75s /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:92 Gathering Facts --------------------------------------------------------- 0.65s /WORKDIR/git-weekly-cicac3q1sc/tests/tests_many_self_signed.yml:2 ------------- Gathering Facts --------------------------------------------------------- 0.54s /WORKDIR/git-weekly-cicac3q1sc/tests/tests_many_self_signed.yml:18 ------------ Parse certificate ------------------------------------------------------- 0.38s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:92 Retrieve auto-renew flag ------------------------------------------------ 0.31s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:151 linux-system-roles.certificate : Ensure pre-scripts hooks directory exists --- 0.29s /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:37 linux-system-roles.certificate : Check if system is ostree -------------- 0.26s /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/set_vars.yml:11 Parse certificate ------------------------------------------------------- 0.26s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:92 Parse certificate ------------------------------------------------------- 0.26s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:92 Retrieve auto-renew flag ------------------------------------------------ 0.25s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:151 Retrieve auto-renew flag ------------------------------------------------ 0.25s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:151 linux-system-roles.certificate : Ensure post-scripts hooks directory exists --- 0.22s /WORKDIR/git-weekly-cicac3q1sc/tests/roles/linux-system-roles.certificate/tasks/main.yml:63 Retrieve key file stats ------------------------------------------------- 0.22s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:69 Retrieve key file stats ------------------------------------------------- 0.22s /WORKDIR/git-weekly-cicac3q1sc/tests/tasks/assert_certificate_parameters.yml:69 ---^---^---^---^---^--- # STDERR: ---v---v---v---v---v--- ---^---^---^---^---^---