This document gives a detailed breakdown of the testing processes using testing farm service.
- Python >=3.9
- TMT command line tool (optional) - for lint and check tmt formatted test plans and tests
pip install tmt[all]
- Testing farm command line tool - for trigger your test plan in testing-farm
pip install tft-cli
Plans are stored in plans folder, there is a file called main.fmf
which contains test plan definition.
This definition is composed of hw requirements, prepare steps for created VM executor and specific plans. Specific
plan defines selectors for tests which should be executed.
- flink-all
- smoke
- flink-sql-example
- Get API token for testing farm (how-to obtain token)
- Store token into env var
export TESTING_FARM_API_TOKEN="your_token"
Run all plans
testing-farm request --compose CentOS-Stream-9 --git-url https://github.com/streamshub/streams-e2e.git -e IP_FAMILY=ipv4
Select specific plan and git branch
testing-farm request --compose CentOS-Stream-9 \
--git-url https://github.com/streamshub/streams-e2e.git \
--git-ref some-branch \
--plan smoke \
-e IP_FAMILY=ipv4
Run multi-arch build
testing-farm request --compose CentOS-Stream-9 \
--git-url https://github.com/streamshub/streams-e2e.git \
--git-ref some-branch \
--plan smoke \
--arch aarch64,x86_64 \
-e IP_FAMILY=ipv4
Packit-as-a-service is a github application for running testing-farm jobs from PR requested by command. Definition of the jobs is stored in .packit.yaml. Packit can be triggered from the PR by comment, but only members of strimzi organization are able to run tests.
Run all jobs for PR
/packit test
Run selected jobs by label
/packit test --labels flink-all