ansible-playbook 2.9.27
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible-playbook
  python version = 2.7.5 (default, Nov 14 2023, 16:14:06) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]
Using /etc/ansible/ansible.cfg as config file
[WARNING]: running playbook inside collection fedora.linux_system_roles
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_certificate_runafter.yml ***************************************
1 plays in /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml

PLAY [Test certificate issuance with run_after shell script] *******************

TASK [Gathering Facts] *********************************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:6
Saturday 27 July 2024  08:44:20 -0400 (0:00:00.025)       0:00:00.025 ********* 
ok: [managed_node1]
META: ran handlers

TASK [Install cockpit] *********************************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:9
Saturday 27 July 2024  08:44:21 -0400 (0:00:00.905)       0:00:00.931 ********* 

TASK [fedora.linux_system_roles.cockpit : Ensure ansible_facts and variables used by role] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:2
Saturday 27 July 2024  08:44:21 -0400 (0:00:00.061)       0:00:00.992 ********* 
included: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/set_vars.yml for managed_node1

TASK [fedora.linux_system_roles.cockpit : Ensure ansible_facts used by role] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/set_vars.yml:2
Saturday 27 July 2024  08:44:21 -0400 (0:00:00.035)       0:00:01.028 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Check if system is ostree] ***********
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/set_vars.yml:10
Saturday 27 July 2024  08:44:21 -0400 (0:00:00.048)       0:00:01.077 ********* 
ok: [managed_node1] => {
    "changed": false, 
    "stat": {
        "exists": false
    }
}

TASK [fedora.linux_system_roles.cockpit : Set flag to indicate system is ostree] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/set_vars.yml:15
Saturday 27 July 2024  08:44:22 -0400 (0:00:00.427)       0:00:01.504 ********* 
ok: [managed_node1] => {
    "ansible_facts": {
        "__cockpit_is_ostree": false
    }, 
    "changed": false
}

TASK [fedora.linux_system_roles.cockpit : Check if transactional-update exists in /sbin] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/set_vars.yml:22
Saturday 27 July 2024  08:44:22 -0400 (0:00:00.096)       0:00:01.601 ********* 
ok: [managed_node1] => {
    "changed": false, 
    "stat": {
        "exists": false
    }
}

TASK [fedora.linux_system_roles.cockpit : Set flag if transactional-update exists] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/set_vars.yml:27
Saturday 27 July 2024  08:44:22 -0400 (0:00:00.319)       0:00:01.920 ********* 
ok: [managed_node1] => {
    "ansible_facts": {
        "__cockpit_is_transactional": false
    }, 
    "changed": false
}

TASK [fedora.linux_system_roles.cockpit : Set version specific variables] ******
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/set_vars.yml:31
Saturday 27 July 2024  08:44:22 -0400 (0:00:00.050)       0:00:01.970 ********* 
ok: [managed_node1] => (item=/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/vars/CentOS-7.yml) => {
    "ansible_facts": {
        "__cockpit_packages": {
            "default": "{{ __cockpit_packages_minimal + __cockpit_packages_default }}", 
            "full": "{{ __cockpit_packages_minimal + __cockpit_packages_default + __cockpit_packages_full }}", 
            "minimal": "{{ __cockpit_packages_minimal }}"
        }, 
        "__cockpit_packages_default": [
            "cockpit", 
            "cockpit-networkmanager", 
            "cockpit-packagekit", 
            "cockpit-selinux", 
            "cockpit-storaged"
        ], 
        "__cockpit_packages_exclude": [
            "cockpit-machines-ovirt", 
            "cockpit-tests"
        ], 
        "__cockpit_packages_full": [
            "cockpit-composer", 
            "cockpit-dashboard", 
            "cockpit-doc", 
            "cockpit-docker", 
            "cockpit-machines", 
            "cockpit-pcp", 
            "cockpit-shell"
        ], 
        "__cockpit_packages_minimal": [
            "cockpit-system", 
            "cockpit-ws"
        ]
    }, 
    "ansible_included_var_files": [
        "/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/vars/CentOS-7.yml"
    ], 
    "ansible_loop_var": "item", 
    "changed": false, 
    "item": "/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/vars/CentOS-7.yml"
}

TASK [fedora.linux_system_roles.cockpit : List active RHEL repositories] *******
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:11
Saturday 27 July 2024  08:44:22 -0400 (0:00:00.058)       0:00:02.029 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Enable RHEL repositories] ************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:18
Saturday 27 July 2024  08:44:22 -0400 (0:00:00.044)       0:00:02.073 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Manage cockpit packages using platform specific package manager if applicable] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:23
Saturday 27 July 2024  08:44:22 -0400 (0:00:00.044)       0:00:02.118 ********* 
included: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/setup-yum.yml for managed_node1

TASK [fedora.linux_system_roles.cockpit : If choosing custom package set, ensure minimal cockpit is included] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/setup-yum.yml:2
Saturday 27 July 2024  08:44:22 -0400 (0:00:00.063)       0:00:02.181 ********* 
ok: [managed_node1] => {
    "ansible_facts": {
        "cockpit_packages": "minimal"
    }, 
    "changed": false
}

TASK [fedora.linux_system_roles.cockpit : Ensure Cockpit Web Console packages are installed.] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/setup-yum.yml:7
Saturday 27 July 2024  08:44:22 -0400 (0:00:00.049)       0:00:02.231 ********* 
changed: [managed_node1] => {
    "changed": true, 
    "changes": {
        "installed": [
            "cockpit-system", 
            "cockpit-ws"
        ]
    }, 
    "rc": 0, 
    "results": [
        "Loaded plugins: fastestmirror\nLoading mirror speeds from cached hostfile\nResolving Dependencies\n--> Running transaction check\n---> Package cockpit-system.noarch 0:195.12-1.el7.centos will be installed\n--> Processing Dependency: cockpit-bridge >= 195.12-1.el7.centos for package: cockpit-system-195.12-1.el7.centos.noarch\n---> Package cockpit-ws.x86_64 0:195.12-1.el7.centos will be installed\n--> Running transaction check\n---> Package cockpit-bridge.x86_64 0:195.12-1.el7.centos will be installed\n--> Finished Dependency Resolution\n\nDependencies Resolved\n\n================================================================================\n Package              Arch         Version                   Repository    Size\n================================================================================\nInstalling:\n cockpit-system       noarch       195.12-1.el7.centos       extras       1.7 M\n cockpit-ws           x86_64       195.12-1.el7.centos       extras       808 k\nInstalling for dependencies:\n cockpit-bridge       x86_64       195.12-1.el7.centos       extras       555 k\n\nTransaction Summary\n================================================================================\nInstall  2 Packages (+1 Dependent package)\n\nTotal download size: 3.0 M\nInstalled size: 4.1 M\nDownloading packages:\n--------------------------------------------------------------------------------\nTotal                                               10 MB/s | 3.0 MB  00:00     \nRunning transaction check\nRunning transaction test\nTransaction test succeeded\nRunning transaction\n  Installing : cockpit-bridge-195.12-1.el7.centos.x86_64                    1/3 \n  Installing : cockpit-system-195.12-1.el7.centos.noarch                    2/3 \n  Installing : cockpit-ws-195.12-1.el7.centos.x86_64                        3/3 \n  Verifying  : cockpit-ws-195.12-1.el7.centos.x86_64                        1/3 \n  Verifying  : cockpit-system-195.12-1.el7.centos.noarch                    2/3 \n  Verifying  : cockpit-bridge-195.12-1.el7.centos.x86_64                    3/3 \n\nInstalled:\n  cockpit-system.noarch 0:195.12-1.el7.centos                                   \n  cockpit-ws.x86_64 0:195.12-1.el7.centos                                       \n\nDependency Installed:\n  cockpit-bridge.x86_64 0:195.12-1.el7.centos                                   \n\nComplete!\n"
    ]
}
lsrpackages: cockpit-system cockpit-ws

TASK [fedora.linux_system_roles.cockpit : Configure firewall] ******************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:32
Saturday 27 July 2024  08:44:27 -0400 (0:00:04.632)       0:00:06.863 ********* 
included: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/firewall.yml for managed_node1

TASK [Ensure the cockpit service is enabled] ***********************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/firewall.yml:3
Saturday 27 July 2024  08:44:27 -0400 (0:00:00.032)       0:00:06.896 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Configure selinux] *******************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:35
Saturday 27 July 2024  08:44:27 -0400 (0:00:00.044)       0:00:06.941 ********* 
included: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/selinux.yml for managed_node1

TASK [Ensure the service and the ports status with the selinux role] ***********
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/selinux.yml:3
Saturday 27 July 2024  08:44:27 -0400 (0:00:00.032)       0:00:06.973 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Create custom port configuration file directory] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:38
Saturday 27 July 2024  08:44:27 -0400 (0:00:00.046)       0:00:07.019 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Create custom port configuration file] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:47
Saturday 27 July 2024  08:44:27 -0400 (0:00:00.046)       0:00:07.066 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Clean up port configuration file for undefined custom port] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:62
Saturday 27 July 2024  08:44:27 -0400 (0:00:00.044)       0:00:07.110 ********* 
ok: [managed_node1] => {
    "changed": false, 
    "path": "/etc/systemd/system/cockpit.socket.d/listen.conf", 
    "state": "absent"
}

