Jump to content
  • Automate TIBCO BusinessWorks? Container Edition deployments to K8S via Maven and Jenkins (CICD)


    Manoj Chaurasia

    Table of Contents


    Here are the steps to create an Automation Pipeline for CI using Maven for dependency management, Jenkins for job scheduling for TIBCO BusinessWorks? Container Edition deployments to Kubernetes (GKE) over Docker containers.

    Pre-requisites:


    Step 1: BusinessWorks? Container Edition app configs / Generate POM files:

    • Right-click on the BusinessWorks? Container Edition application and click Generate POM for Application.

    • Use the below-shown format docker values during the POM generation wizard in TIBCO BusinessStudio?.

    • The Deploy Option is Docker for this specific scenario. You can choose a suitable option per your scenario.

      image6_6.thumb.png.5cd41e799d7f2dd922629efc13d6fb08.png

    • In the second wizard to deploy it to Docker containers, provide the below-shown values (image name and BusinessWorks? Container Edition image values could vary based on the scenario) in the wizard:

      image5_7.thumb.png.61cd7df7de7244aeb3586cc4925568f8.png

    • In the last wizard to deploy it to K8S platform, use the below specific format values:

      image4_6.thumb.png.61b8f93223f833dd4ce9af9150a431b3.png

    • docker-dev properties (generated by Maven wizard) should look like shown below.

      image1_12.thumb.png.af5b704df7e9ee3ecd7f4122bd79598c.png

    • K8s-dev properties (generated by Maven wizard) should look like shown below:

      image2_13.thumb.png.611cc6854942321a22538fefc28db0f0.png


    Step 2: Jenkin configs:

    • Install required plugins in Jenkins.

      • Mandatory:

        • Manage Plugins ? install two plugins ? Maven Integration and Docker.

      • Optional:

        • If you need to create a Build Pipeline, install Build Pipeline plugin also.

        • If you need to customize the default Jenkins theme, install Simple Theme Plugin and add the required theme?s CSS under Manage Jenkins - Configure System - Theme.

          image11_11.thumb.png.ac5c8ca20abcdebfb526e8e11f19405b.png

    • Under Global Tool Configs, add Maven and Docker Home.

      image8_4.thumb.png.a8b5257fce993af7262ae92d7ce00944.png

    • Under Global security config ? select the below option (Plugin Manager -- User browser for metadata download) to disable SSL.

      image10_8.thumb.png.76a43243efe5cd9d8455c89f703d0ec0.png

    • Now, let?s create a Maven project to deploy BusinessWorks? Container Edition app on K8s over Docker containers.

    • Create a pre-build step ? execute shell and execute the required commands.

      • In this specific case, I?m also linking the deployment job only if the Unit Test job is successful (Projects to Watch and Build after other projects are built option).

      • gcloud command is setting the project ID specific to the env. (will vary in your use-case based on your GKE platform)

      • login to docker to execute the fabric8 commands via Maven.

      • execute the kubectl command to have the token set for this specific job.

    • Under the build section ? specify the POM and the required goals.

      pasted_image_0_1_1.thumb.png.6dc36a38a1fccdd9d47855f48342b34e.png

    • Save and run the build.

      image3_9.thumb.png.c4e203542a539e5341564e44806f7fcd.png

    • Under the Build History, if you click the build number, you should see the Console Output displaying the result of your build.

      image9_4.thumb.png.70d7ca7368bfb53537707ee2a10be6c2.png

    • BusinessWorks? Container Edition app should be deployed on K8s and running.<;p>

      pasted_image_0_2_1.thumb.png.b52a9d1f81159db1276be503d72b351b.png


    User Feedback

    Recommended Comments

    There are no comments to display.



    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

×
×
  • Create New...