:wave: I am trying to get a feeling for a project....
# general
c
👋 I am trying to get a feeling for a project. Are there any Pulumi GCP Landing Zones out there? I have seen https://github.com/terraform-google-modules/terraform-example-foundation and https://github.com/GoogleCloudPlatform/cloud-foundation-fabric/tree/master/fast from Google, but I would rather use something imperative, but it seems the community for Google is mostly TF based?
l
Pulumi is declarative, so it might not be suitable for your needs.
c
Pulumi is declarative? Declarative is things like TF, AWS CloudFormation, Azure Bicep. To me, declaritive is anything that is flat JSON/YAML files. Imperative is programing languages, whether they use the API or synth to declarative language that in turn then uses the API.
l
Declarative is unrelated to language. It just means that the code we write doesn't immediately force an API call (imperative). Instead, the code builds (declares) a desired state. The the engine, like Terraform's or Pulumi's, figures out how to change the cloud (or whatever resources are being. managed) to match that state.
Pulumi is declarative.
c
l
Ok. But it declaratively defines the expected state, which is what you, the coder, are building. The fact that it uses imperative languages to build the declaration doesn't stop the tool from being declarative. And the fact that the providers are imperative is not relevant to your original observation: all tools' providers are imperative, even Terraform's. That's not a distinguishing factor.