pulumi/pkg/codegen/internal/test/testdata/plain-object-defaults/docs/moduletest/_index.md
Ian Wahbe 4b7985384c
[codegen/go] Call site defaults for Pulumi Object types (#8411)
* Add test case

* Fix tests

* Add test dependencies correctly

* Feed through error handling

* Include test output

* Get types to line up

* Add remaining test files

* Update changelog

* Correctly find type paths

* Handle transitive objects

* Handle required fields

* Add feature flag for go

* Add required+default test case

* Don't `<any>` cast known types.

* Add more flags.

I realize this should really wait for PR#8400 to merge.

* Add plain object to env-helper test

This test fails right now. My next problem is fixing it.

* Handle plain types

* Handle function inputs

* Fix the indentation

* Handle output types correctly

* Remove unnecessary `!`

* Add test case

* Fix tests

* Add test dependencies correctly

* Feed through error handling

* Include test output

* Get types to line up

* Add remaining test files

* Update changelog

* Correctly find type paths

* Handle transitive objects

* Handle required fields

* Add required+default test case

* Don't `<any>` cast known types.

* Add plain object to env-helper test

This test fails right now. My next problem is fixing it.

* Handle plain types

* Handle function inputs

* Fix the indentation

* Handle output types correctly

* Remove unnecessary `!`

* Start on `genPlainObjectDefaultFunc`

* Add missing change to fix test

* Run tests with merge

* Refactor out assign

* Merge in next _index.md diff

* Change method name to `Defaults`

* Handle enums correctly

* Another attempt at _index.md

* Make module generation deterministic

* Add checks for old values

* Insert defaults in resources

* Fix docs generation

Credit to @praneetloke

* Progress on adding defaults to Resource arguments

* Handle resource argument defaults

* Don't create defaults if disableObjectDefaults

* Rename test folder

* Add test for disable flag

* Fix disable test

* Update docs

* Abstract out nil comparisons

* Use reflection to test for empty values

* Simplify Ptr and pulumi.Any type handling

* Remove unused function

* Apply defaults to functions

* Update new test with master codegen

* Tests + nil check
2021-11-23 15:10:15 -08:00

23 KiB


title: "ModuleTest" title_tag: "example.ModuleTest" meta_desc: "Documentation for the example.ModuleTest resource with examples, input properties, output properties, lookup functions, and supporting types." layout: api no_edit_this_page: true

Create a ModuleTest Resource

{{< chooser language "typescript,python,go,csharp" / >}}

{{% choosable language nodejs %}}

new ModuleTest(name: string, args?: ModuleTestArgs, opts?: CustomResourceOptions);
{{% /choosable %}}

{{% choosable language python %}}

@overload
def ModuleTest(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               mod1: Optional[_mod1.TypArgs] = None,
               val: Optional[TypArgs] = None)
@overload
def ModuleTest(resource_name: str,
               args: Optional[ModuleTestArgs] = None,
               opts: Optional[ResourceOptions] = None)
{{% /choosable %}}

{{% choosable language go %}}

func NewModuleTest(ctx *Context, name string, args *ModuleTestArgs, opts ...ResourceOption) (*ModuleTest, error)
{{% /choosable %}}

{{% choosable language csharp %}}

public ModuleTest(string name, ModuleTestArgs? args = null, CustomResourceOptions? opts = null)
{{% /choosable %}}

{{% choosable language nodejs %}}

name string
The unique name of the resource.
args ModuleTestArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

{{% /choosable %}}

{{% choosable language python %}}

resource_name str
The unique name of the resource.
args ModuleTestArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.

{{% /choosable %}}

{{% choosable language go %}}

ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args ModuleTestArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.

{{% /choosable %}}

{{% choosable language csharp %}}

name string
The unique name of the resource.
args ModuleTestArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

{{% /choosable %}}

ModuleTest Resource Properties

To learn more about resource properties and how to use them, see [Inputs and Outputs]({{< relref "/docs/intro/concepts/inputs-outputs" >}}) in the Architecture and Concepts docs.

Inputs

The ModuleTest resource accepts the following [input]({{< relref "/docs/intro/concepts/inputs-outputs" >}}) properties:

{{% choosable language csharp %}}

Mod1 Pulumi.Example.Mod1.Inputs.TypArgs
{{% md %}}{{% /md %}}
Val TypArgs
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language go %}}

Mod1 TypArgs
{{% md %}}{{% /md %}}
Val TypArgs
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language nodejs %}}

mod1 mod1TypArgs
{{% md %}}{{% /md %}}
val TypArgs
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language python %}}

mod1 TypArgs
{{% md %}}{{% /md %}}
val TypArgs
{{% md %}}{{% /md %}}
{{% /choosable %}}

Outputs

All input properties are implicitly available as output properties. Additionally, the ModuleTest resource produces the following output properties:

{{% choosable language csharp %}}

Id string
{{% md %}}The provider-assigned unique ID for this managed resource.{{% /md %}}
{{% /choosable %}}

{{% choosable language go %}}

Id string
{{% md %}}The provider-assigned unique ID for this managed resource.{{% /md %}}
{{% /choosable %}}

{{% choosable language nodejs %}}

id string
{{% md %}}The provider-assigned unique ID for this managed resource.{{% /md %}}
{{% /choosable %}}

{{% choosable language python %}}

id str
{{% md %}}The provider-assigned unique ID for this managed resource.{{% /md %}}
{{% /choosable %}}

Supporting Types

Typ

{{% choosable language csharp %}}

Mod1 Pulumi.Example.Mod1.Inputs.Typ
{{% md %}}{{% /md %}}
Mod2 Pulumi.Example.Mod2.Inputs.Typ
{{% md %}}{{% /md %}}
Val string
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language go %}}

Mod1 Typ
{{% md %}}{{% /md %}}
Mod2 Typ
{{% md %}}{{% /md %}}
Val string
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language nodejs %}}

mod1 mod1Typ
{{% md %}}{{% /md %}}
mod2 mod2Typ
{{% md %}}{{% /md %}}
val string
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language python %}}

mod1 Typ
{{% md %}}{{% /md %}}
mod2 Typ
{{% md %}}{{% /md %}}
val str
{{% md %}}{{% /md %}}
{{% /choosable %}}

Typ

{{% choosable language csharp %}}

Val string
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language go %}}

Val string
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language nodejs %}}

val string
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language python %}}

val str
{{% md %}}{{% /md %}}
{{% /choosable %}}

Typ

{{% choosable language csharp %}}

Mod1 Pulumi.Example.Mod1.Inputs.Typ
{{% md %}}{{% /md %}}
Val string
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language go %}}

Mod1 Typ
{{% md %}}{{% /md %}}
Val string
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language nodejs %}}

mod1 mod1Typ
{{% md %}}{{% /md %}}
val string
{{% md %}}{{% /md %}}
{{% /choosable %}}

{{% choosable language python %}}

mod1 Typ
{{% md %}}{{% /md %}}
val str
{{% md %}}{{% /md %}}
{{% /choosable %}}

Package Details

Repository
License