[
  {
    "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": 492848569
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 28535
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"server\"",
            "line": 10,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 1030439771
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19581
                }
              }
            ]
          },
          {
            "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": 1044632809
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19424
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"apache2\" is active on \"server\"",
            "line": 12,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 1100744342
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18845
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"cobblerd\" is active on \"server\"",
            "line": 13,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 956100404
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19124
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"rhn-search\" is active on \"server\"",
            "line": 14,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 954240632
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17366
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"salt-api\" is active on \"server\"",
            "line": 15,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 1008291422
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17906
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"salt-master\" is active on \"server\"",
            "line": 16,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 1012622750
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 23038
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"taskomatic\" is active on \"server\"",
            "line": 17,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 918394871
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19188
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "socket \"tftp\" is active on \"server\"",
            "line": 18,
            "match": {
              "location": "features/step_definitions/command_steps.rb:774"
            },
            "result": {
              "status": "passed",
              "duration": 957979141
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16952
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"tomcat\" is active on \"server\"",
            "line": 19,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 987325644
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18273
                }
              }
            ]
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 23442
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 8376
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 16572
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6867
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 17:59:44 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 367720
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 10282
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 16150
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 10 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 472730
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 43440
            }
          }
        ]
      },
      {
        "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:1971"
            },
            "result": {
              "status": "passed",
              "duration": 627227813
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21747
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "podman container \"uyuni-db\" should be healthy on \"server\"",
            "line": 24,
            "match": {
              "location": "features/step_definitions/command_steps.rb:1971"
            },
            "result": {
              "status": "passed",
              "duration": 691349341
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20434
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "podman container \"uyuni-server\" should be running on \"server\"",
            "line": 25,
            "match": {
              "location": "features/step_definitions/command_steps.rb:1971"
            },
            "result": {
              "status": "passed",
              "duration": 723232878
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 24897
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "podman container \"uyuni-server\" should be healthy on \"server\"",
            "line": 26,
            "match": {
              "location": "features/step_definitions/command_steps.rb:1971"
            },
            "result": {
              "status": "passed",
              "duration": 619387703
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 22335
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "podman container \"uyuni-saline-0\" should be running on \"server\"",
            "line": 27,
            "match": {
              "location": "features/step_definitions/command_steps.rb:1971"
            },
            "result": {
              "status": "passed",
              "duration": 615112371
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18015
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "podman container \"uyuni-tftpd\" should be running on \"server\"",
            "line": 28,
            "match": {
              "location": "features/step_definitions/command_steps.rb:1971"
            },
            "result": {
              "status": "passed",
              "duration": 621370918
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17903
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "podman container \"uyuni-server-attestation-0\" should be running on \"server\"",
            "line": 29,
            "match": {
              "location": "features/step_definitions/command_steps.rb:1971"
            },
            "result": {
              "status": "passed",
              "duration": 726421874
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18766
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "podman container \"uyuni-hub-xmlrpc-0\" should be running on \"server\"",
            "line": 30,
            "match": {
              "location": "features/step_definitions/command_steps.rb:1971"
            },
            "result": {
              "status": "passed",
              "duration": 662317304
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18807
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@containerized_server",
            "line": 21
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 18074
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 23451
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 13381
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 13326
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 17:59:54 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 255992
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 6995
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 19410
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:898"
            },
            "result": {
              "status": "passed",
              "duration": 4922
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 6 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 263669
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 23669
            }
          }
        ]
      },
      {
        "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": 3275613912
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 25220
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"proxy\"",
            "line": 35,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 307771813
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20114
                }
              }
            ]
          },
          {
            "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": 1359450864
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18174
                }
              }
            ]
          },
          {
            "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": 304610074
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18945
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@proxy",
            "line": 32
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 17560
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 14608
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 10904
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 8747
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:00 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 230541
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 8440
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 20457
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:428"
            },
            "result": {
              "status": "passed",
              "duration": 17168
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 5 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 305616
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 19130
            }
          }
        ]
      },
      {
        "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": 5249293102
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 24412
                }
              }
            ]
          },
          {
            "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": 509478632
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19320
                }
              }
            ]
          },
          {
            "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": 1178834863
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17051
                }
              }
            ]
          },
          {
            "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": 463800542
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20561
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@sle_minion",
            "line": 39
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 25360
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 30680
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 23836
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 17646
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:05 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 1802959
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 13196
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 31637
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:460"
            },
            "result": {
              "status": "passed",
              "duration": 28293
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 7 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 278925
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 24450
            }
          }
        ]
      },
      {
        "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": 2693553947
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 22630
                }
              }
            ]
          },
          {
            "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": 315997760
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19516
                }
              }
            ]
          },
          {
            "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": 886390221
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17743
                }
              }
            ]
          },
          {
            "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": 246138221
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21050
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@build_host",
            "line": 46
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 23477
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 21911
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 18065
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7689
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:12 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 266042
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 10424
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 23477
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:485"
            },
            "result": {
              "status": "passed",
              "duration": 18216
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 4 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 270849
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 19957
            }
          }
        ]
      },
      {
        "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": 5114667058
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 27491
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"sshminion\"",
            "line": 56,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 462029684
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 34566
                }
              }
            ]
          },
          {
            "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": 1108162806
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17875
                }
              }
            ]
          },
          {
            "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": 454823622
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 22768
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@sshminion",
            "line": 53
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 19259
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 21418
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 15930
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6762
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:17 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 259037
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 8966
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 24052
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:480"
            },
            "result": {
              "status": "passed",
              "duration": 20886
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 7 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 259066
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 24481
            }
          }
        ]
      },
      {
        "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": 2392351610
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 45927
                }
              }
            ]
          },
          {
            "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": 231965038
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16918
                }
              }
            ]
          },
          {
            "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": 922838478
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17033
                }
              }
            ]
          },
          {
            "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": 220707611
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21177
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@rhlike_minion",
            "line": 60
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 27136
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 26114
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 14036
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 8809
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:24 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 298802
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 10467
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 22773
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:465"
            },
            "result": {
              "status": "passed",
              "duration": 15532
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 3 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 304090
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 21782
            }
          }
        ]
      },
      {
        "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": 4480329692
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 26677
                }
              }
            ]
          },
          {
            "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": 203688803
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20372
                }
              }
            ]
          },
          {
            "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": 878425064
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19778
                }
              }
            ]
          },
          {
            "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": 204736088
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20399
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@deblike_minion",
            "line": 67
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 21064
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 17824
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 17777
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7599
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:27 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 410015
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 8708
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 23596
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:470"
            },
            "result": {
              "status": "passed",
              "duration": 16177
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 6 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 291629
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 21387
            }
          }
        ]
      },
      {
        "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": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "skipped"
                }
              }
            ]
          },
          {
            "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": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "skipped"
                }
              }
            ]
          },
          {
            "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": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "skipped"
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@skip_if_cloud",
            "line": 74
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 21056
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 20245
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 16700
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7800
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:33 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 522235
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 10662
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 21150
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:878"
            },
            "result": {
              "status": "skipped",
              "duration": 220132
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 226323
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 14310
            }
          }
        ]
      },
      {
        "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": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "skipped"
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@server_http_proxy",
            "line": 80
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 14711
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 22971
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 12867
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 9861
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:33 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 202736
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 9405
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 17016
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:858"
            },
            "result": {
              "status": "skipped",
              "duration": 132107
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 195800
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 12928
            }
          }
        ]
      },
      {
        "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": 728484011
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 28378
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@auth_registry",
            "line": 84
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 13634
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 18629
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 10037
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 12145
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:33 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 903513
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 11096
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 43110
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:873"
            },
            "result": {
              "status": "passed",
              "duration": 10597
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 1 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 1257879
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 19315
            }
          }
        ]
      },
      {
        "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": 714800337
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20335
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@no_auth_registry",
            "line": 88
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 16807
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 38145
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 18512
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 11458
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:34 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 880990
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 12253
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 17909
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:868"
            },
            "result": {
              "status": "passed",
              "duration": 9997
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 1 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 679145
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 17642
            }
          }
        ]
      },
      {
        "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": 654537362
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 23284
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@custom_download_endpoint",
            "line": 92
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 15685
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 17474
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 15549
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 10114
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-27 18:00:35 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 250701
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:402"
            },
            "result": {
              "status": "passed",
              "duration": 8451
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:415"
            },
            "result": {
              "status": "passed",
              "duration": 38618
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:863"
            },
            "result": {
              "status": "passed",
              "duration": 6446
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 235504
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 17428
            }
          }
        ]
      }
    ]
  }
]