sparse-intern-71089
11/10/2022, 8:04 PMlemon-agent-27707
11/10/2022, 8:17 PMgit
as a source mechanism. We'd like to support more and expect that in the fullness of time we will also support:
• Specifying a YAML program directly in the inline payload
• Specifying a pre-signed blob URL, for instance S3
• Maybe others we haven't thought of yet.
We don't currently have any plans to try and support inline automation api programs via deployments (it isn't clear that this is possible). Do any of the options above seem interesting?
If so would you mind opening an issue at github.com/pulumi/service-requests We're definitely interested in adding this capability if we have users who are ready to consume it!
It is true that today we only support thelemon-agent-27707
11/10/2022, 8:19 PMcat
the program and the stack yaml into the directory.
Here is an example of doing that with a yaml program: https://github.com/pulumi/deploy-demos/blob/main/deployment-drivers/nodejs/typescript-driver/index.ts#L140-L176fresh-minister-66960
11/10/2022, 9:06 PMred-match-15116
11/10/2022, 9:30 PMWe were also thinking about putting our pulumi auto api code in a lambda function so we can send that JSON to it and deploy our resources. (Do you see any potential issues with this approach?)The thing to keep in mind here is that the Pulumi CLI needs to be present for automation api, so you'll need to use a custom image as the base of your lambda. Otherwise I don't foresee any issues.
lemon-agent-27707
11/10/2022, 11:24 PMlemon-agent-27707
11/10/2022, 11:33 PMDo you see any potential issues with this approach?The primary issue with wrapping normal Automation API in a lambda vs using Pulumi Deployments (whether the REST API or Remote workspaces) is that many pulumi programs take multiple minutes to run. Longer than is reasonable for a synchronous HTTP request. That is part of the benefit of deployments. You could create a lambda that does the following: 1. Receives an HTTP request to deploy some resources 2. Translate that into a call to the Deployments API 3. The deployments API will immediately return a URL to track the deployment to completion (app.pulumi.com/{org}/{project}/{stack}/deployments/{deploymentNumber} 4. You can return that URL immediately to users to they can monitor progress of the deployment to completion.
No matter how you like to participate in developer communities, Pulumi wants to meet you there. If you want to meet other Pulumi users to share use-cases and best practices, contribute code or documentation, see us at an event, or just tell a story about something cool you did with Pulumi, you are part of our community.
Powered by