Hi , We are exploring Pulumi for our upcoming proj...
# general
m
Hi , We are exploring Pulumi for our upcoming project. We are planning to expose a Mule API for resource provisioning for CSPs(AWS,etc) . Once Mule receives request, it collect necessary data and then invoke Pulumi for infra provisioning. Mulesoft is running in RTF platform (Azure) and planning to deploy the Pulumi in Azure as well. How do I invoke the Pulumi from Mulesoft? Does Pulumi exposes any REST API to accept the input data from Mulesoft so that it can run the script/code with Mulesoft supplied data? What are all the options available for seamless integration with Mulesoft RTF ? Thanks in advance! (edited)
w
Using Pulumi Cloud you can use the Deployments REST API to trigger deployment of Pulumi defined infrastructure. https://www.pulumi.com/docs/pulumi-cloud/deployments/ Outside of Pulumi Cloud, you could build your own API on top of Pulumi Automation API. https://www.pulumi.com/docs/using-pulumi/automation-api/ Hope those help.
m
Thanks Luke! Option 1 : "Deployments REST API to trigger deployment of Pulumi defined infrastructure" : I believe we have to use Pulumi cli first to have a stack entry in pulumi cloud i.e infrastructure code is already defined and available in pulumi cloud . With the help of Deployment REST API we can trigger deployment . If my understanding is correct then we cannot use this option as we are looking for provisioning infra dynamically based on user inputs. Option 2 : Pulumi Automation API To achieve dynamic infrastructure blueprint generation , this option might be perfect as there is no manual intervention is required , fully automated. Mulesoft supplies required input data to Pulumi Automation API script where we utilize programming language conditional statements to dynamically generate script and execute it. Just follow up question on the Option 2 : What is the best way to build own API with the Automation API ? Standalone Micro Service: Does CLI need to installed on the machine to run Automation api or just add the Automation API dependency and execute it via REST api? Docker Image: I read it somewhere CLI need to be installed on the machine to use the Automation API . If so , we need to build our own docker image with python(e.g) decencies and run it in a Kubernetes cluster with multiple pods. Kindly advise the right approach! We need to recommend best approach since we are working for enterprise customer. If Pulumi cloud offers : 1. State management 2. Transparency 3. Handling concurrency requests 4. Fix the issue quickly(automated) without spending much time 5. Monitoring & Alerting 6. Handling multiple versions I see Pulumi leverage AI capability . Is there a way to disable the AI feature in the Pulumi cloud considering the security concern . I mean if we decided to use Pulumi in our org. Thanks, (edited)