[QA] run tests on kubernetes
We will be running kubernetes instance in CI and run api and ui tests against them. We will be only run tests against single binary on nightly.
reference: https://github.com/owncloud/ocis-charts/blob/main/.drone.star#L150
CC @individual-it @kobergj
Some open questions.
- Is this to replace existing all API/webUI test pipelines of single binary setup with k8s?
- Or is it to have a separate k8s pipeline for the tests, maybe in ocis-charts repo?
- what about the web CI?
From the description, I understood that we are going to run all tests in K8s setup (no single binary setup) but keep single binary setup so that we can run it nightly.
Some things to consider:
- we need owncloud/ocis-charts repo but which branch (probably main)?
- need to build ocis docker image in CI for k8s setup
- tests that configures env during the test exection cannot be run in k8s setup
- ociswrapper will have less or no use (except for nightly)
- how easy will it be to run ocis services with different env set (some test pipelines require different env set)
UPDATE:
May be we can utilize kubectl command to manage envs and services
We have an "ongoing task" that changes the docker tests structure. Also something to take note of. https://github.com/owncloud/ocis/issues/10530
- Is this to replace existing all API/webUI test pipelines of single binary setup with k8s?
- what about the web CI?
yes, but not right away
2.Or is it to have a separate k8s pipeline for the tests, maybe in ocis-charts repo?
no, this should be done in the ocis repo.
From the description, I understood that we are going to run all tests in K8s setup (no single binary setup) but keep single binary setup so that we can run it nightly.
For now the priority will be to get the easiest things done like.
- running tests that can run without any extra configs and services
- the k8s could run only in nightly.
- tests that configures env during the test exection cannot be run in k8s setup
- will have less or no use (except for nightly)
- easy will it be to run ocis services with different env set (some test pipelines require different env set)
these things can be done later on.
The k8s setup only works in privileged mode but the ocis repo CI doesn't allow privileged mode yet. Until then it is on hold https://github.com/owncloud/ocis-charts/blob/9614fb4cbc9f47e756dffcd28a217369fb12bb5f/.drone.star#L160