Skip to content

Building The Test Suite

Emmanuel Mathot edited this page Mar 18, 2024 · 4 revisions

This page shows the steps that are necessary to build the testsuite application so that they can be used as command-line tools.

Prerequisites

In order to build and run the cdab-client (for test scenarios TS01 to TS07), you need .NET SDK 7.0 installed.

In order to run cdab-remote-client (for test scenarios TS11 to TS15), you need Python 3.

cdab-client CLI

Follow the instructions at this page to install .NET SDK 7.0 installed. Make sure you install the SDK version 7.0.

For example, in the case of Ubuntu 20.04 LTS, the following sequence of commands will install all the necessary software:

# Get Ubuntu version
declare repo_version=$(if command -v lsb_release &> /dev/null; then lsb_release -r -s; else grep -oP '(?<=^VERSION_ID=).+' /etc/os-release | tr -d '"'; fi)

# Download Microsoft signing key and repository
wget https://packages.microsoft.com/config/ubuntu/$repo_version/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

# Install Microsoft signing key and repository
sudo dpkg -i packages-microsoft-prod.deb

# Clean up
rm packages-microsoft-prod.deb

# Update packages
sudo apt update

# Install SDK 
sudo apt install dotnet-sdk-7.0

cdab-remote-client

Make sure python3 and the corresponding python3-pip package are installed.

You need additional Python packages (some might already be installed depending on your OS). The following command installs them:

pip3 install requests pyyaml lxml netifaces python-openstackclient==5.1.0 google-api-python-client boto3 python-cinderclient==2.2.0

Build the cdab-client

To build the execute the command below from the repository root directory (cdab-testsuite). This downloads all the necessary dependencies, including several support libraries maintained by Terradue, and produces the main executable, which is src/cdab-client/bin/Debug/net472/cdab-testtools.exe. This step may take a minute or so. The command is:

dotnet build src/cdab-client/cdab-client.csproj

Build the cdab-remote-client

No build procedure is necessary for the cdab-remote-client, which is a collection of Python scripts.

The main script is src/cdab-remote-client/libexec/cdab-remote-client.py3.