This section describes how to install and run Allure Testops as a Kubernetes cluster.
Because of its scalability, a Kubernetes cluster is the recommended way to run Allure Testops in a production environment.
All the instructions in this guide assume that you are installing Allure Testops into the default namespace of the Kubernetes cluster. To install it to a different namespace, add the --namespace=... option to the commands. For more details, see the Namespaces article on the Kubernetes website.
Installation without using external storage is also possible. However, this option is intended for evaluation purposes only and is not officially supported. Maintaining and upgrading such a configuration can involve considerable downtimes or data loss.
There are multiple ways to manage traffic in and out from a Kubernetes cluster. Selecting the best one depends on your specific needs. However, Allure Testops comes with two options for common use cases.
To use an Ingress service, set the network.ingress.enabled parameter to true.
To use an Istio service, set the network.istio.enabled parameter to true.
Set admin credentials
To be able to log into Allure Testops for the first time, you need have an administrator account. Unlike all other accounts that are managed via the Members interface, the administrator account is managed via the configuration parameters directly.
In the username parameter, specify a login you want to use for the administrator account, e.g., “admin”.
In the password parameter, specify a password. Alternatively, you can leave this parameter empty, in which case a new password will be generated for the administrator account each time the allure-testops-uaa deployment is restarted. You will be able to find the generated password in the service logs.
A necessary step when deploying Allure Testops is to configure how users will be registered and logged in. See Configuration → Authentication for more details.
Below are some configuration examples for various identity providers.
Authentication is performed by Allure Testops. It's essential to have SMTP configured.
# this is just an example which won't work if applied without any changes.
from: [email protected]
Navigate to the directory containing the values.yaml file, for example:
Deploying the application
Examples do not contain the commands for the creation of a separate name space for Allure Testops, please consider creating dedicated name space for Allure Testops and use the reference to the created name space in all commands.
Deploy Allure Testops with the Helm chart and configured values.yaml file.
At this point, you will need to wait for two time-consuming operation to finish:
Before any services can start, Kubernetes needs to download the necessary images from the Qameta Software's images registry.
During the startup, the Allure UAA and Allure Report services will need to initialize their databases.
The --set overrides in the command above disable the readiness and liveness probes for the services, which prevents Kubernetes from killing them due to timeouts. This measure will also be needed whenever you upgrade Allure Testops.
Wait for the three deployments (allure-gateway, allure-report, allure-uaa) to become ready.
Use kubectl get all to view the status of the deployments and pods. When each pod becomes READY, the initialization of Allure Testops is completed.
Once the initialization is completed, enable the readiness and liveness probes that were disabled during installation. To do so, upgrade the chart without the --set overrides.
When you run your Allure Testops installation for the first time, you need to activate it by entering a license key.
In a web browser, go to the URL that you configured on the Set TestOps URL step. An authentication form should appear.
If you get an “Unable to connect” or “This site can't be reached” error in the browser, it may indicate that some services are still initializing. Normally, the initialization takes no more than a couple of minutes.
If the web browser still cannot open the page after five minutes, see the Troubleshooting section.
In the authentication form, enter the login and password that you configured on the Set admin credentials step.
In the activation form, enter the license key that you got from Qameta sales team. Make sure to paste the key without any extra spaces or other characters.