mirror of https://github.com/pulumi/pulumi.git
49dbdbcafa
Previously, if there were nested arguments in schemas, generation of go code would simply use the go module name, but when imports are generated they are potentially aliased to avoid naming conflicts. This is taken into account at the top level since the aliases are checked directly, but when traversing downward the argument types are generated after conversions from the PCL schema data. This fix adds an optional map to pkgContext that contains the go module info, which contains the appropriate base path to check against aliases. We also add aliases to the map that are generated by the import system (and not just from other go package infos). |
||
---|---|---|
.. | ||
cgstrings | ||
convert | ||
docs | ||
dotnet | ||
gen_program_test | ||
go | ||
hcl2 | ||
nodejs | ||
pcl | ||
python | ||
report | ||
schema | ||
testing | ||
README.md | ||
docs.go | ||
docs_test.go | ||
programs.md | ||
sdks.md | ||
utilities.go | ||
utilities_test.go | ||
utilities_types.go |
README.md
(codegen)= (crosscode)=
Code generation
Code generation is essential to Pulumi's ability to support both a variety of programming languages and a variety of cloud providers. This package defines the core components of Pulumi's code generation functionality (known as Pulumi CrossCode). At a high level, code generation is used to manage three categories of output: SDKs, programs, and documentation. At a lower level, these all make use of a number of shared concepts such as schema and Pulumi Configuration Language (PCL).
:::{toctree} :maxdepth: 1 :titlesonly:
/pkg/codegen/sdks.md /pkg/codegen/programs.md /pkg/codegen/docs/README /pkg/codegen/schema/README /pkg/codegen/pcl/README :::