We recommend using Azure Native.
Azure v6.10.0 published on Tuesday, Nov 19, 2024 by Pulumi
Azure API Management
An example Pulumi program that deploys an instance of Azure API Management with the following resources:
- API which is linked to an Azure Function App backend
- Operation and operation policy with URL rewrite and caching rules
- A product, a user, and a subscription to enable access to the API
Running the App
Create a new stack:
pulumi stack init dev
Login to Azure CLI (you will be prompted to do this during deployment if you forget this step):
az login
Restore NPM dependencies:
npm install
Configure Azure environment:
pulumi config set azure:location <location> pulumi config set azure:subscriptionId <YOUR_SUBSCRIPTION_ID>
Run
pulumi up
to preview and deploy changes:$ pulumi up Previewing update (dev): ... Updating (dev): ... Resources: + 12 created Duration: 34m54s
Check the deployed function endpoint:
$ pulumi stack output endpoint https://greeting-service12345678.azure-api.net/hello/Pulumi $ curl --header "Ocp-Apim-Subscription-Key: $(pulumi stack output key)" $(pulumi stack output endpoint) {"time":"2019-06-17T15:16:08.227Z","greeting":"Hello Pulumi!"} ...
Verify that API caches the response for 30 seconds - the same time should be returned for subsequent queries:
$ curl --header "Ocp-Apim-Subscription-Key: $(pulumi stack output key)" $(pulumi stack output endpoint) {"time":"2019-06-17T15:16:08.227Z","greeting":"Hello Pulumi!"} ...