TASK [fedora.linux_system_roles.cockpit : Ensure Cockpit Web Console is started/stopped and enabled/disabled] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:71
Saturday 27 July 2024  08:44:28 -0400 (0:00:00.455)       0:00:07.566 ********* 
changed: [managed_node1] => {
    "changed": true, 
    "enabled": true, 
    "name": "cockpit.socket", 
    "state": "started", 
    "status": {
        "Accept": "no", 
        "ActiveEnterTimestampMonotonic": "0", 
        "ActiveExitTimestampMonotonic": "0", 
        "ActiveState": "inactive", 
        "After": "systemd-journald.socket sysinit.target system.slice", 
        "AllowIsolate": "no", 
        "AmbientCapabilities": "0", 
        "AssertResult": "no", 
        "AssertTimestampMonotonic": "0", 
        "Backlog": "128", 
        "Before": "sockets.target cockpit-motd.service cockpit.service shutdown.target", 
        "BindIPv6Only": "default", 
        "BlockIOAccounting": "no", 
        "BlockIOWeight": "18446744073709551615", 
        "Broadcast": "no", 
        "CPUAccounting": "no", 
        "CPUQuotaPerSecUSec": "infinity", 
        "CPUSchedulingPolicy": "0", 
        "CPUSchedulingPriority": "0", 
        "CPUSchedulingResetOnFork": "no", 
        "CPUShares": "18446744073709551615", 
        "CanIsolate": "no", 
        "CanReload": "no", 
        "CanStart": "yes", 
        "CanStop": "yes", 
        "CapabilityBoundingSet": "18446744073709551615", 
        "CollectMode": "inactive", 
        "ConditionResult": "no", 
        "ConditionTimestampMonotonic": "0", 
        "Conflicts": "shutdown.target", 
        "ControlPID": "0", 
        "DefaultDependencies": "yes", 
        "DeferAcceptUSec": "0", 
        "Delegate": "no", 
        "Description": "Cockpit Web Service Socket", 
        "DevicePolicy": "auto", 
        "DirectoryMode": "0755", 
        "Documentation": "man:cockpit-ws(8)", 
        "ExecStartPost": "{ path=/bin/ln ; argv[]=/bin/ln -snf active.motd /run/cockpit/motd ; ignore_errors=yes ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }", 
        "ExecStopPost": "{ path=/bin/ln ; argv[]=/bin/ln -snf /usr/share/cockpit/motd/inactive.motd /run/cockpit/motd ; ignore_errors=yes ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }", 
        "FragmentPath": "/usr/lib/systemd/system/cockpit.socket", 
        "FreeBind": "no", 
        "IOScheduling": "0", 
        "IPTOS": "-1", 
        "IPTTL": "-1", 
        "Id": "cockpit.socket", 
        "IgnoreOnIsolate": "no", 
        "IgnoreOnSnapshot": "no", 
        "IgnoreSIGPIPE": "yes", 
        "InactiveEnterTimestampMonotonic": "0", 
        "InactiveExitTimestampMonotonic": "0", 
        "JobTimeoutAction": "none", 
        "JobTimeoutUSec": "0", 
        "KeepAlive": "no", 
        "KeepAliveIntervalUSec": "0", 
        "KeepAliveProbes": "0", 
        "KeepAliveTimeUSec": "0", 
        "KillMode": "control-group", 
        "KillSignal": "15", 
        "LimitAS": "18446744073709551615", 
        "LimitCORE": "18446744073709551615", 
        "LimitCPU": "18446744073709551615", 
        "LimitDATA": "18446744073709551615", 
        "LimitFSIZE": "18446744073709551615", 
        "LimitLOCKS": "18446744073709551615", 
        "LimitMEMLOCK": "65536", 
        "LimitMSGQUEUE": "819200", 
        "LimitNICE": "0", 
        "LimitNOFILE": "4096", 
        "LimitNPROC": "14311", 
        "LimitRSS": "18446744073709551615", 
        "LimitRTPRIO": "0", 
        "LimitRTTIME": "18446744073709551615", 
        "LimitSIGPENDING": "14311", 
        "LimitSTACK": "18446744073709551615", 
        "ListenStream": "[::]:9090", 
        "LoadState": "loaded", 
        "Mark": "-1", 
        "MaxConnections": "64", 
        "MemoryAccounting": "no", 
        "MemoryCurrent": "18446744073709551615", 
        "MemoryLimit": "18446744073709551615", 
        "MountFlags": "0", 
        "NAccepted": "0", 
        "NConnections": "0", 
        "Names": "cockpit.socket", 
        "NeedDaemonReload": "no", 
        "Nice": "0", 
        "NoDelay": "no", 
        "NoNewPrivileges": "no", 
        "NonBlocking": "no", 
        "OOMScoreAdjust": "0", 
        "OnFailureJobMode": "replace", 
        "PassCredentials": "no", 
        "PassSecurity": "no", 
        "PipeSize": "0", 
        "Priority": "-1", 
        "PrivateDevices": "no", 
        "PrivateNetwork": "no", 
        "PrivateTmp": "no", 
        "ProtectHome": "no", 
        "ProtectSystem": "no", 
        "ReceiveBuffer": "0", 
        "RefuseManualStart": "no", 
        "RefuseManualStop": "no", 
        "RemoveOnStop": "no", 
        "RequiredBy": "cockpit.service", 
        "Requires": "sysinit.target system.slice", 
        "Result": "success", 
        "ReusePort": "no", 
        "RuntimeDirectoryMode": "0755", 
        "SameProcessGroup": "no", 
        "SecureBits": "0", 
        "SendBuffer": "0", 
        "SendSIGHUP": "no", 
        "SendSIGKILL": "yes", 
        "Slice": "system.slice", 
        "SocketMode": "0666", 
        "StandardError": "inherit", 
        "StandardInput": "null", 
        "StandardOutput": "journal", 
        "StartupBlockIOWeight": "18446744073709551615", 
        "StartupCPUShares": "18446744073709551615", 
        "StopWhenUnneeded": "no", 
        "SubState": "dead", 
        "SyslogLevelPrefix": "yes", 
        "SyslogPriority": "30", 
        "SystemCallErrorNumber": "0", 
        "TTYReset": "no", 
        "TTYVHangup": "no", 
        "TTYVTDisallocate": "no", 
        "TasksAccounting": "no", 
        "TasksCurrent": "18446744073709551615", 
        "TasksMax": "18446744073709551615", 
        "TimeoutUSec": "1min 30s", 
        "TimerSlackNSec": "50000", 
        "Transient": "no", 
        "Transparent": "no", 
        "Triggers": "cockpit.service", 
        "UMask": "0022", 
        "UnitFilePreset": "disabled", 
        "UnitFileState": "disabled", 
        "Wants": "cockpit-motd.service"
    }
}

TASK [fedora.linux_system_roles.cockpit : Create cockpit.conf configuration file] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:77
Saturday 27 July 2024  08:44:28 -0400 (0:00:00.787)       0:00:08.354 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Check the OS version for self-sign] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:93
Saturday 27 July 2024  08:44:29 -0400 (0:00:00.044)       0:00:08.399 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [Create certificates using the certificate role] **************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:102
Saturday 27 July 2024  08:44:29 -0400 (0:00:00.044)       0:00:08.443 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Set cockpit_cert and cockpit_private_key] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:108
Saturday 27 July 2024  08:44:29 -0400 (0:00:00.044)       0:00:08.488 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Link to configured existing certificate] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:114
Saturday 27 July 2024  08:44:29 -0400 (0:00:00.045)       0:00:08.534 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.cockpit : Link to configured existing certificate key] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:124
Saturday 27 July 2024  08:44:29 -0400 (0:00:00.044)       0:00:08.579 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [Allow certmonger to write into Cockpit's certificate directory] **********
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:20
Saturday 27 July 2024  08:44:29 -0400 (0:00:00.044)       0:00:08.623 ********* 
changed: [managed_node1] => {
    "changed": true, 
    "gid": 0, 
    "group": "root", 
    "mode": "0755", 
    "owner": "root", 
    "path": "/etc/cockpit/ws-certs.d/", 
    "secontext": "system_u:object_r:cert_t:s0", 
    "size": 4096, 
    "state": "directory", 
    "uid": 0
}

TASK [Get name of cockpit group to use] ****************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:28
Saturday 27 July 2024  08:44:29 -0400 (0:00:00.302)       0:00:08.926 ********* 
included: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/get_cockpit_group.yml for managed_node1

TASK [Get name of cockpit group for tests] *************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/get_cockpit_group.yml:3
Saturday 27 July 2024  08:44:29 -0400 (0:00:00.035)       0:00:08.961 ********* 
ok: [managed_node1] => {
    "ansible_facts": {
        "getent_group": {
            "cockpit-wsinstance": null
        }
    }, 
    "changed": false
}

MSG:

One or more supplied key could not be found in the database.

TASK [Set __cockpit_test_group] ************************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/get_cockpit_group.yml:9
Saturday 27 July 2024  08:44:30 -0400 (0:00:00.418)       0:00:09.380 ********* 
ok: [managed_node1] => {
    "ansible_facts": {
        "__cockpit_test_group": "cockpit-ws"
    }, 
    "changed": false
}

TASK [Generate certificate with certificate system role] ***********************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:32
Saturday 27 July 2024  08:44:30 -0400 (0:00:00.047)       0:00:09.428 ********* 

TASK [fedora.linux_system_roles.certificate : Set version specific variables] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:2
Saturday 27 July 2024  08:44:30 -0400 (0:00:00.106)       0:00:09.535 ********* 
included: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/set_vars.yml for managed_node1

TASK [fedora.linux_system_roles.certificate : Ensure ansible_facts used by role] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/set_vars.yml:2
Saturday 27 July 2024  08:44:30 -0400 (0:00:00.034)       0:00:09.569 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.certificate : Check if system is ostree] *******
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/set_vars.yml:10
Saturday 27 July 2024  08:44:30 -0400 (0:00:00.049)       0:00:09.619 ********* 
ok: [managed_node1] => {
    "changed": false, 
    "stat": {
        "exists": false
    }
}

TASK [fedora.linux_system_roles.certificate : Set flag to indicate system is ostree] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/set_vars.yml:15
Saturday 27 July 2024  08:44:30 -0400 (0:00:00.320)       0:00:09.939 ********* 
ok: [managed_node1] => {
    "ansible_facts": {
        "__certificate_is_ostree": false
    }, 
    "changed": false
}

TASK [fedora.linux_system_roles.certificate : Set platform/version specific variables] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/set_vars.yml:19
Saturday 27 July 2024  08:44:30 -0400 (0:00:00.051)       0:00:09.990 ********* 
skipping: [managed_node1] => (item=RedHat.yml)  => {
    "ansible_loop_var": "item", 
    "changed": false, 
    "item": "RedHat.yml", 
    "skip_reason": "Conditional result was False"
}
skipping: [managed_node1] => (item=CentOS.yml)  => {
    "ansible_loop_var": "item", 
    "changed": false, 
    "item": "CentOS.yml", 
    "skip_reason": "Conditional result was False"
}
ok: [managed_node1] => (item=CentOS_7.yml) => {
    "ansible_facts": {
        "__certificate_default_directory": "/etc/pki/tls", 
        "__certificate_packages": [
            "python-pyasn1", 
            "python-cryptography", 
            "python-dbus"
        ]
    }, 
    "ansible_included_var_files": [
        "/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/vars/CentOS_7.yml"
    ], 
    "ansible_loop_var": "item", 
    "changed": false, 
    "item": "CentOS_7.yml"
}
skipping: [managed_node1] => (item=CentOS_7.9.yml)  => {
    "ansible_loop_var": "item", 
    "changed": false, 
    "item": "CentOS_7.9.yml", 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.certificate : Ensure certificate role dependencies are installed] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:5
