Copying third-party application Jars to Kubernetes

You can run API Suites in a project on HCL DevOps Test Hub (Test Hub). If the API Suite uses a transport and the transport requires third-party application Jar files for a successful run, you must ensure that the third-party application Jar files are available at the test run time. To achieve this, you must copy the third-party application Jar files to the computer where Test Hub is installed on Kubernetes.

Before you begin

If you want to copy the third-party application Jar files to the remote Docker host, see Copying third-party application Jars to a remote Docker host.

You must have server administrator or cluster administrator privileges.

You must have completed the following tasks:
  • Identified the third-party application Jar files that are required and copied the files. See Test run considerations for API Suites or API tests.
  • Copied the third-party application Jar files from HCL DevOps Test Integrations and APIs (Test Integrations and APIs) to the directory or folder in Kubernetes from where you can run the kubectl commands.

About this task

You can copy the third-party application Jar files to the folder that is specific for the application under the /data/<application_name> folder. You need not extract the files.

You can perform this task any time after you have installed Test Hub and you plan to run an API Suite that meets any of the following conditions:
  • The API Suite uses transports and the transports require third-party application Jar files to be available at the test run time.
  • The API Suite in the project has a results database configured.

You can copy the JDK version Jar files that you have used to create the JUnit tests.

You can get help on the kubectl commands by running the command: kubectl cp --help from the /kube directory. For more information, refer to the kubectl documentation.

Procedure

  1. Use the following table to find the name of the folder that corresponds to the specific third-party application for the transport used in the API Suite.
    Table 1. Name of the folder for the application
    Application Name of the folder to use
    Camel Camel
    CentraSite CentraSite
    CICS CICS
    Coherence Coherence
    Database JDBC
    IMS IMS
    Integra Integra
    JMS JMS
    SAP RFC SAP
    Software AG Universal Messaging SoftwareAGUM
    TIBCO EMS TIBCO
    TIBCO Rendezvous
    TIBCO SmartSockets
    WebSphere Application Server Service Integration Bus (SiBus) WAS
    WebLogic WebLogicJMX
    Software AG webMethods webMethods
  2. Open the command prompt from the /kube directory and copy the Jar files to the folder that corresponds to the application by using the following command:
    kubectl cp <compressed_files> devops-system/{{main}}-userlibs-0:/data/<application_name>/

    For example, if you are copying the Database Jar files, then the name of the folder is JDBC and the command to use is:

    kubectl cp mysql-connector-java.jar devops-system/{{main}}-userlibs-0:/data/JDBC/
    Note: You must substitute {main} with the release name that you used during the installation of Test Hub.
  3. Verify whether the Jar files are copied by running the following command:
    kubectl exec {{main}} -userlibs-0 -n devops-system -- ls /data/<folder_created>

    For example, if you copied the Database Jar files, mysql-connector-java.jar to the folder JDBC, then the command to verify is:

    kubectl exec {{main}} -userlibs-0 -n devops-system -- ls /data/JDBC
    The following information is displayed for the JDBC folder:
    mysql-connector-java.jar
    Note: You must substitute {main} with the release name that you used during the installation of Test Hub.

Results

You have successfully copied the third-party application Jar files to the folder in Kubernetes.

What to do next

You can configure the API Suite run. See Configuring an API Suite or an API test run.