sparse-intern-71089
03/01/2021, 11:24 AMwhite-balloon-205
main.go
can be paired with a Pulumi.yaml
as a separate project and deployed independently. StackReferences can be used to reference stack outputs from one project in another.
Alternatively, or in combination with the above, each project can organize its files however it wants across multiple files and folders, and these can directly reference each other just like any other Go program. In this case, multiple files are just used for code organization, but the entire program is still a single atomic deployment unit.
At the end of the day, the choice between these is up to how you want to version your deployments. It’s very similar to the monoliths vs microservices decision point. Monoliths are normally simpler until you know your versioning boundaries, and then microservices help you scale different systems independently. See also https://www.pulumi.com/docs/intro/console/collaboration/project-and-stack-management/.hallowed-author-21638
03/02/2021, 2:49 PM