Saturday 27 July 2024  08:44:30 -0400 (0:00:00.084)       0:00:10.075 ********* 
changed: [managed_node1] => {
    "changed": true, 
    "changes": {
        "installed": [
            "python-pyasn1", 
            "python-cryptography"
        ]
    }, 
    "rc": 0, 
    "results": [
        "dbus-python-1.1.1-9.el7.x86_64 providing python-dbus is already installed", 
        "Loaded plugins: fastestmirror\nLoading mirror speeds from cached hostfile\nResolving Dependencies\n--> Running transaction check\n---> Package python2-cryptography.x86_64 0:1.7.2-2.el7 will be installed\n--> Processing Dependency: python-idna >= 2.0 for package: python2-cryptography-1.7.2-2.el7.x86_64\n--> Processing Dependency: python-cffi >= 1.4.1 for package: python2-cryptography-1.7.2-2.el7.x86_64\n--> Processing Dependency: python-enum34 for package: python2-cryptography-1.7.2-2.el7.x86_64\n---> Package python2-pyasn1.noarch 0:0.1.9-7.el7 will be installed\n--> Running transaction check\n---> Package python-cffi.x86_64 0:1.6.0-5.el7 will be installed\n--> Processing Dependency: python-pycparser for package: python-cffi-1.6.0-5.el7.x86_64\n---> Package python-enum34.noarch 0:1.0.4-1.el7 will be installed\n---> Package python-idna.noarch 0:2.4-1.el7 will be installed\n--> Running transaction check\n---> Package python-pycparser.noarch 0:2.14-1.el7 will be installed\n--> Processing Dependency: python-ply for package: python-pycparser-2.14-1.el7.noarch\n--> Running transaction check\n---> Package python-ply.noarch 0:3.4-11.el7 will be installed\n--> Finished Dependency Resolution\n\nDependencies Resolved\n\n================================================================================\n Package                     Arch          Version            Repository   Size\n================================================================================\nInstalling:\n python2-cryptography        x86_64        1.7.2-2.el7        base        502 k\n python2-pyasn1              noarch        0.1.9-7.el7        base        100 k\nInstalling for dependencies:\n python-cffi                 x86_64        1.6.0-5.el7        base        218 k\n python-enum34               noarch        1.0.4-1.el7        base         52 k\n python-idna                 noarch        2.4-1.el7          base         94 k\n python-ply                  noarch        3.4-11.el7         base        123 k\n python-pycparser            noarch        2.14-1.el7         base        104 k\n\nTransaction Summary\n================================================================================\nInstall  2 Packages (+5 Dependent packages)\n\nTotal download size: 1.2 M\nInstalled size: 6.1 M\nDownloading packages:\n--------------------------------------------------------------------------------\nTotal                                              4.0 MB/s | 1.2 MB  00:00     \nRunning transaction check\nRunning transaction test\nTransaction test succeeded\nRunning transaction\n  Installing : python2-pyasn1-0.1.9-7.el7.noarch                            1/7 \n  Installing : python-enum34-1.0.4-1.el7.noarch                             2/7 \n  Installing : python-ply-3.4-11.el7.noarch                                 3/7 \n  Installing : python-pycparser-2.14-1.el7.noarch                           4/7 \n  Installing : python-cffi-1.6.0-5.el7.x86_64                               5/7 \n  Installing : python-idna-2.4-1.el7.noarch                                 6/7 \n  Installing : python2-cryptography-1.7.2-2.el7.x86_64                      7/7 \n  Verifying  : python-idna-2.4-1.el7.noarch                                 1/7 \n  Verifying  : python-pycparser-2.14-1.el7.noarch                           2/7 \n  Verifying  : python-ply-3.4-11.el7.noarch                                 3/7 \n  Verifying  : python-cffi-1.6.0-5.el7.x86_64                               4/7 \n  Verifying  : python-enum34-1.0.4-1.el7.noarch                             5/7 \n  Verifying  : python2-pyasn1-0.1.9-7.el7.noarch                            6/7 \n  Verifying  : python2-cryptography-1.7.2-2.el7.x86_64                      7/7 \n\nInstalled:\n  python2-cryptography.x86_64 0:1.7.2-2.el7 python2-pyasn1.noarch 0:0.1.9-7.el7\n\nDependency Installed:\n  python-cffi.x86_64 0:1.6.0-5.el7        python-enum34.noarch 0:1.0.4-1.el7   \n  python-idna.noarch 0:2.4-1.el7          python-ply.noarch 0:3.4-11.el7       \n  python-pycparser.noarch 0:2.14-1.el7   \n\nComplete!\n"
    ]
}
lsrpackages: python-cryptography python-dbus python-pyasn1

TASK [fedora.linux_system_roles.certificate : Ensure provider packages are installed] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:23
Saturday 27 July 2024  08:44:35 -0400 (0:00:04.669)       0:00:14.745 ********* 
changed: [managed_node1] => (item=certmonger) => {
    "__certificate_provider": "certmonger", 
    "ansible_loop_var": "__certificate_provider", 
    "changed": true, 
    "changes": {
        "installed": [
            "certmonger"
        ]
    }, 
    "rc": 0, 
    "results": [
        "Loaded plugins: fastestmirror\nLoading mirror speeds from cached hostfile\nResolving Dependencies\n--> Running transaction check\n---> Package certmonger.x86_64 0:0.78.4-17.el7_9 will be installed\n--> Processing Dependency: psmisc for package: certmonger-0.78.4-17.el7_9.x86_64\n--> Processing Dependency: libtevent.so.0(TEVENT_0.9.9)(64bit) for package: certmonger-0.78.4-17.el7_9.x86_64\n--> Processing Dependency: libtalloc.so.2(TALLOC_2.0.2)(64bit) for package: certmonger-0.78.4-17.el7_9.x86_64\n--> Processing Dependency: libxmlrpc_util.so.3()(64bit) for package: certmonger-0.78.4-17.el7_9.x86_64\n--> Processing Dependency: libxmlrpc_client.so.3()(64bit) for package: certmonger-0.78.4-17.el7_9.x86_64\n--> Processing Dependency: libxmlrpc.so.3()(64bit) for package: certmonger-0.78.4-17.el7_9.x86_64\n--> Processing Dependency: libtevent.so.0()(64bit) for package: certmonger-0.78.4-17.el7_9.x86_64\n--> Processing Dependency: libtalloc.so.2()(64bit) for package: certmonger-0.78.4-17.el7_9.x86_64\n--> Running transaction check\n---> Package libtalloc.x86_64 0:2.1.16-1.el7 will be installed\n---> Package libtevent.x86_64 0:0.9.39-1.el7 will be installed\n---> Package psmisc.x86_64 0:22.20-17.el7 will be installed\n---> Package xmlrpc-c.x86_64 0:1.32.5-1905.svn2451.el7 will be installed\n---> Package xmlrpc-c-client.x86_64 0:1.32.5-1905.svn2451.el7 will be installed\n--> Finished Dependency Resolution\n\nDependencies Resolved\n\n================================================================================\n Package             Arch       Version                       Repository   Size\n================================================================================\nInstalling:\n certmonger          x86_64     0.78.4-17.el7_9               updates     608 k\nInstalling for dependencies:\n libtalloc           x86_64     2.1.16-1.el7                  base         33 k\n libtevent           x86_64     0.9.39-1.el7                  base         41 k\n psmisc              x86_64     22.20-17.el7                  base        141 k\n xmlrpc-c            x86_64     1.32.5-1905.svn2451.el7       base        130 k\n xmlrpc-c-client     x86_64     1.32.5-1905.svn2451.el7       base         32 k\n\nTransaction Summary\n================================================================================\nInstall  1 Package (+5 Dependent packages)\n\nTotal download size: 984 k\nInstalled size: 3.7 M\nDownloading packages:\n--------------------------------------------------------------------------------\nTotal                                              2.7 MB/s | 984 kB  00:00     \nRunning transaction check\nRunning transaction test\nTransaction test succeeded\nRunning transaction\n  Installing : xmlrpc-c-1.32.5-1905.svn2451.el7.x86_64                      1/6 \n  Installing : libtalloc-2.1.16-1.el7.x86_64                                2/6 \n  Installing : libtevent-0.9.39-1.el7.x86_64                                3/6 \n  Installing : xmlrpc-c-client-1.32.5-1905.svn2451.el7.x86_64               4/6 \n  Installing : psmisc-22.20-17.el7.x86_64                                   5/6 \n  Installing : certmonger-0.78.4-17.el7_9.x86_64                            6/6 \n  Verifying  : xmlrpc-c-client-1.32.5-1905.svn2451.el7.x86_64               1/6 \n  Verifying  : libtevent-0.9.39-1.el7.x86_64                                2/6 \n  Verifying  : libtalloc-2.1.16-1.el7.x86_64                                3/6 \n  Verifying  : xmlrpc-c-1.32.5-1905.svn2451.el7.x86_64                      4/6 \n  Verifying  : certmonger-0.78.4-17.el7_9.x86_64                            5/6 \n  Verifying  : psmisc-22.20-17.el7.x86_64                                   6/6 \n\nInstalled:\n  certmonger.x86_64 0:0.78.4-17.el7_9                                           \n\nDependency Installed:\n  libtalloc.x86_64 0:2.1.16-1.el7                                               \n  libtevent.x86_64 0:0.9.39-1.el7                                               \n  psmisc.x86_64 0:22.20-17.el7                                                  \n  xmlrpc-c.x86_64 0:1.32.5-1905.svn2451.el7                                     \n  xmlrpc-c-client.x86_64 0:1.32.5-1905.svn2451.el7                              \n\nComplete!\n"
    ]
}
lsrpackages: certmonger

TASK [fedora.linux_system_roles.certificate : Ensure pre-scripts hooks directory exists] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:35
Saturday 27 July 2024  08:44:38 -0400 (0:00:03.400)       0:00:18.145 ********* 
changed: [managed_node1] => (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": 4096, 
    "state": "directory", 
    "uid": 0
}

TASK [fedora.linux_system_roles.certificate : Ensure post-scripts hooks directory exists] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:61
Saturday 27 July 2024  08:44:39 -0400 (0:00:00.346)       0:00:18.492 ********* 
changed: [managed_node1] => (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": 4096, 
    "state": "directory", 
    "uid": 0
}

