Installing the server software on RHEL by using k3s

You can install HCL OneTest Server on the RHEL server that has a Kubernetes environment to run functional, integration, and performance tests. HCL OneTest Server combines test data, test environments, test runs and reports into a single, web-based report for testers and non-testers.

Before you begin

About this task

The following table lists the variables that you must replace with the actual value in the command.

Variables Description
{my-ots}
The release name of your choice.
Note: The release name must consist of alphanumeric characters that are in lowercase or - (hyphen). The release name must also start with an alphabetic character and end with an alphanumeric character. For example, my-org or abc-123.
{my-ingress-dns-name}

The INGRESS_DOMAIN value that is displayed after the completion of the k3s-init.sh script.

{password-seed}

A value of your choice for the password.

Important: This password seed is used to create several default passwords for the server. You must store the password seed securely. When you install the server software by using the backup of the user data, you can reuse the password seed. You can use this seed to restore the backed-up files either on the current or later versions of the server software.
{cloud-license-server-id}

The ID of the License Server for the initial team space, if you want to set the license for the first time.

Important: When you want to upgrade the product from the previous version, you must configure the value of License Server ID from the Team Space License Configuration page when the installation of the server is complete.
HCL OneTest Server provides you with the test authoring capability, which utilizes a containerized version of the HCL OneTest Studio desktop authoring tools.
Note: By design, the test authoring feature provides you with the capability to author tests that include writing code, executing code, and accessing the shell. The container in Kubernetes that is used by the test authoring or editing feature does not run as root and the container is not privileged. Hence, it results in providing some protection to the host and other workloads that run on the same node.
You must not install the test authoring feature in the following scenarios:
  • If you administer a network policy for your server installation.

  • If you do not intend to use the test authoring feature.

Procedure

  1. Log in to the RHEL server using an SSH session.
  2. Create a namespace in which you want to install the server software by running the following command:
    kubectl create namespace test-system
    Remember: The test-system is the name of the namespace. If you created a namespace by using a different value, then you must use that value in place of test-system in all the instances in this procedure.
  3. Perform the following steps to install the server software:
    1. Run the following command to get the latest updates from the repository:
      helm repo update
    2. Run the following command to retrieve the charts required to install the server software:
      helm pull --untar hclsoftware/hcl-onetest-server --version 13.1054.0
    3. Run the following command to provide the execution permission for the scripts that are available in the files directory:
      chmod +x hcl-onetest-server/files/*.sh
    4. Run the following command to install the server software:
      Note: To provide enhanced security to HCL OneTest Server, the Sign up link on the Login page of HCL OneTest Server is not visible when you install the server software.

      If you want to enable the Sign up link on the Login page, then you must add the --set keycloak.signup.enabled=true parameter in the following helm install command.

      helm install {my-ots} ./hcl-onetest-server -n test-system \
      -f hcl-onetest-server/values-k3s.yaml \
      --set global.hclOneTestIngressDomain={my-ingress-dns-name} \
      --set global.hclFlexnetURL=https://hclsoftware.compliance.flexnetoperations.com \
      --set global.hclFlexnetID={cloud-license-server-id} \
      --set global.hclOneTestPasswordAutoGenSeed={password-seed}
  4. Optional: Run the following command to remove a job that is used to initialize the PostgreSQL database during the installation of the server software:
    kubectl delete job {my-ots}-postgresql-init -n test-system
  5. Run the following script from the hcl-onetest-server/files directory to verify and test the installed server software:
    hcl-onetest-server/files/helm-test-diag.sh {my-ots} -n test-system

Results

On completion of the installation of server software, the output displays the following information on the command-line interface:
  • Instructions to access Keycloak to manage and authenticate users.

    The username can be keycloak and the password can be retrieved by running the following command:
    kubectl get secret -n test-system {my-ots}-keycloak-postgresql -o jsonpath="{.data.password}" | base64 --decode; echo 

    Where, {my-ots} is a sub-domain name that you selected for the server.

  • The URL to access the HCL OneTest Server UI.

What to do next

You can perform the following tasks: