Skip to content

Solution

Prebuilt Solution

Info

If you want to skip the step by step guide to how you build out each microservice you can go strait to the completed solution and get it running, see Deploy the Inventory App solution. I would advise coming back and working through the steps, you will learn more about how these types of solutions are created and delivered.

Deploy the Inventory App solution

In some cases with self pace hands on labs you may not get everything working. Cloud-Native development is a sort of skill and takes time to hone the craft. If you were unable to get everything working, you can deploy the Inventory App solution using the steps detailed below.

Inventory Service

  • Create a new project from the Inventory Management Service solution template named inv-svc-solution-{initials}

    • replacing {initials} with your actual initials
  • Clone the repository to your local machine

  • Go into the cloned repository directory and execute the following command :

    oc sync dev-{your initials} 
    
  • Register the pipeline, give git credentials if prompted, and main as the git branch to use. When prompted for the pipeline, select ibm-java-gradle.

    oc pipeline <git repo url> --tekton
    
  • Open the pipeline to see it running

Inventory BFF

  • Create a new project from the Inventory Management BFF solution template named inv-bff-solution-{initials}

    • replacing {initials} with your actual initials
  • Go into the cloned repository directory and execute the following, if you have not executed it previously:

    oc sync dev-{your initials} 
    
  • Register the pipeline : register the pipeline

    oc pipeline --tekton
    
  • Execution of the above command. Give git credentials if prompted, and main as the git branch to use. When prompted for the pipeline, select igc-nodejs-v1-2-0.

  • Open the pipeline to see it running

  • Get the backend service name this value by executing the command oc get svc -n dev-{initials}.

    $ oc get svc -n dev-ar   
    NAME               TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)   AGE
    inventory-bff-ar   ClusterIP   172.21.180.68   <none>        80/TCP    14m
    inventory-svc-ar   ClusterIP   172.21.4.95     <none>        80/TCP    20m
    

  • Update the connectsTo value in charts/base/values.yaml to point to the kubernetes service of the microservice: connectsTo: inventory-svc-ar

  • Commit and push the changes

    git add .
    git commit -m "Update the connectsTo"
    git push
    

Inventory UI

  • Create a new project from the Inventory Management UI solution template named inv-ui-solution-{initials}

    • replacing {initials} with your actual initials
  • Clone the repository to your local machine

  • Go into the cloned repository directory and execute the following, if you have not executed it previously:

    oc sync dev-{your initials} 
    
  • Register the pipeline : register the pipeline

    oc pipeline --tekton
    

  • Execution of the above command. Give git credentials if prompted, and main as the git branch to use. When prompted for the pipeline, select igc-nodejs-v1-2-0.

  • Open the pipeline to see it running.

  • Get the bff service name this value by executing the command oc get svc -n dev-{initials}.

    $ oc get svc -n dev-ar    
    NAME               TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)   AGE
    inventory-bff-ar   ClusterIP   172.21.180.68   <none>        80/TCP    14m
    inventory-svc-ar   ClusterIP   172.21.4.95     <none>        80/TCP    20m
    

  • Update the connectsTo value in charts/base/values.yaml to point to the kubernetes service of the microservice: connectsTo: inventory-bff-ar

  • Commit and push the changes

    git add .
    git commit -m "Update the connectTo"
    git push
    

  • Verify that the application is running