Skip to content

Add source-built HorizonTest UI test container - #121

Open
HanzJas wants to merge 1 commit into
openstack-k8s-operators:mainfrom
HanzJas:add-horizon-test-container
Open

Add source-built HorizonTest UI test container#121
HanzJas wants to merge 1 commit into
openstack-k8s-operators:mainfrom
HanzJas:add-horizon-test-container

Conversation

@HanzJas

@HanzJas HanzJas commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Package HorizonTest as openstack-horizontest, matching the tcib image used by test-operator to run Horizon's pytest/selenium UI integration tests against a live dashboard.

run_horizontest.sh and horizontest_sudoers are copied verbatim from tcib; runtime behavior (cloning the Horizon test suite at container start, sudo/crudini/openstack CLI usage) is unchanged.

Differences from tcib's horizontest.yaml, and why:

  • Python dependencies (Django, selenium, pytest, horizon, etc.) are resolved via upper-constraints.txt instead of tcib's hardcoded pins, so they track whichever OpenStack release this image targets.
  • python-openstackclient is added explicitly. tcib's horizontest image gets the openstack CLI for free because horizontest.yaml is nested under base/os/, inheriting python3-openstackclient from os.yaml. This image has no such inherited layer, so it must be declared.
  • junit2html is dropped: it's unused (run_horizontest.sh only relies on pytest's built-in --junitxml and pytest-html's --html), and it ships no sdist on PyPI, which breaks pybuild-deps.
  • geckodriver is bumped to v0.37.1 (tcib pins v0.29.0, which only supports Firefox <=90) for compatibility with the current Firefox RPM.

Assisted-By: Cursor Claude Sonnet 5

@openshift-ci

openshift-ci Bot commented Aug 21, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign rebtoor for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@HanzJas

This comment was marked as resolved.

@HanzJas
HanzJas force-pushed the add-horizon-test-container branch from 4141166 to 0f21de8 Compare August 24, 2026 07:51
Package HorizonTest as openstack-horizontest, matching the tcib image
used by test-operator to run Horizon's pytest/selenium UI integration
tests against a live dashboard.

run_horizontest.sh and horizontest_sudoers are copied verbatim from
tcib; runtime behavior (cloning the Horizon test suite at container
start, sudo/crudini/openstack CLI usage) is unchanged.

Differences from tcib's horizontest.yaml, and why:
- Python dependencies (Django, selenium, pytest, horizon, etc.) are
  resolved via upper-constraints.txt instead of tcib's hardcoded pins,
  so they track whichever OpenStack release this image targets.
- python-openstackclient is added explicitly. tcib's horizontest image
  gets the openstack CLI for free because horizontest.yaml is nested
  under base/os/, inheriting python3-openstackclient from os.yaml.
  This image has no such inherited layer, so it must be declared.
- junit2html is dropped: it's unused (run_horizontest.sh only relies
  on pytest's built-in --junitxml and pytest-html's --html), and it
  ships no sdist on PyPI, which breaks pybuild-deps.
- geckodriver is bumped to v0.37.1 (tcib pins v0.29.0, which only
  supports Firefox <=90) for compatibility with the current Firefox
  RPM.

Assisted-By: Cursor Claude Sonnet 5
@HanzJas
HanzJas force-pushed the add-horizon-test-container branch from 0f21de8 to d21d00e Compare August 24, 2026 08:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant