News Blog /

Build a CI/CD pipeline for API Management

by Spanish Point - May 19, 2022
Build a CI/CD pipeline for API Management

With the strategic value of APIs, a continuous integration (CI) and continuous deployment (CD) pipeline has become an important aspect of API development. It allows organizations to automate deployment of API changes without error-prone manual steps, detect issues earlier, and ultimately deliver value to end users faster.

ISVs normally have multiple deployment environments (e.g., Development, Testing, Production) and use separate API Management instances for each environment. Some of these instances are shared by multiple development teams, who are responsible for different APIs with different release cadences.

Typically, we find ISVs come to us with the following challenges:

  • How to automate deployment of APIs into API Management,
  • How to migrate configurations from one environment to another,
  • How to avoid interference between different development teams who share the same API Management instance.

The approach described below will address all these challenges.

CI/CD with API Management

CI-CD with API Management workflow graph

The proposed approach is illustrated in the above picture. In this example, there are two deployment environments: Development and Production. Each has its own API Management instance. The Production instance is managed by a designated team, called API publishers. API developers only have access to the Development instance. 

The key in this proposed approach is to keep all configurations in Azure Resource Manager templates. These templates should be kept in a source control system, like Git, for example. As illustrated above, there is a Publisher repository that contains all configurations of the Production API Management instance in a collection of templates:

  • Service template: Contains all service-level configurations.
  • Shared templates: Contains shared resources throughout an API Management instance.
  • API templates: Includes configurations of APIs and their sub-resources.
  • Master template: Ties everything together by linking to all templates.

API developers will fork and clone the Publisher repository. In most cases, they will focus on API templates for their APIs and should not change the shared or service templates.

Once developers have finished developing and testing an API, and have generated the API template, they will submit a pull request to the Publisher repository. API publishers can validate the pull request and make sure the changes are safe and compliant. Most of the validations can be automated as part of the CI/CD pipeline. When the changes are approved and merged successfully, API publishers will deploy them to the Production instance. The deployment can also be easily automated with Azure Pipelines.

With this approach, the deployment of API changes into API Management instances can be automated and it is easy to promote changes from one environment to another. Since different API development teams will be working on different sets of API templates, it also reduces the chances of interference between teams.

Next steps

Cloud migration provide valuable growth opportunities for ISVs. Benefits include a deeper knowledge of your customer needs, cloud opportunities and new revenue streams. Also you have the opportunity to bundle your products with Microsoft’s suite of popular solutions. Having an experienced CSP partner to guide you can help you get the most from the program. 

Spanish Point Technologies partners with ISVs to provide them with an effective Azure roadmap. This plan, SMART AIM, helps ISVs to move applications to Microsoft Azure and access the opportunities within the cloud. Spanish Point will provide you with a set of tools and processes to accelerate your migration to the Cloud. This allows ISVs to achieve growth through cost savings and operational improvements. 

Learn more about SMART AIM and Azure here.