https://pulumi.com logo
#getting-started
Title
# getting-started
c

cuddly-engineer-30016

03/18/2024, 8:28 AM
Hello all Getting started with IaC in our infra and decided to go with Pulumi. I want to start slow to get my bearings right so instead of deploying Azure or AWS infrastructure with Pulumi, I decided to start off with deploying Grafana Cloud as its something we can experiment with for now. Moreover, I want to deploy the kuberenetes operator and use the Program custom resource and hence I want to use declarative YAML for my program definitions. My question is that in the Pulumi registry, some packages don't have any mention of YAML, especially in the Grafana Cloud package. Can I still use YAML with such packages? Can I use YAML with any package in the Pulumi registry? If not, how do I know the supported languages for a package?
w

witty-battery-28013

03/18/2024, 10:36 AM
c

cuddly-engineer-30016

03/18/2024, 10:38 AM
oh, right. So what does this mean? Do all packages support yaml implicitly?
w

witty-battery-28013

03/18/2024, 10:39 AM
that i am not sure about, but i guess it seems that way! (i am also quite new to pulumi)
"Pulumi YAML programs can use any package and any resource defined in the Pulumi Registry. This includes 80+ cloud and SaaS providers, comprising tens of thousands of cloud infrastructure resources." from https://www.pulumi.com/blog/pulumi-yaml/
c

cuddly-engineer-30016

03/18/2024, 10:47 AM
ooh...it can even implement packages implemented in a different language! Thank you! This is what I was looking for.
l

limited-rainbow-51650

03/18/2024, 11:02 AM
@cuddly-engineer-30016 there might not be YAML examples for some (mainly community) packages, but every of these packages exports a Pulumi schema. Our YAML support works because of this schema. If you activate the Pulumi YAML language server in your editor, you have proper code completion for all the types and properties. https://github.com/pulumi/pulumi-lsp?tab=readme-ov-file#setting-up-pulumi-lsp
c

cuddly-engineer-30016

03/18/2024, 11:07 AM
What about other language support? Do packages need to explicitly support say C# or does the schema handle this? Does CrossCode come into play here?
l

limited-rainbow-51650

03/18/2024, 11:44 AM
Other language support first needs runtime support within Pulumi, hence our list of supported languages. Once a language is supported, we generated language specific SDKs for these and publish these in the respective package registries. Each provider had their packages listed on the
Installation & Configuration
page of their entry in our Registry. For instance, for the AWS provider: https://www.pulumi.com/registry/packages/aws/installation-configuration/#installation
c

cuddly-engineer-30016

03/18/2024, 11:46 AM
So, if a language is not there in a package's installation page, its safe to assume there is no support right?
l

limited-rainbow-51650

03/18/2024, 12:37 PM
Most likely, yes. But it is always best to ask (as an issue) in the corresponding Git repository. The link to the backing code repository can be found in the top right corner of the Registry pages of a provider.
c

cuddly-engineer-30016

03/18/2024, 12:37 PM
Gotcha! Thanks so much for answering these trivial questions. Much appreciate it
l

limited-rainbow-51650

03/18/2024, 12:42 PM
No problem. Hope you have a great time using Pulumi. pulumi logo