TASK [fedora.linux_system_roles.certificate : Ensure provider service is running] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:90
Saturday 27 July 2024  08:44:39 -0400 (0:00:00.362)       0:00:18.855 ********* 
changed: [managed_node1] => (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": "system.slice basic.target syslog.target network.target dbus.service systemd-journald.socket", 
        "AllowIsolate": "no", 
        "AmbientCapabilities": "0", 
        "AssertResult": "no", 
        "AssertTimestampMonotonic": "0", 
        "Before": "shutdown.target", 
        "BlockIOAccounting": "no", 
        "BlockIOWeight": "18446744073709551615", 
        "BusName": "org.fedorahosted.certmonger", 
        "CPUAccounting": "no", 
        "CPUQuotaPerSecUSec": "infinity", 
        "CPUSchedulingPolicy": "0", 
        "CPUSchedulingPriority": "0", 
        "CPUSchedulingResetOnFork": "no", 
        "CPUShares": "18446744073709551615", 
        "CanIsolate": "no", 
        "CanReload": "no", 
        "CanStart": "yes", 
        "CanStop": "yes", 
        "CapabilityBoundingSet": "18446744073709551615", 
        "CollectMode": "inactive", 
        "ConditionResult": "no", 
        "ConditionTimestampMonotonic": "0", 
        "Conflicts": "shutdown.target", 
        "ControlPID": "0", 
        "DefaultDependencies": "yes", 
        "Delegate": "no", 
        "Description": "Certificate monitoring and PKI enrollment", 
        "DevicePolicy": "auto", 
        "EnvironmentFile": "/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 /var/run/certmonger.pid -n $OPTS ; ignore_errors=no ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }", 
        "FailureAction": "none", 
        "FileDescriptorStoreMax": "0", 
        "FragmentPath": "/usr/lib/systemd/system/certmonger.service", 
        "GuessMainPID": "yes", 
        "IOScheduling": "0", 
        "Id": "certmonger.service", 
        "IgnoreOnIsolate": "no", 
        "IgnoreOnSnapshot": "no", 
        "IgnoreSIGPIPE": "yes", 
        "InactiveEnterTimestampMonotonic": "0", 
        "InactiveExitTimestampMonotonic": "0", 
        "JobTimeoutAction": "none", 
        "JobTimeoutUSec": "0", 
        "KillMode": "control-group", 
        "KillSignal": "15", 
        "LimitAS": "18446744073709551615", 
        "LimitCORE": "18446744073709551615", 
        "LimitCPU": "18446744073709551615", 
        "LimitDATA": "18446744073709551615", 
        "LimitFSIZE": "18446744073709551615", 
        "LimitLOCKS": "18446744073709551615", 
        "LimitMEMLOCK": "65536", 
        "LimitMSGQUEUE": "819200", 
        "LimitNICE": "0", 
        "LimitNOFILE": "4096", 
        "LimitNPROC": "14311", 
        "LimitRSS": "18446744073709551615", 
        "LimitRTPRIO": "0", 
        "LimitRTTIME": "18446744073709551615", 
        "LimitSIGPENDING": "14311", 
        "LimitSTACK": "18446744073709551615", 
        "LoadState": "loaded", 
        "MainPID": "0", 
        "MemoryAccounting": "no", 
        "MemoryCurrent": "18446744073709551615", 
        "MemoryLimit": "18446744073709551615", 
        "MountFlags": "0", 
        "Names": "certmonger.service", 
        "NeedDaemonReload": "no", 
        "Nice": "0", 
        "NoNewPrivileges": "no", 
        "NonBlocking": "no", 
        "NotifyAccess": "none", 
        "OOMScoreAdjust": "0", 
        "OnFailureJobMode": "replace", 
        "PIDFile": "/var/run/certmonger.pid", 
        "PermissionsStartOnly": "no", 
        "PrivateDevices": "no", 
        "PrivateNetwork": "no", 
        "PrivateTmp": "no", 
        "ProtectHome": "no", 
        "ProtectSystem": "no", 
        "RefuseManualStart": "no", 
        "RefuseManualStop": "no", 
        "RemainAfterExit": "no", 
        "Requires": "basic.target system.slice", 
        "Restart": "no", 
        "RestartUSec": "100ms", 
        "Result": "success", 
        "RootDirectoryStartOnly": "no", 
        "RuntimeDirectoryMode": "0755", 
        "SameProcessGroup": "no", 
        "SecureBits": "0", 
        "SendSIGHUP": "no", 
        "SendSIGKILL": "yes", 
        "Slice": "system.slice", 
        "StandardError": "inherit", 
        "StandardInput": "null", 
        "StandardOutput": "journal", 
        "StartLimitAction": "none", 
        "StartLimitBurst": "5", 
        "StartLimitInterval": "10000000", 
        "StartupBlockIOWeight": "18446744073709551615", 
        "StartupCPUShares": "18446744073709551615", 
        "StatusErrno": "0", 
        "StopWhenUnneeded": "no", 
        "SubState": "dead", 
        "SyslogLevelPrefix": "yes", 
        "SyslogPriority": "30", 
        "SystemCallErrorNumber": "0", 
        "TTYReset": "no", 
        "TTYVHangup": "no", 
        "TTYVTDisallocate": "no", 
        "TasksAccounting": "no", 
        "TasksCurrent": "18446744073709551615", 
        "TasksMax": "18446744073709551615", 
        "TimeoutStartUSec": "1min 30s", 
        "TimeoutStopUSec": "1min 30s", 
        "TimerSlackNSec": "50000", 
        "Transient": "no", 
        "Type": "dbus", 
        "UMask": "0022", 
        "UnitFilePreset": "disabled", 
        "UnitFileState": "disabled", 
        "WatchdogTimestampMonotonic": "0", 
        "WatchdogUSec": "0"
    }
}

TASK [fedora.linux_system_roles.certificate : Ensure certificate requests] *****
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:101
Saturday 27 July 2024  08:44:40 -0400 (0:00:00.570)       0:00:19.425 ********* 
changed: [managed_node1] => (item={u'ca': u'local', u'group': u'cockpit-ws', u'name': u'monger-cockpit', u'dns': [u'localhost', u'www.example.com'], u'run_after': u'DEST=/etc/cockpit/ws-certs.d/monger-cockpit.cert\ncat /etc/pki/tls/certs/monger-cockpit.crt \\\n/etc/pki/tls/private/monger-cockpit.key > $DEST\nchmod 640 $DEST\nchown root:cockpit-ws $DEST\n'}) => {
    "ansible_loop_var": "item", 
    "changed": true, 
    "item": {
        "ca": "local", 
        "dns": [
            "localhost", 
            "www.example.com"
        ], 
        "group": "cockpit-ws", 
        "name": "monger-cockpit", 
        "run_after": "DEST=/etc/cockpit/ws-certs.d/monger-cockpit.cert\ncat /etc/pki/tls/certs/monger-cockpit.crt \\\n/etc/pki/tls/private/monger-cockpit.key > $DEST\nchmod 640 $DEST\nchown root:cockpit-ws $DEST\n"
    }
}

MSG:

Certificate requested (new). Pre/Post run hooks updated. File attributes updated.

TASK [fedora.linux_system_roles.certificate : Slurp the contents of the files] ***
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:152
Saturday 27 July 2024  08:44:40 -0400 (0:00:00.834)       0:00:20.260 ********* 
skipping: [managed_node1] => (item=[u'cert', {u'ca': u'local', u'group': u'cockpit-ws', u'name': u'monger-cockpit', u'dns': [u'localhost', u'www.example.com'], u'run_after': u'DEST=/etc/cockpit/ws-certs.d/monger-cockpit.cert\ncat /etc/pki/tls/certs/monger-cockpit.crt \\\n/etc/pki/tls/private/monger-cockpit.key > $DEST\nchmod 640 $DEST\nchown root:cockpit-ws $DEST\n'}])  => {
    "ansible_loop_var": "item", 
    "changed": false, 
    "item": [
        "cert", 
        {
            "ca": "local", 
            "dns": [
                "localhost", 
                "www.example.com"
            ], 
            "group": "cockpit-ws", 
            "name": "monger-cockpit", 
            "run_after": "DEST=/etc/cockpit/ws-certs.d/monger-cockpit.cert\ncat /etc/pki/tls/certs/monger-cockpit.crt \\\n/etc/pki/tls/private/monger-cockpit.key > $DEST\nchmod 640 $DEST\nchown root:cockpit-ws $DEST\n"
        }
    ], 
    "skip_reason": "Conditional result was False"
}
skipping: [managed_node1] => (item=[u'key', {u'ca': u'local', u'group': u'cockpit-ws', u'name': u'monger-cockpit', u'dns': [u'localhost', u'www.example.com'], u'run_after': u'DEST=/etc/cockpit/ws-certs.d/monger-cockpit.cert\ncat /etc/pki/tls/certs/monger-cockpit.crt \\\n/etc/pki/tls/private/monger-cockpit.key > $DEST\nchmod 640 $DEST\nchown root:cockpit-ws $DEST\n'}])  => {
    "ansible_loop_var": "item", 
    "changed": false, 
    "item": [
        "key", 
        {
            "ca": "local", 
            "dns": [
                "localhost", 
                "www.example.com"
            ], 
            "group": "cockpit-ws", 
            "name": "monger-cockpit", 
            "run_after": "DEST=/etc/cockpit/ws-certs.d/monger-cockpit.cert\ncat /etc/pki/tls/certs/monger-cockpit.crt \\\n/etc/pki/tls/private/monger-cockpit.key > $DEST\nchmod 640 $DEST\nchown root:cockpit-ws $DEST\n"
        }
    ], 
    "skip_reason": "Conditional result was False"
}
skipping: [managed_node1] => (item=[u'ca', {u'ca': u'local', u'group': u'cockpit-ws', u'name': u'monger-cockpit', u'dns': [u'localhost', u'www.example.com'], u'run_after': u'DEST=/etc/cockpit/ws-certs.d/monger-cockpit.cert\ncat /etc/pki/tls/certs/monger-cockpit.crt \\\n/etc/pki/tls/private/monger-cockpit.key > $DEST\nchmod 640 $DEST\nchown root:cockpit-ws $DEST\n'}])  => {
    "ansible_loop_var": "item", 
    "changed": false, 
    "item": [
        "ca", 
        {
            "ca": "local", 
            "dns": [
                "localhost", 
                "www.example.com"
            ], 
            "group": "cockpit-ws", 
            "name": "monger-cockpit", 
            "run_after": "DEST=/etc/cockpit/ws-certs.d/monger-cockpit.cert\ncat /etc/pki/tls/certs/monger-cockpit.crt \\\n/etc/pki/tls/private/monger-cockpit.key > $DEST\nchmod 640 $DEST\nchown root:cockpit-ws $DEST\n"
        }
    ], 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.certificate : Create return data] **************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:160
