Multi-Stack Orchestration Engine
A programmatic tool for managing deployments and dependencies across multiple, interconnected Pulumi stacks.
Overview
For large systems, infrastructure is often split into multiple Pulumi stacks (e.g., a networking stack, a database stack, an application stack). A Multi-Stack Orchestration Engine is a program, built with the Automation API, designed to manage the deployment of these stacks in the correct order, passing outputs from one stack (like a VPC ID) as inputs to another. This codifies the entire application deployment, including dependencies, into a single, runnable program, which is ideal for CI/CD and complex workflow automation.
✨ Key Features
- Orchestrates `pulumi up` across multiple stacks.
- Manages dependencies by passing outputs from one stack as inputs to another.
- Codifies complex deployment workflows in a general-purpose language.
- Enables safe, incremental deployments of large-scale systems.
- Can be run from a CI/CD pipeline or locally.
🎯 Key Differentiators
- Dependencies and orchestration logic are expressed in a strongly-typed programming language, making it more robust and maintainable than shell scripts.
- Provides a unified programming model for both infrastructure definition and orchestration.
- Does not require a separate workflow tool.
Unique Value: Provides a safe, repeatable, and codified way to manage the lifecycle of complex, multi-stack applications and their infrastructure dependencies.
🎯 Use Cases (4)
✅ Best For
- Pulumi's internal 'Zephyr' team uses an Automation API program to simplify the workflow for standing up their entire online store application, which is composed of multiple infrastructure and application stacks.
💡 Check With Vendor
Verify these considerations match your specific requirements:
- Simple applications that can be managed within a single Pulumi stack.
- Projects where dependencies between stacks can be easily managed with `StackReference` in the Pulumi program itself.
🏆 Alternatives
Instead of chaining together multiple CLI calls in a fragile CI/CD script, the Automation API allows you to build a single, robust program that handles the entire orchestration, including error handling, state management, and passing of outputs.
💻 Platforms
🔌 Integrations
💰 Pricing
Free tier: Custom-built tool; cost is based on development effort and underlying cloud resource usage.
🔄 Similar Tools in Pulumi Automation API
Pulumi
An open-source infrastructure-as-code platform for creating, deploying, and managing cloud infrastru...
Pulumi Kubernetes Operator
A Kubernetes controller that manages Pulumi stacks as custom resources, enabling GitOps workflows fo...
Self-Service Infrastructure Platform
An internal tool, often a web portal or CLI, that uses the Automation API to expose standardized inf...
Infrastructure Integration Testing Framework
Using Automation API within a testing framework (like Pytest or Mocha) to programmatically manage in...
Custom Infrastructure CLI
A custom CLI tool that wraps Pulumi operations to provide a user-friendly, domain-specific interface...
Single-Tenant SaaS Provisioning System
A backend service that programmatically spins up a new Pulumi stack for each customer, providing sin...