Terraform / Azure APIM

Can you use it to incorporate Azure APIM deployments in a pipeline ?

I have an existing API Manager instance which now hosts many different API’s, all of which have been created and configured manually.

I need to be able to manage individual API’s without affecting anything pre-existing and, in the first instance, without having to bring those APIs into an automated process.

You cannot do this in any sensible manner with ARM Templates, I have tried. Terraform does seem to contain the necessary AzureRM functions to make a better job of it.

For another project I have created a containerised DevOps build agent with Terraform installed upon it, so I can use that for this project.

Desired Process

I want to deploy individual APIM APIs from the repositories that they use. For the most part, an API is a front end to a collection of logic/function apps. I want the API to be controlled and managed as a part of that project/repository and its build pipelines.

I don’t want any individual API deployment to affect other API’s or the APIM framework. The deployment and configuration of the actual APIM its self is currently manual but will eventually also be deployed automatically.

Can I Do This ?

I don’t know yet, I expect so. I will post here as the journey unfolds.