WorkbenchTools

WorkbenchTools is the component that manages Global Information Tracker (Git) user repositories and connects to a remote Git server.

The following are performed by WorkbenchTools:

  • Exposes RESTful Web Services to handle Git and file system operation for user repositories.

  • Requires an Identity and access management (IAM) or keycloak for authentication and authorization.

Configure the Git server to utilize Source Control Management (SCM) functionality.

The WorkbenchTools comprises the following:

  • Workbench-git-fs-api Microservice
  • Maven Archetypes (to create config packages, build parent, Release Validation Test (RVT) integration, and test projects)
  • RVT Framework Libraries

The dsf-workbenchtools project uses the Quarkus framework. The service exposes RESTful web services to handle Git and file system actions. The WorkbenchTools is integrated with keycloak for authentication and authorization. The GitLab is the only supported provider.

Deploying WorkbenchTools in Docker Container

The WorkbenchTools can be installed and run in the docker container. The following are the pre-requites:

  • JDK 11+ installed with JAVA_HOME configured
  • Apache Maven 3.8.1+
  • Docker Desktop 4.2 + installed

To install and run WorkbenchTools,

  1. Extract the dsf-workbenchtools-DEV.0.0-SNAPSHPOT.zip file in the C drive.
  2. Load the images to the docker container.
    1. Configure the dsf-workbenchtools\dsf-workbenchtools-docker-compose.yml file according to your local environment.

    2. Deploy dsf-workbenchTools in the docker,

      1. Run the dsf-workbenchtools\dsf-workbenchtools-deploy.bat from a command window.
      2. Choose any one of the following values:
        • L - Load dsf-workbenchtools docker image and start
        • U - Up the container, which can be accessed at http://localhost
        • D - Make the container down
      Choose L if you deploy the file for the first time.

Deploying WorkbenchTools on Minikube (Kubernetes Cluster)

To deploy Minikube:

  1. Extract the dsf-workbenchtools-DEV.0.0-SNAPSHPOT.zip file.
  2. Load the images to the docker container. Load the docker image into the Kubernetes container using the commands provided below (commands for the Azure environment).
    az acr login -n <crname>
               docker tag dsf-workbench/git-fs-api <crname>.azurecr.io/dsf-workbench-gitfs:<tag>
                docker push <crname>.azurecr.io/dsf-workbench-gitfs:<tag>

The images are loaded and WorkbenchTools are deployed successfully in Minikube.

Deploying WorkenchTools on Kubernetes Cluster using Helm

To deploy WorkbenchTools on Kubernetes Cluster using Helm:

  1. Extract the dsf-workbenchtools-helm-DEV.0.0-SNAPSHPOT.zip file in the C drive.

  2. Run the Helm command provided below from the extracted folder by setting the appropriate values.

    ```sh helm install workbenchtools ./ -n workbenchtools --kube-context $INSTANCE_CLUSTER_NAME \
       --set image.repository="$(crName).azurecr.io"/dsf-workbench-gitfs \
       --set image.tag=$(workbenchtools.release) \
       --set env.saasWorkbenchInstance=$(workbenchtools.saasWorkbenchInstance) \
       --set env.saasWorkbenchBlueprint=$(workbenchtools.saasWorkbenchBlueprint) \
       --set env.oidcAuthServerUrl=$(workbenchtools.oidcAuthServerUrl) \
       --set env.oidcClientId=$(workbenchtools.oidcClientId) \
       --set env.gitProvider=$(workbenchtools.gitProvider) \
       --set env.gitServerUrl=$(workbenchtools.gitServerUrl) \
       --set env.gitProject=$(workbenchtools.gitProject) \
       --set env.gitAdminAccessToken=$(workbenchtools.gitAdminAccessToken) \
       --set env.transactHost=$(workbenchtools.transactHost) \
       --set env.artifactoryBaseUrl=$(workbenchtools.artifactoryBaseUrl) \
       --set env.artifactoryKey=$(workbenchtools.artifactoryKey) \
       --set env.tenantArtifactoryRepo=$(workbenchtools.tenantArtifactoryRepo) \
       --set env.kafkaBootstrapServers=$(workbenchtools.kafkaBootstrapServers) \
       --set env.kafkaProducerTopic=$(workbenchtools.kafkaProducerTopic) \
       --set env.kafkaProducerPassword=$(workbenchtools.kafkaProducerPassword) \
       --create-namespace --wait --timeout 10m0s
    ```
    

Field Name
|
Application/Table name

Temenos Headquarters SA
2 Rue de l'Ecole-de-Chimie
CH - 1205 Geneva
Switzerland

Copyright © 2020- Temenos Headquarters SA

Published on :
Tuesday, May 23, 2023 7:30:24 PM IST