Author Pulumi Packages in YAML #210
Labels
area/multi-language-components
kind/design
An engineering design doc, usually part of an Epic
language/yaml
It's possible to create component provider packages in every language except YAML.
To design and implement support for component providers in YAML, we may pursue:
Supporting running a YAML Program via, or as, a resource plugin
Perhaps by modifying the
pulumi-language-yaml
binary to execute in a resource plugin mode as well as the current language plugin mode. This would require changes to pulumi-language-yaml and to the engine.Package schema generation for the YAML Program
Either by direct generation of schema.json or as a consequence of implementing GetSchema for a YAML component provider.
SDK generation in the Pulumi CLI
A method for generating SDKs without requiring writing Go programs.
Aspirational goals that the design for the above should not preclude:
CLI and language plugin support to have a one-command authoring experience to create a package from a YAML program
To be determined, but ideally there would be an authoring experience as simple as
pulumi plugin create --language yaml --dir .
. This would require coordination between the engine and the language plugin to support a user experience on par withpulumi convert
.Enable combining multiple YAML component resources in one package
Perhaps by enabling a
foo.yaml
to define a Foo resource, abar.yaml
to define a Bar resource, etc. Each would be a YAML Program, which when hosted by the YAML resource provider shim, combined into a schema that supports Foo, Bar, ... etc. resources.The text was updated successfully, but these errors were encountered: