[
  {
    "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": 425581892
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 26437
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"server\"",
            "line": 10,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 640592937
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17767
                }
              }
            ]
          },
          {
            "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": 658133039
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20764
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"apache2\" is active on \"server\"",
            "line": 12,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 654614396
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17757
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"cobblerd\" is active on \"server\"",
            "line": 13,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 661487715
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16855
                }
              }
            ]
          },
          {
            "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": 634089944
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18247
                }
              }
            ]
          },
          {
            "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": 636033470
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17267
                }
              }
            ]
          },
          {
            "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": 633960782
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 23204
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"taskomatic\" is active on \"server\"",
            "line": 17,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 634202211
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16286
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "socket \"tftp\" is active on \"server\"",
            "line": 18,
            "match": {
              "location": "features/step_definitions/command_steps.rb:774"
            },
            "result": {
              "status": "passed",
              "duration": 651163512
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17820
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"tomcat\" is active on \"server\"",
            "line": 19,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 638997431
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 15058
                }
              }
            ]
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 25716
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 9482
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 11096
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 8697
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:05 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 476722
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 8171
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 17955
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 7 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 287535
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 35981
            }
          }
        ]
      },
      {
        "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": 430088294
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20915
                }
              }
            ]
          },
          {
            "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": 432698677
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 14780
                }
              }
            ]
          },
          {
            "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": 436232337
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17536
                }
              }
            ]
          },
          {
            "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": 427076911
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17228
                }
              }
            ]
          },
          {
            "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": 430990608
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20013
                }
              }
            ]
          },
          {
            "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": 427976720
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19560
                }
              }
            ]
          },
          {
            "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": 437992762
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16651
                }
              }
            ]
          },
          {
            "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": 446441639
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18349
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@containerized_server",
            "line": 21
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 16694
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 22788
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 15477
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 8510
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:12 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 249513
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 8788
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 22406
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:894"
            },
            "result": {
              "status": "passed",
              "duration": 4916
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 3 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 235052
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 19270
            }
          }
        ]
      },
      {
        "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": 3189677109
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 876464
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"proxy\"",
            "line": 35,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 299881848
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18349
                }
              }
            ]
          },
          {
            "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": 977923262
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16121
                }
              }
            ]
          },
          {
            "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": 292045427
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20273
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@proxy",
            "line": 32
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 14840
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 14971
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 10360
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 9525
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:15 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 243720
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9542
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 18703
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:424"
            },
            "result": {
              "status": "passed",
              "duration": 15890
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 5 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 401303
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 22154
            }
          }
        ]
      },
      {
        "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": 4679257540
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 43311
                }
              }
            ]
          },
          {
            "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": 458769536
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16223
                }
              }
            ]
          },
          {
            "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": 1122319330
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17593
                }
              }
            ]
          },
          {
            "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": 428646138
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17725
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@sle_minion",
            "line": 39
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 21370
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 21090
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 18249
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 8226
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:20 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 259743
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 6977
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 52993
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:456"
            },
            "result": {
              "status": "passed",
              "duration": 19663
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 6 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 454806
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 18024
            }
          }
        ]
      },
      {
        "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": 2619353790
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19261
                }
              }
            ]
          },
          {
            "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": 251099717
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 15727
                }
              }
            ]
          },
          {
            "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": 962623807
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17000
                }
              }
            ]
          },
          {
            "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": 234782512
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18850
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@build_host",
            "line": 46
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 17495
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 21476
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 17710
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6877
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:26 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 289513
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 7650
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 21849
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:481"
            },
            "result": {
              "status": "passed",
              "duration": 14308
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 5 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 298762
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 16029
            }
          }
        ]
      },
      {
        "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": 5185356698
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17308
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"sshminion\"",
            "line": 56,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 458290468
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16084
                }
              }
            ]
          },
          {
            "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": 1101272188
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 15188
                }
              }
            ]
          },
          {
            "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": 444899680
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17458
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@sshminion",
            "line": 53
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 18192
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 21077
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 19780
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6751
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:31 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 219100
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 8293
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 21697
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:476"
            },
            "result": {
              "status": "passed",
              "duration": 14403
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 7 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 278580
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 16365
            }
          }
        ]
      },
      {
        "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": 2303232882
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 23818
                }
              }
            ]
          },
          {
            "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": 211279656
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16719
                }
              }
            ]
          },
          {
            "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": 879338673
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17055
                }
              }
            ]
          },
          {
            "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": 200511852
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20509
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@rhlike_minion",
            "line": 60
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 18596
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 20766
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 18482
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7961
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:38 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 287526
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9158
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 19623
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:461"
            },
            "result": {
              "status": "passed",
              "duration": 16285
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 3 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 304875
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 22482
            }
          }
        ]
      },
      {
        "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": 4600964058
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18395
                }
              }
            ]
          },
          {
            "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": 221103039
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 14973
                }
              }
            ]
          },
          {
            "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": 853211838
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17076
                }
              }
            ]
          },
          {
            "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": 230096899
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19667
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@deblike_minion",
            "line": 67
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 23228
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 24138
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 17535
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6802
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:41 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 2239123
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 10931
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 27162
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:466"
            },
            "result": {
              "status": "passed",
              "duration": 17147
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 6 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 331054
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 21418
            }
          }
        ]
      },
      {
        "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": 19003
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 19168
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 19218
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 8538
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:47 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 299324
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9018
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 22161
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:874"
            },
            "result": {
              "status": "skipped",
              "duration": 246085
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 227432
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 12053
            }
          }
        ]
      },
      {
        "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": 13448
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 16062
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 13397
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 8041
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:47 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 234038
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 8914
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 14012
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:854"
            },
            "result": {
              "status": "skipped",
              "duration": 132775
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 214081
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 11247
            }
          }
        ]
      },
      {
        "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": 730465481
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 24501
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@auth_registry",
            "line": 84
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 12343
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 14928
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 9365
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6016
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:47 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 209324
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 7830
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 15507
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:869"
            },
            "result": {
              "status": "passed",
              "duration": 4995
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 1 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 936646
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 17994
            }
          }
        ]
      },
      {
        "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": 726803948
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19443
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@no_auth_registry",
            "line": 88
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 14403
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 18854
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 15535
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6530
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:48 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 259812
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 8987
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 19099
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:864"
            },
            "result": {
              "status": "passed",
              "duration": 4517
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 1 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 260986
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 18519
            }
          }
        ]
      },
      {
        "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": 646089054
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21345
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@custom_download_endpoint",
            "line": 92
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 16817
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 18323
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 11116
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 7090
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-14 16:19:49 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 269488
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 10124
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 17249
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:859"
            },
            "result": {
              "status": "passed",
              "duration": 5622
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 228572
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 14631
            }
          }
        ]
      }
    ]
  }
]