Out of curiosity, did anyone built a modularised s...
# typescript
p
Out of curiosity, did anyone built a modularised solution already to deploy Pulumi resources? I am looking for something similar how
vite
and others serve a nice and easy way to configure your project compilation but for deploying resources. Truth be told, I already put together a prototype but before I go deeper there I want to double-check 😄 This is how it looks like now:
Copy code
import { postgres } from '@adaliszk/k8s-postgres-ha'
import { defineConfig } from '@adaliszk/pulumi'

export default defineConfig({
    createNamespace: true,
    resources: [
        postgres()
    ]
})
f
Not sure if this is what you are thinking of, but I've setup monorepo with Nx to have several Pulumi packages. Nx can then detect affected packages based on PR / push in GitHub and run Pulumi preview or up on those
I used projen to set it up with this plugin for nx: https://aws.github.io/aws-prototyping-sdk/typescript/nx-monorepo/index.html
p
Having the preview whenever there is a change is awesome! It is something I wanted to add to my CI/CD pipelines eventually. The main concept I was looking to not re-invent is the way you could create deployment setups as if they were just another vite or rollup compilation setups. Something where you pull in packages, and then drop in your plugins, in the example case just resources that then will create that for your application. I want to couple the deployment with the code I ship in a very simplistic manner so that there is no need to go to another package and easy to understand what gets deployed without all the details immediately exposed.