Saturday 27 July 2024  08:44:40 -0400 (0:00:00.067)       0:00:20.327 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.certificate : Stop tracking certificates] ******
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:176
Saturday 27 July 2024  08:44:41 -0400 (0:00:00.044)       0:00:20.372 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [fedora.linux_system_roles.certificate : Remove files] ********************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:181
Saturday 27 July 2024  08:44:41 -0400 (0:00:00.046)       0:00:20.418 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [Restart cockpit to use the new certificates] *****************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:57
Saturday 27 July 2024  08:44:41 -0400 (0:00:00.046)       0:00:20.465 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [Get PEM of certmonger's local CA] ****************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:64
Saturday 27 July 2024  08:44:41 -0400 (0:00:00.044)       0:00:20.510 ********* 
changed: [managed_node1] => {
    "changed": true, 
    "cmd": [
        "openssl", 
        "pkcs12", 
        "-in", 
        "/var/lib/certmonger/local/creds", 
        "-out", 
        "/var/lib/certmonger/local/ca.pem", 
        "-nokeys", 
        "-nodes", 
        "-passin", 
        "pass:"
    ], 
    "delta": "0:00:00.006408", 
    "end": "2024-07-27 08:44:41.519623", 
    "rc": 0, 
    "start": "2024-07-27 08:44:41.513215"
}

STDERR:

MAC verified OK

TASK [Test - cockpit works with TLS and expected certificate] ******************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:72
Saturday 27 July 2024  08:44:41 -0400 (0:00:00.427)       0:00:20.937 ********* 
[WARNING]: Consider using the get_url or uri module rather than running 'curl'.
If you need to use command because get_url or uri is insufficient you can add
'warn: false' to this command task or set 'command_warnings=False' in
ansible.cfg to get rid of this message.
ok: [managed_node1] => {
    "changed": false, 
    "cmd": [
        "curl", 
        "--cacert", 
        "/var/lib/certmonger/local/ca.pem", 
        "https://localhost:9090"
    ], 
    "delta": "0:00:00.221656", 
    "end": "2024-07-27 08:44:42.033653", 
    "rc": 0, 
    "start": "2024-07-27 08:44:41.811997"
}

STDOUT:

<!DOCTYPE html>
<html>
  <head>
    <title>Loading...</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="robots" content="noindex">
    <meta insert_dynamic_content_here><script>
(function (root, data) {
    window.cockpit_po = data;
/* The syntax of this line is important for po2json */
}(this, {"":{"language":"en"}}));
</script>
<base href="/">
    <script>
var environment = {"page":{"connect":false,"require_host":false},"hostname":"ip-10-31-8-118.us-east-1.aws.redhat.com","os-release":{"NAME":"CentOS Linux","ID":"centos","PRETTY_NAME":"CentOS Linux 7 (Core)","CPE_NAME":"cpe:/o:centos:centos:7","ID_LIKE":"rhel fedora"}};
    </script>
    <script>
/* global XMLHttpRequest */
(function(a) {
    var r;
    /* Some browsers fail localStorage access due to corruption, preventing Cockpit login */    try {
        r = window.localStorage;
        window.localStorage.removeItem("url-root");
    } catch (e) {
        r = window.sessionStorage;
        a.warn(String(e));
    }
    var s;
    var l = window.environment || {};
    var u = l.OAuth || null;
    if (u) {
        if (!u.TokenParam) u.TokenParam = "access_token";
        if (!u.ErrorParam) u.ErrorParam = "error_description";
    }
    var t = /\$\{([^}]+)\}|\$([a-zA-Z0-9_]+)/g;
    function c(e /* ... */) {
        var o = Array.prototype.slice.call(arguments, 1);
        return e.replace(t, function(e, t, n) {
            return o[t || n] || "";
        });
    }
    function n(e) {
        if (window.cockpit_po) {
            var t = window.cockpit_po[e];
            if (t && t[1]) return t[1];
        }
        return e;
    }
    function i() {
        if (!document.querySelectorAll) return;
        var e = document.querySelectorAll("[translate]");
        for (var t = 0; t < e.length; t++) e[t].textContent = n(e[t].textContent);
    }
    var d = n;
    var f, p, w, v;
    var o = /[?&]?([^=]+)=([^&]*)/g;
    var g = null;
    function y(e) {
        e = e.split("+").join(" ");
        var t = {};
        var n;
        for (;;) {
            n = o.exec(e);
            if (!n) break;
            t[decodeURIComponent(n[1])] = decodeURIComponent(n[2]);
        }
        return t;
    }
    if (!a) a = function() {};
    function m(e) {
        return document.getElementById(e);
    }
    function h(e) {
        if (window.console) a.warn("fatal:", e);
        m("login-again").style.display = "none";
        m("login-wait-validating").style.display = "none";
        if (g) {
            m("login-again").href = g;
            m("login-again").style.display = "block";
        }
        m("login").style.display = "none";
        m("login-details").style.display = "none";
        m("login-fatal").style.display = "block";
        var t = m("login-fatal-message");
        t.textContent = "";
        t.appendChild(document.createTextNode(e));
    }
    function b(e, t) {
        var n;
        var o = m(e);
        if (o && window.getComputedStyle) n = window.getComputedStyle(o, ":before");
        if (!n) return;
        var i;
        var r = n.content;
        if (r && r != "none" && r != "normal") {
            i = r.length;
            if ((r[0] === '"' || r[0] === "'") && i > 2 && r[i - 1] === r[0]) r = r.substr(1, i - 2);
            o.innerHTML = r || t;
        } else {
            o.removeAttribute("class");
        }
    }
    function k() {
        function o(e) {
            if (window.console) a.warn(c(d("This web browser is too old to run Cockpit (missing $0)"), e));
            m("login").style.display = "none";
            m("login-details").style.display = "none";
            m("unsupported-browser").style.display = "block";
            document.body.className += " brand-unsupported-browser";
        }
        function e(t, e) {
            var n;
            try {
                n = e[t];
            } catch (e) {
                h(c(d("The web browser configuration prevents Cockpit from running (inaccessible $0)"), t));
                throw e;
            }
            if (n === undefined) {
                o();
                return false;
            }
            return true;
        }
        function t() {
            /*
             * Be certain to use parenthesis when checking CSS strings
             * as Edge is oddly particular.
             *
             * Instead of "display: inline", use:
             * "(display: inline)"
             *        or
             * "display", "inline"
             */
            var e = [].join.call(arguments, ": ");
            if (!window.CSS.supports.apply(this, arguments)) {
                h(c(d("The web browser configuration prevents Cockpit from running (inaccessible $0)"), e));
                o(e);
                return false;
            }
            return true;
        }
        return ("MozWebSocket" in window || e("WebSocket", window)) && e("XMLHttpRequest", window) && e("sessionStorage", window) && e("JSON", window) && e("defineProperty", Object) && e("console", window) && e("pushState", window.history) && e("textContent", document) && e("CSS", window) && e("supports", window.CSS) && t("display", "flex") && t("display", "grid");
    }
    function x(e) {
        return e.replace(/^\s+|\s+$/g, "");
    }
    /* Sets values for application, url_root and login_path */    function S(e) {
        var t = document.createElement("a");
        var n = document.baseURI;
        var o;
        /* Some IEs don't support baseURI */        if (!n) {
            o = document.getElementsByTagName("base");
            if (o.length > 0) n = o[0].href; else n = "/";
        }
        e = e || "/";
        t.href = n;
        if (t.pathname != "/") {
            s = t.pathname.replace(/^\/+|\/+$/g, "");
            r.setItem("url-root", s);
            if (s && e.indexOf("/" + s) === 0) e = e.replace("/" + s, "") || "/";
        }
        if (e.indexOf("/=") === 0) {
            l.hostname = e.substring(2);
            e = "/cockpit+" + e.split("/")[1];
        } else if (e.indexOf("/cockpit/") !== 0 && e.indexOf("/cockpit+") !== 0) {
            e = "/cockpit";
        }
        p = e.split("/")[1];
        f = "/" + p + "/login";
        if (s) f = "/" + s + f;
        v = p;
        w = f;
    }
    function T(e, t) {
        // On keypress, only accept spacebar (enter acts as a click)
        if (e && e.type === "keypress" && e.key !== " ") return;
        // Stop the <a>'s click handler, otherwise it causes a page reload
                if (e && e.type === "click") e.preventDefault();
        if (t === undefined) t = m("server-group").style.display === "none";
        m("option-group").setAttribute("data-state", t);
        if (t) {
            m("server-group").style.display = "block";
            m("option-caret").setAttribute("class", "caret caret-down");
            m("option-caret").setAttribute("className", "caret caret-down");
        } else {
            m("server-group").style.display = "none";
            m("option-caret").setAttribute("class", "caret caret-right");
            m("option-caret").setAttribute("className", "caret caret-right");
        }
    }
    function e() {
        window.onload = null;
        i();
        S(window.location.pathname);
        /* Determine if we are nested or not, and switch styles */        if (window.location.pathname.indexOf("/" + s + "/cockpit/") === 0 || window.location.pathname.indexOf("/" + s + "/cockpit+") === 0) document.documentElement.setAttribute("class", "inline");
        // Setup title
                var e = l.page.title;
        if (!e || p.indexOf("cockpit+=") === 0) e = l.hostname;
        document.title = e;
        if (p.indexOf("cockpit+=") === 0) {
            m("brand").style.display = "none";
            m("badge").style.visibility = "hidden";
        } else {
            b("badge", "");
            b("brand", "Cockpit");
        }
        if (!k()) return;
        m("show-other-login-options").addEventListener("click", T);
        m("show-other-login-options").addEventListener("keypress", T);
        m("server-clear").addEventListener("click", function() {
            var e = m("server-field");
            e.value = "";
            e.focus();
        });
        /* Setup the user's last choice about the authorized button */        var t = r.getItem("authorized-default") || "";
        if (t.indexOf("password") !== -1) m("authorized-input").checked = true;
        var n = l["os-release"];
        if (n) r.setItem("os-release", JSON.stringify(n));
        var o = window.sessionStorage.getItem("logout-intent") == "explicit";
        if (o) window.sessionStorage.removeItem("logout-intent");
        /* Try automatic/kerberos authentication? */        if (u) {
            m("login-details").style.display = "none";
            m("login").style.display = "none";
            if (o) {
                O();
                m("login-again").textContent = d("Login Again");
                h(d("Logout Successful"));
            } else {
                I();
            }
        } else if (o) {
            z();
        } else {
            C();
        }
    }
    function C() {
        var e = new XMLHttpRequest();
        e.open("GET", f, true);
        e.onreadystatechange = function() {
            if (e.readyState == 4) {
                if (e.status == 200) {
                    j(JSON.parse(e.responseText));
                } else if (e.status == 401) {
                    z();
                } else if (e.statusText) {
                    h(decodeURIComponent(e.statusText));
                } else if (e.status === 0) {
                    z();
                } else {
                    h(c(d("$0 error"), e.status));
                }
            }
        };
        e.send();
    }
    function O() {
        var e = window.location.href.split("#", 2);
        g = u.URL;
        if (u.URL.indexOf("?") > -1) g += "&"; else g += "?";
        g += "redirect_uri=" + encodeURIComponent(e[0]);
    }
    function I() {
        var e = document.createElement("a");
        if (!u.URL) return h(d("Cockpit authentication is configured incorrectly."));
        var t = y(window.location.search);
        if (!window.location.search && window.location.hash) t = y(window.location.hash.slice(1));
        /* Not all providers allow hashes in redirect urls */        var n, o, i;
        O();
        if (t[u.TokenParam]) {
            if (window.sessionStorage.getItem("login-wanted")) {
                e.href = window.sessionStorage.getItem("login-wanted");
                S(e.pathname);
            }
            n = t[u.TokenParam];
            m("login-wait-validating").style.display = "block";
            i = new XMLHttpRequest();
            i.open("GET", f, true);
            i.setRequestHeader("Authorization", "Bearer " + n);
            i.onreadystatechange = function() {
                if (i.readyState == 4) {
                    if (i.status == 200) {
                        j(JSON.parse(i.responseText));
                    } else {
                        o = $(i.getResponseHeader("WWW-Authenticate"), i.responseText);
                        if (o) P(o); else h(decodeURIComponent(i.statusText));
                    }
                }
            };
            i.send();
        } else if (t[u.ErrorParam]) {
            h(t[u.ErrorParam]);
        } else {
            /* Store url we originally wanted in case we
             * had to strip a hash or query params
             */
            window.sessionStorage.setItem("login-wanted", window.location.href);
            window.location = g;
        }
    }
    function E() {
        m("error-group").style.display = "none";
        m("login-error-message").textContent = "";
    }
    function L(e, t) {
        E();
        if (e) {
            /* OAuth failures are always fatal */
            if (u) {
                h(e);
            } else {
                N(t);
                m("login-error-message").textContent = e;
                m("error-group").style.display = "block";
            }
        }
    }
    function A(e) {
        var t = m("server-field").value;
        if (!t) {
            L(e, false);
        } else {
            E();
            m("login-error-message").textContent = e;
            m("error-group").style.display = "block";
            T(null, true);
            N();
        }
    }
    function R(e) {
        var t = m("login-note");
        if (e) {
            t.style.display = "block";
            t.textContent = e;
        } else {
            t.innerHTML = "&nbsp;";
        }
    }
    function H() {
        return l.page.require_host && v.indexOf("cockpit+=") === -1;
    }
    function U() {
        L(null);
        var e;
        var t = x(m("login-user-input").value);
        if (t === "") {
            L(d("User name cannot be empty"));
        } else if (H() && m("server-field").value === "") {
            L(d("Please specify the host to connect to"));
        } else {
            e = m("server-field").value;
            if (e) {
                p = "cockpit+=" + e;
                f = w.replace("/" + v + "/", "/" + p + "/");
            } else {
                p = v;
                f = w;
            }
            m("server-name").textContent = e || l.hostname;
            m("login-button").removeEventListener("click", U);
            /* When checked we tell the server to keep authentication */            var n = m("authorized-input").checked ? "password" : "";
            var o = m("login-password-input").value;
            r.setItem("authorized-default", n);
            var i = {
                Authorization: "Basic " + window.btoa(q(t + ":" + o)),
                "X-Authorize": n
            };
            // allow unknown remote hosts with interactive logins with "Connect to:"
                        if (e) i["X-SSH-Connect-Unknown-Hosts"] = "yes";
            J("GET", i, false);
        }
    }
    function N(e) {
        var t = l.page.connect;
        var n = m("option-group").getAttribute("data-state");
        m("login-wait-validating").style.display = "none";
        m("login").style.visibility = "visible";
        m("login").style.display = "block";
        m("user-group").style.display = e ? "none" : "block";
        m("password-group").style.display = e ? "none" : "block";
        m("conversation-group").style.display = e ? "block" : "none";
        m("login-button-text").textContent = d("Log In");
        m("login-password-input").value = "";
        if (H()) {
            m("option-group").style.display = "none";
            n = true;
        } else {
            m("option-group").style.display = !t || e ? "none" : "block";
        }
        if (!t || e) {
            m("server-group").style.display = "none";
        } else {
            m("server-group").style.display = n ? "block" : "none";
        }
        m("login-button").removeAttribute("disabled");
        if (!e) m("login-button").addEventListener("click", U);
    }
    function z() {
        /* Show the login screen */
        m("server-name").textContent = document.title;
        R(d("Log in with your server user account."));
        m("login-user-input").addEventListener("keydown", function(e) {
            L(null);
            if (e.which == 13) m("login-password-input").focus();
        }, false);
        var e = function(e) {
            L(null);
            if (e.which == 13) U();
        };
        m("login-password-input").addEventListener("keydown", e);
        m("authorized-input").addEventListener("keydown", e);
        N();
        m("login-user-input").focus();
    }
    function P(e) {
        var t = e.echo ? "text" : "password";
        m("conversation-prompt").textContent = e.prompt;
        var n = m("conversation-message");
        var o = e.error || e.message;
        if (o) {
            n.textContent = o;
            n.style.display = "block";
        } else {
            n.style.display = "none";
        }
        var i = m("conversation-input");
        i.value = "";
        if (e["default"]) i.value = e["default"];
        i.setAttribute("type", t);
        i.focus();
        L("");
        function r() {
            m("conversation-input").removeEventListener("keydown", s);
            m("login-button").removeEventListener("click", r);
            L(null, true);
            W(e.id, m("conversation-input").value);
        }
        function s(e) {
            L(null, true);
            if (e.which == 13) {
                r();
            }
        }
        m("conversation-input").addEventListener("keydown", s);
        m("login-button").addEventListener("click", r);
        N(true);
    }
    function q(e) {
        return window.unescape(encodeURIComponent(e));
    }
    function $(e, t) {
        var n;
        var o;
        var i;
        var r;
        if (!e) return null;
        n = e.split(" ");
        if (n[0].toLowerCase() !== "x-conversation" && n.length != 3) return null;
        r = n[1];
        try {
            o = window.atob(n[2]);
        } catch (e) {
            if (window.console) a.error("Invalid prompt data", e);
            return null;
        }
        try {
            i = JSON.parse(t);
        } catch (e) {
            if (window.console) a.log("Got invalid JSON response for prompt data", e);
            i = {};
        }
        i.id = r;
        i.prompt = o;
        return i;
    }
    function J(e, t, n) {
        m("login-button").setAttribute("disabled", "true");
        var o = new XMLHttpRequest();
        o.open("GET", f, true);
        var i;
        var r;
        var s;
        for (s in t) o.setRequestHeader(s, t[s]);
        o.onreadystatechange = function() {
            if (o.readyState != 4) {
                return;
            } else if (o.status == 200) {
                var e = JSON.parse(o.responseText);
                j(e);
            } else if (o.status == 401) {
                r = o.getResponseHeader("WWW-Authenticate");
                if (r && r.toLowerCase().indexOf("x-conversation") === 0) {
                    i = $(r, o.responseText);
                    if (i) P(i); else h(d("Internal Error: Invalid challenge header"));
                } else {
                    if (window.console) a.log(o.statusText);
                    if (o.statusText.indexOf("authentication-not-supported") > -1) {
                        var t = x(m("login-user-input").value);
                        h(c(d("The server refused to authenticate '$0' using password authentication, and no other supported authentication methods are available."), t));
                    } else if (o.statusText.indexOf("terminated") > -1) {
                        L(d("Authentication Failed: Server closed connection"));
                    } else if (o.statusText.indexOf("no-host") > -1) {
                        A(d("Unable to connect to that address"));
                    } else if (o.statusText.indexOf("unknown-hostkey") > -1) {
                        A(d("Refusing to connect. Hostkey is unknown"));
                    } else if (o.statusText.indexOf("unknown-host") > -1) {
                        A(d("Refusing to connect. Host is unknown"));
                    } else if (o.statusText.indexOf("invalid-hostkey") > -1) {
                        A(d("Refusing to connect. Hostkey does not match"));
                    } else if (n) {
                        L(d("Authentication failed"));
                    } else {
                        L(d("Wrong user name or password"));
                    }
                }
            } else if (o.status == 403) {
                L(decodeURIComponent(o.statusText) || d("Permission denied"));
            } else if (o.statusText) {
                h(decodeURIComponent(o.statusText));
            } else {
                h(c(d("$0 error"), o.status));
            }
            m("login-button").removeAttribute("disabled");
        };
        o.send();
    }
    function W(e, t) {
        var n = {
            Authorization: "X-Conversation " + e + " " + window.btoa(q(t))
        };
        J("GET", n, true);
    }
    function M(e) {
        // Force a reload if not triggered below
        // because only the hash part of the url
        // changed
        var t = window.setTimeout(function() {
            t = null;
            window.location.reload(true);
        }, 100);
        if (e && e != window.location.href) window.location = e;
        // cancel forced reload if we are reloading
                window.onbeforeunload = function() {
            if (t) window.clearTimeout(t);
            t = null;
        };
    }
    function X(n) {
        var e = "/" + p + "/@localhost/";
        if (s) e = "/" + s + e;
        var o = e + "shell/index.html";
        var i = new XMLHttpRequest();
        i.open("GET", e + "manifests.json", true);
        i.onreadystatechange = function() {
            if (i.readyState == 4) {
                if (i.status == 200) {
                    var e = JSON.parse(i.responseText);
                    var t = e ? e["base1"] : {};
                    if (!t["version"] || t["version"] < "119.x") {
                        M(o);
                    } else M(n);
                } else {
                    M(o);
                }
            }
        };
        i.send();
    }
    function G(e, t, n) {
        var o = 0;
        while (o < e.length) {
            var i = e.key(o);
            if (n && i.indexOf("cockpit") !== 0) e.removeItem(i); else if (i.indexOf(t) === 0) e.removeItem(i); else o++;
        }
    }
    function _(e) {
        /* Clear anything not prefixed with
         * different application from sessionStorage
         */
        G(window.sessionStorage, p, true);
        /* Clear anything prefixed with our application
         * and login-data, but not other non-application values.
         */        r.removeItem("login-data");
        G(r, p, false);
        var t;
        if (e && e["login-data"]) {
            t = JSON.stringify(e["login-data"]);
            /* login-data is tied to the auth cookie, since
             * cookies are available after the page
             * session ends login-data should be too.
             */            r.setItem(p + "login-data", t);
            /* Backwards compatbility for packages that aren't application prefixed */            r.setItem("login-data", t);
        }
        /* URL Root is set by cockpit ws and shouldn't be prefixed
         * by application
         */        if (s) r.setItem("url-root", s);
    }
    function j(e) {
        var t = window.sessionStorage.getItem("login-wanted");
        var n = m("server-field").value;
        if (n && p != v) {
            t = "/=" + n;
            if (s) t = "/" + s + t;
        }
        /* clean up sessionStorage. clear anything that isn't prefixed
         * with an application and anything prefixed with our application.
         */        G(window.sessionStorage, p, false);
        _(e);
        /* Make sure that the base1 version is new enough to handle
         * urls that reference machines.
         */        if (p.indexOf("cockpit+=") === 0) {
            X(t);
        } else {
            M(t);
        }
    }
    window.onload = e;
})(window.console);
//# sourceMappingURL=login.min.js.map    </script>
    <style>
