[
  {
    "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": 414559249
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 34931
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"server\"",
            "line": 10,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 736472453
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17328
                }
              }
            ]
          },
          {
            "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": 708388310
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18521
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"apache2\" is active on \"server\"",
            "line": 12,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 631223770
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18427
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"cobblerd\" is active on \"server\"",
            "line": 13,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 678196514
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20228
                }
              }
            ]
          },
          {
            "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": 647847089
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19858
                }
              }
            ]
          },
          {
            "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": 633305260
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18735
                }
              }
            ]
          },
          {
            "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": 644929864
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21788
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"taskomatic\" is active on \"server\"",
            "line": 17,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 629028610
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17668
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "socket \"tftp\" is active on \"server\"",
            "line": 18,
            "match": {
              "location": "features/step_definitions/command_steps.rb:774"
            },
            "result": {
              "status": "passed",
              "duration": 645465659
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17223
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "service \"tomcat\" is active on \"server\"",
            "line": 19,
            "match": {
              "location": "features/step_definitions/command_steps.rb:760"
            },
            "result": {
              "status": "passed",
              "duration": 649455274
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17829
                }
              }
            ]
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 23253
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 11107
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 12260
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 8373
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:11:49 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 500285
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9531
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 19850
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 7 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 290742
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 40973
            }
          }
        ]
      },
      {
        "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": 439409253
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21768
                }
              }
            ]
          },
          {
            "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": 423129940
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21697
                }
              }
            ]
          },
          {
            "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": 421540884
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18266
                }
              }
            ]
          },
          {
            "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": 420890311
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19652
                }
              }
            ]
          },
          {
            "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": 422549292
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18565
                }
              }
            ]
          },
          {
            "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": 431678170
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17758
                }
              }
            ]
          },
          {
            "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": 427340471
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16879
                }
              }
            ]
          },
          {
            "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": 459876843
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18377
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@containerized_server",
            "line": 21
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 17487
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 26167
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 14191
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 11150
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:11:56 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 248883
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 10087
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 19765
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:894"
            },
            "result": {
              "status": "passed",
              "duration": 7558
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 4 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 279446
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 20718
            }
          }
        ]
      },
      {
        "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": 3282291039
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20606
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"proxy\"",
            "line": 35,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 300938679
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 15773
                }
              }
            ]
          },
          {
            "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": 998743322
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17366
                }
              }
            ]
          },
          {
            "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": 298079588
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17941
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@proxy",
            "line": 32
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 19071
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 15754
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 13603
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 9282
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:00 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 240342
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 8963
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 18219
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:424"
            },
            "result": {
              "status": "passed",
              "duration": 14970
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 5 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 439499
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 22777
            }
          }
        ]
      },
      {
        "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": 5076878507
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 27203
                }
              }
            ]
          },
          {
            "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": 492739708
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19025
                }
              }
            ]
          },
          {
            "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": 1098673654
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18086
                }
              }
            ]
          },
          {
            "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": 489025535
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20127
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@sle_minion",
            "line": 39
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 36919
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 27814
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 16577
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 9114
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:05 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 260734
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 10546
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 20471
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:456"
            },
            "result": {
              "status": "passed",
              "duration": 21357
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 7 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 386943
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 21542
            }
          }
        ]
      },
      {
        "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": 3061206492
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 23805
                }
              }
            ]
          },
          {
            "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": 255899134
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16322
                }
              }
            ]
          },
          {
            "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": 915523620
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 17596
                }
              }
            ]
          },
          {
            "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": 242504483
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 23470
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@build_host",
            "line": 46
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 20637
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 24566
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 17001
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 9387
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:12 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 507245
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9638
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 20672
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:481"
            },
            "result": {
              "status": "passed",
              "duration": 19431
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 4 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 1119368
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 23064
            }
          }
        ]
      },
      {
        "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": 4794565435
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 22374
                }
              }
            ]
          },
          {
            "keyword": "And ",
            "name": "reverse resolution should work for \"sshminion\"",
            "line": 56,
            "match": {
              "location": "features/step_definitions/command_steps.rb:28"
            },
            "result": {
              "status": "passed",
              "duration": 486509693
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 28349
                }
              }
            ]
          },
          {
            "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": 1153386109
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19012
                }
              }
            ]
          },
          {
            "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": 442582968
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20426
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@sshminion",
            "line": 53
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 18598
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 28208
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 15322
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 11364
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:16 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 255460
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9312
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 21366
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:476"
            },
            "result": {
              "status": "passed",
              "duration": 17530
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 7 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 1003753
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 23195
            }
          }
        ]
      },
      {
        "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": 2287632093
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 25151
                }
              }
            ]
          },
          {
            "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": 213003328
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16283
                }
              }
            ]
          },
          {
            "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": 883334362
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 16124
                }
              }
            ]
          },
          {
            "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": 203470430
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 24404
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@rhlike_minion",
            "line": 60
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 20132
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 27405
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 15887
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 10732
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:23 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 661670
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9661
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 26174
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:461"
            },
            "result": {
              "status": "passed",
              "duration": 15969
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 4 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 314919
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 24358
            }
          }
        ]
      },
      {
        "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": 4876136259
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 23631
                }
              }
            ]
          },
          {
            "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": 221408499
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18029
                }
              }
            ]
          },
          {
            "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": 888371901
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18538
                }
              }
            ]
          },
          {
            "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": 237601476
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 18725
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@deblike_minion",
            "line": 67
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 20922
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 23619
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 19209
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6981
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:27 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 300296
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9965
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 35368
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:466"
            },
            "result": {
              "status": "passed",
              "duration": 14089
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 6 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 428673
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 17268
            }
          }
        ]
      },
      {
        "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": 16975
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 19728
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 17313
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6402
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:33 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 825782
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9829
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 25404
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:874"
            },
            "result": {
              "status": "skipped",
              "duration": 194119
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 239543
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 10115
            }
          }
        ]
      },
      {
        "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": 10818
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 15231
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 11638
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 5822
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:33 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 191789
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 7095
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 19394
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:854"
            },
            "result": {
              "status": "skipped",
              "duration": 110274
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 411777
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 13361
            }
          }
        ]
      },
      {
        "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": 735304305
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 21796
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@auth_registry",
            "line": 84
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 13292
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 16007
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 10489
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 9718
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:33 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 238186
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9616
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 15155
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:869"
            },
            "result": {
              "status": "passed",
              "duration": 9502
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 1 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 392459
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 15739
            }
          }
        ]
      },
      {
        "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": 713738269
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 19628
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@no_auth_registry",
            "line": 88
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 14284
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 22380
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 11746
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 8619
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:34 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 253901
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 10359
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 17346
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:864"
            },
            "result": {
              "status": "passed",
              "duration": 5646
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 1 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 229138
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 12592
            }
          }
        ]
      },
      {
        "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": 662115842
            },
            "after": [
              {
                "match": {
                  "location": "features/support/env.rb:308"
                },
                "result": {
                  "status": "passed",
                  "duration": 20688
                }
              }
            ]
          }
        ],
        "tags": [
          {
            "name": "@custom_download_endpoint",
            "line": 92
          }
        ],
        "before": [
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:14"
            },
            "result": {
              "status": "passed",
              "duration": 14590
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:22"
            },
            "result": {
              "status": "passed",
              "duration": 20946
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:165"
            },
            "result": {
              "status": "passed",
              "duration": 10738
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:275"
            },
            "result": {
              "status": "passed",
              "duration": 6520
            }
          },
          {
            "output": [
              "This scenario ran at: 2026-08-17 12:12:35 +0200\n"
            ],
            "match": {
              "location": "features/support/env.rb:316"
            },
            "result": {
              "status": "passed",
              "duration": 247435
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:398"
            },
            "result": {
              "status": "passed",
              "duration": 9540
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:411"
            },
            "result": {
              "status": "passed",
              "duration": 20036
            }
          },
          {
            "match": {
              "location": "features/support/env.rb:859"
            },
            "result": {
              "status": "passed",
              "duration": 4853
            }
          }
        ],
        "after": [
          {
            "output": [
              "This scenario took: 0 seconds"
            ],
            "match": {
              "location": "features/support/env.rb:170"
            },
            "result": {
              "status": "passed",
              "duration": 237276
            }
          },
          {
            "match": {
              "location": "capybara-3.40.0/lib/capybara/cucumber.rb:10"
            },
            "result": {
              "status": "passed",
              "duration": 13396
            }
          }
        ]
      }
    ]
  }
]