Install uv
These tests can be executed against arbitrary cluster with ODH / RHOAI installed.
You can log in into such cluster via:
oc login -u user -p passwordOr by setting KUBECONFIG variable:
KUBECONFIG=<kubeconfig file>or by saving the kubeconfig file under ~/.kube/config
uv run pytestTo see optional CLI arguments run:
uv run pytest --helpCLI arguments can be passed to pytest by setting them in pytest.ini.
You can either use the default pytest.ini file and pass CLI arguments or create a custom one.
For example, add the below under the addopts section:
--ci-s3-bucket-name=name
--ci-s3-bucket-endpoint=endpoint-path
--ci-s3-bucket-region=region
Then pass the path to the custom pytest.ini file to pytest:
uv run pytest -c custom-pytest.ini
uv run pytest -k test_nameBt default, RHOAI distribution is set.
To run on ODH, pass --tc=distribution:upstream to pytest.
By default, cluster sanity checks are run to make cluster ready for tests.
To skip cluster sanity checks, pass --cluster-sanity-skip-check to skip all tests.
To skip RHOAI/ODH-related tests (for example when running in upstream), pass --cluster-sanity-skip-rhoai-check.
By default, Serveless (serverless-operator), Authorino (authorino-operator) and Service Mesh (servicemeshoperator) operators are checked to be installed when
running model server Serverless tests.
To check only specific operator, pass --tc=dependent_operators:<operator_name> to pytest.
For example, to check only Serveless and Service Mesh operators, pass --tc=dependent_operators:serverless-operator,servicemeshoperator.
To run tests with admin client only, pass --tc=use_unprivileged_client:False to pytest.
To skip running tests which have open bugs, pytest_jira plugin is used.
To run tests with jira integration, you need to set PYTEST_JIRA_URL and PYTEST_JIRA_TOKEN environment variables.
To make a test with jira marker, add: @pytest.mark.jira(jira_id="RHOAIENG-0000", run=False) to the test.
Save kubeconfig file to a local directory, for example: $HOME/kubeconfig
To run tests in containerized environment:
podman run -v $HOME:/mnt/host:Z -e KUBECONFIG=/mnt/host/kubeconfig quay.io/opendatahub/opendatahub-tests