#option-group,.btn,.cross,button{cursor:pointer}
.btn,label{font-weight:600}
.btn,img{vertical-align:middle}
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;font-size:62.5%;-webkit-tap-highlight-color:transparent}
body{margin:0;font-family:"Open Sans",Helvetica,Arial,sans-serif;font-size:12px;line-height:1.66666667;background-color:#fff}
a{background:0 0;color:#0099d3;text-decoration:none}
.btn,.btn:active{background-image:none}
a:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}
a:active,a:hover{outline:0}
a:focus,a:hover{color:#00618a;text-decoration:underline}
img{border:0}
button,input,select,textarea{font-family:inherit;margin:0;font-size:inherit;line-height:inherit}
button,input{line-height:normal}
.btn,.form-control{line-height:1.66666667}
button,select{text-transform:none}
button{-webkit-appearance:button;overflow:visible}
button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}
p{margin:0 0 10px}
.container{margin-right:auto;margin-left:auto;padding-left:20px;padding-right:20px}
.form-group,.row{margin-right:-20px}
.container:after,.container:before,.row:after,.row:before{content:" ";display:table}
.container:after,.row:after{clear:both}
@media (min-width:768px){.container{width:760px}
}
@media (min-width:992px){.container{width:980px}
}
@media (min-width:1200px){.container{width:1180px}
}
.row{margin-left:-20px}
.col-lg-5,.col-lg-7,.col-md-10,.col-md-2,.col-md-6,.col-sm-1,.col-sm-10,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-5,.col-sm-6,.col-sm-7,.col-xs-12{position:relative;min-height:1px;padding-left:20px;padding-right:20px}
.col-xs-12{float:left;width:100%}
@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-5,.col-sm-6,.col-sm-7{float:left}
.col-sm-12{width:100%}
.col-sm-10{width:83.33333333333334%}
.col-sm-7{width:58.333333333333336%}
.col-sm-6{width:50%}
.col-sm-5{width:41.66666666666667%}
.col-sm-3{width:25%}
.col-sm-2{width:16.666666666666664%}
.col-sm-1{width:8.333333333333332%}
.col-sm-offset-2{margin-left:16.666666666666664%}
.control-label{text-align:right}
}
@media (min-width:992px){.col-md-10,.col-md-2,.col-md-6{float:left}
.col-md-10{width:83.33333333333334%}
.col-md-6{width:50%}
.col-md-2{width:16.666666666666664%}
}
@media (min-width:1200px){.col-lg-5,.col-lg-7{float:left}
.col-lg-7{width:58.333333333333336%}
.col-lg-5{width:41.66666666666667%}
}
label{display:inline-block;margin-bottom:5px}
.form-control{height:26px;color:#333}
.form-control[type=text],.form-control[type=password]{display:block;width:100%;padding:2px 6px;font-size:12px;background-color:#fff;background-image:none;border:1px solid #bababa;border-radius:1px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}
.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}
.form-control:-moz-placeholder{color:#999;font-style:italic}
.form-control::-moz-placeholder{color:#999;font-style:italic;opacity:1}
.form-control:-ms-input-placeholder{color:#999;font-style:italic}
.form-control::-webkit-input-placeholder{color:#999;font-style:italic}
.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}
.control-label{margin-top:0;margin-bottom:0;padding-top:3px}
.form-group{margin-left:-20px}
.form-group:after{clear:both;margin-bottom:15px}
.form-group:after,.form-group:before{content:" ";display:table}
.btn{display:inline-block;margin-bottom:0;text-align:center;border:1px solid transparent;white-space:nowrap;padding:2px 6px;font-size:12px;border-radius:1px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;-webkit-box-shadow:0 2px 3px rgba(0,0,0,.1);box-shadow:0 2px 3px rgba(0,0,0,.1)}
.btn:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}
.btn:focus,.btn:hover{color:#4d5258;text-decoration:none}
.alert-danger,.btn-primary,.login-pf .container .help-block,body{color:#fff}
.btn:active{outline:0;-webkit-box-shadow:inset 0 2px 8px rgba(0,0,0,.2);box-shadow:inset 0 2px 8px rgba(0,0,0,.2)}
.btn-lg{padding:6px 10px;font-size:14px;line-height:1.33;border-radius:1px}
@-ms-viewport{width:device-width}
.btn-primary{background-color:#189ad1;background-image:-webkit-linear-gradient(top,#1cace8 0,#1998cc 100%);background-image:linear-gradient(to bottom,#1cace8 0,#1998cc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff1cace8', endColorstr='#ff1998cc', GradientType=0);border-color:#267da1}
.btn-primary:active,.btn-primary:focus,.btn-primary:hover{background-color:#189ad1;background-image:none;border-color:#267da1;color:#fff}
.btn-primary:active{background-image:none}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;src:url(cockpit/static/fonts/OpenSans-Regular-webfont.woff) format('woff')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;src:url(cockpit/static/fonts/OpenSans-Bold-webfont.woff) format('woff')}
.form-control:hover{border-color:#7BB2DD}
.login-pf{height:100%}
.login-pf #brand{position:relative;top:-70px}
.login-pf #brand img{display:block;margin:0 auto;max-width:100%}
@media (min-width:768px){.login-pf #brand img{margin:0;text-align:left}
}
.login-pf #badge{display:block;margin:20px auto 70px;position:relative;text-align:center}
.login-pf .container{background-color:#181818;background-color:rgba(255,255,255,.055);clear:right;padding-bottom:40px;padding-top:20px;width:auto}
@media (min-width:768px){.login-pf #badge{float:right;margin-right:64px;margin-top:50px}
.login-pf .container{bottom:13%;padding-left:80px;position:absolute;width:100%}
}
.login-pf .container .details p:first-child{border-top:1px solid #474747;padding-top:25px;margin-top:25px}
@media (min-width:768px){.login-pf .container .login-area{border-right:1px solid #474747}
.login-pf .container .details{padding-left:40px}
.login-pf .container .details p:first-child{border-top:0;padding-top:0;margin-top:0}
}
.login-pf .container .details p{margin-bottom:2px}
.login-pf .container .control-label{font-size:13px;font-weight:400;text-align:left}
.login-pf .container .form-group:last-child,.login-pf .container .form-group:last-child .help-block:last-child{margin-bottom:0}
@-webkit-keyframes rotation{from{-webkit-transform:rotate(0)}
to{-webkit-transform:rotate(359deg)}
}
@keyframes rotation{from{transform:rotate(0)}
to{transform:rotate(359deg)}
}
.spinner{-webkit-animation:rotation .6s infinite linear;animation:rotation .6s infinite linear;border-bottom:4px solid rgba(0,0,0,.25);border-left:4px solid rgba(0,0,0,.25);border-right:4px solid rgba(0,0,0,.25);border-radius:100%;border-top:4px solid rgba(0,0,0,.75);height:24px;margin:4px 0 0;position:relative;width:24px}
.alert{padding:7px 11px;margin-bottom:20px;border:2px solid transparent;border-radius:1px}
.alert-danger{background:0 0;border-color:#c00;font-weight:700}
#option-group{margin-left:-20px;margin-right:-20px}
#option-group a{color:inherit}
#server-group:before{clear:both;margin-top:5px}
.login-fatal{font-size:130%}
.unsupported-browser ul{color:#aaa;display:inline-block;margin:0 auto;text-align:left}
.unsupported-browser a{color:#fff;font-weight:700;text-decoration:underline}
.cross,.inline .container .help-block{color:#000}
.login-browser-recommendations{margin-top:6rem}
@media screen and (max-width:480px){.unsupported-browser .container>.row>.col-sm-12{position:static}
}
@media screen and (min-width:481px){.brand-unsupported-browser #brand{margin-left:-40px;position:absolute;text-align:center;width:100%}
.unsupported-browser{font-size:140%;margin-left:-30px;text-align:center}
.unsupported-browser-heading{font-size:3rem;left:50%;margin:0 0 0 -32rem;position:absolute;text-align:center;top:-16rem;width:64rem}
.login-browser-recommendations h3{font-weight:400;margin-top:0}
}
.caret,.server-box{position:relative}
#login-wait-validating div{float:left}
.conversation-prompt{white-space:normal;word-wrap:break-word}
.control-label{white-space:nowrap;font-size:13px}
.spinner{border-color:rgba(255,255,255,.75) rgba(255,255,255,.25) rgba(255,255,255,.25)}
.inline #badge,.inline #brand,.inline #login-details{display:none}
.inline body{background:0 0!important;color:#000}
@media (min-width:768px){.login-button-container{float:right}
}
.caret{display:inline-block;top:4px}
.caret-down{transform:rotate(90deg);-moz-transform:rotate(90deg);-webkit-transform:rotate(90deg);transform-origin:8px 8px;-moz-transform-origin:8px 8px;-webkit-transform-origin:8px 8px}
.cross{position:absolute;right:25px;top:2px;font-weight:700;font-size:14px;opacity:.7}
#option-group:hover svg,.cross:hover{opacity:1}
#option-group div{margin-left:-3px;margin-top:3px;margin-bottom:10px}
#option-group svg{opacity:.7}
#authorized-input{width:13px;height:13px;padding:0;vertical-align:bottom;margin:8px 5px 3px 0}
#login-button{padding:7px}
#login-button .spinner{display:none}
#login-button[disabled]{padding:0;background-color:#333;background-image:none;border-color:#555}
#login-button[disabled] .spinner{display:inline-block}
#login-button[disabled] #login-button-text,.hide-before:before{display:none}
@media (max-width:480px){.login-pf{display:flex;flex-direction:column-reverse;height:auto;position:relative}
.row{display:flex;flex-direction:column}
.login-pf .container{width:100%}
.login-pf #badge{max-width:33vw;margin:3rem auto;height:8rem;padding:0;background-position:50% 100%}
.container>.row>.col-sm-12{order:1;position:absolute;bottom:0;left:0;width:100%;text-align:center}
.login-pf #brand{position:static;font-size:inherit;background-position:50% 50%}
.details{text-align:center}
}
/*# sourceMappingURL=login.min.css.map */    </style>
    <link href="cockpit/static/branding.css" type="text/css" rel="stylesheet">
  </head>
  <body class="login-pf">
    <span id="badge">
    </span>
    <div class="container">
      <div class="row">
        <div class="col-sm-12">
          <div id="brand" class="hide-before">
          </div><!--/#brand-->
        </div><!--/.col-*-->

        <div id="login" class="col-sm-7 col-md-6 col-lg-5 login-area" style="visibility: hidden;">
          <div role="form">

            <div id="error-group" class="alert alert-danger" hidden>
              <span id="login-error-message"></span>
            </div>

            <div id="conversation-group" class="form-group" hidden>
              <div class="col-sm-12 col-md-12">
                <div id="conversation-message"></div>
                <label id="conversation-prompt" for="conversation-input"></label>
              </div>
              <div class="col-sm-12 col-md-12">
                <input type="password" class="form-control" id="conversation-input">
              </div>
            </div>

            <div id="user-group" class="form-group">
              <label for="login-user-input" class="col-sm-2 col-md-2 control-label" translate>User name</label>
              <div class="col-sm-10 col-md-10">
                <input type="text" class="form-control" id="login-user-input" autocorrect="off" autocapitalize="none" autofocus>
              </div>
            </div>

            <div id="password-group" class="form-group">
              <label for="login-password-input" class="col-sm-2 col-md-2 control-label" translate>Password</label>
              <div class="col-sm-10 col-md-10">
                <input type="password" class="form-control" id="login-password-input">
              </div>
              <div class="col-sm-2 col-md-2"></div>
              <div class="col-sm-10 col-md-10">
                <input type="checkbox" class="form-control" id="authorized-input">
                <label for="authorized-input" class="control-label" translate>Reuse my password for privileged tasks</label>
              </div>
            </div>

            <div id="option-group">
              <div class="col-sm-5 col-md-5">
                <i id="option-caret" class="caret caret-right" aria-hidden="true">
                    <svg height="16" width="16" viewBox="0 0 16 16">
                        <polygon fill="#ffffff" points="4,0 4,14 12,7">
                        </polygon>
                    </svg>
                </i>
                <a href="#" id="show-other-login-options" translate>Other Options</a>
              </div>
            </div>

            <div id="server-group" class="form-group" hidden>
              <label title="Log in to another system. Leave blank to log in to the local system." for="server-field" class="col-sm-2 col-md-2 control-label" translate>Connect to</label>
              <div class="col-sm-10 col-md-10 server-box">
                <input type="text" class="form-control" id="server-field">
                <span class="cross" id="server-clear" aria-hidden="true">&#x274c;</span>
              </div>
            </div>

            <div class="form-group">
              <div class="col-md-3 col-sm-3 login-button-container">
                <button class="btn btn-primary btn-lg col-xs-12" id="login-button">
                  <span class="spinner"></span>
                  <span id="login-button-text" translate>Log In</span>
                </button>
              </div>
            </div>
          </div>
        </div><!--/.col-*-->

        <div class="col-sm-5 col-md-6 col-lg-7 details" id="login-details">
          <p>
            <label class="control-label"><span translate>Server</span>: <b id="server-name"></b></label>
          </p>
          <p id="login-note" class="login-note"></p>
        </div><!--/.col-*-->

        <div class="col-sm-5 col-md-6 col-lg-7" id="login-wait-validating" hidden>
          <div class="col-sm-4">
            <span class="help-block" translate>Validating authentication token</span>
          </div>
          <div class="col-sm-1">
            <div class="spinner col-xs-15">
            </div>
          </div>
        </div>

        <div class="col-sm-12" id="login-fatal" hidden>
          <span id="login-fatal-message"></span>
          <a id="login-again" translate hidden>Try Again</a>
        </div>

        <div class="unsupported-browser col-sm-12" id="unsupported-browser" hidden>
          <h2 classname="unsupported-browser-heading" translate>A modern browser is required for security, reliability, and performance.</h2>
          <div class="login-browser-recommendations">
            <div class="col-sm-6">
              <h3 translate>Download a new browser for free</h3>
              <ul>
                <li><a href="https://firefox.com/">Mozilla Firefox</a> / Linux, Windows, macOS</li>
                <li><a href="https://google.com/chrome">Google Chrome</a> / Linux, Windows, macOS</li>
              </ul>
            </div>
            <div class="col-sm-6">
              <h3 translate>Or use a bundled browser</h3>
              <ul>
                <li><a href="https://microsoftedge.com/">Microsoft Edge</a> / Windows 10+</li>
                <li><a href="https://apple.com/safari/">Apple Safari</a> / macOS</li>
              </ul>
            </div>
          </div>
        </div>

      </div><!--/.row-->
    </div><!--/.container-->
  </body>
</html>


STDERR:

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 39034    0 39034    0     0   179k      0 --:--:-- --:--:-- --:--:--  179k

TASK [Test - get certmonger tracking status] ***********************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:82
Saturday 27 July 2024  08:44:42 -0400 (0:00:00.543)       0:00:21.481 ********* 
ok: [managed_node1] => {
    "changed": false, 
    "cmd": [
        "getcert", 
        "list", 
        "--tracking-only", 
        "-f", 
        "/etc/pki/tls/certs/monger-cockpit.crt"
    ], 
    "delta": "0:00:00.039800", 
    "end": "2024-07-27 08:44:42.418514", 
    "rc": 0, 
    "start": "2024-07-27 08:44:42.378714"
}

STDOUT:

Number of certificates and requests being tracked: 1.
Request ID '20240727124440':
	status: MONITORING
	stuck: no
	key pair storage: type=FILE,location='/etc/pki/tls/private/monger-cockpit.key'
	certificate: type=FILE,location='/etc/pki/tls/certs/monger-cockpit.crt'
	CA: local
	issuer: CN=a0a79689-dbce44b2-a1585093-637ffe5f,CN=Local Signing Authority
	subject: CN=localhost
	expires: 2025-07-27 12:44:40 UTC
	dns: localhost,www.example.com
	key usage: digitalSignature,keyEncipherment
	eku: id-kp-serverAuth,id-kp-clientAuth
	pre-save command: 
	post-save command: /etc/certmonger/post-scripts/monger-cockpit-59d1099.sh
	track: yes
	auto-renew: yes

TASK [Test - ensure certificate generation succeeded] **************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:89
Saturday 27 July 2024  08:44:42 -0400 (0:00:00.357)       0:00:21.838 ********* 
ok: [managed_node1] => {
    "changed": false
}

MSG:

All assertions passed

TASK [Test - clean up tracked certificate] *************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:93
Saturday 27 July 2024  08:44:42 -0400 (0:00:00.048)       0:00:21.886 ********* 
ok: [managed_node1] => {
    "changed": false, 
    "cmd": [
        "getcert", 
        "stop-tracking", 
        "-f", 
        "/etc/pki/tls/certs/monger-cockpit.crt"
    ], 
    "delta": "0:00:00.030871", 
    "end": "2024-07-27 08:44:42.815771", 
    "rc": 0, 
    "start": "2024-07-27 08:44:42.784900"
}

STDOUT:

Request "20240727124440" removed.

TASK [Test - clean up generated certificate] ***********************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:100
Saturday 27 July 2024  08:44:42 -0400 (0:00:00.346)       0:00:22.233 ********* 
changed: [managed_node1] => {
    "changed": true, 
    "path": "/etc/pki/tls/certs/monger-cockpit.crt", 
    "state": "absent"
}

TASK [Test - clean up generated private key] ***********************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:105
Saturday 27 July 2024  08:44:43 -0400 (0:00:00.314)       0:00:22.547 ********* 
changed: [managed_node1] => {
    "changed": true, 
    "path": "/etc/pki/tls/private/monger-cockpit.key", 
    "state": "absent"
}

TASK [Test - clean up copied certificate] **************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:110
Saturday 27 July 2024  08:44:43 -0400 (0:00:00.319)       0:00:22.866 ********* 
changed: [managed_node1] => {
    "changed": true, 
    "path": "/etc/cockpit/ws-certs.d/monger-cockpit.cert", 
    "state": "absent"
}

TASK [Test - generic cleanup] **************************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:115
Saturday 27 July 2024  08:44:43 -0400 (0:00:00.293)       0:00:23.160 ********* 
included: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml for managed_node1

TASK [Cleanup - packages] ******************************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml:2
Saturday 27 July 2024  08:44:43 -0400 (0:00:00.035)       0:00:23.195 ********* 
changed: [managed_node1] => {
    "changed": true, 
    "changes": {
        "removed": [
            "cockpit-bridge", 
            "cockpit-ws"
        ]
    }, 
    "rc": 0, 
    "results": [
        "cockpit-doc is not installed", 
        "Loaded plugins: fastestmirror\nResolving Dependencies\n--> Running transaction check\n---> Package cockpit-bridge.x86_64 0:195.12-1.el7.centos will be erased\n--> Processing Dependency: cockpit-bridge >= 195.12-1.el7.centos for package: cockpit-system-195.12-1.el7.centos.noarch\n---> Package cockpit-ws.x86_64 0:195.12-1.el7.centos will be erased\n--> Running transaction check\n---> Package cockpit-system.noarch 0:195.12-1.el7.centos will be erased\n--> Finished Dependency Resolution\n\nDependencies Resolved\n\n================================================================================\n Package             Arch        Version                     Repository    Size\n================================================================================\nRemoving:\n cockpit-bridge      x86_64      195.12-1.el7.centos         @extras      868 k\n cockpit-ws          x86_64      195.12-1.el7.centos         @extras      1.6 M\nRemoving for dependencies:\n cockpit-system      noarch      195.12-1.el7.centos         @extras      1.7 M\n\nTransaction Summary\n================================================================================\nRemove  2 Packages (+1 Dependent package)\n\nInstalled size: 4.1 M\nDownloading packages:\nRunning transaction check\nRunning transaction test\nTransaction test succeeded\nRunning transaction\n  Erasing    : cockpit-system-195.12-1.el7.centos.noarch                    1/3 \n  Erasing    : cockpit-bridge-195.12-1.el7.centos.x86_64                    2/3 \n  Erasing    : cockpit-ws-195.12-1.el7.centos.x86_64                        3/3 \n  Verifying  : cockpit-ws-195.12-1.el7.centos.x86_64                        1/3 \n  Verifying  : cockpit-system-195.12-1.el7.centos.noarch                    2/3 \n  Verifying  : cockpit-bridge-195.12-1.el7.centos.x86_64                    3/3 \n\nRemoved:\n  cockpit-bridge.x86_64 0:195.12-1.el7.centos                                   \n  cockpit-ws.x86_64 0:195.12-1.el7.centos                                       \n\nDependency Removed:\n  cockpit-system.noarch 0:195.12-1.el7.centos                                   \n\nComplete!\n"
    ]
}

TASK [Cleanup - services] ******************************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml:15
Saturday 27 July 2024  08:44:45 -0400 (0:00:01.938)       0:00:25.134 ********* 
skipping: [managed_node1] => {
    "changed": false, 
    "skip_reason": "Conditional result was False"
}

TASK [Cleanup - find certificates] *********************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml:25
Saturday 27 July 2024  08:44:45 -0400 (0:00:00.045)       0:00:25.179 ********* 
ok: [managed_node1] => {
    "changed": false, 
    "examined": 0, 
    "files": [], 
    "matched": 0
}

MSG:

/etc/cockpit/ws-certs.d/ was skipped as it does not seem to be a valid directory or it cannot be accessed


TASK [Cleanup - certificates] **************************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml:35
Saturday 27 July 2024  08:44:46 -0400 (0:00:00.435)       0:00:25.614 ********* 

TASK [Cleanup - config file] ***************************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml:44
Saturday 27 July 2024  08:44:46 -0400 (0:00:00.043)       0:00:25.658 ********* 
ok: [managed_node1] => {
    "changed": false, 
    "path": "/etc/cockpit/cockpit.conf", 
    "state": "absent"
}

TASK [Cleanup - port customization] ********************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml:52
Saturday 27 July 2024  08:44:46 -0400 (0:00:00.294)       0:00:25.952 ********* 
ok: [managed_node1] => {
    "changed": false, 
    "path": "/etc/systemd/system/cockpit.socket.d/", 
    "state": "absent"
}

TASK [Cleanup - Reload systemd] ************************************************
task path: /tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml:60
Saturday 27 July 2024  08:44:46 -0400 (0:00:00.290)       0:00:26.243 ********* 
ok: [managed_node1] => {
    "changed": false, 
    "name": null, 
    "status": {}
}
META: ran handlers
META: ran handlers

PLAY RECAP *********************************************************************
managed_node1              : ok=42   changed=14   unreachable=0    failed=0    skipped=21   rescued=0    ignored=0   

Saturday 27 July 2024  08:44:47 -0400 (0:00:00.423)       0:00:26.666 ********* 
=============================================================================== 
fedora.linux_system_roles.certificate : Ensure certificate role dependencies are installed --- 4.67s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:5 
fedora.linux_system_roles.cockpit : Ensure Cockpit Web Console packages are installed. --- 4.63s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/setup-yum.yml:7 
fedora.linux_system_roles.certificate : Ensure provider packages are installed --- 3.40s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:23 
Cleanup - packages ------------------------------------------------------ 1.94s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml:2 
Gathering Facts --------------------------------------------------------- 0.91s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:6 
fedora.linux_system_roles.certificate : Ensure certificate requests ----- 0.83s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:101 
fedora.linux_system_roles.cockpit : Ensure Cockpit Web Console is started/stopped and enabled/disabled --- 0.79s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:71 
fedora.linux_system_roles.certificate : Ensure provider service is running --- 0.57s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:90 
Test - cockpit works with TLS and expected certificate ------------------ 0.54s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:72 
fedora.linux_system_roles.cockpit : Clean up port configuration file for undefined custom port --- 0.46s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/main.yml:62 
Cleanup - find certificates --------------------------------------------- 0.44s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml:25 
fedora.linux_system_roles.cockpit : Check if system is ostree ----------- 0.43s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/cockpit/tasks/set_vars.yml:10 
Get PEM of certmonger's local CA ---------------------------------------- 0.43s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:64 
Cleanup - Reload systemd ------------------------------------------------ 0.42s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/cleanup.yml:60 
Get name of cockpit group for tests ------------------------------------- 0.42s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tasks/get_cockpit_group.yml:3 
fedora.linux_system_roles.certificate : Ensure post-scripts hooks directory exists --- 0.36s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:61 
Test - get certmonger tracking status ----------------------------------- 0.36s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:82 
fedora.linux_system_roles.certificate : Ensure pre-scripts hooks directory exists --- 0.35s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/main.yml:35 
Test - clean up tracked certificate ------------------------------------- 0.35s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/tests/cockpit/tests_certificate_runafter.yml:93 
fedora.linux_system_roles.certificate : Check if system is ostree ------- 0.32s
/tmp/tmp.ej1x8hjKL3/ansible_collections/fedora/linux_system_roles/roles/certificate/tasks/set_vars.yml:10