https://pulumi.com logo
Title
f

few-zebra-43062

10/13/2021, 9:17 PM
Hi everyone, Looking at adapting Pulumi for our Cloud infrastructure, but I'm not sure if that's even possible. Our app runs on Azure and consists of a few Function Apps, Storage Accounts, CDN endpoints, etc. We provide this app as a SaaS offering, where every customer get's his own "Tenant", meaning every customer gets his own infrastructure resources (duplicated basically). As far as I can tell, I can only use one Stack to deploy one environment. So I would need to create a stack for every customer manually, right? Or can I use one stack to deploy the same infrastructure X amount of times? Thanks! :)
w

witty-candle-66007

10/13/2021, 9:55 PM
The general approach is that you would have a single project - the code base - and then deploy different customer-specific stacks against that code base. This allows you to easily customize/manage the different customer environments separately. So new customer shows up, you basically run
pulumi up
(manually or from, say a CI/CD pipeline) for that customer and voila you have an environment for that customer. https://www.pulumi.com/docs/guides/organizing-projects-stacks/ This can be further automated using the automation API (https://www.pulumi.com/docs/guides/automation-api/). I would be happy to discuss further on a call if you want.
s

steep-toddler-94095

10/13/2021, 10:23 PM
definitely check out Automation API. I think Snowflake uses it for a similar use case as the one you have
q

quiet-architect-74241

10/14/2021, 3:55 PM
We use a similar setup, but for different environments. We have 1 code base and multiple stacks to create multiple environments. Settings in the Stack drive the variations we have in the infrastructure. If you automate the creation of stacks, like @steep-toddler-94095 says, you'd have a powerful solution.
f

few-zebra-43062

10/14/2021, 10:49 PM
Thanks for the replies! 😊 That worked like a charm! The Automation API is great