webMethods.io API Gateway - CI/CD Devops

1. Introduction

This article explains CI/CD with different toolchains and importantly different use cases - covering deployments, configurations, and assets propagation across different environments in webMethods.io API gateway.

2. What is CI/CD? 

  • Continuous Integration - Every change is validated automatically
  • Continuous Delivery - Every promotion is automated to higher stages 
  • Continuous Deployment - Every promotion (including configuration changes) to production is automated

For more details on CI/CD please go through https://techcommunity.softwareag.com/techniques-blog/-/blogs/continuous-integration-using-webmethods

3. Pre-Requisites

4. CI/CD with API Gateway

4.1 Push asset to Azure DevOps Repository

Login to source API gateway and click on API’s and select the API’s you want to export and say Export ...

Check-in exported API to Azure DevOps repository by clicking on Repos and Upload files.

Click Browse-> select the exported zip file and select the branch as master and commit.

4.2 Pull assets from the repository

Azure DevOps repo is very likely to be private. Unless you have a public repo, you should provide the credentials to access the repository.

If you do not have one or don’t remember the credentials, go to your Azure Repos and select the Clone option. Select Generate Credentials

Copy the URL, username, and password.

Configure the Jenkins pipeline job to check out from Azure DevOps repository.

4.3    Deploy to Target Environment

Checkout the cicd-cli developed for API gateway by running the following command. (local workspace)

npm i apigw-cicd-cli

Open the config.json file and update the target environment details:

 {
 
"url": "{tenant-URL}/ rest/apigateway/archive?",
"username": "user",
"password": "pass"
 
}
 

Export the API’s in target environment by using the below Jenkins pipeline job.

Once the job finishes successfully, you can see the API’s in the target environment.

Hi Bharath Meka,

Can I get full pipeline script for deploy to target environment.

Thanks

Thanks @Bharath_Meka1 for these explanations.

Is what you mention here still the best way to have WM.Io as part of a CI/CD customer approach ?
Or has it been optimized with the time ?

rgds
Alex

hi @Bharath_Meka1
can you please attach the full pipeline script for deploying in to target environment.

Thank you,
Vaishnavi. S

Hi, do you know this - GitHub - SoftwareAG/webmethods-api-gateway-devops: Repository for hosting and managing the CI/CD scripts, documents and samples for API Gateway ?

Hi, thanks Przemek for the link.

A pre-sales colleague also shared with me the following : https://github.com/thesse1/webmethods-api-gateway-staging

In the same concept of promoting configuration, there is the following video for Ansible usage.