[{"id":"sanity-checks","uri":"features/core/allcli_sanity.feature","keyword":"Feature","name":"Sanity checks","description":"  In order to use the product\n  I want to be sure to use a sane environment","line":4,"elements":[{"id":"sanity-checks;the-server-is-healthy","keyword":"Scenario","name":"The server is healthy","description":"","line":8,"type":"scenario","steps":[{"keyword":"Then ","name":"\"server\" should have a FQDN","line":9,"match":{"location":"features/step_definitions/command_steps.rb:15"},"result":{"status":"passed","duration":385447434},"after":[]},{"keyword":"And ","name":"reverse resolution should work for \"server\"","line":10,"match":{"location":"features/step_definitions/command_steps.rb:28"},"result":{"status":"passed","duration":644025685},"after":[]},{"keyword":"And ","name":"the clock from \"server\" should be exact","line":11,"match":{"location":"features/step_definitions/command_steps.rb:46"},"result":{"status":"passed","duration":654466472},"after":[]},{"keyword":"And ","name":"service \"apache2\" is active on \"server\"","line":12,"match":{"location":"features/step_definitions/command_steps.rb:755"},"result":{"status":"passed","duration":618136412},"after":[]},{"keyword":"And ","name":"service \"cobblerd\" is active on \"server\"","line":13,"match":{"location":"features/step_definitions/command_steps.rb:755"},"result":{"status":"passed","duration":641158155},"after":[]},{"keyword":"And ","name":"service \"rhn-search\" is active on \"server\"","line":14,"match":{"location":"features/step_definitions/command_steps.rb:755"},"result":{"status":"passed","duration":628804952},"after":[]},{"keyword":"And ","name":"service \"salt-api\" is active on \"server\"","line":15,"match":{"location":"features/step_definitions/command_steps.rb:755"},"result":{"status":"passed","duration":623975158},"after":[]},{"keyword":"And ","name":"service \"salt-master\" is active on \"server\"","line":16,"match":{"location":"features/step_definitions/command_steps.rb:755"},"result":{"status":"passed","duration":648805254},"after":[]},{"keyword":"And ","name":"service \"taskomatic\" is active on \"server\"","line":17,"match":{"location":"features/step_definitions/command_steps.rb:755"},"result":{"status":"passed","duration":640232082},"after":[]},{"keyword":"And ","name":"socket \"tftp\" is active on \"server\"","line":18,"match":{"location":"features/step_definitions/command_steps.rb:769"},"result":{"status":"passed","duration":621085299},"after":[]},{"keyword":"And ","name":"service \"tomcat\" is active on \"server\"","line":19,"match":{"location":"features/step_definitions/command_steps.rb:755"},"result":{"status":"passed","duration":621167749},"after":[]}],"before":[],"after":[]},{"id":"sanity-checks;podman-containers-are-running","keyword":"Scenario","name":"Podman containers are running","description":"","line":22,"type":"scenario","steps":[{"keyword":"Then ","name":"podman container \"uyuni-db\" should be running on \"server\"","line":23,"match":{"location":"features/step_definitions/command_steps.rb:1953"},"result":{"status":"passed","duration":419246380},"after":[]},{"keyword":"And ","name":"podman container \"uyuni-db\" should be healthy on \"server\"","line":24,"match":{"location":"features/step_definitions/command_steps.rb:1953"},"result":{"status":"passed","duration":501463350},"after":[]},{"keyword":"And ","name":"podman container \"uyuni-server\" should be running on \"server\"","line":25,"match":{"location":"features/step_definitions/command_steps.rb:1953"},"result":{"status":"passed","duration":435662651},"after":[]},{"keyword":"And ","name":"podman container \"uyuni-server\" should be healthy on \"server\"","line":26,"match":{"location":"features/step_definitions/command_steps.rb:1953"},"result":{"status":"passed","duration":430452161},"after":[]},{"keyword":"And ","name":"podman container \"uyuni-saline-0\" should be running on \"server\"","line":27,"match":{"location":"features/step_definitions/command_steps.rb:1953"},"result":{"status":"passed","duration":420179435},"after":[]},{"keyword":"And ","name":"podman container \"uyuni-tftpd\" should be running on \"server\"","line":28,"match":{"location":"features/step_definitions/command_steps.rb:1953"},"result":{"status":"failed","error_message":"FAIL: podman inspect --format '{{.State.Running}}' uyuni-tftpd | grep -x true returned status code = 1.\nOutput:\n (ScriptError)\n./features/support/remote_node.rb:172:in 'RemoteNode#run_local'\n./features/support/remote_node.rb:120:in 'RemoteNode#run'\n./features/step_definitions/command_steps.rb:1957:in `/^podman container \"([^\"]*)\" should be (running|healthy) on \"([^\"]*)\"$/'\n./features/support/env.rb:372:in 'block in <top (required)>'\nfeatures/core/allcli_sanity.feature:28:in `podman container \"uyuni-tftpd\" should be running on \"server\"'","duration":431147309},"after":[]},{"keyword":"And ","name":"podman container \"uyuni-server-attestation-0\" should be running on \"server\"","line":29,"match":{"location":"features/step_definitions/command_steps.rb:1953"},"result":{"status":"skipped"},"after":[]},{"keyword":"And ","name":"podman container \"uyuni-hub-xmlrpc-0\" should be running on \"server\"","line":30,"match":{"location":"features/step_definitions/command_steps.rb:1953"},"result":{"status":"skipped"},"after":[]}],"tags":[{"name":"@containerized_server","line":21}],"before":[],"after":[]},{"id":"sanity-checks;the-proxy-is-healthy","keyword":"Scenario","name":"The proxy is healthy","description":"","line":33,"type":"scenario","steps":[{"keyword":"Then ","name":"\"proxy\" should have a FQDN","line":34,"match":{"location":"features/step_definitions/command_steps.rb:15"},"result":{"status":"passed","duration":3282320994},"after":[]},{"keyword":"And ","name":"reverse resolution should work for \"proxy\"","line":35,"match":{"location":"features/step_definitions/command_steps.rb:28"},"result":{"status":"passed","duration":333619437},"after":[]},{"keyword":"And ","name":"\"proxy\" should communicate with the server using public interface","line":36,"match":{"location":"features/step_definitions/retail_steps.rb:47"},"result":{"status":"passed","duration":942553617},"after":[]},{"keyword":"And ","name":"the clock from \"proxy\" should be exact","line":37,"match":{"location":"features/step_definitions/command_steps.rb:46"},"result":{"status":"passed","duration":299740549},"after":[]}],"tags":[{"name":"@proxy","line":32}],"before":[],"after":[]},{"id":"sanity-checks;the-minion-is-healthy","keyword":"Scenario","name":"The minion is healthy","description":"","line":40,"type":"scenario","steps":[{"keyword":"Then ","name":"\"sle_minion\" should have a FQDN","line":41,"match":{"location":"features/step_definitions/command_steps.rb:15"},"result":{"status":"passed","duration":4722665490},"after":[]},{"keyword":"And ","name":"reverse resolution should work for \"sle_minion\"","line":42,"match":{"location":"features/step_definitions/command_steps.rb:28"},"result":{"status":"passed","duration":447363894},"after":[]},{"keyword":"And ","name":"\"sle_minion\" should communicate with the server using public interface","line":43,"match":{"location":"features/step_definitions/retail_steps.rb:47"},"result":{"status":"passed","duration":1085690548},"after":[]},{"keyword":"And ","name":"the clock from \"sle_minion\" should be exact","line":44,"match":{"location":"features/step_definitions/command_steps.rb:46"},"result":{"status":"passed","duration":439014778},"after":[]}],"tags":[{"name":"@sle_minion","line":39}],"before":[],"after":[]},{"id":"sanity-checks;the-build-host-is-healthy","keyword":"Scenario","name":"The build host is healthy","description":"","line":47,"type":"scenario","steps":[{"keyword":"Then ","name":"\"build_host\" should have a FQDN","line":48,"match":{"location":"features/step_definitions/command_steps.rb:15"},"result":{"status":"passed","duration":2654046446},"after":[]},{"keyword":"And ","name":"reverse resolution should work for \"build_host\"","line":49,"match":{"location":"features/step_definitions/command_steps.rb:28"},"result":{"status":"passed","duration":276753219},"after":[]},{"keyword":"And ","name":"\"build_host\" should communicate with the server using public interface","line":50,"match":{"location":"features/step_definitions/retail_steps.rb:47"},"result":{"status":"passed","duration":920353442},"after":[]},{"keyword":"And ","name":"the clock from \"build_host\" should be exact","line":51,"match":{"location":"features/step_definitions/command_steps.rb:46"},"result":{"status":"passed","duration":211858550},"after":[]}],"tags":[{"name":"@build_host","line":46}],"before":[],"after":[]},{"id":"sanity-checks;the-ssh-minion-is-healthy","keyword":"Scenario","name":"The SSH minion is healthy","description":"","line":54,"type":"scenario","steps":[{"keyword":"Then ","name":"\"sshminion\" should have a FQDN","line":55,"match":{"location":"features/step_definitions/command_steps.rb:15"},"result":{"status":"passed","duration":4858566757},"after":[]},{"keyword":"And ","name":"reverse resolution should work for \"sshminion\"","line":56,"match":{"location":"features/step_definitions/command_steps.rb:28"},"result":{"status":"passed","duration":460044175},"after":[]},{"keyword":"And ","name":"\"sshminion\" should communicate with the server using public interface","line":57,"match":{"location":"features/step_definitions/retail_steps.rb:47"},"result":{"status":"passed","duration":1115417393},"after":[]},{"keyword":"And ","name":"the clock from \"sshminion\" should be exact","line":58,"match":{"location":"features/step_definitions/command_steps.rb:46"},"result":{"status":"passed","duration":442408448},"after":[]}],"tags":[{"name":"@sshminion","line":53}],"before":[],"after":[]},{"id":"sanity-checks;the-red-hat-like-minion-is-healthy","keyword":"Scenario","name":"The Red Hat-like minion is healthy","description":"","line":61,"type":"scenario","steps":[{"keyword":"Then ","name":"\"rhlike_minion\" should have a FQDN","line":62,"match":{"location":"features/step_definitions/command_steps.rb:15"},"result":{"status":"passed","duration":2449331251},"after":[]},{"keyword":"And ","name":"reverse resolution should work for \"rhlike_minion\"","line":63,"match":{"location":"features/step_definitions/command_steps.rb:28"},"result":{"status":"passed","duration":230442278},"after":[]},{"keyword":"And ","name":"\"rhlike_minion\" should communicate with the server using public interface","line":64,"match":{"location":"features/step_definitions/retail_steps.rb:47"},"result":{"status":"passed","duration":887762691},"after":[]},{"keyword":"And ","name":"the clock from \"rhlike_minion\" should be exact","line":65,"match":{"location":"features/step_definitions/command_steps.rb:46"},"result":{"status":"passed","duration":222982474},"after":[]}],"tags":[{"name":"@rhlike_minion","line":60}],"before":[],"after":[]},{"id":"sanity-checks;the-debian-like-minion-is-healthy","keyword":"Scenario","name":"The Debian-like minion is healthy","description":"","line":68,"type":"scenario","steps":[{"keyword":"Then ","name":"\"deblike_minion\" should have a FQDN","line":69,"match":{"location":"features/step_definitions/command_steps.rb:15"},"result":{"status":"passed","duration":4505157473},"after":[]},{"keyword":"And ","name":"reverse resolution should work for \"deblike_minion\"","line":70,"match":{"location":"features/step_definitions/command_steps.rb:28"},"result":{"status":"passed","duration":208471629},"after":[]},{"keyword":"And ","name":"\"deblike_minion\" should communicate with the server using public interface","line":71,"match":{"location":"features/step_definitions/retail_steps.rb:47"},"result":{"status":"passed","duration":853614190},"after":[]},{"keyword":"And ","name":"the clock from \"deblike_minion\" should be exact","line":72,"match":{"location":"features/step_definitions/command_steps.rb:46"},"result":{"status":"passed","duration":206306203},"after":[]}],"tags":[{"name":"@deblike_minion","line":67}],"before":[],"after":[]},{"id":"sanity-checks;the-external-resources-can-be-reached","keyword":"Scenario","name":"The external resources can be reached","description":"","line":75,"type":"scenario","steps":[{"keyword":"Then ","name":"it should be possible to reach the test packages","line":76,"match":{"location":"features/step_definitions/command_steps.rb:54"},"result":{"status":"skipped"},"after":[]},{"keyword":"And ","name":"it should be possible to reach the build sources","line":77,"match":{"location":"features/step_definitions/command_steps.rb:72"},"result":{"status":"skipped"},"after":[]},{"keyword":"And ","name":"it should be possible to reach the Docker profiles","line":78,"match":{"location":"features/step_definitions/command_steps.rb:82"},"result":{"status":"skipped"},"after":[]}],"tags":[{"name":"@skip_if_cloud","line":74}],"before":[],"after":[]},{"id":"sanity-checks;the-http-proxy-is-working","keyword":"Scenario","name":"The HTTP proxy is working","description":"","line":81,"type":"scenario","steps":[{"keyword":"Then ","name":"it should be possible to use the HTTP proxy","line":82,"match":{"location":"features/step_definitions/command_steps.rb:59"},"result":{"status":"skipped"},"after":[]}],"tags":[{"name":"@server_http_proxy","line":80}],"before":[],"after":[]},{"id":"sanity-checks;the-registry-with-authentication-is-healthy","keyword":"Scenario","name":"The registry with authentication is healthy","description":"","line":85,"type":"scenario","steps":[{"keyword":"Then ","name":"it should be possible to reach the authenticated registry","line":86,"match":{"location":"features/step_definitions/command_steps.rb:90"},"result":{"status":"passed","duration":730138407},"after":[]}],"tags":[{"name":"@auth_registry","line":84}],"before":[],"after":[]},{"id":"sanity-checks;the-registry-without-authentication-is-healthy","keyword":"Scenario","name":"The registry without authentication is healthy","description":"","line":89,"type":"scenario","steps":[{"keyword":"Then ","name":"it should be possible to reach the not authenticated registry","line":90,"match":{"location":"features/step_definitions/command_steps.rb:97"},"result":{"status":"passed","duration":751699140},"after":[]}],"tags":[{"name":"@no_auth_registry","line":88}],"before":[],"after":[]},{"id":"sanity-checks;the-custom-download-endpoint-is-working","keyword":"Scenario","name":"The custom download endpoint is working","description":"","line":93,"type":"scenario","steps":[{"keyword":"Then ","name":"it should be possible to use the custom download endpoint","line":94,"match":{"location":"features/step_definitions/command_steps.rb:67"},"result":{"status":"passed","duration":645208149},"after":[]}],"tags":[{"name":"@custom_download_endpoint","line":92}],"before":[],"after":[]}]}]