[
  {
    "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": 514459072
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 26365
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"server\"",
            "line": 10,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 924480679
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17405
                }
              }
            ]
          },
          {
            "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": 963911764
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20699
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"apache2\" is active on \"server\"",
            "line": 12,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 1019695147
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19137
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"cobblerd\" is active on \"server\"",
            "line": 13,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 963956386
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18025
                }
              }
            ]
          },
          {
            "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": 945054028
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20828
                }
              }
            ]
          },
          {
            "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": 1003458028
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17143
                }
              }
            ]
          },
          {
            "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": 1001185687
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20676
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"taskomatic\" is active on \"server\"",
            "line": 17,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 919709887
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20270
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "socket \"tftp\" is active on \"server\"",
            "line": 18,
            "match": {
              "location": "features/step_definitions/command_steps.rb:774"
            },
            "result": {
              "status": "passed",
              "duration": 1087426416
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17592
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"tomcat\" is active on \"server\"",
            "line": 19,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 974511630
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19528
                }
              }
            ]
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 23369
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 8048
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 143265
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6938
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:39:42 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 426708
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 8796
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 15276
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 11 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 1214714
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 43945
            }
          }
        ]
      },
      {
        "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": 758507388
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 23296
                }
              }
            ]
          },
          {
            "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": 728623819
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18174
                }
              }
            ]
          },
          {
            "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": 659745150
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 22317
                }
              }
            ]
          },
          {
            "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": 659347622
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20011
                }
              }
            ]
          },
          {
            "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": 653574037
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18699
                }
              }
            ]
          },
          {
            "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": 649174552
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18970
                }
              }
            ]
          },
          {
            "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": 619730852
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 22399
                }
              }
            ]
          },
          {
            "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": 637715929
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20414
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@containerized_server",
            "line": 21
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 19232
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 25928
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 16389
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6586
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:39:53 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 694036
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 9503
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 21777
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:909"
            },
            "result": {
              "status": "passed",
              "duration": 4858
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 5 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 225467
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 17468
            }
          }
        ]
      },
      {
        "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": 3151645931
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 28149
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"proxy\"",
            "line": 35,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 295258848
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16384
                }
              }
            ]
          },
          {
            "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": 1452895942
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17290
                }
              }
            ]
          },
          {
            "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": 288878690
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19919
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@proxy",
            "line": 32
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 15264
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 16356
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 10520
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 8975
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:39:58 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 206849
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 6909
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 26794
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:439"
            },
            "result": {
              "status": "passed",
              "duration": 23309
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 5 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 252946
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 21284
            }
          }
        ]
      },
      {
        "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": 5397884921
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19196
                }
              }
            ]
          },
          {
            "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": 536692341
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17494
                }
              }
            ]
          },
          {
            "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": 1134005652
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21462
                }
              }
            ]
          },
          {
            "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": 467240954
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17854
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@sle_minion",
            "line": 39
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 17962
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 22750
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 14251
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7312
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:40:03 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 564250
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 9307
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 19642
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:471"
            },
            "result": {
              "status": "passed",
              "duration": 21982
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 8 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 263216
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 20141
            }
          }
        ]
      },
      {
        "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": 2976982877
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 26509
                }
              }
            ]
          },
          {
            "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": 351066701
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16807
                }
              }
            ]
          },
          {
            "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": 888721623
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17272
                }
              }
            ]
          },
          {
            "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": 263923289
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 15722
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@build_host",
            "line": 46
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 19138
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 23201
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 16925
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7493
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:40:11 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 532049
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 10118
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 35813
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:496"
            },
            "result": {
              "status": "passed",
              "duration": 16163
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 4 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 272846
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 16637
            }
          }
        ]
      },
      {
        "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": 5559149004
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 23891
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"sshminion\"",
            "line": 56,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 502141314
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17707
                }
              }
            ]
          },
          {
            "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": 1140597542
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17218
                }
              }
            ]
          },
          {
            "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": 482738376
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21362
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@sshminion",
            "line": 53
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 20740
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 23992
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 15909
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 11417
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:40:16 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 226944
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 9832
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 21038
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:491"
            },
            "result": {
              "status": "passed",
              "duration": 15452
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 7 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 246394
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 18985
            }
          }
        ]
      },
      {
        "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": 2211538554
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19584
                }
              }
            ]
          },
          {
            "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": 206804371
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19822
                }
              }
            ]
          },
          {
            "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": 841857011
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17316
                }
              }
            ]
          },
          {
            "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": 200825768
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21251
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@rhlike_minion",
            "line": 60
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 16512
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 25152
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 15747
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7794
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:40:23 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 319818
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 9764
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 24628
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:476"
            },
            "result": {
              "status": "passed",
              "duration": 15331
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 4 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 289187
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 20213
            }
          }
        ]
      },
      {
        "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": 4974002249
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18179
                }
              }
            ]
          },
          {
            "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": 239885799
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 12295
                }
              }
            ]
          },
          {
            "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": 886751644
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18505
                }
              }
            ]
          },
          {
            "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": 218864470
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17765
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@deblike_minion",
            "line": 67
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 21551
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 24639
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 13784
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 12379
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:40:27 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 303667
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 8765
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 21622
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:481"
            },
            "result": {
              "status": "passed",
              "duration": 17168
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 6 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 342825
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 19312
            }
          }
        ]
      },
      {
        "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": 18003
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 20166
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 15258
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7132
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:40:33 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 312398
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 9797
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 19338
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:889"
            },
            "result": {
              "status": "skipped",
              "duration": 221116
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 399040
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 11971
            }
          }
        ]
      },
      {
        "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": 11823
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 14614
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 13904
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6236
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:40:33 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 188003
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 8944
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 13265
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:869"
            },
            "result": {
              "status": "skipped",
              "duration": 115526
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 199622
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 11723
            }
          }
        ]
      },
      {
        "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": 781855335
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21110
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@auth_registry",
            "line": 84
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 10436
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 17317
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 9931
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7314
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:40:33 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 194300
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 6787
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 13198
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:884"
            },
            "result": {
              "status": "passed",
              "duration": 4688
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 1 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 248246
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 13996
            }
          }
        ]
      },
      {
        "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": 744692674
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21449
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@no_auth_registry",
            "line": 88
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 14310
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 20005
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 10761
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7700
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:40:34 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 272920
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 8820
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 18426
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:879"
            },
            "result": {
              "status": "passed",
              "duration": 4577
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 1 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 235028
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 12725
            }
          }
        ]
      },
      {
        "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": 668459830
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 23048
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@custom_download_endpoint",
            "line": 92
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 16830
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 19293
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 16967
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7330
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-28 15:40:35 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:317"
            },
            "result": {
              "status": "passed",
              "duration": 249146
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:413"
            },
            "result": {
              "status": "passed",
              "duration": 9580
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:426"
            },
            "result": {
              "status": "passed",
              "duration": 20058
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:874"
            },
            "result": {
              "status": "passed",
              "duration": 9496
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 210470
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 16013
            }
          }
        ]
      }
    ]
  }
]