Simplify output-funcs codegen test (#8039)

* Consolidate output-funcs into a single normal schema.json

* Accept nodejs codegen output

* Accept dotnet output-funcs output; does not compile yet

* Accept docs output-funcs output

* Permit parallel test runs

* Accept nodejs codegen

* Fix and speed up Python codegen tests

* Dedup dash-named-schema

* Make dotnet tests pass

* Satisfy go lint
This commit is contained in:
Anton Tayanovskyy 2021-09-23 17:42:20 +00:00 committed by GitHub
parent 41b8882fe8
commit 49ccd9ac97
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
107 changed files with 8478 additions and 1217 deletions

View file

@ -1,15 +1,8 @@
package gen
import (
"bytes"
"encoding/json"
"fmt"
"io"
"io/ioutil"
"os/exec"
"path/filepath"
"sort"
"strings"
"testing"
"github.com/stretchr/testify/assert"
@ -17,7 +10,6 @@ import (
"github.com/pulumi/pulumi/pkg/v3/codegen/internal/test"
"github.com/pulumi/pulumi/pkg/v3/codegen/schema"
"github.com/pulumi/pulumi/pkg/v3/testing/integration"
"github.com/pulumi/pulumi/sdk/v3/go/common/util/executable"
)
@ -103,44 +95,20 @@ func typeCheckGeneratedPackage(t *testing.T, codeDir string) {
if alreadyHaveGoMod {
t.Logf("Found an existing go.mod, leaving as is")
} else {
runCommand(t, "go_mod_init", codeDir, goExe, "mod", "init", inferModuleName(codeDir))
test.RunCommand(t, "go_mod_init", codeDir, goExe, "mod", "init", inferModuleName(codeDir))
replacement := fmt.Sprintf("github.com/pulumi/pulumi/sdk/v3=%s", sdk)
runCommand(t, "go_mod_edit", codeDir, goExe, "mod", "edit", "-replace", replacement)
test.RunCommand(t, "go_mod_edit", codeDir, goExe, "mod", "edit", "-replace", replacement)
}
runCommand(t, "go_mod_tidy", codeDir, goExe, "mod", "tidy")
runCommand(t, "go_build", codeDir, goExe, "build", "-v", "all")
test.RunCommand(t, "go_mod_tidy", codeDir, goExe, "mod", "tidy")
test.RunCommand(t, "go_build", codeDir, goExe, "build", "-v", "all")
}
func testGeneratedPackage(t *testing.T, codeDir string) {
goExe, err := executable.FindExecutable("go")
require.NoError(t, err)
runCommand(t, "go-test", codeDir, goExe, "test", fmt.Sprintf("%s/...", inferModuleName(codeDir)))
}
func runCommand(t *testing.T, name string, cwd string, executable string, args ...string) {
wd, err := filepath.Abs(cwd)
require.NoError(t, err)
var stdout, stderr bytes.Buffer
cmdOptions := integration.ProgramTestOptions{Stderr: &stderr, Stdout: &stdout, Verbose: true}
err = integration.RunCommand(t,
name,
append([]string{executable}, args...),
wd,
&cmdOptions)
require.NoError(t, err)
if err != nil {
stdout := stdout.String()
stderr := stderr.String()
if len(stdout) > 0 {
t.Logf("stdout: %s", stdout)
}
if len(stderr) > 0 {
t.Logf("stderr: %s", stderr)
}
t.FailNow()
}
test.RunCommand(t, "go-test", codeDir, goExe, "test", fmt.Sprintf("%s/...", inferModuleName(codeDir)))
}
func TestGenerateTypeNames(t *testing.T) {
@ -162,88 +130,3 @@ func TestGenerateTypeNames(t *testing.T) {
}
})
}
func TestGenerateOutputFuncs(t *testing.T) {
testDir := filepath.Join("..", "internal", "test", "testdata", "output-funcs")
files, err := ioutil.ReadDir(testDir)
if err != nil {
assert.NoError(t, err)
return
}
var examples []string
for _, f := range files {
name := f.Name()
if strings.HasSuffix(name, ".json") {
examples = append(examples, strings.TrimSuffix(name, ".json"))
}
}
sort.Slice(examples, func(i, j int) bool { return examples[i] < examples[j] })
gen := func(reader io.Reader, writer io.Writer) error {
var pkgSpec schema.PackageSpec
err := json.NewDecoder(reader).Decode(&pkgSpec)
if err != nil {
return err
}
pkg, err := schema.ImportSpec(pkgSpec, nil)
if err != nil {
return err
}
tool := "tool"
var goPkgInfo GoPackageInfo
if goInfo, ok := pkg.Language["go"].(GoPackageInfo); ok {
goPkgInfo = goInfo
}
pkgContexts := generatePackageContextMap(tool, pkg, goPkgInfo)
var pkgContext *pkgContext
for _, c := range pkgContexts {
if len(c.functionNames) == 1 {
pkgContext = c
}
}
if pkgContext == nil {
return fmt.Errorf("Cannot find a package with 1 function in generatePackageContextMap result")
}
fun := pkg.Functions[0]
_, err = writer.Write([]byte(pkgContext.genFunctionCodeFile(fun)))
return err
}
for _, ex := range examples {
t.Run(ex, func(t *testing.T) {
inputFile := filepath.Join(testDir, fmt.Sprintf("%s.json", ex))
expectedOutputFile := filepath.Join(testDir, "go", fmt.Sprintf("%s.go", ex))
test.ValidateFileTransformer(t, inputFile, expectedOutputFile, gen)
})
}
goDir := filepath.Join("..", "internal", "test", "testdata", "output-funcs", "go")
t.Run("compileGeneratedCode", func(t *testing.T) {
t.Logf("cd %s && go mod tidy", goDir)
cmd := exec.Command("go", "mod", "tidy")
cmd.Dir = goDir
assert.NoError(t, cmd.Run())
t.Logf("cd %s && go build .", goDir)
cmd = exec.Command("go", "build", ".")
cmd.Dir = goDir
assert.NoError(t, cmd.Run())
})
t.Run("testGeneratedCode", func(t *testing.T) {
t.Logf("cd %s && go test .", goDir)
cmd := exec.Command("go", "test", ".")
cmd.Dir = goDir
assert.NoError(t, cmd.Run())
})
}

View file

@ -30,6 +30,8 @@ import (
"gopkg.in/yaml.v3"
"github.com/pulumi/pulumi/pkg/v3/codegen/schema"
"github.com/pulumi/pulumi/pkg/v3/testing/integration"
"github.com/pulumi/pulumi/sdk/v3/go/common/util/executable"
)
// GenPkgSignature corresponds to the shape of the codegen GeneratePackage functions.
@ -317,3 +319,32 @@ func ValidateFileTransformer(
ValidateFileEquality(t, actual, expected)
}
func RunCommand(t *testing.T, name string, cwd string, exec string, args ...string) {
exec, err := executable.FindExecutable(exec)
if err != nil {
t.Error(err)
t.FailNow()
}
wd, err := filepath.Abs(cwd)
require.NoError(t, err)
var stdout, stderr bytes.Buffer
cmdOptions := integration.ProgramTestOptions{Stderr: &stderr, Stdout: &stdout, Verbose: true}
err = integration.RunCommand(t,
name,
append([]string{exec}, args...),
wd,
&cmdOptions)
require.NoError(t, err)
if err != nil {
stdout := stdout.String()
stderr := stderr.String()
if len(stdout) > 0 {
t.Logf("stdout: %s", stdout)
}
if len(stderr) > 0 {
t.Logf("stderr: %s", stderr)
}
t.FailNow()
}
}

View file

@ -42,99 +42,123 @@ const (
var sdkTests = []sdkTest{
{
Directory: "input-collision",
Description: "Schema with types that could potentially produce collisions (go).",
Directory: "dash-named-schema",
Description: "Simple schema with a two part name (foo-bar)",
Skip: codegen.NewStringSet("python/test"),
SkipCompileCheck: codegen.NewStringSet(dotnet),
},
{
Directory: "dash-named-schema",
Description: "Simple schema with a two part name (foo-bar)",
Directory: "input-collision",
Description: "Schema with types that could potentially produce collisions (go).",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "external-resource-schema",
Description: "External resource schema",
SkipCompileCheck: codegen.NewStringSet(nodejs, golang, dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "nested-module",
Description: "Nested module",
SkipCompileCheck: codegen.NewStringSet(dotnet, nodejs),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "nested-module-thirdparty",
Description: "Third-party nested module",
SkipCompileCheck: codegen.NewStringSet(dotnet, nodejs),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "plain-schema-gh6957",
Description: "Repro for #6957",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "resource-args-python-case-insensitive",
Description: "Resource args with same named resource and type case insensitive",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "resource-args-python",
Description: "Resource args with same named resource and type",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "simple-enum-schema",
Description: "Simple schema with enum types",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "simple-plain-schema",
Description: "Simple schema with plain properties",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "simple-plain-schema-with-root-package",
Description: "Simple schema with root package set",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "simple-resource-schema",
Description: "Simple schema with local resource properties",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "simple-resource-schema-custom-pypackage-name",
Description: "Simple schema with local resource properties and custom Python package name",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "simple-methods-schema",
Description: "Simple schema with methods",
SkipCompileCheck: codegen.NewStringSet(nodejs, dotnet, golang),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "simple-yaml-schema",
Description: "Simple schema encoded using YAML",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "provider-config-schema",
Description: "Simple provider config schema",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "replace-on-change",
Description: "Simple use of replaceOnChange in schema",
SkipCompileCheck: codegen.NewStringSet(golang, dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "resource-property-overlap",
Description: "A resource with the same name as it's property",
SkipCompileCheck: codegen.NewStringSet(dotnet, nodejs),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "hyphen-url",
Description: "A resource url with a hyphen in it's path",
SkipCompileCheck: codegen.NewStringSet(dotnet),
Skip: codegen.NewStringSet("python/test"),
},
{
Directory: "output-funcs",
Description: "Tests targeting the $fn_output helper code generation feature",
SkipCompileCheck: codegen.NewStringSet(dotnet),
},
}
@ -207,8 +231,21 @@ type SDKCodegenOptions struct {
func TestSDKCodegen(t *testing.T, opts *SDKCodegenOptions) { // revive:disable-line
testDir := filepath.Join("..", "internal", "test", "testdata")
for _, tt := range sdkTests {
t.Run(tt.Description, func(t *testing.T) {
// Motivation for flagging parallelism: not all tests are
// parallel-safe yet (for example, codegen/docs tests fail),
// and there are concerns about memory utilizaion in CI. It
// can be a nice feature for developing though.
parallel := os.Getenv("PULUMI_PARALLEL_SDK_CODEGEN_TESTS") != ""
for _, sdkTest := range sdkTests {
tt := sdkTest // avoid capturing loop variable `sdkTest` in the closure
t.Run(tt.Directory, func(t *testing.T) {
if parallel {
t.Parallel()
}
t.Log(tt.Description)
dirPath := filepath.Join(testDir, filepath.FromSlash(tt.Directory))
schemaPath := filepath.Join(dirPath, "schema.json")

View file

@ -2,3 +2,7 @@ package-lock.json
go.sum
go.mod
*/go/tests
*/python/tests
*/python/venv
*/python/*.egg-info
*/python/requirements.txt

View file

@ -0,0 +1,41 @@
---
title: "mypkg"
title_tag: "mypkg.mypkg"
meta_desc: ""
menu:
reference:
parent: API Reference
---
<!-- WARNING: this file was generated by test. -->
<!-- Do not edit by hand unless you're certain you know what you are doing! -->
<h2 id="resources">Resources</h2>
<ul class="api">
<li><a href="provider" title="Provider"><span class="symbol resource"></span>Provider</a></li>
</ul>
<h2 id="functions">Functions</h2>
<ul class="api">
<li><a href="funcwithalloptionalinputs" title="FuncWithAllOptionalInputs"><span class="symbol function"></span>FuncWithAllOptionalInputs</a></li>
<li><a href="funcwithconstinput" title="FuncWithConstInput"><span class="symbol function"></span>FuncWithConstInput</a></li>
<li><a href="funcwithdefaultvalue" title="FuncWithDefaultValue"><span class="symbol function"></span>FuncWithDefaultValue</a></li>
<li><a href="funcwithdictparam" title="FuncWithDictParam"><span class="symbol function"></span>FuncWithDictParam</a></li>
<li><a href="funcwithlistparam" title="FuncWithListParam"><span class="symbol function"></span>FuncWithListParam</a></li>
<li><a href="getclientconfig" title="GetClientConfig"><span class="symbol function"></span>GetClientConfig</a></li>
<li><a href="getintegrationruntimeobjectmetadatum" title="GetIntegrationRuntimeObjectMetadatum"><span class="symbol function"></span>GetIntegrationRuntimeObjectMetadatum</a></li>
<li><a href="liststorageaccountkeys" title="ListStorageAccountKeys"><span class="symbol function"></span>ListStorageAccountKeys</a></li>
</ul>
<h2 id="package-details">Package Details</h2>
<dl class="package-details">
<dt>Repository</dt>
<dd><a href=""></a></dd>
<dt>License</dt>
<dd></dd>
<dt>Version</dt>
<dd>0.0.1</dd>
</dl>

View file

@ -0,0 +1,14 @@
{
"emittedFiles": [
"_index.md",
"funcwithalloptionalinputs/_index.md",
"funcwithconstinput/_index.md",
"funcwithdefaultvalue/_index.md",
"funcwithdictparam/_index.md",
"funcwithlistparam/_index.md",
"getclientconfig/_index.md",
"getintegrationruntimeobjectmetadatum/_index.md",
"liststorageaccountkeys/_index.md",
"provider/_index.md"
]
}

View file

@ -0,0 +1,202 @@
---
title: "funcWithAllOptionalInputs"
title_tag: "mypkg.funcWithAllOptionalInputs"
meta_desc: "Documentation for the mypkg.funcWithAllOptionalInputs function with examples, input properties, output properties, and supporting types."
---
<!-- WARNING: this file was generated by test. -->
<!-- Do not edit by hand unless you're certain you know what you are doing! -->
Check codegen of functions with all optional inputs.
## Using funcWithAllOptionalInputs {#using}
{{< chooser language "typescript,python,go,csharp" / >}}
{{% choosable language nodejs %}}
<div class="highlight"><pre class="chroma"><code class="language-typescript" data-lang="typescript"><span class="k">function </span>funcWithAllOptionalInputs<span class="p">(</span><span class="nx">args</span><span class="p">:</span> <span class="nx">FuncWithAllOptionalInputsArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p">?:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#InvokeOptions">InvokeOptions</a></span><span class="p">): Promise&lt;<span class="nx"><a href="#result">FuncWithAllOptionalInputsResult</a></span>></span></code></pre></div>
{{% /choosable %}}
{{% choosable language python %}}
<div class="highlight"><pre class="chroma"><code class="language-python" data-lang="python"><span class="k">def </span>func_with_all_optional_inputs(</span><span class="nx">a</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">,</span>
<span class="nx">b</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">,</span>
<span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.InvokeOptions">Optional[InvokeOptions]</a></span> = None<span class="p">) -&gt;</span> FuncWithAllOptionalInputsResult</code></pre></div>
{{% /choosable %}}
{{% choosable language go %}}
<div class="highlight"><pre class="chroma"><code class="language-go" data-lang="go"><span class="k">func </span>FuncWithAllOptionalInputs<span class="p">(</span><span class="nx">ctx</span><span class="p"> *</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span><span class="p">,</span> <span class="nx">args</span><span class="p"> *</span><span class="nx">FuncWithAllOptionalInputsArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p"> ...</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#InvokeOption">InvokeOption</a></span><span class="p">) (*<span class="nx"><a href="#result">FuncWithAllOptionalInputsResult</a></span>, error)</span></code></pre></div>
> Note: This function is named `FuncWithAllOptionalInputs` in the Go SDK.
{{% /choosable %}}
{{% choosable language csharp %}}
<div class="highlight"><pre class="chroma"><code class="language-csharp" data-lang="csharp"><span class="k">public static class </span><span class="nx">FuncWithAllOptionalInputs </span><span class="p">{</span><span class="k">
public static </span>Task&lt;<span class="nx"><a href="#result">FuncWithAllOptionalInputsResult</a></span>> <span class="p">InvokeAsync(</span><span class="nx">FuncWithAllOptionalInputsArgs</span><span class="p"> </span><span class="nx">args<span class="p">,</span> <span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.InvokeOptions.html">InvokeOptions</a></span><span class="p">? </span><span class="nx">opts = null<span class="p">)</span><span class="p">
}</span></code></pre></div>
{{% /choosable %}}
The following arguments are supported:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_csharp">
<a href="#a_csharp" style="color: inherit; text-decoration: inherit;">A</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Property A{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_csharp">
<a href="#b_csharp" style="color: inherit; text-decoration: inherit;">B</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Property B{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_go">
<a href="#a_go" style="color: inherit; text-decoration: inherit;">A</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Property A{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_go">
<a href="#b_go" style="color: inherit; text-decoration: inherit;">B</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Property B{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_nodejs">
<a href="#a_nodejs" style="color: inherit; text-decoration: inherit;">a</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Property A{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_nodejs">
<a href="#b_nodejs" style="color: inherit; text-decoration: inherit;">b</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Property B{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_python">
<a href="#a_python" style="color: inherit; text-decoration: inherit;">a</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Property A{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_python">
<a href="#b_python" style="color: inherit; text-decoration: inherit;">b</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Property B{{% /md %}}</dd></dl>
{{% /choosable %}}
## funcWithAllOptionalInputs Result {#result}
The following output properties are available:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_csharp">
<a href="#r_csharp" style="color: inherit; text-decoration: inherit;">R</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_go">
<a href="#r_go" style="color: inherit; text-decoration: inherit;">R</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_nodejs">
<a href="#r_nodejs" style="color: inherit; text-decoration: inherit;">r</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_python">
<a href="#r_python" style="color: inherit; text-decoration: inherit;">r</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
<h2 id="package-details">Package Details</h2>
<dl class="package-details">
<dt>Repository</dt>
<dd><a href=""></a></dd>
<dt>License</dt>
<dd></dd>
</dl>

View file

@ -0,0 +1,89 @@
---
title: "funcWithConstInput"
title_tag: "mypkg.funcWithConstInput"
meta_desc: "Documentation for the mypkg.funcWithConstInput function with examples, input properties, output properties, and supporting types."
---
<!-- WARNING: this file was generated by test. -->
<!-- Do not edit by hand unless you're certain you know what you are doing! -->
Codegen demo with const inputs
## Using funcWithConstInput {#using}
{{< chooser language "typescript,python,go,csharp" / >}}
{{% choosable language nodejs %}}
<div class="highlight"><pre class="chroma"><code class="language-typescript" data-lang="typescript"><span class="k">function </span>funcWithConstInput<span class="p">(</span><span class="nx">args</span><span class="p">:</span> <span class="nx">FuncWithConstInputArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p">?:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#InvokeOptions">InvokeOptions</a></span><span class="p">): Promise&lt;<span class="nx"><a href="#result">FuncWithConstInputResult</a></span>></span></code></pre></div>
{{% /choosable %}}
{{% choosable language python %}}
<div class="highlight"><pre class="chroma"><code class="language-python" data-lang="python"><span class="k">def </span>func_with_const_input(</span><span class="nx">plain_input</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">,</span>
<span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.InvokeOptions">Optional[InvokeOptions]</a></span> = None<span class="p">) -&gt;</span> FuncWithConstInputResult</code></pre></div>
{{% /choosable %}}
{{% choosable language go %}}
<div class="highlight"><pre class="chroma"><code class="language-go" data-lang="go"><span class="k">func </span>FuncWithConstInput<span class="p">(</span><span class="nx">ctx</span><span class="p"> *</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span><span class="p">,</span> <span class="nx">args</span><span class="p"> *</span><span class="nx">FuncWithConstInputArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p"> ...</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#InvokeOption">InvokeOption</a></span><span class="p">) (*<span class="nx"><a href="#result">FuncWithConstInputResult</a></span>, error)</span></code></pre></div>
> Note: This function is named `FuncWithConstInput` in the Go SDK.
{{% /choosable %}}
{{% choosable language csharp %}}
<div class="highlight"><pre class="chroma"><code class="language-csharp" data-lang="csharp"><span class="k">public static class </span><span class="nx">FuncWithConstInput </span><span class="p">{</span><span class="k">
public static </span>Task&lt;<span class="nx"><a href="#result">FuncWithConstInputResult</a></span>> <span class="p">InvokeAsync(</span><span class="nx">FuncWithConstInputArgs</span><span class="p"> </span><span class="nx">args<span class="p">,</span> <span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.InvokeOptions.html">InvokeOptions</a></span><span class="p">? </span><span class="nx">opts = null<span class="p">)</span><span class="p">
}</span></code></pre></div>
{{% /choosable %}}
The following arguments are supported:
{{% choosable language csharp %}}
<dl class="resources-properties"></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"></dl>
{{% /choosable %}}
## funcWithConstInput Result {#result}
The following output properties are available:
<h2 id="package-details">Package Details</h2>
<dl class="package-details">
<dt>Repository</dt>
<dd><a href=""></a></dd>
<dt>License</dt>
<dd></dd>
</dl>

View file

@ -0,0 +1,202 @@
---
title: "funcWithDefaultValue"
title_tag: "mypkg.funcWithDefaultValue"
meta_desc: "Documentation for the mypkg.funcWithDefaultValue function with examples, input properties, output properties, and supporting types."
---
<!-- WARNING: this file was generated by test. -->
<!-- Do not edit by hand unless you're certain you know what you are doing! -->
Check codegen of functions with default values.
## Using funcWithDefaultValue {#using}
{{< chooser language "typescript,python,go,csharp" / >}}
{{% choosable language nodejs %}}
<div class="highlight"><pre class="chroma"><code class="language-typescript" data-lang="typescript"><span class="k">function </span>funcWithDefaultValue<span class="p">(</span><span class="nx">args</span><span class="p">:</span> <span class="nx">FuncWithDefaultValueArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p">?:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#InvokeOptions">InvokeOptions</a></span><span class="p">): Promise&lt;<span class="nx"><a href="#result">FuncWithDefaultValueResult</a></span>></span></code></pre></div>
{{% /choosable %}}
{{% choosable language python %}}
<div class="highlight"><pre class="chroma"><code class="language-python" data-lang="python"><span class="k">def </span>func_with_default_value(</span><span class="nx">a</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">,</span>
<span class="nx">b</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">,</span>
<span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.InvokeOptions">Optional[InvokeOptions]</a></span> = None<span class="p">) -&gt;</span> FuncWithDefaultValueResult</code></pre></div>
{{% /choosable %}}
{{% choosable language go %}}
<div class="highlight"><pre class="chroma"><code class="language-go" data-lang="go"><span class="k">func </span>FuncWithDefaultValue<span class="p">(</span><span class="nx">ctx</span><span class="p"> *</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span><span class="p">,</span> <span class="nx">args</span><span class="p"> *</span><span class="nx">FuncWithDefaultValueArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p"> ...</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#InvokeOption">InvokeOption</a></span><span class="p">) (*<span class="nx"><a href="#result">FuncWithDefaultValueResult</a></span>, error)</span></code></pre></div>
> Note: This function is named `FuncWithDefaultValue` in the Go SDK.
{{% /choosable %}}
{{% choosable language csharp %}}
<div class="highlight"><pre class="chroma"><code class="language-csharp" data-lang="csharp"><span class="k">public static class </span><span class="nx">FuncWithDefaultValue </span><span class="p">{</span><span class="k">
public static </span>Task&lt;<span class="nx"><a href="#result">FuncWithDefaultValueResult</a></span>> <span class="p">InvokeAsync(</span><span class="nx">FuncWithDefaultValueArgs</span><span class="p"> </span><span class="nx">args<span class="p">,</span> <span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.InvokeOptions.html">InvokeOptions</a></span><span class="p">? </span><span class="nx">opts = null<span class="p">)</span><span class="p">
}</span></code></pre></div>
{{% /choosable %}}
The following arguments are supported:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="a_csharp">
<a href="#a_csharp" style="color: inherit; text-decoration: inherit;">A</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_csharp">
<a href="#b_csharp" style="color: inherit; text-decoration: inherit;">B</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="a_go">
<a href="#a_go" style="color: inherit; text-decoration: inherit;">A</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_go">
<a href="#b_go" style="color: inherit; text-decoration: inherit;">B</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="a_nodejs">
<a href="#a_nodejs" style="color: inherit; text-decoration: inherit;">a</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_nodejs">
<a href="#b_nodejs" style="color: inherit; text-decoration: inherit;">b</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="a_python">
<a href="#a_python" style="color: inherit; text-decoration: inherit;">a</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_python">
<a href="#b_python" style="color: inherit; text-decoration: inherit;">b</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
## funcWithDefaultValue Result {#result}
The following output properties are available:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_csharp">
<a href="#r_csharp" style="color: inherit; text-decoration: inherit;">R</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_go">
<a href="#r_go" style="color: inherit; text-decoration: inherit;">R</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_nodejs">
<a href="#r_nodejs" style="color: inherit; text-decoration: inherit;">r</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_python">
<a href="#r_python" style="color: inherit; text-decoration: inherit;">r</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
<h2 id="package-details">Package Details</h2>
<dl class="package-details">
<dt>Repository</dt>
<dd><a href=""></a></dd>
<dt>License</dt>
<dd></dd>
</dl>

View file

@ -0,0 +1,202 @@
---
title: "funcWithDictParam"
title_tag: "mypkg.funcWithDictParam"
meta_desc: "Documentation for the mypkg.funcWithDictParam function with examples, input properties, output properties, and supporting types."
---
<!-- WARNING: this file was generated by test. -->
<!-- Do not edit by hand unless you're certain you know what you are doing! -->
Check codegen of functions with a Dict<str,str> parameter.
## Using funcWithDictParam {#using}
{{< chooser language "typescript,python,go,csharp" / >}}
{{% choosable language nodejs %}}
<div class="highlight"><pre class="chroma"><code class="language-typescript" data-lang="typescript"><span class="k">function </span>funcWithDictParam<span class="p">(</span><span class="nx">args</span><span class="p">:</span> <span class="nx">FuncWithDictParamArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p">?:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#InvokeOptions">InvokeOptions</a></span><span class="p">): Promise&lt;<span class="nx"><a href="#result">FuncWithDictParamResult</a></span>></span></code></pre></div>
{{% /choosable %}}
{{% choosable language python %}}
<div class="highlight"><pre class="chroma"><code class="language-python" data-lang="python"><span class="k">def </span>func_with_dict_param(</span><span class="nx">a</span><span class="p">:</span> <span class="nx">Optional[Mapping[str, str]]</span> = None<span class="p">,</span>
<span class="nx">b</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">,</span>
<span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.InvokeOptions">Optional[InvokeOptions]</a></span> = None<span class="p">) -&gt;</span> FuncWithDictParamResult</code></pre></div>
{{% /choosable %}}
{{% choosable language go %}}
<div class="highlight"><pre class="chroma"><code class="language-go" data-lang="go"><span class="k">func </span>FuncWithDictParam<span class="p">(</span><span class="nx">ctx</span><span class="p"> *</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span><span class="p">,</span> <span class="nx">args</span><span class="p"> *</span><span class="nx">FuncWithDictParamArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p"> ...</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#InvokeOption">InvokeOption</a></span><span class="p">) (*<span class="nx"><a href="#result">FuncWithDictParamResult</a></span>, error)</span></code></pre></div>
> Note: This function is named `FuncWithDictParam` in the Go SDK.
{{% /choosable %}}
{{% choosable language csharp %}}
<div class="highlight"><pre class="chroma"><code class="language-csharp" data-lang="csharp"><span class="k">public static class </span><span class="nx">FuncWithDictParam </span><span class="p">{</span><span class="k">
public static </span>Task&lt;<span class="nx"><a href="#result">FuncWithDictParamResult</a></span>> <span class="p">InvokeAsync(</span><span class="nx">FuncWithDictParamArgs</span><span class="p"> </span><span class="nx">args<span class="p">,</span> <span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.InvokeOptions.html">InvokeOptions</a></span><span class="p">? </span><span class="nx">opts = null<span class="p">)</span><span class="p">
}</span></code></pre></div>
{{% /choosable %}}
The following arguments are supported:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_csharp">
<a href="#a_csharp" style="color: inherit; text-decoration: inherit;">A</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">Dictionary&lt;string, string&gt;</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_csharp">
<a href="#b_csharp" style="color: inherit; text-decoration: inherit;">B</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_go">
<a href="#a_go" style="color: inherit; text-decoration: inherit;">A</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">map[string]string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_go">
<a href="#b_go" style="color: inherit; text-decoration: inherit;">B</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_nodejs">
<a href="#a_nodejs" style="color: inherit; text-decoration: inherit;">a</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">{[key: string]: string}</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_nodejs">
<a href="#b_nodejs" style="color: inherit; text-decoration: inherit;">b</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_python">
<a href="#a_python" style="color: inherit; text-decoration: inherit;">a</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">Mapping[str, str]</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_python">
<a href="#b_python" style="color: inherit; text-decoration: inherit;">b</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
## funcWithDictParam Result {#result}
The following output properties are available:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_csharp">
<a href="#r_csharp" style="color: inherit; text-decoration: inherit;">R</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_go">
<a href="#r_go" style="color: inherit; text-decoration: inherit;">R</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_nodejs">
<a href="#r_nodejs" style="color: inherit; text-decoration: inherit;">r</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_python">
<a href="#r_python" style="color: inherit; text-decoration: inherit;">r</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
<h2 id="package-details">Package Details</h2>
<dl class="package-details">
<dt>Repository</dt>
<dd><a href=""></a></dd>
<dt>License</dt>
<dd></dd>
</dl>

View file

@ -0,0 +1,202 @@
---
title: "funcWithListParam"
title_tag: "mypkg.funcWithListParam"
meta_desc: "Documentation for the mypkg.funcWithListParam function with examples, input properties, output properties, and supporting types."
---
<!-- WARNING: this file was generated by test. -->
<!-- Do not edit by hand unless you're certain you know what you are doing! -->
Check codegen of functions with a List parameter.
## Using funcWithListParam {#using}
{{< chooser language "typescript,python,go,csharp" / >}}
{{% choosable language nodejs %}}
<div class="highlight"><pre class="chroma"><code class="language-typescript" data-lang="typescript"><span class="k">function </span>funcWithListParam<span class="p">(</span><span class="nx">args</span><span class="p">:</span> <span class="nx">FuncWithListParamArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p">?:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#InvokeOptions">InvokeOptions</a></span><span class="p">): Promise&lt;<span class="nx"><a href="#result">FuncWithListParamResult</a></span>></span></code></pre></div>
{{% /choosable %}}
{{% choosable language python %}}
<div class="highlight"><pre class="chroma"><code class="language-python" data-lang="python"><span class="k">def </span>func_with_list_param(</span><span class="nx">a</span><span class="p">:</span> <span class="nx">Optional[Sequence[str]]</span> = None<span class="p">,</span>
<span class="nx">b</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">,</span>
<span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.InvokeOptions">Optional[InvokeOptions]</a></span> = None<span class="p">) -&gt;</span> FuncWithListParamResult</code></pre></div>
{{% /choosable %}}
{{% choosable language go %}}
<div class="highlight"><pre class="chroma"><code class="language-go" data-lang="go"><span class="k">func </span>FuncWithListParam<span class="p">(</span><span class="nx">ctx</span><span class="p"> *</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span><span class="p">,</span> <span class="nx">args</span><span class="p"> *</span><span class="nx">FuncWithListParamArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p"> ...</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#InvokeOption">InvokeOption</a></span><span class="p">) (*<span class="nx"><a href="#result">FuncWithListParamResult</a></span>, error)</span></code></pre></div>
> Note: This function is named `FuncWithListParam` in the Go SDK.
{{% /choosable %}}
{{% choosable language csharp %}}
<div class="highlight"><pre class="chroma"><code class="language-csharp" data-lang="csharp"><span class="k">public static class </span><span class="nx">FuncWithListParam </span><span class="p">{</span><span class="k">
public static </span>Task&lt;<span class="nx"><a href="#result">FuncWithListParamResult</a></span>> <span class="p">InvokeAsync(</span><span class="nx">FuncWithListParamArgs</span><span class="p"> </span><span class="nx">args<span class="p">,</span> <span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.InvokeOptions.html">InvokeOptions</a></span><span class="p">? </span><span class="nx">opts = null<span class="p">)</span><span class="p">
}</span></code></pre></div>
{{% /choosable %}}
The following arguments are supported:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_csharp">
<a href="#a_csharp" style="color: inherit; text-decoration: inherit;">A</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">List&lt;string&gt;</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_csharp">
<a href="#b_csharp" style="color: inherit; text-decoration: inherit;">B</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_go">
<a href="#a_go" style="color: inherit; text-decoration: inherit;">A</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">[]string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_go">
<a href="#b_go" style="color: inherit; text-decoration: inherit;">B</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_nodejs">
<a href="#a_nodejs" style="color: inherit; text-decoration: inherit;">a</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string[]</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_nodejs">
<a href="#b_nodejs" style="color: inherit; text-decoration: inherit;">b</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-optional"
title="Optional">
<span id="a_python">
<a href="#a_python" style="color: inherit; text-decoration: inherit;">a</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">Sequence[str]</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="b_python">
<a href="#b_python" style="color: inherit; text-decoration: inherit;">b</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
## funcWithListParam Result {#result}
The following output properties are available:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_csharp">
<a href="#r_csharp" style="color: inherit; text-decoration: inherit;">R</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_go">
<a href="#r_go" style="color: inherit; text-decoration: inherit;">R</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_nodejs">
<a href="#r_nodejs" style="color: inherit; text-decoration: inherit;">r</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="r_python">
<a href="#r_python" style="color: inherit; text-decoration: inherit;">r</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}{{% /md %}}</dd></dl>
{{% /choosable %}}
<h2 id="package-details">Package Details</h2>
<dl class="package-details">
<dt>Repository</dt>
<dd><a href=""></a></dd>
<dt>License</dt>
<dd></dd>
</dl>

View file

@ -0,0 +1,211 @@
---
title: "getClientConfig"
title_tag: "mypkg.getClientConfig"
meta_desc: "Documentation for the mypkg.getClientConfig function with examples, input properties, output properties, and supporting types."
---
<!-- WARNING: this file was generated by test. -->
<!-- Do not edit by hand unless you're certain you know what you are doing! -->
Failing example taken from azure-native. Original doc: Use this function to access the current configuration of the native Azure provider.
## Using getClientConfig {#using}
{{< chooser language "typescript,python,go,csharp" / >}}
{{% choosable language nodejs %}}
<div class="highlight"><pre class="chroma"><code class="language-typescript" data-lang="typescript"><span class="k">function </span>getClientConfig<span class="p">(</span><span class="nx">opts</span><span class="p">?:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#InvokeOptions">InvokeOptions</a></span><span class="p">): Promise&lt;<span class="nx"><a href="#result">GetClientConfigResult</a></span>></span></code></pre></div>
{{% /choosable %}}
{{% choosable language python %}}
<div class="highlight"><pre class="chroma"><code class="language-python" data-lang="python"><span class="k">def </span>get_client_config(</span><span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.InvokeOptions">Optional[InvokeOptions]</a></span> = None<span class="p">) -&gt;</span> GetClientConfigResult</code></pre></div>
{{% /choosable %}}
{{% choosable language go %}}
<div class="highlight"><pre class="chroma"><code class="language-go" data-lang="go"><span class="k">func </span>GetClientConfig<span class="p">(</span><span class="nx">ctx</span><span class="p"> *</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span><span class="p">,</span> <span class="nx">opts</span><span class="p"> ...</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#InvokeOption">InvokeOption</a></span><span class="p">) (*<span class="nx"><a href="#result">GetClientConfigResult</a></span>, error)</span></code></pre></div>
> Note: This function is named `GetClientConfig` in the Go SDK.
{{% /choosable %}}
{{% choosable language csharp %}}
<div class="highlight"><pre class="chroma"><code class="language-csharp" data-lang="csharp"><span class="k">public static class </span><span class="nx">GetClientConfig </span><span class="p">{</span><span class="k">
public static </span>Task&lt;<span class="nx"><a href="#result">GetClientConfigResult</a></span>> <span class="p">InvokeAsync(</span><span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.InvokeOptions.html">InvokeOptions</a></span><span class="p">? </span><span class="nx">opts = null<span class="p">)</span><span class="p">
}</span></code></pre></div>
{{% /choosable %}}
## getClientConfig Result {#result}
The following output properties are available:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="clientid_csharp">
<a href="#clientid_csharp" style="color: inherit; text-decoration: inherit;">Client<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Client ID (Application Object ID).{{% /md %}}</dd><dt class="property-"
title="">
<span id="objectid_csharp">
<a href="#objectid_csharp" style="color: inherit; text-decoration: inherit;">Object<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Object ID of the current user or service principal.{{% /md %}}</dd><dt class="property-"
title="">
<span id="subscriptionid_csharp">
<a href="#subscriptionid_csharp" style="color: inherit; text-decoration: inherit;">Subscription<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Subscription ID{{% /md %}}</dd><dt class="property-"
title="">
<span id="tenantid_csharp">
<a href="#tenantid_csharp" style="color: inherit; text-decoration: inherit;">Tenant<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Tenant ID{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="clientid_go">
<a href="#clientid_go" style="color: inherit; text-decoration: inherit;">Client<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Client ID (Application Object ID).{{% /md %}}</dd><dt class="property-"
title="">
<span id="objectid_go">
<a href="#objectid_go" style="color: inherit; text-decoration: inherit;">Object<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Object ID of the current user or service principal.{{% /md %}}</dd><dt class="property-"
title="">
<span id="subscriptionid_go">
<a href="#subscriptionid_go" style="color: inherit; text-decoration: inherit;">Subscription<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Subscription ID{{% /md %}}</dd><dt class="property-"
title="">
<span id="tenantid_go">
<a href="#tenantid_go" style="color: inherit; text-decoration: inherit;">Tenant<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Tenant ID{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="clientid_nodejs">
<a href="#clientid_nodejs" style="color: inherit; text-decoration: inherit;">client<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Client ID (Application Object ID).{{% /md %}}</dd><dt class="property-"
title="">
<span id="objectid_nodejs">
<a href="#objectid_nodejs" style="color: inherit; text-decoration: inherit;">object<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Object ID of the current user or service principal.{{% /md %}}</dd><dt class="property-"
title="">
<span id="subscriptionid_nodejs">
<a href="#subscriptionid_nodejs" style="color: inherit; text-decoration: inherit;">subscription<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Subscription ID{{% /md %}}</dd><dt class="property-"
title="">
<span id="tenantid_nodejs">
<a href="#tenantid_nodejs" style="color: inherit; text-decoration: inherit;">tenant<wbr>Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Azure Tenant ID{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="client_id_python">
<a href="#client_id_python" style="color: inherit; text-decoration: inherit;">client_<wbr>id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Azure Client ID (Application Object ID).{{% /md %}}</dd><dt class="property-"
title="">
<span id="object_id_python">
<a href="#object_id_python" style="color: inherit; text-decoration: inherit;">object_<wbr>id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Azure Object ID of the current user or service principal.{{% /md %}}</dd><dt class="property-"
title="">
<span id="subscription_id_python">
<a href="#subscription_id_python" style="color: inherit; text-decoration: inherit;">subscription_<wbr>id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Azure Subscription ID{{% /md %}}</dd><dt class="property-"
title="">
<span id="tenant_id_python">
<a href="#tenant_id_python" style="color: inherit; text-decoration: inherit;">tenant_<wbr>id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Azure Tenant ID{{% /md %}}</dd></dl>
{{% /choosable %}}
<h2 id="package-details">Package Details</h2>
<dl class="package-details">
<dt>Repository</dt>
<dd><a href=""></a></dd>
<dt>License</dt>
<dd></dd>
</dl>

View file

@ -0,0 +1,390 @@
---
title: "listStorageAccountKeys"
title_tag: "mypkg.listStorageAccountKeys"
meta_desc: "Documentation for the mypkg.listStorageAccountKeys function with examples, input properties, output properties, and supporting types."
---
<!-- WARNING: this file was generated by test. -->
<!-- Do not edit by hand unless you're certain you know what you are doing! -->
The response from the ListKeys operation.
API Version: 2021-02-01.
## Using listStorageAccountKeys {#using}
{{< chooser language "typescript,python,go,csharp" / >}}
{{% choosable language nodejs %}}
<div class="highlight"><pre class="chroma"><code class="language-typescript" data-lang="typescript"><span class="k">function </span>listStorageAccountKeys<span class="p">(</span><span class="nx">args</span><span class="p">:</span> <span class="nx">ListStorageAccountKeysArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p">?:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#InvokeOptions">InvokeOptions</a></span><span class="p">): Promise&lt;<span class="nx"><a href="#result">ListStorageAccountKeysResult</a></span>></span></code></pre></div>
{{% /choosable %}}
{{% choosable language python %}}
<div class="highlight"><pre class="chroma"><code class="language-python" data-lang="python"><span class="k">def </span>list_storage_account_keys(</span><span class="nx">account_name</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">,</span>
<span class="nx">expand</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">,</span>
<span class="nx">resource_group_name</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">,</span>
<span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.InvokeOptions">Optional[InvokeOptions]</a></span> = None<span class="p">) -&gt;</span> ListStorageAccountKeysResult</code></pre></div>
{{% /choosable %}}
{{% choosable language go %}}
<div class="highlight"><pre class="chroma"><code class="language-go" data-lang="go"><span class="k">func </span>ListStorageAccountKeys<span class="p">(</span><span class="nx">ctx</span><span class="p"> *</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span><span class="p">,</span> <span class="nx">args</span><span class="p"> *</span><span class="nx">ListStorageAccountKeysArgs</span><span class="p">,</span> <span class="nx">opts</span><span class="p"> ...</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#InvokeOption">InvokeOption</a></span><span class="p">) (*<span class="nx"><a href="#result">ListStorageAccountKeysResult</a></span>, error)</span></code></pre></div>
> Note: This function is named `ListStorageAccountKeys` in the Go SDK.
{{% /choosable %}}
{{% choosable language csharp %}}
<div class="highlight"><pre class="chroma"><code class="language-csharp" data-lang="csharp"><span class="k">public static class </span><span class="nx">ListStorageAccountKeys </span><span class="p">{</span><span class="k">
public static </span>Task&lt;<span class="nx"><a href="#result">ListStorageAccountKeysResult</a></span>> <span class="p">InvokeAsync(</span><span class="nx">ListStorageAccountKeysArgs</span><span class="p"> </span><span class="nx">args<span class="p">,</span> <span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.InvokeOptions.html">InvokeOptions</a></span><span class="p">? </span><span class="nx">opts = null<span class="p">)</span><span class="p">
}</span></code></pre></div>
{{% /choosable %}}
The following arguments are supported:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="accountname_csharp">
<a href="#accountname_csharp" style="color: inherit; text-decoration: inherit;">Account<wbr>Name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="resourcegroupname_csharp">
<a href="#resourcegroupname_csharp" style="color: inherit; text-decoration: inherit;">Resource<wbr>Group<wbr>Name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}The name of the resource group within the user's subscription. The name is case insensitive.{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="expand_csharp">
<a href="#expand_csharp" style="color: inherit; text-decoration: inherit;">Expand</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Specifies type of the key to be listed. Possible value is kerb.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="accountname_go">
<a href="#accountname_go" style="color: inherit; text-decoration: inherit;">Account<wbr>Name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="resourcegroupname_go">
<a href="#resourcegroupname_go" style="color: inherit; text-decoration: inherit;">Resource<wbr>Group<wbr>Name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}The name of the resource group within the user's subscription. The name is case insensitive.{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="expand_go">
<a href="#expand_go" style="color: inherit; text-decoration: inherit;">Expand</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Specifies type of the key to be listed. Possible value is kerb.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="accountname_nodejs">
<a href="#accountname_nodejs" style="color: inherit; text-decoration: inherit;">account<wbr>Name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="resourcegroupname_nodejs">
<a href="#resourcegroupname_nodejs" style="color: inherit; text-decoration: inherit;">resource<wbr>Group<wbr>Name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}The name of the resource group within the user's subscription. The name is case insensitive.{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="expand_nodejs">
<a href="#expand_nodejs" style="color: inherit; text-decoration: inherit;">expand</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Specifies type of the key to be listed. Possible value is kerb.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="account_name_python">
<a href="#account_name_python" style="color: inherit; text-decoration: inherit;">account_<wbr>name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="resource_group_name_python">
<a href="#resource_group_name_python" style="color: inherit; text-decoration: inherit;">resource_<wbr>group_<wbr>name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}The name of the resource group within the user's subscription. The name is case insensitive.{{% /md %}}</dd><dt class="property-optional"
title="Optional">
<span id="expand_python">
<a href="#expand_python" style="color: inherit; text-decoration: inherit;">expand</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Specifies type of the key to be listed. Possible value is kerb.{{% /md %}}</dd></dl>
{{% /choosable %}}
## listStorageAccountKeys Result {#result}
The following output properties are available:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="keys_csharp">
<a href="#keys_csharp" style="color: inherit; text-decoration: inherit;">Keys</a>
</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="#storageaccountkeyresponse">List&lt;Storage<wbr>Account<wbr>Key<wbr>Response&gt;</a></span>
</dt>
<dd>{{% md %}}Gets the list of storage account keys and their properties for the specified storage account.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="keys_go">
<a href="#keys_go" style="color: inherit; text-decoration: inherit;">Keys</a>
</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="#storageaccountkeyresponse">[]Storage<wbr>Account<wbr>Key<wbr>Response</a></span>
</dt>
<dd>{{% md %}}Gets the list of storage account keys and their properties for the specified storage account.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="keys_nodejs">
<a href="#keys_nodejs" style="color: inherit; text-decoration: inherit;">keys</a>
</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="#storageaccountkeyresponse">Storage<wbr>Account<wbr>Key<wbr>Response[]</a></span>
</dt>
<dd>{{% md %}}Gets the list of storage account keys and their properties for the specified storage account.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="keys_python">
<a href="#keys_python" style="color: inherit; text-decoration: inherit;">keys</a>
</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="#storageaccountkeyresponse">Sequence[Storage<wbr>Account<wbr>Key<wbr>Response]</a></span>
</dt>
<dd>{{% md %}}Gets the list of storage account keys and their properties for the specified storage account.{{% /md %}}</dd></dl>
{{% /choosable %}}
## Supporting Types
<h4 id="storageaccountkeyresponse">Storage<wbr>Account<wbr>Key<wbr>Response</h4>
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="creationtime_csharp">
<a href="#creationtime_csharp" style="color: inherit; text-decoration: inherit;">Creation<wbr>Time</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Creation time of the key, in round trip date format.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="keyname_csharp">
<a href="#keyname_csharp" style="color: inherit; text-decoration: inherit;">Key<wbr>Name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Name of the key.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="permissions_csharp">
<a href="#permissions_csharp" style="color: inherit; text-decoration: inherit;">Permissions</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Permissions for the key -- read-only or full permissions.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="value_csharp">
<a href="#value_csharp" style="color: inherit; text-decoration: inherit;">Value</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Base 64-encoded value of the key.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="creationtime_go">
<a href="#creationtime_go" style="color: inherit; text-decoration: inherit;">Creation<wbr>Time</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Creation time of the key, in round trip date format.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="keyname_go">
<a href="#keyname_go" style="color: inherit; text-decoration: inherit;">Key<wbr>Name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Name of the key.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="permissions_go">
<a href="#permissions_go" style="color: inherit; text-decoration: inherit;">Permissions</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Permissions for the key -- read-only or full permissions.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="value_go">
<a href="#value_go" style="color: inherit; text-decoration: inherit;">Value</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Base 64-encoded value of the key.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="creationtime_nodejs">
<a href="#creationtime_nodejs" style="color: inherit; text-decoration: inherit;">creation<wbr>Time</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Creation time of the key, in round trip date format.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="keyname_nodejs">
<a href="#keyname_nodejs" style="color: inherit; text-decoration: inherit;">key<wbr>Name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Name of the key.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="permissions_nodejs">
<a href="#permissions_nodejs" style="color: inherit; text-decoration: inherit;">permissions</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Permissions for the key -- read-only or full permissions.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="value_nodejs">
<a href="#value_nodejs" style="color: inherit; text-decoration: inherit;">value</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}Base 64-encoded value of the key.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-required"
title="Required">
<span id="creation_time_python">
<a href="#creation_time_python" style="color: inherit; text-decoration: inherit;">creation_<wbr>time</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Creation time of the key, in round trip date format.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="key_name_python">
<a href="#key_name_python" style="color: inherit; text-decoration: inherit;">key_<wbr>name</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Name of the key.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="permissions_python">
<a href="#permissions_python" style="color: inherit; text-decoration: inherit;">permissions</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Permissions for the key -- read-only or full permissions.{{% /md %}}</dd><dt class="property-required"
title="Required">
<span id="value_python">
<a href="#value_python" style="color: inherit; text-decoration: inherit;">value</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}Base 64-encoded value of the key.{{% /md %}}</dd></dl>
{{% /choosable %}}
<h2 id="package-details">Package Details</h2>
<dl class="package-details">
<dt>Repository</dt>
<dd><a href=""></a></dd>
<dt>License</dt>
<dd></dd>
</dl>

View file

@ -0,0 +1,239 @@
---
title: "Provider"
title_tag: "mypkg.Provider"
meta_desc: "Documentation for the mypkg.Provider resource with examples, input properties, output properties, lookup functions, and supporting types."
---
<!-- WARNING: this file was generated by test. -->
<!-- Do not edit by hand unless you're certain you know what you are doing! -->
## Create a Provider Resource {#create}
{{< chooser language "typescript,python,go,csharp" / >}}
{{% choosable language nodejs %}}
<div class="highlight"><pre class="chroma"><code class="language-typescript" data-lang="typescript"><span class="k">new </span><span class="nx">Provider</span><span class="p">(</span><span class="nx">name</span><span class="p">:</span> <span class="nx">string</span><span class="p">,</span> <span class="nx">args</span><span class="p">?:</span> <span class="nx"><a href="#inputs">ProviderArgs</a></span><span class="p">,</span> <span class="nx">opts</span><span class="p">?:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#CustomResourceOptions">CustomResourceOptions</a></span><span class="p">);</span></code></pre></div>
{{% /choosable %}}
{{% choosable language python %}}
<div class="highlight"><pre class="chroma"><code class="language-python" data-lang="python"><span class=nd>@overload</span>
<span class="k">def </span><span class="nx">Provider</span><span class="p">(</span><span class="nx">resource_name</span><span class="p">:</span> <span class="nx">str</span><span class="p">,</span>
<span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.ResourceOptions">Optional[ResourceOptions]</a></span> = None<span class="p">)</span>
<span class=nd>@overload</span>
<span class="k">def </span><span class="nx">Provider</span><span class="p">(</span><span class="nx">resource_name</span><span class="p">:</span> <span class="nx">str</span><span class="p">,</span>
<span class="nx">args</span><span class="p">:</span> <span class="nx"><a href="#inputs">Optional[ProviderArgs]</a></span> = None<span class="p">,</span>
<span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.ResourceOptions">Optional[ResourceOptions]</a></span> = None<span class="p">)</span></code></pre></div>
{{% /choosable %}}
{{% choosable language go %}}
<div class="highlight"><pre class="chroma"><code class="language-go" data-lang="go"><span class="k">func </span><span class="nx">NewProvider</span><span class="p">(</span><span class="nx">ctx</span><span class="p"> *</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span><span class="p">,</span> <span class="nx">name</span><span class="p"> </span><span class="nx">string</span><span class="p">,</span> <span class="nx">args</span><span class="p"> *</span><span class="nx"><a href="#inputs">ProviderArgs</a></span><span class="p">,</span> <span class="nx">opts</span><span class="p"> ...</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#ResourceOption">ResourceOption</a></span><span class="p">) (*<span class="nx">Provider</span>, error)</span></code></pre></div>
{{% /choosable %}}
{{% choosable language csharp %}}
<div class="highlight"><pre class="chroma"><code class="language-csharp" data-lang="csharp"><span class="k">public </span><span class="nx">Provider</span><span class="p">(</span><span class="nx">string</span><span class="p"> </span><span class="nx">name<span class="p">,</span> <span class="nx"><a href="#inputs">ProviderArgs</a></span><span class="p">? </span><span class="nx">args = null<span class="p">,</span> <span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.CustomResourceOptions.html">CustomResourceOptions</a></span><span class="p">? </span><span class="nx">opts = null<span class="p">)</span></code></pre></div>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt
class="property-required" title="Required">
<span>name</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>The unique name of the resource.</dd><dt
class="property-optional" title="Optional">
<span>args</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="#inputs">ProviderArgs</a></span>
</dt>
<dd>The arguments to resource properties.</dd><dt
class="property-optional" title="Optional">
<span>opts</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#CustomResourceOptions">CustomResourceOptions</a></span>
</dt>
<dd>Bag of options to control resource&#39;s behavior.</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt
class="property-required" title="Required">
<span>resource_name</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>The unique name of the resource.</dd><dt
class="property-optional" title="Optional">
<span>args</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="#inputs">ProviderArgs</a></span>
</dt>
<dd>The arguments to resource properties.</dd><dt
class="property-optional" title="Optional">
<span>opts</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="/docs/reference/pkg/python/pulumi/#pulumi.ResourceOptions">ResourceOptions</a></span>
</dt>
<dd>Bag of options to control resource&#39;s behavior.</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt
class="property-optional" title="Optional">
<span>ctx</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span>
</dt>
<dd>Context object for the current deployment.</dd><dt
class="property-required" title="Required">
<span>name</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>The unique name of the resource.</dd><dt
class="property-optional" title="Optional">
<span>args</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="#inputs">ProviderArgs</a></span>
</dt>
<dd>The arguments to resource properties.</dd><dt
class="property-optional" title="Optional">
<span>opts</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#ResourceOption">ResourceOption</a></span>
</dt>
<dd>Bag of options to control resource&#39;s behavior.</dd></dl>
{{% /choosable %}}
{{% choosable language csharp %}}
<dl class="resources-properties"><dt
class="property-required" title="Required">
<span>name</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>The unique name of the resource.</dd><dt
class="property-optional" title="Optional">
<span>args</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="#inputs">ProviderArgs</a></span>
</dt>
<dd>The arguments to resource properties.</dd><dt
class="property-optional" title="Optional">
<span>opts</span>
<span class="property-indicator"></span>
<span class="property-type"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.CustomResourceOptions.html">CustomResourceOptions</a></span>
</dt>
<dd>Bag of options to control resource&#39;s behavior.</dd></dl>
{{% /choosable %}}
## Provider Resource Properties {#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 Provider resource accepts the following [input]({{< relref "/docs/intro/concepts/inputs-outputs" >}}) properties:
{{% choosable language csharp %}}
<dl class="resources-properties"></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"></dl>
{{% /choosable %}}
### Outputs
All [input](#inputs) properties are implicitly available as output properties. Additionally, the Provider resource produces the following output properties:
{{% choosable language csharp %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="id_csharp">
<a href="#id_csharp" style="color: inherit; text-decoration: inherit;">Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}The provider-assigned unique ID for this managed resource.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language go %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="id_go">
<a href="#id_go" style="color: inherit; text-decoration: inherit;">Id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}The provider-assigned unique ID for this managed resource.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language nodejs %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="id_nodejs">
<a href="#id_nodejs" style="color: inherit; text-decoration: inherit;">id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">string</span>
</dt>
<dd>{{% md %}}The provider-assigned unique ID for this managed resource.{{% /md %}}</dd></dl>
{{% /choosable %}}
{{% choosable language python %}}
<dl class="resources-properties"><dt class="property-"
title="">
<span id="id_python">
<a href="#id_python" style="color: inherit; text-decoration: inherit;">id</a>
</span>
<span class="property-indicator"></span>
<span class="property-type">str</span>
</dt>
<dd>{{% md %}}The provider-assigned unique ID for this managed resource.{{% /md %}}</dd></dl>
{{% /choosable %}}
<h2 id="package-details">Package Details</h2>
<dl class="package-details">
<dt>Repository</dt>
<dd><a href=""></a></dd>
<dt>License</dt>
<dd></dd>
</dl>

View file

@ -0,0 +1,53 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg
{
public static class FuncWithAllOptionalInputs
{
/// <summary>
/// Check codegen of functions with all optional inputs.
/// </summary>
public static Task<FuncWithAllOptionalInputsResult> InvokeAsync(FuncWithAllOptionalInputsArgs? args = null, InvokeOptions? options = null)
=> Pulumi.Deployment.Instance.InvokeAsync<FuncWithAllOptionalInputsResult>("mypkg::funcWithAllOptionalInputs", args ?? new FuncWithAllOptionalInputsArgs(), options.WithVersion());
}
public sealed class FuncWithAllOptionalInputsArgs : Pulumi.InvokeArgs
{
/// <summary>
/// Property A
/// </summary>
[Input("a")]
public string? A { get; set; }
/// <summary>
/// Property B
/// </summary>
[Input("b")]
public string? B { get; set; }
public FuncWithAllOptionalInputsArgs()
{
}
}
[OutputType]
public sealed class FuncWithAllOptionalInputsResult
{
public readonly string R;
[OutputConstructor]
private FuncWithAllOptionalInputsResult(string r)
{
R = r;
}
}
}

View file

@ -0,0 +1,31 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg
{
public static class FuncWithConstInput
{
/// <summary>
/// Codegen demo with const inputs
/// </summary>
public static Task InvokeAsync(FuncWithConstInputArgs? args = null, InvokeOptions? options = null)
=> Pulumi.Deployment.Instance.InvokeAsync("mypkg::funcWithConstInput", args ?? new FuncWithConstInputArgs(), options.WithVersion());
}
public sealed class FuncWithConstInputArgs : Pulumi.InvokeArgs
{
[Input("plainInput")]
public string? PlainInput { get; set; }
public FuncWithConstInputArgs()
{
}
}
}

View file

@ -0,0 +1,48 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg
{
public static class FuncWithDefaultValue
{
/// <summary>
/// Check codegen of functions with default values.
/// </summary>
public static Task<FuncWithDefaultValueResult> InvokeAsync(FuncWithDefaultValueArgs args, InvokeOptions? options = null)
=> Pulumi.Deployment.Instance.InvokeAsync<FuncWithDefaultValueResult>("mypkg::funcWithDefaultValue", args ?? new FuncWithDefaultValueArgs(), options.WithVersion());
}
public sealed class FuncWithDefaultValueArgs : Pulumi.InvokeArgs
{
[Input("a", required: true)]
public string A { get; set; } = null!;
[Input("b")]
public string? B { get; set; }
public FuncWithDefaultValueArgs()
{
B = "b-default";
}
}
[OutputType]
public sealed class FuncWithDefaultValueResult
{
public readonly string R;
[OutputConstructor]
private FuncWithDefaultValueResult(string r)
{
R = r;
}
}
}

View file

@ -0,0 +1,52 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg
{
public static class FuncWithDictParam
{
/// <summary>
/// Check codegen of functions with a Dict&lt;str,str&gt; parameter.
/// </summary>
public static Task<FuncWithDictParamResult> InvokeAsync(FuncWithDictParamArgs? args = null, InvokeOptions? options = null)
=> Pulumi.Deployment.Instance.InvokeAsync<FuncWithDictParamResult>("mypkg::funcWithDictParam", args ?? new FuncWithDictParamArgs(), options.WithVersion());
}
public sealed class FuncWithDictParamArgs : Pulumi.InvokeArgs
{
[Input("a")]
private Dictionary<string, string>? _a;
public Dictionary<string, string> A
{
get => _a ?? (_a = new Dictionary<string, string>());
set => _a = value;
}
[Input("b")]
public string? B { get; set; }
public FuncWithDictParamArgs()
{
}
}
[OutputType]
public sealed class FuncWithDictParamResult
{
public readonly string R;
[OutputConstructor]
private FuncWithDictParamResult(string r)
{
R = r;
}
}
}

View file

@ -0,0 +1,52 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg
{
public static class FuncWithListParam
{
/// <summary>
/// Check codegen of functions with a List parameter.
/// </summary>
public static Task<FuncWithListParamResult> InvokeAsync(FuncWithListParamArgs? args = null, InvokeOptions? options = null)
=> Pulumi.Deployment.Instance.InvokeAsync<FuncWithListParamResult>("mypkg::funcWithListParam", args ?? new FuncWithListParamArgs(), options.WithVersion());
}
public sealed class FuncWithListParamArgs : Pulumi.InvokeArgs
{
[Input("a")]
private List<string>? _a;
public List<string> A
{
get => _a ?? (_a = new List<string>());
set => _a = value;
}
[Input("b")]
public string? B { get; set; }
public FuncWithListParamArgs()
{
}
}
[OutputType]
public sealed class FuncWithListParamResult
{
public readonly string R;
[OutputConstructor]
private FuncWithListParamResult(string r)
{
R = r;
}
}
}

View file

@ -0,0 +1,58 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg
{
public static class GetClientConfig
{
/// <summary>
/// Failing example taken from azure-native. Original doc: Use this function to access the current configuration of the native Azure provider.
/// </summary>
public static Task<GetClientConfigResult> InvokeAsync(InvokeOptions? options = null)
=> Pulumi.Deployment.Instance.InvokeAsync<GetClientConfigResult>("mypkg::getClientConfig", InvokeArgs.Empty, options.WithVersion());
}
[OutputType]
public sealed class GetClientConfigResult
{
/// <summary>
/// Azure Client ID (Application Object ID).
/// </summary>
public readonly string ClientId;
/// <summary>
/// Azure Object ID of the current user or service principal.
/// </summary>
public readonly string ObjectId;
/// <summary>
/// Azure Subscription ID
/// </summary>
public readonly string SubscriptionId;
/// <summary>
/// Azure Tenant ID
/// </summary>
public readonly string TenantId;
[OutputConstructor]
private GetClientConfigResult(
string clientId,
string objectId,
string subscriptionId,
string tenantId)
{
ClientId = clientId;
ObjectId = objectId;
SubscriptionId = subscriptionId;
TenantId = tenantId;
}
}
}

View file

@ -0,0 +1,77 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg
{
public static class GetIntegrationRuntimeObjectMetadatum
{
/// <summary>
/// Another failing example. A list of SSIS object metadata.
/// API Version: 2018-06-01.
/// </summary>
public static Task<GetIntegrationRuntimeObjectMetadatumResult> InvokeAsync(GetIntegrationRuntimeObjectMetadatumArgs args, InvokeOptions? options = null)
=> Pulumi.Deployment.Instance.InvokeAsync<GetIntegrationRuntimeObjectMetadatumResult>("mypkg::getIntegrationRuntimeObjectMetadatum", args ?? new GetIntegrationRuntimeObjectMetadatumArgs(), options.WithVersion());
}
public sealed class GetIntegrationRuntimeObjectMetadatumArgs : Pulumi.InvokeArgs
{
/// <summary>
/// The factory name.
/// </summary>
[Input("factoryName", required: true)]
public string FactoryName { get; set; } = null!;
/// <summary>
/// The integration runtime name.
/// </summary>
[Input("integrationRuntimeName", required: true)]
public string IntegrationRuntimeName { get; set; } = null!;
/// <summary>
/// Metadata path.
/// </summary>
[Input("metadataPath")]
public string? MetadataPath { get; set; }
/// <summary>
/// The resource group name.
/// </summary>
[Input("resourceGroupName", required: true)]
public string ResourceGroupName { get; set; } = null!;
public GetIntegrationRuntimeObjectMetadatumArgs()
{
}
}
[OutputType]
public sealed class GetIntegrationRuntimeObjectMetadatumResult
{
/// <summary>
/// The link to the next page of results, if any remaining results exist.
/// </summary>
public readonly string? NextLink;
/// <summary>
/// List of SSIS object metadata.
/// </summary>
public readonly ImmutableArray<object> Value;
[OutputConstructor]
private GetIntegrationRuntimeObjectMetadatumResult(
string? nextLink,
ImmutableArray<object> value)
{
NextLink = nextLink;
Value = value;
}
}
}

View file

@ -0,0 +1,63 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg
{
public static class ListStorageAccountKeys
{
/// <summary>
/// The response from the ListKeys operation.
/// API Version: 2021-02-01.
/// </summary>
public static Task<ListStorageAccountKeysResult> InvokeAsync(ListStorageAccountKeysArgs args, InvokeOptions? options = null)
=> Pulumi.Deployment.Instance.InvokeAsync<ListStorageAccountKeysResult>("mypkg::listStorageAccountKeys", args ?? new ListStorageAccountKeysArgs(), options.WithVersion());
}
public sealed class ListStorageAccountKeysArgs : Pulumi.InvokeArgs
{
/// <summary>
/// The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.
/// </summary>
[Input("accountName", required: true)]
public string AccountName { get; set; } = null!;
/// <summary>
/// Specifies type of the key to be listed. Possible value is kerb.
/// </summary>
[Input("expand")]
public string? Expand { get; set; }
/// <summary>
/// The name of the resource group within the user's subscription. The name is case insensitive.
/// </summary>
[Input("resourceGroupName", required: true)]
public string ResourceGroupName { get; set; } = null!;
public ListStorageAccountKeysArgs()
{
}
}
[OutputType]
public sealed class ListStorageAccountKeysResult
{
/// <summary>
/// Gets the list of storage account keys and their properties for the specified storage account.
/// </summary>
public readonly ImmutableArray<Outputs.StorageAccountKeyResponse> Keys;
[OutputConstructor]
private ListStorageAccountKeysResult(ImmutableArray<Outputs.StorageAccountKeyResponse> keys)
{
Keys = keys;
}
}
}

View file

@ -0,0 +1,52 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg.Outputs
{
/// <summary>
/// Ssis environment reference.
/// </summary>
[OutputType]
public sealed class SsisEnvironmentReferenceResponse
{
/// <summary>
/// Environment folder name.
/// </summary>
public readonly string? EnvironmentFolderName;
/// <summary>
/// Environment name.
/// </summary>
public readonly string? EnvironmentName;
/// <summary>
/// Environment reference id.
/// </summary>
public readonly double? Id;
/// <summary>
/// Reference type
/// </summary>
public readonly string? ReferenceType;
[OutputConstructor]
private SsisEnvironmentReferenceResponse(
string? environmentFolderName,
string? environmentName,
double? id,
string? referenceType)
{
EnvironmentFolderName = environmentFolderName;
EnvironmentName = environmentName;
Id = id;
ReferenceType = referenceType;
}
}
}

View file

@ -0,0 +1,67 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg.Outputs
{
/// <summary>
/// Ssis environment.
/// </summary>
[OutputType]
public sealed class SsisEnvironmentResponse
{
/// <summary>
/// Metadata description.
/// </summary>
public readonly string? Description;
/// <summary>
/// Folder id which contains environment.
/// </summary>
public readonly double? FolderId;
/// <summary>
/// Metadata id.
/// </summary>
public readonly double? Id;
/// <summary>
/// Metadata name.
/// </summary>
public readonly string? Name;
/// <summary>
/// The type of SSIS object metadata.
/// Expected value is 'Environment'.
/// </summary>
public readonly string Type;
/// <summary>
/// Variable in environment
/// </summary>
public readonly ImmutableArray<Outputs.SsisVariableResponse> Variables;
[OutputConstructor]
private SsisEnvironmentResponse(
string? description,
double? folderId,
double? id,
string? name,
string type,
ImmutableArray<Outputs.SsisVariableResponse> variables)
{
Description = description;
FolderId = folderId;
Id = id;
Name = name;
Type = type;
Variables = variables;
}
}
}

View file

@ -0,0 +1,53 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg.Outputs
{
/// <summary>
/// Ssis folder.
/// </summary>
[OutputType]
public sealed class SsisFolderResponse
{
/// <summary>
/// Metadata description.
/// </summary>
public readonly string? Description;
/// <summary>
/// Metadata id.
/// </summary>
public readonly double? Id;
/// <summary>
/// Metadata name.
/// </summary>
public readonly string? Name;
/// <summary>
/// The type of SSIS object metadata.
/// Expected value is 'Folder'.
/// </summary>
public readonly string Type;
[OutputConstructor]
private SsisFolderResponse(
string? description,
double? id,
string? name,
string type)
{
Description = description;
Id = id;
Name = name;
Type = type;
}
}
}

View file

@ -0,0 +1,81 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg.Outputs
{
/// <summary>
/// Ssis Package.
/// </summary>
[OutputType]
public sealed class SsisPackageResponse
{
/// <summary>
/// Metadata description.
/// </summary>
public readonly string? Description;
/// <summary>
/// Folder id which contains package.
/// </summary>
public readonly double? FolderId;
/// <summary>
/// Metadata id.
/// </summary>
public readonly double? Id;
/// <summary>
/// Metadata name.
/// </summary>
public readonly string? Name;
/// <summary>
/// Parameters in package
/// </summary>
public readonly ImmutableArray<Outputs.SsisParameterResponse> Parameters;
/// <summary>
/// Project id which contains package.
/// </summary>
public readonly double? ProjectId;
/// <summary>
/// Project version which contains package.
/// </summary>
public readonly double? ProjectVersion;
/// <summary>
/// The type of SSIS object metadata.
/// Expected value is 'Package'.
/// </summary>
public readonly string Type;
[OutputConstructor]
private SsisPackageResponse(
string? description,
double? folderId,
double? id,
string? name,
ImmutableArray<Outputs.SsisParameterResponse> parameters,
double? projectId,
double? projectVersion,
string type)
{
Description = description;
FolderId = folderId;
Id = id;
Name = name;
Parameters = parameters;
ProjectId = projectId;
ProjectVersion = projectVersion;
Type = type;
}
}
}

View file

@ -0,0 +1,108 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg.Outputs
{
/// <summary>
/// Ssis parameter.
/// </summary>
[OutputType]
public sealed class SsisParameterResponse
{
/// <summary>
/// Parameter type.
/// </summary>
public readonly string? DataType;
/// <summary>
/// Default value of parameter.
/// </summary>
public readonly string? DefaultValue;
/// <summary>
/// Parameter description.
/// </summary>
public readonly string? Description;
/// <summary>
/// Design default value of parameter.
/// </summary>
public readonly string? DesignDefaultValue;
/// <summary>
/// Parameter id.
/// </summary>
public readonly double? Id;
/// <summary>
/// Parameter name.
/// </summary>
public readonly string? Name;
/// <summary>
/// Whether parameter is required.
/// </summary>
public readonly bool? Required;
/// <summary>
/// Whether parameter is sensitive.
/// </summary>
public readonly bool? Sensitive;
/// <summary>
/// Default sensitive value of parameter.
/// </summary>
public readonly string? SensitiveDefaultValue;
/// <summary>
/// Parameter value set.
/// </summary>
public readonly bool? ValueSet;
/// <summary>
/// Parameter value type.
/// </summary>
public readonly string? ValueType;
/// <summary>
/// Parameter reference variable.
/// </summary>
public readonly string? Variable;
[OutputConstructor]
private SsisParameterResponse(
string? dataType,
string? defaultValue,
string? description,
string? designDefaultValue,
double? id,
string? name,
bool? required,
bool? sensitive,
string? sensitiveDefaultValue,
bool? valueSet,
string? valueType,
string? variable)
{
DataType = dataType;
DefaultValue = defaultValue;
Description = description;
DesignDefaultValue = designDefaultValue;
Id = id;
Name = name;
Required = required;
Sensitive = sensitive;
SensitiveDefaultValue = sensitiveDefaultValue;
ValueSet = valueSet;
ValueType = valueType;
Variable = variable;
}
}
}

View file

@ -0,0 +1,81 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg.Outputs
{
/// <summary>
/// Ssis project.
/// </summary>
[OutputType]
public sealed class SsisProjectResponse
{
/// <summary>
/// Metadata description.
/// </summary>
public readonly string? Description;
/// <summary>
/// Environment reference in project
/// </summary>
public readonly ImmutableArray<Outputs.SsisEnvironmentReferenceResponse> EnvironmentRefs;
/// <summary>
/// Folder id which contains project.
/// </summary>
public readonly double? FolderId;
/// <summary>
/// Metadata id.
/// </summary>
public readonly double? Id;
/// <summary>
/// Metadata name.
/// </summary>
public readonly string? Name;
/// <summary>
/// Parameters in project
/// </summary>
public readonly ImmutableArray<Outputs.SsisParameterResponse> Parameters;
/// <summary>
/// The type of SSIS object metadata.
/// Expected value is 'Project'.
/// </summary>
public readonly string Type;
/// <summary>
/// Project version.
/// </summary>
public readonly double? Version;
[OutputConstructor]
private SsisProjectResponse(
string? description,
ImmutableArray<Outputs.SsisEnvironmentReferenceResponse> environmentRefs,
double? folderId,
double? id,
string? name,
ImmutableArray<Outputs.SsisParameterResponse> parameters,
string type,
double? version)
{
Description = description;
EnvironmentRefs = environmentRefs;
FolderId = folderId;
Id = id;
Name = name;
Parameters = parameters;
Type = type;
Version = version;
}
}
}

View file

@ -0,0 +1,73 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg.Outputs
{
/// <summary>
/// Ssis variable.
/// </summary>
[OutputType]
public sealed class SsisVariableResponse
{
/// <summary>
/// Variable type.
/// </summary>
public readonly string? DataType;
/// <summary>
/// Variable description.
/// </summary>
public readonly string? Description;
/// <summary>
/// Variable id.
/// </summary>
public readonly double? Id;
/// <summary>
/// Variable name.
/// </summary>
public readonly string? Name;
/// <summary>
/// Whether variable is sensitive.
/// </summary>
public readonly bool? Sensitive;
/// <summary>
/// Variable sensitive value.
/// </summary>
public readonly string? SensitiveValue;
/// <summary>
/// Variable value.
/// </summary>
public readonly string? Value;
[OutputConstructor]
private SsisVariableResponse(
string? dataType,
string? description,
double? id,
string? name,
bool? sensitive,
string? sensitiveValue,
string? value)
{
DataType = dataType;
Description = description;
Id = id;
Name = name;
Sensitive = sensitive;
SensitiveValue = sensitiveValue;
Value = value;
}
}
}

View file

@ -0,0 +1,52 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg.Outputs
{
/// <summary>
/// An access key for the storage account.
/// </summary>
[OutputType]
public sealed class StorageAccountKeyResponse
{
/// <summary>
/// Creation time of the key, in round trip date format.
/// </summary>
public readonly string CreationTime;
/// <summary>
/// Name of the key.
/// </summary>
public readonly string KeyName;
/// <summary>
/// Permissions for the key -- read-only or full permissions.
/// </summary>
public readonly string Permissions;
/// <summary>
/// Base 64-encoded value of the key.
/// </summary>
public readonly string Value;
[OutputConstructor]
private StorageAccountKeyResponse(
string creationTime,
string keyName,
string permissions,
string value)
{
CreationTime = creationTime;
KeyName = keyName;
Permissions = permissions;
Value = value;
}
}
}

View file

@ -0,0 +1,46 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
namespace Pulumi.Mypkg
{
[MypkgResourceType("pulumi:providers:mypkg")]
public partial class Provider : Pulumi.ProviderResource
{
/// <summary>
/// Create a Provider resource with the given unique name, arguments, and options.
/// </summary>
///
/// <param name="name">The unique name of the resource</param>
/// <param name="args">The arguments used to populate this resource's properties</param>
/// <param name="options">A bag of options that control this resource's behavior</param>
public Provider(string name, ProviderArgs? args = null, CustomResourceOptions? options = null)
: base("mypkg", name, args ?? new ProviderArgs(), MakeResourceOptions(options, ""))
{
}
private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input<string>? id)
{
var defaultOptions = new CustomResourceOptions
{
Version = Utilities.Version,
};
var merged = CustomResourceOptions.Merge(defaultOptions, options);
// Override the ID if one was specified for consistency with other language SDKs.
merged.Id = id ?? merged.Id;
return merged;
}
}
public sealed class ProviderArgs : Pulumi.ResourceArgs
{
public ProviderArgs()
{
}
}
}

View file

@ -0,0 +1,52 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>Pulumi Corp.</Authors>
<Company>Pulumi Corp.</Company>
<Description></Description>
<PackageLicenseExpression></PackageLicenseExpression>
<PackageProjectUrl></PackageProjectUrl>
<RepositoryUrl></RepositoryUrl>
<PackageIcon>logo.png</PackageIcon>
<TargetFramework>netcoreapp3.1</TargetFramework>
<Nullable>enable</Nullable>
<UseSharedCompilation>false</UseSharedCompilation>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<NoWarn>1701;1702;1591</NoWarn>
</PropertyGroup>
<PropertyGroup>
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<PublishRepositoryUrl>true</PublishRepositoryUrl>
</PropertyGroup>
<PropertyGroup Condition="'$(GITHUB_ACTIONS)' == 'true'">
<ContinuousIntegrationBuild>true</ContinuousIntegrationBuild>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="version.txt" />
<None Include="version.txt" Pack="True" PackagePath="content" />
</ItemGroup>
<ItemGroup>
</ItemGroup>
<ItemGroup>
<None Include="logo.png">
<Pack>True</Pack>
<PackagePath></PackagePath>
</None>
</ItemGroup>
</Project>

View file

@ -0,0 +1,87 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.IO;
using System.Reflection;
using Pulumi;
namespace Pulumi.Mypkg
{
static class Utilities
{
public static string? GetEnv(params string[] names)
{
foreach (var n in names)
{
var value = Environment.GetEnvironmentVariable(n);
if (value != null)
{
return value;
}
}
return null;
}
static string[] trueValues = { "1", "t", "T", "true", "TRUE", "True" };
static string[] falseValues = { "0", "f", "F", "false", "FALSE", "False" };
public static bool? GetEnvBoolean(params string[] names)
{
var s = GetEnv(names);
if (s != null)
{
if (Array.IndexOf(trueValues, s) != -1)
{
return true;
}
if (Array.IndexOf(falseValues, s) != -1)
{
return false;
}
}
return null;
}
public static int? GetEnvInt32(params string[] names) => int.TryParse(GetEnv(names), out int v) ? (int?)v : null;
public static double? GetEnvDouble(params string[] names) => double.TryParse(GetEnv(names), out double v) ? (double?)v : null;
public static InvokeOptions WithVersion(this InvokeOptions? options)
{
if (options?.Version != null)
{
return options;
}
return new InvokeOptions
{
Parent = options?.Parent,
Provider = options?.Provider,
Version = Version,
};
}
private readonly static string version;
public static string Version => version;
static Utilities()
{
var assembly = typeof(Utilities).GetTypeInfo().Assembly;
using var stream = assembly.GetManifestResourceStream("Pulumi.Mypkg.version.txt");
using var reader = new StreamReader(stream ?? throw new NotSupportedException("Missing embedded version.txt file"));
version = reader.ReadToEnd().Trim();
var parts = version.Split("\n");
if (parts.Length == 2)
{
// The first part is the provider name.
version = parts[1].Trim();
}
}
}
internal sealed class MypkgResourceTypeAttribute : Pulumi.ResourceTypeAttribute
{
public MypkgResourceTypeAttribute(string type) : base(type, Utilities.Version)
{
}
}
}

View file

@ -0,0 +1,25 @@
{
"emittedFiles": [
"FuncWithAllOptionalInputs.cs",
"FuncWithConstInput.cs",
"FuncWithDefaultValue.cs",
"FuncWithDictParam.cs",
"FuncWithListParam.cs",
"GetClientConfig.cs",
"GetIntegrationRuntimeObjectMetadatum.cs",
"ListStorageAccountKeys.cs",
"Outputs/SsisEnvironmentReferenceResponse.cs",
"Outputs/SsisEnvironmentResponse.cs",
"Outputs/SsisFolderResponse.cs",
"Outputs/SsisPackageResponse.cs",
"Outputs/SsisParameterResponse.cs",
"Outputs/SsisProjectResponse.cs",
"Outputs/SsisVariableResponse.cs",
"Outputs/StorageAccountKeyResponse.cs",
"Provider.cs",
"Pulumi.Mypkg.csproj",
"README.md",
"Utilities.cs",
"logo.png"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

View file

@ -1,33 +0,0 @@
{
"name": "py_tests",
"version": "0.0.1",
"functions": {
"madeup-package:codegentest:funcWithAllOptionalInputs": {
"description": "Check codegen of functions with all optional inputs.",
"inputs": {
"type": "object",
"properties": {
"a": {
"type": "string",
"description": "Property A"
},
"b": {
"type": "string",
"description": "Property B"
}
}
},
"outputs": {
"properties": {
"r": {
"type": "string"
}
},
"type": "object",
"required": [
"r"
]
}
}
}
}

View file

@ -1,18 +0,0 @@
{
"name": "py_tests",
"version": "0.0.1",
"functions": {
"madeup-package:codegentest:funcWithConstInput": {
"description": "Codegen demo with const inputs",
"inputs": {
"type": "object",
"properties": {
"plainInput": {
"type": "string",
"const": "fixed"
}
}
}
}
}
}

View file

@ -1,35 +0,0 @@
{
"name": "py_tests",
"version": "0.0.1",
"functions": {
"madeup-package:codegentest:funcWithDefaultValue": {
"description": "Check codegen of functions with default values.",
"inputs": {
"type": "object",
"required": [
"a"
],
"properties": {
"a": {
"type": "string"
},
"b": {
"type": "string",
"default": "b-default"
}
}
},
"outputs": {
"properties": {
"r": {
"type": "string"
}
},
"type": "object",
"required": [
"r"
]
}
}
}
}

View file

@ -1,34 +0,0 @@
{
"name": "py_tests",
"version": "0.0.1",
"functions": {
"madeup-package:codegentest:funcWithDictParam": {
"description": "Check codegen of functions with a Dict<str,str> parameter.",
"inputs": {
"type": "object",
"properties": {
"a": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"b": {
"type": "string"
}
}
},
"outputs": {
"properties": {
"r": {
"type": "string"
}
},
"type": "object",
"required": [
"r"
]
}
}
}
}

View file

@ -1,34 +0,0 @@
{
"name": "py_tests",
"version": "0.0.1",
"functions": {
"madeup-package:codegentest:funcWithListParam": {
"description": "Check codegen of functions with a List parameter.",
"inputs": {
"type": "object",
"properties": {
"a": {
"type": "array",
"items": {
"type": "string"
}
},
"b": {
"type": "string"
}
}
},
"outputs": {
"properties": {
"r": {
"type": "string"
}
},
"type": "object",
"required": [
"r"
]
}
}
}
}

View file

@ -1,37 +0,0 @@
{
"name": "py_tests",
"version": "0.0.1",
"functions": {
"azure-native:codegentest:getClientConfig": {
"description": "Use this function to access the current configuration of the native Azure provider.",
"outputs": {
"description": "Configuration values returned by getClientConfig.",
"properties": {
"clientId": {
"type": "string",
"description": "Azure Client ID (Application Object ID)."
},
"objectId": {
"type": "string",
"description": "Azure Object ID of the current user or service principal."
},
"subscriptionId": {
"type": "string",
"description": "Azure Subscription ID"
},
"tenantId": {
"type": "string",
"description": "Azure Tenant ID"
}
},
"type": "object",
"required": [
"clientId",
"objectId",
"subscriptionId",
"tenantId"
]
}
}
}
}

View file

@ -23,6 +23,8 @@ import (
"github.com/pulumi/pulumi/sdk/v3/go/common/resource"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"output-funcs/mypkg"
)
type mocks int
@ -33,9 +35,9 @@ func (mocks) NewResource(args pulumi.MockResourceArgs) (string, resource.Propert
}
func (mocks) Call(args pulumi.MockCallArgs) (resource.PropertyMap, error) {
if args.Token == "azure-native:codegentest:listStorageAccountKeys" {
if args.Token == "mypkg::listStorageAccountKeys" {
targs := ListStorageAccountKeysArgs{}
targs := mypkg.ListStorageAccountKeysArgs{}
for k, v := range args.Args {
switch k {
case "accountName":
@ -53,7 +55,7 @@ func (mocks) Call(args pulumi.MockCallArgs) (resource.PropertyMap, error) {
expand = *targs.Expand
}
inputs := []StorageAccountKeyResponse{
inputs := []mypkg.StorageAccountKeyResponse{
{
KeyName: "key",
Permissions: "permissions",
@ -63,7 +65,7 @@ func (mocks) Call(args pulumi.MockCallArgs) (resource.PropertyMap, error) {
expand),
},
}
result := ListStorageAccountKeysResult{
result := mypkg.ListStorageAccountKeysResult{
Keys: inputs,
}
outputs := map[string]interface{}{
@ -72,11 +74,11 @@ func (mocks) Call(args pulumi.MockCallArgs) (resource.PropertyMap, error) {
return resource.NewPropertyMapFromMap(outputs), nil
}
if args.Token == "madeup-package:codegentest:funcWithDefaultValue" ||
args.Token == "madeup-package:codegentest:funcWithAllOptionalInputs" ||
args.Token == "madeup-package:codegentest:funcWithListParam" ||
args.Token == "madeup-package:codegentest:funcWithDictParam" {
result := FuncWithDefaultValueResult{
if args.Token == "mypkg::funcWithDefaultValue" ||
args.Token == "mypkg::funcWithAllOptionalInputs" ||
args.Token == "mypkg::funcWithListParam" ||
args.Token == "mypkg::funcWithDictParam" {
result := mypkg.FuncWithDefaultValueResult{
R: fmt.Sprintf("%v", args.Args),
}
outputs := map[string]interface{}{
@ -85,8 +87,8 @@ func (mocks) Call(args pulumi.MockCallArgs) (resource.PropertyMap, error) {
return resource.NewPropertyMapFromMap(outputs), nil
}
if args.Token == "azure-native:codegentest:getIntegrationRuntimeObjectMetadatum" {
targs := GetIntegrationRuntimeObjectMetadatumArgs{}
if args.Token == "mypkg::getIntegrationRuntimeObjectMetadatum" {
targs := mypkg.GetIntegrationRuntimeObjectMetadatumArgs{}
for k, v := range args.Args {
switch k {
case "factoryName":
@ -101,7 +103,7 @@ func (mocks) Call(args pulumi.MockCallArgs) (resource.PropertyMap, error) {
}
}
nextLink := "my-next-link"
result := GetIntegrationRuntimeObjectMetadatumResult{
result := mypkg.GetIntegrationRuntimeObjectMetadatumResult{
NextLink: &nextLink,
Value: []interface{}{targs},
}
@ -118,12 +120,12 @@ func (mocks) Call(args pulumi.MockCallArgs) (resource.PropertyMap, error) {
func TestListStorageAccountKeysOutput(t *testing.T) {
pulumiTest(t, func(ctx *pulumi.Context) error {
output := ListStorageAccountKeysOutput(ctx, ListStorageAccountKeysOutputArgs{
output := mypkg.ListStorageAccountKeysOutput(ctx, mypkg.ListStorageAccountKeysOutputArgs{
AccountName: pulumi.String("my-account-name"),
ResourceGroupName: pulumi.String("my-resource-group-name"),
})
keys := waitOut(t, output.Keys()).([]StorageAccountKeyResponse)
keys := waitOut(t, output.Keys()).([]mypkg.StorageAccountKeyResponse)
assert.Equal(t, 1, len(keys))
assert.Equal(t, "key", keys[0].KeyName)
@ -131,13 +133,13 @@ func TestListStorageAccountKeysOutput(t *testing.T) {
assert.Equal(t, "accountName=my-account-name, resourceGroupName=my-resource-group-name, expand=",
keys[0].Value)
output = ListStorageAccountKeysOutput(ctx, ListStorageAccountKeysOutputArgs{
output = mypkg.ListStorageAccountKeysOutput(ctx, mypkg.ListStorageAccountKeysOutputArgs{
AccountName: pulumi.String("my-account-name"),
ResourceGroupName: pulumi.String("my-resource-group-name"),
Expand: pulumi.String("my-expand"),
})
keys = waitOut(t, output.Keys()).([]StorageAccountKeyResponse)
keys = waitOut(t, output.Keys()).([]mypkg.StorageAccountKeyResponse)
assert.Equal(t, 1, len(keys))
assert.Equal(t, "key", keys[0].KeyName)
@ -154,7 +156,7 @@ func TestListStorageAccountKeysOutput(t *testing.T) {
// to default at all here.
func TestFuncWithDefaultValueOutput(t *testing.T) {
pulumiTest(t, func(ctx *pulumi.Context) error {
output := FuncWithDefaultValueOutput(ctx, FuncWithDefaultValueOutputArgs{
output := mypkg.FuncWithDefaultValueOutput(ctx, mypkg.FuncWithDefaultValueOutputArgs{
A: pulumi.String("my-a"),
})
r := waitOut(t, output.R())
@ -165,7 +167,7 @@ func TestFuncWithDefaultValueOutput(t *testing.T) {
func TestFuncWithAllOptionalInputsOutput(t *testing.T) {
pulumiTest(t, func(ctx *pulumi.Context) error {
output := FuncWithAllOptionalInputsOutput(ctx, FuncWithAllOptionalInputsOutputArgs{
output := mypkg.FuncWithAllOptionalInputsOutput(ctx, mypkg.FuncWithAllOptionalInputsOutputArgs{
A: pulumi.String("my-a"),
})
r := waitOut(t, output.R())
@ -176,7 +178,7 @@ func TestFuncWithAllOptionalInputsOutput(t *testing.T) {
func TestFuncWithListParamOutput(t *testing.T) {
pulumiTest(t, func(ctx *pulumi.Context) error {
output := FuncWithListParamOutput(ctx, FuncWithListParamOutputArgs{
output := mypkg.FuncWithListParamOutput(ctx, mypkg.FuncWithListParamOutputArgs{
A: pulumi.StringArray{
pulumi.String("my-a1"),
pulumi.String("my-a2"),
@ -191,7 +193,7 @@ func TestFuncWithListParamOutput(t *testing.T) {
func TestFuncWithDictParamOutput(t *testing.T) {
pulumiTest(t, func(ctx *pulumi.Context) error {
output := FuncWithDictParamOutput(ctx, FuncWithDictParamOutputArgs{
output := mypkg.FuncWithDictParamOutput(ctx, mypkg.FuncWithDictParamOutputArgs{
A: pulumi.StringMap{
"one": pulumi.String("1"),
"two": pulumi.String("2"),
@ -205,7 +207,7 @@ func TestFuncWithDictParamOutput(t *testing.T) {
func TestGetIntegrationRuntimeObjectMetadatumOutput(t *testing.T) {
pulumiTest(t, func(ctx *pulumi.Context) error {
output := GetIntegrationRuntimeObjectMetadatumOutput(ctx, GetIntegrationRuntimeObjectMetadatumOutputArgs{
output := mypkg.GetIntegrationRuntimeObjectMetadatumOutput(ctx, mypkg.GetIntegrationRuntimeObjectMetadatumOutputArgs{
FactoryName: pulumi.String("my-factory-name"),
IntegrationRuntimeName: pulumi.String("my-integration-runtime-name"),
MetadataPath: pulumi.String("my-metadata-path"),

View file

@ -0,0 +1,17 @@
{
"emittedFiles": [
"mypkg/doc.go",
"mypkg/funcWithAllOptionalInputs.go",
"mypkg/funcWithConstInput.go",
"mypkg/funcWithDefaultValue.go",
"mypkg/funcWithDictParam.go",
"mypkg/funcWithListParam.go",
"mypkg/getClientConfig.go",
"mypkg/getIntegrationRuntimeObjectMetadatum.go",
"mypkg/init.go",
"mypkg/listStorageAccountKeys.go",
"mypkg/provider.go",
"mypkg/pulumiTypes.go",
"mypkg/pulumiUtilities.go"
]
}

View file

@ -1,10 +0,0 @@
module codegentest
go 1.16
require (
github.com/pulumi/pulumi/sdk/v3 v3.2.1
github.com/stretchr/testify v1.6.1
)
replace github.com/pulumi/pulumi/sdk/v3 => ../../../../../../../sdk

View file

@ -1,344 +0,0 @@
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/Microsoft/go-winio v0.4.14/go.mod h1:qXqCSQ3Xa7+6tgxaGTIe4Kpcdsi+P8jBhyzoq1bpyYA=
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
github.com/alcortesm/tgz v0.0.0-20161220082320-9c5fe88206d7 h1:uSoVVbwJiQipAclBbw+8quDsfcvFjOpI5iCf4p/cqCs=
github.com/alcortesm/tgz v0.0.0-20161220082320-9c5fe88206d7/go.mod h1:6zEj6s6u/ghQa61ZWa/C2Aw3RkjiTBOix7dkqa1VLIs=
github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239 h1:kFOfPq6dUM1hTo4JG6LR5AXSUEsOjtdm0kw0FtQtMJA=
github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c=
github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8=
github.com/blang/semver v3.5.1+incompatible h1:cQNTCjp13qL8KC3Nbxr/y2Bqb63oX6wdnnjpJbkM4JQ=
github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk=
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc=
github.com/cheggaaa/pb v1.0.18 h1:G/DgkKaBP0V5lnBg/vx61nVxxAU+VqU5yMzSc0f2PPE=
github.com/cheggaaa/pb v1.0.18/go.mod h1:pQciLPpbU0oxA0h+VJYYLxO+XeDQb5pZijXscXHm81s=
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd h1:qMd81Ts1T2OTKmB4acZcyKaMtRnY5Y44NuXGX2GFJ1w=
github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI=
github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk=
github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE=
github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk=
github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA=
github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU=
github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY=
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ=
github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no=
github.com/djherbis/times v1.2.0 h1:xANXjsC/iBqbO00vkWlYwPWgBgEVU6m6AFYg0Pic+Mc=
github.com/djherbis/times v1.2.0/go.mod h1:CGMZlo255K5r4Yw0b9RRfFQpM2y7uOmxg4jm9HsaVf8=
github.com/emirpasic/gods v1.12.0 h1:QAUIPSaCu4G+POclxeqb3F+WPpdKqFGlw36+yOzGlrg=
github.com/emirpasic/gods v1.12.0/go.mod h1:YfzfFFoVP/catgzJb4IKIqXjX78Ha8FMSDh3ymbK86o=
github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98=
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
github.com/fatih/color v1.9.0 h1:8xPHl4/q1VyqGIPif1F+1V3Y3lSmrq01EabUW3CoW5s=
github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU=
github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc=
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ=
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
github.com/gliderlabs/ssh v0.2.2 h1:6zsha5zo/TWhRhwqCD3+EarCAgZ2yN28ipRnGPnwkI0=
github.com/gliderlabs/ssh v0.2.2/go.mod h1:U7qILu1NlMHj9FlMhZLlkCdDnU1DBEAqr0aevW3Awn0=
github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE=
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
github.com/gofrs/flock v0.7.1 h1:DP+LD/t0njgoPBvT5MJLeliUIVQR03hiKR6vezdwHlc=
github.com/gofrs/flock v0.7.1/go.mod h1:F1TvTiK9OcQqauNUHlbJvyl9Qa1QvF/gOUDKA14jxHU=
github.com/gofrs/uuid v3.3.0+incompatible h1:8K4tyRfvU1CYPgJsveYFQMhpFd/wXNM7iK6rR7UHz84=
github.com/gofrs/uuid v3.3.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4=
github.com/gogo/protobuf v1.3.1 h1:DqDEcV5aeaTmdFBePNpYsp3FlcVH/2ISVVM9Qf8PSls=
github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw=
github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8=
github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA=
github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs=
github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w=
github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0=
github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8=
github.com/golang/protobuf v1.4.2 h1:+Z5KGCizgyZCbGh1KZqA0fcLLkwbsjIzS4aV2v7wJX0=
github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=
github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.4.1 h1:/exdXoGamhu5ONeUJH0deniYLWYvQwW66yvlfiiKTu0=
github.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=
github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs=
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk=
github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY=
github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 h1:MJG/KsmcqMwFAkh8mTnAwhyKoB+sTAnY4CACC110tbU=
github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645/go.mod h1:6iZfnjpejD4L/4DwD7NryNaJyCQdzwWwH2MWhCA90Kw=
github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA=
github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
github.com/hashicorp/go-multierror v1.0.0 h1:iVjPR7a6H0tWELX5NxNe7bYopibicUzc7uPribsnS6o=
github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk=
github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ=
github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM=
github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8=
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A=
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo=
github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI=
github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo=
github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w=
github.com/kevinburke/ssh_config v0.0.0-20190725054713-01f96b0aa0cd h1:Coekwdh0v2wtGp9Gmz1Ze3eVRAWJMLokvN3QjdzCHLY=
github.com/kevinburke/ssh_config v0.0.0-20190725054713-01f96b0aa0cd/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM=
github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q=
github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00=
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI=
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
github.com/kr/pty v1.1.8/go.mod h1:O1sed60cT9XZ5uDucP5qwvh+TE3NnUj51EiZO/lmSfw=
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
github.com/mattn/go-colorable v0.1.6 h1:6Su7aK7lXmJ/U79bYtBjLNaha4Fs1Rg9plHpcH+vvnE=
github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE=
github.com/mattn/go-isatty v0.0.12 h1:wuysRhFDzyxgEmMf5xjvJ2M9dZoWAXNNr5LSBS7uHXY=
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
github.com/mattn/go-runewidth v0.0.8 h1:3tS41NlGYSmhhe/8fhGRzc+z3AYCw1Fe1WAyLuujKs0=
github.com/mattn/go-runewidth v0.0.8/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=
github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y=
github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
github.com/mitchellh/go-ps v1.0.0 h1:i6ampVEEF4wQFF+bkYfwYgY+F/uYJDktmvLPf7qIgjc=
github.com/mitchellh/go-ps v1.0.0/go.mod h1:J4lOc8z8yJs6vUwklHw2XEIiT4z4C40KtWVN3nvg8Pg=
github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU=
github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U=
github.com/opentracing/basictracer-go v1.0.0 h1:YyUAhaEfjoWXclZVJ9sGoNct7j4TVk7lZWlQw5UXuoo=
github.com/opentracing/basictracer-go v1.0.0/go.mod h1:QfBfYuafItcjQuMwinw9GhYKwFXS9KnPs5lxoYwgW74=
github.com/opentracing/opentracing-go v1.1.0 h1:pWlfV3Bxv7k65HYwkikxat0+s3pV4bsqf19k25Ur8rU=
github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o=
github.com/pelletier/go-buffruneio v0.2.0/go.mod h1:JkE26KsDizTr40EUHkXVtNPvgGtbSNq5BcowyYOWdKo=
github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
github.com/prometheus/client_golang v0.9.3/go.mod h1:/TN21ttK/J9q6uSwhBd54HahCDft0ttaMvbicHlPoso=
github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo=
github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro=
github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=
github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=
github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU=
github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg=
github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
github.com/sabhiram/go-gitignore v0.0.0-20180611051255-d3107576ba94 h1:G04eS0JkAIVZfaJLjla9dNxkJCPiKIGZlw9AfOhzOD0=
github.com/sabhiram/go-gitignore v0.0.0-20180611051255-d3107576ba94/go.mod h1:b18R55ulyQ/h3RaWyloPyER7fWQVZvimKKhnI5OfrJQ=
github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
github.com/sergi/go-diff v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=
github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc=
github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q=
github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM=
github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=
github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ=
github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
github.com/spf13/cobra v1.0.0 h1:6m/oheQuQ13N9ks4hubMG6BnvwOeaJrqSPLahSnczz8=
github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE=
github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo=
github.com/spf13/pflag v1.0.3 h1:zPAT6CGy6wXeQ7NtTnaTerfKOsV6V6F8agHXFiazDkg=
github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE=
github.com/src-d/gcfg v1.4.0 h1:xXbNR5AlLSA315x2UO+fTSSAXCDf+Ar38/6oyGbDKQ4=
github.com/src-d/gcfg v1.4.0/go.mod h1:p/UMsR43ujA89BJY9duynAwIpvqEujIH/jFlfL7jWoI=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE=
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
github.com/stretchr/testify v1.6.1 h1:hDPOHmpOpP40lSULcqw7IrRb/u7w6RpDC9399XyoNd0=
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/texttheater/golang-levenshtein v0.0.0-20191208221605-eb6844b05fc6 h1:9VTskZOIRf2vKF3UL8TuWElry5pgUpV1tFSe/e/0m/E=
github.com/texttheater/golang-levenshtein v0.0.0-20191208221605-eb6844b05fc6/go.mod h1:XDKHRm5ThF8YJjx001LtgelzsoaEcvnA7lVWz9EeX3g=
github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U=
github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 h1:X9dsIWPuuEJlPX//UmRKophhOKCGXc46RVIGuttks68=
github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7/go.mod h1:UxoP3EypF8JfGEjAII8jx1q8rQyDnX8qdTCs/UQBVIE=
github.com/uber/jaeger-client-go v2.22.1+incompatible h1:NHcubEkVbahf9t3p75TOCR83gdUHXjRJvjoBh1yACsM=
github.com/uber/jaeger-client-go v2.22.1+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk=
github.com/uber/jaeger-lib v2.2.0+incompatible h1:MxZXOiR2JuoANZ3J6DE/U0kSFv/eJ/GfSYVCjK7dyaw=
github.com/uber/jaeger-lib v2.2.0+incompatible/go.mod h1:ComeNDZlWwrWnDv8aPp0Ba6+uUTzImX/AauajbLI56U=
github.com/ugorji/go v1.1.4/go.mod h1:uQMGLiO92mf5W77hV/PUCpI3pbzQx3CRekS0kk+RGrc=
github.com/xanzy/ssh-agent v0.2.1 h1:TCbipTQL2JiiCprBWx9frJ2eJlCYT00NmctrHxVAr70=
github.com/xanzy/ssh-agent v0.2.1/go.mod h1:mLlQY/MoOhWBj+gOGMQkOeiEvkx+8pJSI+0Bx9h2kr4=
github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU=
github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q=
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU=
go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=
go.uber.org/atomic v1.6.0 h1:Ezj3JGmsOnG1MoRWQkPBsKLe9DwWD9QeXzTRzzldNVk=
go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ=
go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0=
go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20190219172222-a4c6cb3142f2/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20200317142112-1b76d66859c6 h1:TjszyFsQsyZNHwdVdZ5m7bjmreu0znc2kRYsEml9/Ww=
golang.org/x/crypto v0.0.0-20200317142112-1b76d66859c6/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/lint v0.0.0-20200302205851-738671d3881b h1:Wh+f8QHJXR411sJR8/vRBTZ7YapZaRvUcLFFJhusH0k=
golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200602114024-627f9648deb9 h1:pNX+40auqi2JqRfOP1akLGtYcn15TUbkhwuCO3foqqM=
golang.org/x/net v0.0.0-20200602114024-627f9648deb9/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190221075227-b4e8571b14e0/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210817190340-bfb29a6856f2 h1:c8PlLMqBbOHoqtjteWm5/kbe6rNY2pbRfbIMVnepueo=
golang.org/x/sys v0.0.0-20210817190340-bfb29a6856f2/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs=
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/tools v0.0.0-20190729092621-ff9f1409240a/go.mod h1:jcCCGcm9btYwXyDqrUWc6MKQKKGJCWEQ3AfLSRIbEuI=
golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200608174601-1b747fd94509 h1:MI14dOfl3OG6Zd32w3ugsrvcUO810fDZdWakTq39dH4=
golang.org/x/tools v0.0.0-20200608174601-1b747fd94509/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo=
google.golang.org/genproto v0.0.0-20200608115520-7c474a2e3482 h1:i+Aiej6cta/Frzp13/swvwz5O00kYcSe0A/C5Wd7zX8=
google.golang.org/genproto v0.0.0-20200608115520-7c474a2e3482/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA=
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
google.golang.org/grpc v1.21.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM=
google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY=
google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=
google.golang.org/grpc v1.29.1 h1:EC2SB8S04d2r73uptxphDSUG+kTKVgjRPF+N3xpxRB4=
google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk=
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=
google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE=
google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo=
google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
google.golang.org/protobuf v1.24.0 h1:UhZDfRO8JRQru4/+LlLE0BRKGF8L+PICnvYZmx/fEGA=
google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4=
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo=
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/cheggaaa/pb.v1 v1.0.28 h1:n1tBJnnK2r7g9OW2btFH91V92STTUevLXYFb8gy9EMk=
gopkg.in/cheggaaa/pb.v1 v1.0.28/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=
gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo=
gopkg.in/src-d/go-billy.v4 v4.3.2 h1:0SQA1pRztfTFx2miS8sA97XvooFeNOmvUenF4o0EcVg=
gopkg.in/src-d/go-billy.v4 v4.3.2/go.mod h1:nDjArDMp+XMs1aFAESLRjfGSgfvoYN0hDfzEk0GjC98=
gopkg.in/src-d/go-git-fixtures.v3 v3.5.0 h1:ivZFOIltbce2Mo8IjzUHAFoq/IylO9WHhNOAJK+LsJg=
gopkg.in/src-d/go-git-fixtures.v3 v3.5.0/go.mod h1:dLBcvytrw/TYZsNTWCnkNF2DSIlzWYqTe3rJR56Ac7g=
gopkg.in/src-d/go-git.v4 v4.13.1 h1:SRtFyV8Kxc0UP7aCHcijOMQGPxHSmMOPrzulQWolkYE=
gopkg.in/src-d/go-git.v4 v4.13.1/go.mod h1:nx5NYcxdKxq5fpltdHnPa2Exj4Sx0EclMWZQbYDu2z8=
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME=
gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI=
gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74=
gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10=
gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
pgregory.net/rapid v0.4.7 h1:MTNRktPuv5FNqOO151TM9mDTa+XHcX6ypYeISDVD14g=
pgregory.net/rapid v0.4.7/go.mod h1:UYpPVyjFHzYBGHIxLFoupi8vwk6rXNzRY9OMvVxFIOU=
sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0 h1:ucqkfpjg9WzSUubAO62csmucvxl4/JeW3F4I4909XkM=
sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU=

View file

@ -1,51 +0,0 @@
// Copyright 2016-2021, Pulumi Corporation.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// This code is hand-added to make generated code compile.
package codegentest
import (
"context"
"reflect"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
// An access key for the storage account.
type StorageAccountKeyResponse struct {
// Name of the key.
KeyName string `pulumi:"keyName"`
// Permissions for the key -- read-only or full permissions.
Permissions string `pulumi:"permissions"`
// Base 64-encoded value of the key.
Value string `pulumi:"value"`
}
type StorageAccountKeyResponseArrayOutput struct{ *pulumi.OutputState }
func (StorageAccountKeyResponseArrayOutput) ElementType() reflect.Type {
return reflect.TypeOf((*[]StorageAccountKeyResponse)(nil)).Elem()
}
func (o StorageAccountKeyResponseArrayOutput) ToStorageAccountKeyResponseArrayOutput() StorageAccountKeyResponseArrayOutput {
return o
}
func (o StorageAccountKeyResponseArrayOutput) ToStorageAccountKeyResponseArrayOutputWithContext(ctx context.Context) StorageAccountKeyResponseArrayOutput {
return o
}
func init() {
pulumi.RegisterOutputType(StorageAccountKeyResponseArrayOutput{})
}

View file

@ -0,0 +1,3 @@
// Package mypkg exports types, functions, subpackages for provisioning mypkg resources.
//
package mypkg

View file

@ -1,7 +1,7 @@
// *** WARNING: this file was generated by tool. ***
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package codegentest
package mypkg
import (
"context"
@ -13,7 +13,7 @@ import (
// Check codegen of functions with all optional inputs.
func FuncWithAllOptionalInputs(ctx *pulumi.Context, args *FuncWithAllOptionalInputsArgs, opts ...pulumi.InvokeOption) (*FuncWithAllOptionalInputsResult, error) {
var rv FuncWithAllOptionalInputsResult
err := ctx.Invoke("madeup-package:codegentest:funcWithAllOptionalInputs", args, &rv, opts...)
err := ctx.Invoke("mypkg::funcWithAllOptionalInputs", args, &rv, opts...)
if err != nil {
return nil, err
}
@ -27,12 +27,10 @@ type FuncWithAllOptionalInputsArgs struct {
B *string `pulumi:"b"`
}
type FuncWithAllOptionalInputsResult struct {
R string `pulumi:"r"`
}
func FuncWithAllOptionalInputsOutput(ctx *pulumi.Context, args FuncWithAllOptionalInputsOutputArgs, opts ...pulumi.InvokeOption) FuncWithAllOptionalInputsResultOutput {
return pulumi.ToOutputWithContext(context.Background(), args).
ApplyT(func(v interface{}) (FuncWithAllOptionalInputsResult, error) {
@ -53,7 +51,7 @@ func (FuncWithAllOptionalInputsOutputArgs) ElementType() reflect.Type {
return reflect.TypeOf((*FuncWithAllOptionalInputsArgs)(nil)).Elem()
}
type FuncWithAllOptionalInputsResultOutput struct { *pulumi.OutputState }
type FuncWithAllOptionalInputsResultOutput struct{ *pulumi.OutputState }
func (FuncWithAllOptionalInputsResultOutput) ElementType() reflect.Type {
return reflect.TypeOf((*FuncWithAllOptionalInputsResult)(nil)).Elem()
@ -68,11 +66,9 @@ func (o FuncWithAllOptionalInputsResultOutput) ToFuncWithAllOptionalInputsResult
}
func (o FuncWithAllOptionalInputsResultOutput) R() pulumi.StringOutput {
return o.ApplyT(func (v FuncWithAllOptionalInputsResult) string { return v.R }).(pulumi.StringOutput)
return o.ApplyT(func(v FuncWithAllOptionalInputsResult) string { return v.R }).(pulumi.StringOutput)
}
func init() {
pulumi.RegisterOutputType(FuncWithAllOptionalInputsResultOutput{})
pulumi.RegisterOutputType(FuncWithAllOptionalInputsResultOutput{})
}

View file

@ -1,7 +1,7 @@
// *** WARNING: this file was generated by tool. ***
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package codegentest
package mypkg
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
@ -10,11 +10,10 @@ import (
// Codegen demo with const inputs
func FuncWithConstInput(ctx *pulumi.Context, args *FuncWithConstInputArgs, opts ...pulumi.InvokeOption) error {
var rv struct{}
err := ctx.Invoke("madeup-package:codegentest:funcWithConstInput", args, &rv, opts...)
err := ctx.Invoke("mypkg::funcWithConstInput", args, &rv, opts...)
return err
}
type FuncWithConstInputArgs struct {
PlainInput *string `pulumi:"plainInput"`
}

View file

@ -1,7 +1,7 @@
// *** WARNING: this file was generated by tool. ***
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package codegentest
package mypkg
import (
"context"
@ -13,7 +13,7 @@ import (
// Check codegen of functions with default values.
func FuncWithDefaultValue(ctx *pulumi.Context, args *FuncWithDefaultValueArgs, opts ...pulumi.InvokeOption) (*FuncWithDefaultValueResult, error) {
var rv FuncWithDefaultValueResult
err := ctx.Invoke("madeup-package:codegentest:funcWithDefaultValue", args, &rv, opts...)
err := ctx.Invoke("mypkg::funcWithDefaultValue", args, &rv, opts...)
if err != nil {
return nil, err
}
@ -21,16 +21,14 @@ func FuncWithDefaultValue(ctx *pulumi.Context, args *FuncWithDefaultValueArgs, o
}
type FuncWithDefaultValueArgs struct {
A string `pulumi:"a"`
A string `pulumi:"a"`
B *string `pulumi:"b"`
}
type FuncWithDefaultValueResult struct {
R string `pulumi:"r"`
}
func FuncWithDefaultValueOutput(ctx *pulumi.Context, args FuncWithDefaultValueOutputArgs, opts ...pulumi.InvokeOption) FuncWithDefaultValueResultOutput {
return pulumi.ToOutputWithContext(context.Background(), args).
ApplyT(func(v interface{}) (FuncWithDefaultValueResult, error) {
@ -41,7 +39,7 @@ func FuncWithDefaultValueOutput(ctx *pulumi.Context, args FuncWithDefaultValueOu
}
type FuncWithDefaultValueOutputArgs struct {
A pulumi.StringInput `pulumi:"a"`
A pulumi.StringInput `pulumi:"a"`
B pulumi.StringPtrInput `pulumi:"b"`
}
@ -49,7 +47,7 @@ func (FuncWithDefaultValueOutputArgs) ElementType() reflect.Type {
return reflect.TypeOf((*FuncWithDefaultValueArgs)(nil)).Elem()
}
type FuncWithDefaultValueResultOutput struct { *pulumi.OutputState }
type FuncWithDefaultValueResultOutput struct{ *pulumi.OutputState }
func (FuncWithDefaultValueResultOutput) ElementType() reflect.Type {
return reflect.TypeOf((*FuncWithDefaultValueResult)(nil)).Elem()
@ -64,11 +62,9 @@ func (o FuncWithDefaultValueResultOutput) ToFuncWithDefaultValueResultOutputWith
}
func (o FuncWithDefaultValueResultOutput) R() pulumi.StringOutput {
return o.ApplyT(func (v FuncWithDefaultValueResult) string { return v.R }).(pulumi.StringOutput)
return o.ApplyT(func(v FuncWithDefaultValueResult) string { return v.R }).(pulumi.StringOutput)
}
func init() {
pulumi.RegisterOutputType(FuncWithDefaultValueResultOutput{})
pulumi.RegisterOutputType(FuncWithDefaultValueResultOutput{})
}

View file

@ -1,7 +1,7 @@
// *** WARNING: this file was generated by tool. ***
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package codegentest
package mypkg
import (
"context"
@ -13,7 +13,7 @@ import (
// Check codegen of functions with a Dict<str,str> parameter.
func FuncWithDictParam(ctx *pulumi.Context, args *FuncWithDictParamArgs, opts ...pulumi.InvokeOption) (*FuncWithDictParamResult, error) {
var rv FuncWithDictParamResult
err := ctx.Invoke("madeup-package:codegentest:funcWithDictParam", args, &rv, opts...)
err := ctx.Invoke("mypkg::funcWithDictParam", args, &rv, opts...)
if err != nil {
return nil, err
}
@ -22,15 +22,13 @@ func FuncWithDictParam(ctx *pulumi.Context, args *FuncWithDictParamArgs, opts ..
type FuncWithDictParamArgs struct {
A map[string]string `pulumi:"a"`
B *string `pulumi:"b"`
B *string `pulumi:"b"`
}
type FuncWithDictParamResult struct {
R string `pulumi:"r"`
}
func FuncWithDictParamOutput(ctx *pulumi.Context, args FuncWithDictParamOutputArgs, opts ...pulumi.InvokeOption) FuncWithDictParamResultOutput {
return pulumi.ToOutputWithContext(context.Background(), args).
ApplyT(func(v interface{}) (FuncWithDictParamResult, error) {
@ -49,7 +47,7 @@ func (FuncWithDictParamOutputArgs) ElementType() reflect.Type {
return reflect.TypeOf((*FuncWithDictParamArgs)(nil)).Elem()
}
type FuncWithDictParamResultOutput struct { *pulumi.OutputState }
type FuncWithDictParamResultOutput struct{ *pulumi.OutputState }
func (FuncWithDictParamResultOutput) ElementType() reflect.Type {
return reflect.TypeOf((*FuncWithDictParamResult)(nil)).Elem()
@ -64,11 +62,9 @@ func (o FuncWithDictParamResultOutput) ToFuncWithDictParamResultOutputWithContex
}
func (o FuncWithDictParamResultOutput) R() pulumi.StringOutput {
return o.ApplyT(func (v FuncWithDictParamResult) string { return v.R }).(pulumi.StringOutput)
return o.ApplyT(func(v FuncWithDictParamResult) string { return v.R }).(pulumi.StringOutput)
}
func init() {
pulumi.RegisterOutputType(FuncWithDictParamResultOutput{})
pulumi.RegisterOutputType(FuncWithDictParamResultOutput{})
}

View file

@ -1,7 +1,7 @@
// *** WARNING: this file was generated by tool. ***
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package codegentest
package mypkg
import (
"context"
@ -13,7 +13,7 @@ import (
// Check codegen of functions with a List parameter.
func FuncWithListParam(ctx *pulumi.Context, args *FuncWithListParamArgs, opts ...pulumi.InvokeOption) (*FuncWithListParamResult, error) {
var rv FuncWithListParamResult
err := ctx.Invoke("madeup-package:codegentest:funcWithListParam", args, &rv, opts...)
err := ctx.Invoke("mypkg::funcWithListParam", args, &rv, opts...)
if err != nil {
return nil, err
}
@ -22,15 +22,13 @@ func FuncWithListParam(ctx *pulumi.Context, args *FuncWithListParamArgs, opts ..
type FuncWithListParamArgs struct {
A []string `pulumi:"a"`
B *string `pulumi:"b"`
B *string `pulumi:"b"`
}
type FuncWithListParamResult struct {
R string `pulumi:"r"`
}
func FuncWithListParamOutput(ctx *pulumi.Context, args FuncWithListParamOutputArgs, opts ...pulumi.InvokeOption) FuncWithListParamResultOutput {
return pulumi.ToOutputWithContext(context.Background(), args).
ApplyT(func(v interface{}) (FuncWithListParamResult, error) {
@ -42,14 +40,14 @@ func FuncWithListParamOutput(ctx *pulumi.Context, args FuncWithListParamOutputAr
type FuncWithListParamOutputArgs struct {
A pulumi.StringArrayInput `pulumi:"a"`
B pulumi.StringPtrInput `pulumi:"b"`
B pulumi.StringPtrInput `pulumi:"b"`
}
func (FuncWithListParamOutputArgs) ElementType() reflect.Type {
return reflect.TypeOf((*FuncWithListParamArgs)(nil)).Elem()
}
type FuncWithListParamResultOutput struct { *pulumi.OutputState }
type FuncWithListParamResultOutput struct{ *pulumi.OutputState }
func (FuncWithListParamResultOutput) ElementType() reflect.Type {
return reflect.TypeOf((*FuncWithListParamResult)(nil)).Elem()
@ -64,11 +62,9 @@ func (o FuncWithListParamResultOutput) ToFuncWithListParamResultOutputWithContex
}
func (o FuncWithListParamResultOutput) R() pulumi.StringOutput {
return o.ApplyT(func (v FuncWithListParamResult) string { return v.R }).(pulumi.StringOutput)
return o.ApplyT(func(v FuncWithListParamResult) string { return v.R }).(pulumi.StringOutput)
}
func init() {
pulumi.RegisterOutputType(FuncWithListParamResultOutput{})
pulumi.RegisterOutputType(FuncWithListParamResultOutput{})
}

View file

@ -1,16 +1,16 @@
// *** WARNING: this file was generated by tool. ***
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package codegentest
package mypkg
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
// Use this function to access the current configuration of the native Azure provider.
// Failing example taken from azure-native. Original doc: Use this function to access the current configuration of the native Azure provider.
func GetClientConfig(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*GetClientConfigResult, error) {
var rv GetClientConfigResult
err := ctx.Invoke("azure-native:codegentest:getClientConfig", nil, &rv, opts...)
err := ctx.Invoke("mypkg::getClientConfig", nil, &rv, opts...)
if err != nil {
return nil, err
}
@ -28,4 +28,3 @@ type GetClientConfigResult struct {
// Azure Tenant ID
TenantId string `pulumi:"tenantId"`
}

View file

@ -1,7 +1,7 @@
// *** WARNING: this file was generated by tool. ***
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package codegentest
package mypkg
import (
"context"
@ -10,11 +10,11 @@ import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
// A list of SSIS object metadata.
// Another failing example. A list of SSIS object metadata.
// API Version: 2018-06-01.
func GetIntegrationRuntimeObjectMetadatum(ctx *pulumi.Context, args *GetIntegrationRuntimeObjectMetadatumArgs, opts ...pulumi.InvokeOption) (*GetIntegrationRuntimeObjectMetadatumResult, error) {
var rv GetIntegrationRuntimeObjectMetadatumResult
err := ctx.Invoke("azure-native:codegentest:getIntegrationRuntimeObjectMetadatum", args, &rv, opts...)
err := ctx.Invoke("mypkg::getIntegrationRuntimeObjectMetadatum", args, &rv, opts...)
if err != nil {
return nil, err
}
@ -32,7 +32,6 @@ type GetIntegrationRuntimeObjectMetadatumArgs struct {
ResourceGroupName string `pulumi:"resourceGroupName"`
}
// A list of SSIS object metadata.
type GetIntegrationRuntimeObjectMetadatumResult struct {
// The link to the next page of results, if any remaining results exist.
@ -41,7 +40,6 @@ type GetIntegrationRuntimeObjectMetadatumResult struct {
Value []interface{} `pulumi:"value"`
}
func GetIntegrationRuntimeObjectMetadatumOutput(ctx *pulumi.Context, args GetIntegrationRuntimeObjectMetadatumOutputArgs, opts ...pulumi.InvokeOption) GetIntegrationRuntimeObjectMetadatumResultOutput {
return pulumi.ToOutputWithContext(context.Background(), args).
ApplyT(func(v interface{}) (GetIntegrationRuntimeObjectMetadatumResult, error) {
@ -67,7 +65,7 @@ func (GetIntegrationRuntimeObjectMetadatumOutputArgs) ElementType() reflect.Type
}
// A list of SSIS object metadata.
type GetIntegrationRuntimeObjectMetadatumResultOutput struct { *pulumi.OutputState }
type GetIntegrationRuntimeObjectMetadatumResultOutput struct{ *pulumi.OutputState }
func (GetIntegrationRuntimeObjectMetadatumResultOutput) ElementType() reflect.Type {
return reflect.TypeOf((*GetIntegrationRuntimeObjectMetadatumResult)(nil)).Elem()
@ -83,16 +81,14 @@ func (o GetIntegrationRuntimeObjectMetadatumResultOutput) ToGetIntegrationRuntim
// The link to the next page of results, if any remaining results exist.
func (o GetIntegrationRuntimeObjectMetadatumResultOutput) NextLink() pulumi.StringPtrOutput {
return o.ApplyT(func (v GetIntegrationRuntimeObjectMetadatumResult) *string { return v.NextLink }).(pulumi.StringPtrOutput)
return o.ApplyT(func(v GetIntegrationRuntimeObjectMetadatumResult) *string { return v.NextLink }).(pulumi.StringPtrOutput)
}
// List of SSIS object metadata.
func (o GetIntegrationRuntimeObjectMetadatumResultOutput) Value() pulumi.ArrayOutput {
return o.ApplyT(func (v GetIntegrationRuntimeObjectMetadatumResult) []interface{} { return v.Value }).(pulumi.ArrayOutput)
return o.ApplyT(func(v GetIntegrationRuntimeObjectMetadatumResult) []interface{} { return v.Value }).(pulumi.ArrayOutput)
}
func init() {
pulumi.RegisterOutputType(GetIntegrationRuntimeObjectMetadatumResultOutput{})
pulumi.RegisterOutputType(GetIntegrationRuntimeObjectMetadatumResultOutput{})
}

View file

@ -0,0 +1,40 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package mypkg
import (
"fmt"
"github.com/blang/semver"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
type pkg struct {
version semver.Version
}
func (p *pkg) Version() semver.Version {
return p.version
}
func (p *pkg) ConstructProvider(ctx *pulumi.Context, name, typ, urn string) (pulumi.ProviderResource, error) {
if typ != "pulumi:providers:mypkg" {
return nil, fmt.Errorf("unknown provider type: %s", typ)
}
r := &Provider{}
err := ctx.RegisterResource(typ, name, nil, r, pulumi.URN_(urn))
return r, err
}
func init() {
version, err := PkgVersion()
if err != nil {
fmt.Printf("failed to determine package version. defaulting to v1: %v\n", err)
}
pulumi.RegisterResourcePackage(
"mypkg",
&pkg{version},
)
}

View file

@ -1,7 +1,7 @@
// *** WARNING: this file was generated by tool. ***
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package codegentest
package mypkg
import (
"context"
@ -14,7 +14,7 @@ import (
// API Version: 2021-02-01.
func ListStorageAccountKeys(ctx *pulumi.Context, args *ListStorageAccountKeysArgs, opts ...pulumi.InvokeOption) (*ListStorageAccountKeysResult, error) {
var rv ListStorageAccountKeysResult
err := ctx.Invoke("azure-native:codegentest:listStorageAccountKeys", args, &rv, opts...)
err := ctx.Invoke("mypkg::listStorageAccountKeys", args, &rv, opts...)
if err != nil {
return nil, err
}
@ -30,14 +30,12 @@ type ListStorageAccountKeysArgs struct {
ResourceGroupName string `pulumi:"resourceGroupName"`
}
// The response from the ListKeys operation.
type ListStorageAccountKeysResult struct {
// Gets the list of storage account keys and their properties for the specified storage account.
Keys []StorageAccountKeyResponse `pulumi:"keys"`
}
func ListStorageAccountKeysOutput(ctx *pulumi.Context, args ListStorageAccountKeysOutputArgs, opts ...pulumi.InvokeOption) ListStorageAccountKeysResultOutput {
return pulumi.ToOutputWithContext(context.Background(), args).
ApplyT(func(v interface{}) (ListStorageAccountKeysResult, error) {
@ -61,7 +59,7 @@ func (ListStorageAccountKeysOutputArgs) ElementType() reflect.Type {
}
// The response from the ListKeys operation.
type ListStorageAccountKeysResultOutput struct { *pulumi.OutputState }
type ListStorageAccountKeysResultOutput struct{ *pulumi.OutputState }
func (ListStorageAccountKeysResultOutput) ElementType() reflect.Type {
return reflect.TypeOf((*ListStorageAccountKeysResult)(nil)).Elem()
@ -77,11 +75,9 @@ func (o ListStorageAccountKeysResultOutput) ToListStorageAccountKeysResultOutput
// Gets the list of storage account keys and their properties for the specified storage account.
func (o ListStorageAccountKeysResultOutput) Keys() StorageAccountKeyResponseArrayOutput {
return o.ApplyT(func (v ListStorageAccountKeysResult) []StorageAccountKeyResponse { return v.Keys }).(StorageAccountKeyResponseArrayOutput)
return o.ApplyT(func(v ListStorageAccountKeysResult) []StorageAccountKeyResponse { return v.Keys }).(StorageAccountKeyResponseArrayOutput)
}
func init() {
pulumi.RegisterOutputType(ListStorageAccountKeysResultOutput{})
pulumi.RegisterOutputType(ListStorageAccountKeysResultOutput{})
}

View file

@ -0,0 +1,78 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package mypkg
import (
"context"
"reflect"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
type Provider struct {
pulumi.ProviderResourceState
}
// NewProvider registers a new resource with the given unique name, arguments, and options.
func NewProvider(ctx *pulumi.Context,
name string, args *ProviderArgs, opts ...pulumi.ResourceOption) (*Provider, error) {
if args == nil {
args = &ProviderArgs{}
}
var resource Provider
err := ctx.RegisterResource("pulumi:providers:mypkg", name, args, &resource, opts...)
if err != nil {
return nil, err
}
return &resource, nil
}
type providerArgs struct {
}
// The set of arguments for constructing a Provider resource.
type ProviderArgs struct {
}
func (ProviderArgs) ElementType() reflect.Type {
return reflect.TypeOf((*providerArgs)(nil)).Elem()
}
type ProviderInput interface {
pulumi.Input
ToProviderOutput() ProviderOutput
ToProviderOutputWithContext(ctx context.Context) ProviderOutput
}
func (*Provider) ElementType() reflect.Type {
return reflect.TypeOf((*Provider)(nil))
}
func (i *Provider) ToProviderOutput() ProviderOutput {
return i.ToProviderOutputWithContext(context.Background())
}
func (i *Provider) ToProviderOutputWithContext(ctx context.Context) ProviderOutput {
return pulumi.ToOutputWithContext(ctx, i).(ProviderOutput)
}
type ProviderOutput struct{ *pulumi.OutputState }
func (ProviderOutput) ElementType() reflect.Type {
return reflect.TypeOf((*Provider)(nil))
}
func (o ProviderOutput) ToProviderOutput() ProviderOutput {
return o
}
func (o ProviderOutput) ToProviderOutputWithContext(ctx context.Context) ProviderOutput {
return o
}
func init() {
pulumi.RegisterOutputType(ProviderOutput{})
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,77 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package mypkg
import (
"fmt"
"os"
"reflect"
"regexp"
"strconv"
"strings"
"github.com/blang/semver"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
type envParser func(v string) interface{}
func parseEnvBool(v string) interface{} {
b, err := strconv.ParseBool(v)
if err != nil {
return nil
}
return b
}
func parseEnvInt(v string) interface{} {
i, err := strconv.ParseInt(v, 0, 0)
if err != nil {
return nil
}
return int(i)
}
func parseEnvFloat(v string) interface{} {
f, err := strconv.ParseFloat(v, 64)
if err != nil {
return nil
}
return f
}
func parseEnvStringArray(v string) interface{} {
var result pulumi.StringArray
for _, item := range strings.Split(v, ";") {
result = append(result, pulumi.String(item))
}
return result
}
func getEnvOrDefault(def interface{}, parser envParser, vars ...string) interface{} {
for _, v := range vars {
if value := os.Getenv(v); value != "" {
if parser != nil {
return parser(value)
}
return value
}
}
return def
}
// PkgVersion uses reflection to determine the version of the current package.
func PkgVersion() (semver.Version, error) {
type sentinal struct{}
pkgPath := reflect.TypeOf(sentinal{}).PkgPath()
re := regexp.MustCompile("^.*/pulumi-mypkg/sdk(/v\\d+)?")
if match := re.FindStringSubmatch(pkgPath); match != nil {
vStr := match[1]
if len(vStr) == 0 { // If the version capture group was empty, default to v1.
return semver.Version{Major: 1}, nil
}
return semver.MustParse(fmt.Sprintf("%s.0.0", vStr[2:])), nil
}
return semver.Version{}, fmt.Errorf("failed to determine the package version from %s", pkgPath)
}

View file

@ -1,77 +0,0 @@
{
"name": "py_tests",
"version": "0.0.1",
"functions": {
"azure-native:codegentest:listStorageAccountKeys": {
"description": "The response from the ListKeys operation.\nAPI Version: 2021-02-01.",
"inputs": {
"properties": {
"accountName": {
"type": "string",
"description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only."
},
"expand": {
"type": "string",
"description": "Specifies type of the key to be listed. Possible value is kerb."
},
"resourceGroupName": {
"type": "string",
"description": "The name of the resource group within the user's subscription. The name is case insensitive."
}
},
"type": "object",
"required": [
"accountName",
"resourceGroupName"
]
},
"outputs": {
"description": "The response from the ListKeys operation.",
"properties": {
"keys": {
"type": "array",
"items": {
"type": "object",
"$ref": "#/types/azure-native:codegentest:StorageAccountKeyResponse"
},
"description": "Gets the list of storage account keys and their properties for the specified storage account."
}
},
"type": "object",
"required": [
"keys"
]
}
}
},
"types": {
"azure-native:codegentest:StorageAccountKeyResponse": {
"description": "An access key for the storage account.",
"properties": {
"creationTime": {
"type": "string",
"description": "Creation time of the key, in round trip date format."
},
"keyName": {
"type": "string",
"description": "Name of the key."
},
"permissions": {
"type": "string",
"description": "Permissions for the key -- read-only or full permissions."
},
"value": {
"type": "string",
"description": "Base 64-encoded value of the key."
}
},
"type": "object",
"required": [
"creationTime",
"keyName",
"permissions",
"value"
]
}
}
}

View file

@ -0,0 +1,21 @@
{
"emittedFiles": [
"README.md",
"funcWithAllOptionalInputs.ts",
"funcWithConstInput.ts",
"funcWithDefaultValue.ts",
"funcWithDictParam.ts",
"funcWithListParam.ts",
"getClientConfig.ts",
"getIntegrationRuntimeObjectMetadatum.ts",
"index.ts",
"listStorageAccountKeys.ts",
"package.json",
"provider.ts",
"tsconfig.json",
"types/index.ts",
"types/input.ts",
"types/output.ts",
"utilities.ts"
]
}

View file

@ -0,0 +1,39 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "./types";
import * as utilities from "./utilities";
/**
* Check codegen of functions with all optional inputs.
*/
export function funcWithAllOptionalInputs(args?: FuncWithAllOptionalInputsArgs, opts?: pulumi.InvokeOptions): Promise<FuncWithAllOptionalInputsResult> {
args = args || {};
if (!opts) {
opts = {}
}
if (!opts.version) {
opts.version = utilities.getVersion();
}
return pulumi.runtime.invoke("mypkg::funcWithAllOptionalInputs", {
"a": args.a,
"b": args.b,
}, opts);
}
export interface FuncWithAllOptionalInputsArgs {
/**
* Property A
*/
a?: string;
/**
* Property B
*/
b?: string;
}
export interface FuncWithAllOptionalInputsResult {
readonly r: string;
}

View file

@ -0,0 +1,27 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "./types";
import * as utilities from "./utilities";
/**
* Codegen demo with const inputs
*/
export function funcWithConstInput(args?: FuncWithConstInputArgs, opts?: pulumi.InvokeOptions): Promise<void> {
args = args || {};
if (!opts) {
opts = {}
}
if (!opts.version) {
opts.version = utilities.getVersion();
}
return pulumi.runtime.invoke("mypkg::funcWithConstInput", {
"plainInput": args.plainInput,
}, opts);
}
export interface FuncWithConstInputArgs {
plainInput?: "fixed";
}

View file

@ -0,0 +1,32 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "./types";
import * as utilities from "./utilities";
/**
* Check codegen of functions with default values.
*/
export function funcWithDefaultValue(args: FuncWithDefaultValueArgs, opts?: pulumi.InvokeOptions): Promise<FuncWithDefaultValueResult> {
if (!opts) {
opts = {}
}
if (!opts.version) {
opts.version = utilities.getVersion();
}
return pulumi.runtime.invoke("mypkg::funcWithDefaultValue", {
"a": args.a,
"b": args.b,
}, opts);
}
export interface FuncWithDefaultValueArgs {
a: string;
b?: string;
}
export interface FuncWithDefaultValueResult {
readonly r: string;
}

View file

@ -0,0 +1,33 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "./types";
import * as utilities from "./utilities";
/**
* Check codegen of functions with a Dict<str,str> parameter.
*/
export function funcWithDictParam(args?: FuncWithDictParamArgs, opts?: pulumi.InvokeOptions): Promise<FuncWithDictParamResult> {
args = args || {};
if (!opts) {
opts = {}
}
if (!opts.version) {
opts.version = utilities.getVersion();
}
return pulumi.runtime.invoke("mypkg::funcWithDictParam", {
"a": args.a,
"b": args.b,
}, opts);
}
export interface FuncWithDictParamArgs {
a?: {[key: string]: string};
b?: string;
}
export interface FuncWithDictParamResult {
readonly r: string;
}

View file

@ -0,0 +1,33 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "./types";
import * as utilities from "./utilities";
/**
* Check codegen of functions with a List parameter.
*/
export function funcWithListParam(args?: FuncWithListParamArgs, opts?: pulumi.InvokeOptions): Promise<FuncWithListParamResult> {
args = args || {};
if (!opts) {
opts = {}
}
if (!opts.version) {
opts.version = utilities.getVersion();
}
return pulumi.runtime.invoke("mypkg::funcWithListParam", {
"a": args.a,
"b": args.b,
}, opts);
}
export interface FuncWithListParamArgs {
a?: string[];
b?: string;
}
export interface FuncWithListParamResult {
readonly r: string;
}

View file

@ -0,0 +1,43 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "./types";
import * as utilities from "./utilities";
/**
* Failing example taken from azure-native. Original doc: Use this function to access the current configuration of the native Azure provider.
*/
export function getClientConfig(opts?: pulumi.InvokeOptions): Promise<GetClientConfigResult> {
if (!opts) {
opts = {}
}
if (!opts.version) {
opts.version = utilities.getVersion();
}
return pulumi.runtime.invoke("mypkg::getClientConfig", {
}, opts);
}
/**
* Configuration values returned by getClientConfig.
*/
export interface GetClientConfigResult {
/**
* Azure Client ID (Application Object ID).
*/
readonly clientId: string;
/**
* Azure Object ID of the current user or service principal.
*/
readonly objectId: string;
/**
* Azure Subscription ID
*/
readonly subscriptionId: string;
/**
* Azure Tenant ID
*/
readonly tenantId: string;
}

View file

@ -0,0 +1,59 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "./types";
import * as utilities from "./utilities";
/**
* Another failing example. A list of SSIS object metadata.
* API Version: 2018-06-01.
*/
export function getIntegrationRuntimeObjectMetadatum(args: GetIntegrationRuntimeObjectMetadatumArgs, opts?: pulumi.InvokeOptions): Promise<GetIntegrationRuntimeObjectMetadatumResult> {
if (!opts) {
opts = {}
}
if (!opts.version) {
opts.version = utilities.getVersion();
}
return pulumi.runtime.invoke("mypkg::getIntegrationRuntimeObjectMetadatum", {
"factoryName": args.factoryName,
"integrationRuntimeName": args.integrationRuntimeName,
"metadataPath": args.metadataPath,
"resourceGroupName": args.resourceGroupName,
}, opts);
}
export interface GetIntegrationRuntimeObjectMetadatumArgs {
/**
* The factory name.
*/
factoryName: string;
/**
* The integration runtime name.
*/
integrationRuntimeName: string;
/**
* Metadata path.
*/
metadataPath?: string;
/**
* The resource group name.
*/
resourceGroupName: string;
}
/**
* A list of SSIS object metadata.
*/
export interface GetIntegrationRuntimeObjectMetadatumResult {
/**
* The link to the next page of results, if any remaining results exist.
*/
readonly nextLink?: string;
/**
* List of SSIS object metadata.
*/
readonly value?: outputs.SsisEnvironmentResponse | outputs.SsisFolderResponse | outputs.SsisPackageResponse | outputs.SsisProjectResponse[];
}

View file

@ -0,0 +1,35 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities";
// Export members:
export * from "./funcWithAllOptionalInputs";
export * from "./funcWithConstInput";
export * from "./funcWithDefaultValue";
export * from "./funcWithDictParam";
export * from "./funcWithListParam";
export * from "./getClientConfig";
export * from "./getIntegrationRuntimeObjectMetadatum";
export * from "./listStorageAccountKeys";
export * from "./provider";
// Export sub-modules:
import * as types from "./types";
export {
types,
};
import { Provider } from "./provider";
pulumi.runtime.registerResourcePackage("mypkg", {
version: utilities.getVersion(),
constructProvider: (name: string, type: string, urn: string): pulumi.ProviderResource => {
if (type !== "pulumi:providers:mypkg") {
throw new Error(`unknown provider type ${type}`);
}
return new Provider(name, <any>undefined, { urn });
},
});

View file

@ -0,0 +1,50 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "./types";
import * as utilities from "./utilities";
/**
* The response from the ListKeys operation.
* API Version: 2021-02-01.
*/
export function listStorageAccountKeys(args: ListStorageAccountKeysArgs, opts?: pulumi.InvokeOptions): Promise<ListStorageAccountKeysResult> {
if (!opts) {
opts = {}
}
if (!opts.version) {
opts.version = utilities.getVersion();
}
return pulumi.runtime.invoke("mypkg::listStorageAccountKeys", {
"accountName": args.accountName,
"expand": args.expand,
"resourceGroupName": args.resourceGroupName,
}, opts);
}
export interface ListStorageAccountKeysArgs {
/**
* The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.
*/
accountName: string;
/**
* Specifies type of the key to be listed. Possible value is kerb.
*/
expand?: string;
/**
* The name of the resource group within the user's subscription. The name is case insensitive.
*/
resourceGroupName: string;
}
/**
* The response from the ListKeys operation.
*/
export interface ListStorageAccountKeysResult {
/**
* Gets the list of storage account keys and their properties for the specified storage account.
*/
readonly keys: outputs.StorageAccountKeyResponse[];
}

View file

@ -0,0 +1,20 @@
{
"name": "@pulumi/mypkg",
"version": "${VERSION}",
"scripts": {
"build": "tsc"
},
"devDependencies": {
"@types/mocha": "latest",
"@types/node": "latest",
"mocha": "latest",
"ts-node": "latest",
"typescript": "^4.3.5"
},
"peerDependencies": {
"@pulumi/pulumi": "latest"
},
"pulumi": {
"resource": true
}
}

View file

@ -0,0 +1,46 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities";
export class Provider extends pulumi.ProviderResource {
/** @internal */
public static readonly __pulumiType = 'mypkg';
/**
* Returns true if the given object is an instance of Provider. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
public static isInstance(obj: any): obj is Provider {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === Provider.__pulumiType;
}
/**
* Create a Provider resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args?: ProviderArgs, opts?: pulumi.ResourceOptions) {
let inputs: pulumi.Inputs = {};
opts = opts || {};
{
}
if (!opts.version) {
opts = pulumi.mergeOptions(opts, { version: utilities.getVersion()});
}
super(Provider.__pulumiType, name, inputs, opts);
}
}
/**
* The set of arguments for constructing a Provider resource.
*/
export interface ProviderArgs {
}

View file

@ -0,0 +1,31 @@
{
"compilerOptions": {
"outDir": "bin",
"target": "es2016",
"module": "commonjs",
"moduleResolution": "node",
"declaration": true,
"sourceMap": true,
"stripInternal": true,
"experimentalDecorators": true,
"noFallthroughCasesInSwitch": true,
"forceConsistentCasingInFileNames": true,
"strict": true
},
"files": [
"funcWithAllOptionalInputs.ts",
"funcWithConstInput.ts",
"funcWithDefaultValue.ts",
"funcWithDictParam.ts",
"funcWithListParam.ts",
"getClientConfig.ts",
"getIntegrationRuntimeObjectMetadatum.ts",
"index.ts",
"listStorageAccountKeys.ts",
"provider.ts",
"types/index.ts",
"types/input.ts",
"types/output.ts",
"utilities.ts"
]
}

View file

@ -0,0 +1,11 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
// Export sub-modules:
import * as input from "./input";
import * as output from "./output";
export {
input,
output,
};

View file

@ -0,0 +1,6 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "../types";

View file

@ -0,0 +1,270 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "../types";
/**
* Ssis environment reference.
*/
export interface SsisEnvironmentReferenceResponse {
/**
* Environment folder name.
*/
environmentFolderName?: string;
/**
* Environment name.
*/
environmentName?: string;
/**
* Environment reference id.
*/
id?: number;
/**
* Reference type
*/
referenceType?: string;
}
/**
* Ssis environment.
*/
export interface SsisEnvironmentResponse {
/**
* Metadata description.
*/
description?: string;
/**
* Folder id which contains environment.
*/
folderId?: number;
/**
* Metadata id.
*/
id?: number;
/**
* Metadata name.
*/
name?: string;
/**
* The type of SSIS object metadata.
* Expected value is 'Environment'.
*/
type: "Environment";
/**
* Variable in environment
*/
variables?: outputs.SsisVariableResponse[];
}
/**
* Ssis folder.
*/
export interface SsisFolderResponse {
/**
* Metadata description.
*/
description?: string;
/**
* Metadata id.
*/
id?: number;
/**
* Metadata name.
*/
name?: string;
/**
* The type of SSIS object metadata.
* Expected value is 'Folder'.
*/
type: "Folder";
}
/**
* Ssis Package.
*/
export interface SsisPackageResponse {
/**
* Metadata description.
*/
description?: string;
/**
* Folder id which contains package.
*/
folderId?: number;
/**
* Metadata id.
*/
id?: number;
/**
* Metadata name.
*/
name?: string;
/**
* Parameters in package
*/
parameters?: outputs.SsisParameterResponse[];
/**
* Project id which contains package.
*/
projectId?: number;
/**
* Project version which contains package.
*/
projectVersion?: number;
/**
* The type of SSIS object metadata.
* Expected value is 'Package'.
*/
type: "Package";
}
/**
* Ssis parameter.
*/
export interface SsisParameterResponse {
/**
* Parameter type.
*/
dataType?: string;
/**
* Default value of parameter.
*/
defaultValue?: string;
/**
* Parameter description.
*/
description?: string;
/**
* Design default value of parameter.
*/
designDefaultValue?: string;
/**
* Parameter id.
*/
id?: number;
/**
* Parameter name.
*/
name?: string;
/**
* Whether parameter is required.
*/
required?: boolean;
/**
* Whether parameter is sensitive.
*/
sensitive?: boolean;
/**
* Default sensitive value of parameter.
*/
sensitiveDefaultValue?: string;
/**
* Parameter value set.
*/
valueSet?: boolean;
/**
* Parameter value type.
*/
valueType?: string;
/**
* Parameter reference variable.
*/
variable?: string;
}
/**
* Ssis project.
*/
export interface SsisProjectResponse {
/**
* Metadata description.
*/
description?: string;
/**
* Environment reference in project
*/
environmentRefs?: outputs.SsisEnvironmentReferenceResponse[];
/**
* Folder id which contains project.
*/
folderId?: number;
/**
* Metadata id.
*/
id?: number;
/**
* Metadata name.
*/
name?: string;
/**
* Parameters in project
*/
parameters?: outputs.SsisParameterResponse[];
/**
* The type of SSIS object metadata.
* Expected value is 'Project'.
*/
type: "Project";
/**
* Project version.
*/
version?: number;
}
/**
* Ssis variable.
*/
export interface SsisVariableResponse {
/**
* Variable type.
*/
dataType?: string;
/**
* Variable description.
*/
description?: string;
/**
* Variable id.
*/
id?: number;
/**
* Variable name.
*/
name?: string;
/**
* Whether variable is sensitive.
*/
sensitive?: boolean;
/**
* Variable sensitive value.
*/
sensitiveValue?: string;
/**
* Variable value.
*/
value?: string;
}
/**
* An access key for the storage account.
*/
export interface StorageAccountKeyResponse {
/**
* Creation time of the key, in round trip date format.
*/
creationTime: string;
/**
* Name of the key.
*/
keyName: string;
/**
* Permissions for the key -- read-only or full permissions.
*/
permissions: string;
/**
* Base 64-encoded value of the key.
*/
value: string;
}

View file

@ -0,0 +1,49 @@
// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
export function getEnv(...vars: string[]): string | undefined {
for (const v of vars) {
const value = process.env[v];
if (value) {
return value;
}
}
return undefined;
}
export function getEnvBoolean(...vars: string[]): boolean | undefined {
const s = getEnv(...vars);
if (s !== undefined) {
// NOTE: these values are taken from https://golang.org/src/strconv/atob.go?s=351:391#L1, which is what
// Terraform uses internally when parsing boolean values.
if (["1", "t", "T", "true", "TRUE", "True"].find(v => v === s) !== undefined) {
return true;
}
if (["0", "f", "F", "false", "FALSE", "False"].find(v => v === s) !== undefined) {
return false;
}
}
return undefined;
}
export function getEnvNumber(...vars: string[]): number | undefined {
const s = getEnv(...vars);
if (s !== undefined) {
const f = parseFloat(s);
if (!isNaN(f)) {
return f;
}
}
return undefined;
}
export function getVersion(): string {
let version = require('./package.json').version;
// Node allows for the version to be prefixed by a "v", while semver doesn't.
// If there is a v, strip it off.
if (version.indexOf('v') === 0) {
version = version.slice(1);
}
return version;
}

View file

@ -1,3 +0,0 @@
__pycache__
venv
*.egg-info

View file

@ -1,13 +0,0 @@
# Copyright 2016-2021, Pulumi Corporation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

View file

@ -1,84 +0,0 @@
# Copyright 2016-2021, Pulumi Corporation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# These are copied from pulumi-azure-native or hand-written to
# compensate for an incomplete codegen test setup, we could fix the
# test to code-gen this from schema.
from collections import namedtuple
import pulumi
@pulumi.output_type
class StorageAccountKeyResponse(dict):
"""
An access key for the storage account.
"""
def __init__(__self__, *,
creation_time: str,
key_name: str,
permissions: str,
value: str):
"""
An access key for the storage account.
:param str creation_time: Creation time of the key, in round trip date format.
:param str key_name: Name of the key.
:param str permissions: Permissions for the key -- read-only or full permissions.
:param str value: Base 64-encoded value of the key.
"""
pulumi.set(__self__, "creation_time", creation_time)
pulumi.set(__self__, "key_name", key_name)
pulumi.set(__self__, "permissions", permissions)
pulumi.set(__self__, "value", value)
@property
@pulumi.getter(name="creationTime")
def creation_time(self) -> str:
"""
Creation time of the key, in round trip date format.
"""
return pulumi.get(self, "creation_time")
@property
@pulumi.getter(name="keyName")
def key_name(self) -> str:
"""
Name of the key.
"""
return pulumi.get(self, "key_name")
@property
@pulumi.getter
def permissions(self) -> str:
"""
Permissions for the key -- read-only or full permissions.
"""
return pulumi.get(self, "permissions")
@property
@pulumi.getter
def value(self) -> str:
"""
Base 64-encoded value of the key.
"""
return pulumi.get(self, "value")
CodegenTest = namedtuple('CodegenTest', ['outputs'])
Outputs = namedtuple('Outputs', ['StorageAccountKeyResponse'])
outputs = Outputs(StorageAccountKeyResponse)
codegentest = CodegenTest(outputs)

View file

@ -1,21 +0,0 @@
# Copyright 2016-2021, Pulumi Corporation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from setuptools import setup
setup(
name='py_tests',
version='1.0.0'
)

View file

@ -18,10 +18,7 @@ import pytest
import pulumi
from . import funcWithAllOptionalInputs, funcWithDefaultValue, funcWithDictParam, funcWithListParam, \
getIntegrationRuntimeObjectMetadatum, listStorageAccountKeys
import pulumi_py_tests
from pulumi_mypkg import *
@pytest.fixture
@ -37,21 +34,21 @@ def my_mocks():
class MyMocks(pulumi.runtime.Mocks):
def call(self, args):
if args.token in ['madeup-package:codegentest:funcWithAllOptionalInputs',
'madeup-package:codegentest:funcWithDefaultValue']:
if args.token in ['mypkg::funcWithAllOptionalInputs',
'mypkg::funcWithDefaultValue']:
a = args.args.get('a', None)
b = args.args.get('b', None)
return {'r': f'a={a} b={b}'}
if args.token in ['madeup-package:codegentest:funcWithDictParam',
'madeup-package:codegentest:funcWithListParam']:
if args.token in ['mypkg::funcWithDictParam',
'mypkg::funcWithListParam']:
return {'r': jstr(args.args)}
if args.token == 'azure-native:codegentest:getIntegrationRuntimeObjectMetadatum':
if args.token == 'mypkg::getIntegrationRuntimeObjectMetadatum':
return {'nextLink': 'my-next-link',
'value': [args.args]}
if args.token == 'azure-native:codegentest:listStorageAccountKeys':
if args.token == 'mypkg::listStorageAccountKeys':
return {'keys': [
dict(creationTime='my-creation-time',
keyName='my-key-name',
@ -59,7 +56,7 @@ class MyMocks(pulumi.runtime.Mocks):
value=jstr(args.args))
]}
return {}
raise Exception(f'Unhandled args.token={args.token}')
def new_resource(self, args):
return ['', {}]
@ -96,8 +93,7 @@ def assert_function_matches_table(fn, table):
@pulumi.runtime.test
def test_func_with_all_optional_inputs(my_mocks):
return assert_function_matches_table(
funcWithAllOptionalInputs.func_with_all_optional_inputs_output,
return assert_function_matches_table(func_with_all_optional_inputs_output,
[
({}, 'a=None b=None', r),
({'a': out('my-a')}, 'a=my-a b=None', r),
@ -112,8 +108,7 @@ def test_func_with_all_optional_inputs(my_mocks):
def test_func_with_default_value(my_mocks):
# TODO defaults from schema not recognized
# https://github.com/pulumi/pulumi/issues/7815
return assert_function_matches_table(
funcWithDefaultValue.func_with_default_value_output,
return assert_function_matches_table(func_with_default_value_output,
[
({}, 'a=None b=None', r),
({'a': out('my-a')}, 'a=my-a b=None', r),
@ -124,8 +119,7 @@ def test_func_with_default_value(my_mocks):
@pulumi.runtime.test
def test_func_with_dict_param(my_mocks):
d = {'key-a': 'value-a', 'key-b': 'value-b'}
return assert_function_matches_table(
funcWithDictParam.func_with_dict_param_output,
return assert_function_matches_table(func_with_dict_param_output,
[
({}, '{}', r),
({'a': out(d)}, jstr({'a': d}), r),
@ -136,8 +130,7 @@ def test_func_with_dict_param(my_mocks):
@pulumi.runtime.test
def test_func_with_list_param(my_mocks):
l = ['a', 'b', 'c']
return assert_function_matches_table(
funcWithListParam.func_with_list_param_output,
return assert_function_matches_table(func_with_list_param_output,
[
({}, '{}', r),
({'a': out(l)}, jstr({'a': l}), r),
@ -147,8 +140,7 @@ def test_func_with_list_param(my_mocks):
@pulumi.runtime.test
def test_get_integration_runtime_object_metadatum(my_mocks):
return assert_function_matches_table(
getIntegrationRuntimeObjectMetadatum.get_integration_runtime_object_metadatum_output,
return assert_function_matches_table(get_integration_runtime_object_metadatum_output,
[(
{
'factory_name': out('my-factory-name'),
@ -173,8 +165,7 @@ def test_get_integration_runtime_object_metadatum(my_mocks):
@pulumi.runtime.test
def test_list_storage_accounts(my_mocks):
return assert_function_matches_table(
listStorageAccountKeys.list_storage_account_keys_output,
return assert_function_matches_table(list_storage_account_keys_output,
[(
{
'account_name': out('my-account-name'),

View file

@ -0,0 +1,19 @@
{
"emittedFiles": [
"pulumi_mypkg/README.md",
"pulumi_mypkg/__init__.py",
"pulumi_mypkg/_utilities.py",
"pulumi_mypkg/func_with_all_optional_inputs.py",
"pulumi_mypkg/func_with_const_input.py",
"pulumi_mypkg/func_with_default_value.py",
"pulumi_mypkg/func_with_dict_param.py",
"pulumi_mypkg/func_with_list_param.py",
"pulumi_mypkg/get_client_config.py",
"pulumi_mypkg/get_integration_runtime_object_metadatum.py",
"pulumi_mypkg/list_storage_account_keys.py",
"pulumi_mypkg/outputs.py",
"pulumi_mypkg/provider.py",
"pulumi_mypkg/py.typed",
"setup.py"
]
}

View file

@ -0,0 +1,32 @@
# coding=utf-8
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
from . import _utilities
import typing
# Export this package's modules as members:
from .func_with_all_optional_inputs import *
from .func_with_const_input import *
from .func_with_default_value import *
from .func_with_dict_param import *
from .func_with_list_param import *
from .get_client_config import *
from .get_integration_runtime_object_metadatum import *
from .list_storage_account_keys import *
from .provider import *
from . import outputs
_utilities.register(
resource_modules="""
[]
""",
resource_packages="""
[
{
"pkg": "mypkg",
"token": "pulumi:providers:mypkg",
"fqn": "pulumi_mypkg",
"class": "Provider"
}
]
"""
)

View file

@ -1,5 +1,5 @@
# coding=utf-8
# *** WARNING: this file was generated by gen_test.go. ***
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

View file

@ -1,5 +1,5 @@
# coding=utf-8
# *** WARNING: this file was generated by . ***
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
@ -54,7 +54,7 @@ def func_with_all_optional_inputs(a: Optional[str] = None,
opts = pulumi.InvokeOptions()
if opts.version is None:
opts.version = _utilities.get_version()
__ret__ = pulumi.runtime.invoke('madeup-package:codegentest:funcWithAllOptionalInputs', __args__, opts=opts, typ=FuncWithAllOptionalInputsResult).value
__ret__ = pulumi.runtime.invoke('mypkg::funcWithAllOptionalInputs', __args__, opts=opts, typ=FuncWithAllOptionalInputsResult).value
return AwaitableFuncWithAllOptionalInputsResult(
r=__ret__.r)

View file

@ -1,5 +1,5 @@
# coding=utf-8
# *** WARNING: this file was generated by . ***
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
@ -23,5 +23,5 @@ def func_with_const_input(plain_input: Optional[str] = None,
opts = pulumi.InvokeOptions()
if opts.version is None:
opts.version = _utilities.get_version()
__ret__ = pulumi.runtime.invoke('madeup-package:codegentest:funcWithConstInput', __args__, opts=opts).value
__ret__ = pulumi.runtime.invoke('mypkg::funcWithConstInput', __args__, opts=opts).value

View file

@ -1,5 +1,5 @@
# coding=utf-8
# *** WARNING: this file was generated by . ***
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
@ -50,7 +50,7 @@ def func_with_default_value(a: Optional[str] = None,
opts = pulumi.InvokeOptions()
if opts.version is None:
opts.version = _utilities.get_version()
__ret__ = pulumi.runtime.invoke('madeup-package:codegentest:funcWithDefaultValue', __args__, opts=opts, typ=FuncWithDefaultValueResult).value
__ret__ = pulumi.runtime.invoke('mypkg::funcWithDefaultValue', __args__, opts=opts, typ=FuncWithDefaultValueResult).value
return AwaitableFuncWithDefaultValueResult(
r=__ret__.r)

View file

@ -1,5 +1,5 @@
# coding=utf-8
# *** WARNING: this file was generated by . ***
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
@ -50,7 +50,7 @@ def func_with_dict_param(a: Optional[Mapping[str, str]] = None,
opts = pulumi.InvokeOptions()
if opts.version is None:
opts.version = _utilities.get_version()
__ret__ = pulumi.runtime.invoke('madeup-package:codegentest:funcWithDictParam', __args__, opts=opts, typ=FuncWithDictParamResult).value
__ret__ = pulumi.runtime.invoke('mypkg::funcWithDictParam', __args__, opts=opts, typ=FuncWithDictParamResult).value
return AwaitableFuncWithDictParamResult(
r=__ret__.r)

View file

@ -1,5 +1,5 @@
# coding=utf-8
# *** WARNING: this file was generated by . ***
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
@ -50,7 +50,7 @@ def func_with_list_param(a: Optional[Sequence[str]] = None,
opts = pulumi.InvokeOptions()
if opts.version is None:
opts.version = _utilities.get_version()
__ret__ = pulumi.runtime.invoke('madeup-package:codegentest:funcWithListParam', __args__, opts=opts, typ=FuncWithListParamResult).value
__ret__ = pulumi.runtime.invoke('mypkg::funcWithListParam', __args__, opts=opts, typ=FuncWithListParamResult).value
return AwaitableFuncWithListParamResult(
r=__ret__.r)

View file

@ -1,5 +1,5 @@
# coding=utf-8
# *** WARNING: this file was generated by . ***
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
@ -80,14 +80,14 @@ class AwaitableGetClientConfigResult(GetClientConfigResult):
def get_client_config(opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetClientConfigResult:
"""
Use this function to access the current configuration of the native Azure provider.
Failing example taken from azure-native. Original doc: Use this function to access the current configuration of the native Azure provider.
"""
__args__ = dict()
if opts is None:
opts = pulumi.InvokeOptions()
if opts.version is None:
opts.version = _utilities.get_version()
__ret__ = pulumi.runtime.invoke('azure-native:codegentest:getClientConfig', __args__, opts=opts, typ=GetClientConfigResult).value
__ret__ = pulumi.runtime.invoke('mypkg::getClientConfig', __args__, opts=opts, typ=GetClientConfigResult).value
return AwaitableGetClientConfigResult(
client_id=__ret__.client_id,

View file

@ -1,5 +1,5 @@
# coding=utf-8
# *** WARNING: this file was generated by . ***
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
@ -7,7 +7,7 @@ import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from . import _utilities
import pulumi_py_tests
from . import outputs
__all__ = [
'GetIntegrationRuntimeObjectMetadatumResult',
@ -62,7 +62,7 @@ def get_integration_runtime_object_metadatum(factory_name: Optional[str] = None,
resource_group_name: Optional[str] = None,
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetIntegrationRuntimeObjectMetadatumResult:
"""
A list of SSIS object metadata.
Another failing example. A list of SSIS object metadata.
API Version: 2018-06-01.
@ -80,7 +80,7 @@ def get_integration_runtime_object_metadatum(factory_name: Optional[str] = None,
opts = pulumi.InvokeOptions()
if opts.version is None:
opts.version = _utilities.get_version()
__ret__ = pulumi.runtime.invoke('azure-native:codegentest:getIntegrationRuntimeObjectMetadatum', __args__, opts=opts, typ=GetIntegrationRuntimeObjectMetadatumResult).value
__ret__ = pulumi.runtime.invoke('mypkg::getIntegrationRuntimeObjectMetadatum', __args__, opts=opts, typ=GetIntegrationRuntimeObjectMetadatumResult).value
return AwaitableGetIntegrationRuntimeObjectMetadatumResult(
next_link=__ret__.next_link,
@ -94,7 +94,7 @@ def get_integration_runtime_object_metadatum_output(factory_name: Optional[pulum
resource_group_name: Optional[pulumi.Input[str]] = None,
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetIntegrationRuntimeObjectMetadatumResult]:
"""
A list of SSIS object metadata.
Another failing example. A list of SSIS object metadata.
API Version: 2018-06-01.

View file

@ -1,5 +1,5 @@
# coding=utf-8
# *** WARNING: this file was generated by . ***
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
@ -7,7 +7,7 @@ import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from . import _utilities
import pulumi_py_tests
from . import outputs
__all__ = [
'ListStorageAccountKeysResult',
@ -28,7 +28,7 @@ class ListStorageAccountKeysResult:
@property
@pulumi.getter
def keys(self) -> Sequence['pulumi_py_tests.codegentest.outputs.StorageAccountKeyResponse']:
def keys(self) -> Sequence['outputs.StorageAccountKeyResponse']:
"""
Gets the list of storage account keys and their properties for the specified storage account.
"""
@ -65,7 +65,7 @@ def list_storage_account_keys(account_name: Optional[str] = None,
opts = pulumi.InvokeOptions()
if opts.version is None:
opts.version = _utilities.get_version()
__ret__ = pulumi.runtime.invoke('azure-native:codegentest:listStorageAccountKeys', __args__, opts=opts, typ=ListStorageAccountKeysResult).value
__ret__ = pulumi.runtime.invoke('mypkg::listStorageAccountKeys', __args__, opts=opts, typ=ListStorageAccountKeysResult).value
return AwaitableListStorageAccountKeysResult(
keys=__ret__.keys)

View file

@ -0,0 +1,746 @@
# coding=utf-8
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from . import _utilities
from . import outputs
__all__ = [
'SsisEnvironmentReferenceResponse',
'SsisEnvironmentResponse',
'SsisFolderResponse',
'SsisPackageResponse',
'SsisParameterResponse',
'SsisProjectResponse',
'SsisVariableResponse',
'StorageAccountKeyResponse',
]
@pulumi.output_type
class SsisEnvironmentReferenceResponse(dict):
"""
Ssis environment reference.
"""
def __init__(__self__, *,
environment_folder_name: Optional[str] = None,
environment_name: Optional[str] = None,
id: Optional[float] = None,
reference_type: Optional[str] = None):
"""
Ssis environment reference.
:param str environment_folder_name: Environment folder name.
:param str environment_name: Environment name.
:param float id: Environment reference id.
:param str reference_type: Reference type
"""
if environment_folder_name is not None:
pulumi.set(__self__, "environment_folder_name", environment_folder_name)
if environment_name is not None:
pulumi.set(__self__, "environment_name", environment_name)
if id is not None:
pulumi.set(__self__, "id", id)
if reference_type is not None:
pulumi.set(__self__, "reference_type", reference_type)
@property
@pulumi.getter(name="environmentFolderName")
def environment_folder_name(self) -> Optional[str]:
"""
Environment folder name.
"""
return pulumi.get(self, "environment_folder_name")
@property
@pulumi.getter(name="environmentName")
def environment_name(self) -> Optional[str]:
"""
Environment name.
"""
return pulumi.get(self, "environment_name")
@property
@pulumi.getter
def id(self) -> Optional[float]:
"""
Environment reference id.
"""
return pulumi.get(self, "id")
@property
@pulumi.getter(name="referenceType")
def reference_type(self) -> Optional[str]:
"""
Reference type
"""
return pulumi.get(self, "reference_type")
@pulumi.output_type
class SsisEnvironmentResponse(dict):
"""
Ssis environment.
"""
def __init__(__self__, *,
type: str,
description: Optional[str] = None,
folder_id: Optional[float] = None,
id: Optional[float] = None,
name: Optional[str] = None,
variables: Optional[Sequence['outputs.SsisVariableResponse']] = None):
"""
Ssis environment.
:param str type: The type of SSIS object metadata.
Expected value is 'Environment'.
:param str description: Metadata description.
:param float folder_id: Folder id which contains environment.
:param float id: Metadata id.
:param str name: Metadata name.
:param Sequence['SsisVariableResponse'] variables: Variable in environment
"""
pulumi.set(__self__, "type", 'Environment')
if description is not None:
pulumi.set(__self__, "description", description)
if folder_id is not None:
pulumi.set(__self__, "folder_id", folder_id)
if id is not None:
pulumi.set(__self__, "id", id)
if name is not None:
pulumi.set(__self__, "name", name)
if variables is not None:
pulumi.set(__self__, "variables", variables)
@property
@pulumi.getter
def type(self) -> str:
"""
The type of SSIS object metadata.
Expected value is 'Environment'.
"""
return pulumi.get(self, "type")
@property
@pulumi.getter
def description(self) -> Optional[str]:
"""
Metadata description.
"""
return pulumi.get(self, "description")
@property
@pulumi.getter(name="folderId")
def folder_id(self) -> Optional[float]:
"""
Folder id which contains environment.
"""
return pulumi.get(self, "folder_id")
@property
@pulumi.getter
def id(self) -> Optional[float]:
"""
Metadata id.
"""
return pulumi.get(self, "id")
@property
@pulumi.getter
def name(self) -> Optional[str]:
"""
Metadata name.
"""
return pulumi.get(self, "name")
@property
@pulumi.getter
def variables(self) -> Optional[Sequence['outputs.SsisVariableResponse']]:
"""
Variable in environment
"""
return pulumi.get(self, "variables")
@pulumi.output_type
class SsisFolderResponse(dict):
"""
Ssis folder.
"""
def __init__(__self__, *,
type: str,
description: Optional[str] = None,
id: Optional[float] = None,
name: Optional[str] = None):
"""
Ssis folder.
:param str type: The type of SSIS object metadata.
Expected value is 'Folder'.
:param str description: Metadata description.
:param float id: Metadata id.
:param str name: Metadata name.
"""
pulumi.set(__self__, "type", 'Folder')
if description is not None:
pulumi.set(__self__, "description", description)
if id is not None:
pulumi.set(__self__, "id", id)
if name is not None:
pulumi.set(__self__, "name", name)
@property
@pulumi.getter
def type(self) -> str:
"""
The type of SSIS object metadata.
Expected value is 'Folder'.
"""
return pulumi.get(self, "type")
@property
@pulumi.getter
def description(self) -> Optional[str]:
"""
Metadata description.
"""
return pulumi.get(self, "description")
@property
@pulumi.getter
def id(self) -> Optional[float]:
"""
Metadata id.
"""
return pulumi.get(self, "id")
@property
@pulumi.getter
def name(self) -> Optional[str]:
"""
Metadata name.
"""
return pulumi.get(self, "name")
@pulumi.output_type
class SsisPackageResponse(dict):
"""
Ssis Package.
"""
def __init__(__self__, *,
type: str,
description: Optional[str] = None,
folder_id: Optional[float] = None,
id: Optional[float] = None,
name: Optional[str] = None,
parameters: Optional[Sequence['outputs.SsisParameterResponse']] = None,
project_id: Optional[float] = None,
project_version: Optional[float] = None):
"""
Ssis Package.
:param str type: The type of SSIS object metadata.
Expected value is 'Package'.
:param str description: Metadata description.
:param float folder_id: Folder id which contains package.
:param float id: Metadata id.
:param str name: Metadata name.
:param Sequence['SsisParameterResponse'] parameters: Parameters in package
:param float project_id: Project id which contains package.
:param float project_version: Project version which contains package.
"""
pulumi.set(__self__, "type", 'Package')
if description is not None:
pulumi.set(__self__, "description", description)
if folder_id is not None:
pulumi.set(__self__, "folder_id", folder_id)
if id is not None:
pulumi.set(__self__, "id", id)
if name is not None:
pulumi.set(__self__, "name", name)
if parameters is not None:
pulumi.set(__self__, "parameters", parameters)
if project_id is not None:
pulumi.set(__self__, "project_id", project_id)
if project_version is not None:
pulumi.set(__self__, "project_version", project_version)
@property
@pulumi.getter
def type(self) -> str:
"""
The type of SSIS object metadata.
Expected value is 'Package'.
"""
return pulumi.get(self, "type")
@property
@pulumi.getter
def description(self) -> Optional[str]:
"""
Metadata description.
"""
return pulumi.get(self, "description")
@property
@pulumi.getter(name="folderId")
def folder_id(self) -> Optional[float]:
"""
Folder id which contains package.
"""
return pulumi.get(self, "folder_id")
@property
@pulumi.getter
def id(self) -> Optional[float]:
"""
Metadata id.
"""
return pulumi.get(self, "id")
@property
@pulumi.getter
def name(self) -> Optional[str]:
"""
Metadata name.
"""
return pulumi.get(self, "name")
@property
@pulumi.getter
def parameters(self) -> Optional[Sequence['outputs.SsisParameterResponse']]:
"""
Parameters in package
"""
return pulumi.get(self, "parameters")
@property
@pulumi.getter(name="projectId")
def project_id(self) -> Optional[float]:
"""
Project id which contains package.
"""
return pulumi.get(self, "project_id")
@property
@pulumi.getter(name="projectVersion")
def project_version(self) -> Optional[float]:
"""
Project version which contains package.
"""
return pulumi.get(self, "project_version")
@pulumi.output_type
class SsisParameterResponse(dict):
"""
Ssis parameter.
"""
def __init__(__self__, *,
data_type: Optional[str] = None,
default_value: Optional[str] = None,
description: Optional[str] = None,
design_default_value: Optional[str] = None,
id: Optional[float] = None,
name: Optional[str] = None,
required: Optional[bool] = None,
sensitive: Optional[bool] = None,
sensitive_default_value: Optional[str] = None,
value_set: Optional[bool] = None,
value_type: Optional[str] = None,
variable: Optional[str] = None):
"""
Ssis parameter.
:param str data_type: Parameter type.
:param str default_value: Default value of parameter.
:param str description: Parameter description.
:param str design_default_value: Design default value of parameter.
:param float id: Parameter id.
:param str name: Parameter name.
:param bool required: Whether parameter is required.
:param bool sensitive: Whether parameter is sensitive.
:param str sensitive_default_value: Default sensitive value of parameter.
:param bool value_set: Parameter value set.
:param str value_type: Parameter value type.
:param str variable: Parameter reference variable.
"""
if data_type is not None:
pulumi.set(__self__, "data_type", data_type)
if default_value is not None:
pulumi.set(__self__, "default_value", default_value)
if description is not None:
pulumi.set(__self__, "description", description)
if design_default_value is not None:
pulumi.set(__self__, "design_default_value", design_default_value)
if id is not None:
pulumi.set(__self__, "id", id)
if name is not None:
pulumi.set(__self__, "name", name)
if required is not None:
pulumi.set(__self__, "required", required)
if sensitive is not None:
pulumi.set(__self__, "sensitive", sensitive)
if sensitive_default_value is not None:
pulumi.set(__self__, "sensitive_default_value", sensitive_default_value)
if value_set is not None:
pulumi.set(__self__, "value_set", value_set)
if value_type is not None:
pulumi.set(__self__, "value_type", value_type)
if variable is not None:
pulumi.set(__self__, "variable", variable)
@property
@pulumi.getter(name="dataType")
def data_type(self) -> Optional[str]:
"""
Parameter type.
"""
return pulumi.get(self, "data_type")
@property
@pulumi.getter(name="defaultValue")
def default_value(self) -> Optional[str]:
"""
Default value of parameter.
"""
return pulumi.get(self, "default_value")
@property
@pulumi.getter
def description(self) -> Optional[str]:
"""
Parameter description.
"""
return pulumi.get(self, "description")
@property
@pulumi.getter(name="designDefaultValue")
def design_default_value(self) -> Optional[str]:
"""
Design default value of parameter.
"""
return pulumi.get(self, "design_default_value")
@property
@pulumi.getter
def id(self) -> Optional[float]:
"""
Parameter id.
"""
return pulumi.get(self, "id")
@property
@pulumi.getter
def name(self) -> Optional[str]:
"""
Parameter name.
"""
return pulumi.get(self, "name")
@property
@pulumi.getter
def required(self) -> Optional[bool]:
"""
Whether parameter is required.
"""
return pulumi.get(self, "required")
@property
@pulumi.getter
def sensitive(self) -> Optional[bool]:
"""
Whether parameter is sensitive.
"""
return pulumi.get(self, "sensitive")
@property
@pulumi.getter(name="sensitiveDefaultValue")
def sensitive_default_value(self) -> Optional[str]:
"""
Default sensitive value of parameter.
"""
return pulumi.get(self, "sensitive_default_value")
@property
@pulumi.getter(name="valueSet")
def value_set(self) -> Optional[bool]:
"""
Parameter value set.
"""
return pulumi.get(self, "value_set")
@property
@pulumi.getter(name="valueType")
def value_type(self) -> Optional[str]:
"""
Parameter value type.
"""
return pulumi.get(self, "value_type")
@property
@pulumi.getter
def variable(self) -> Optional[str]:
"""
Parameter reference variable.
"""
return pulumi.get(self, "variable")
@pulumi.output_type
class SsisProjectResponse(dict):
"""
Ssis project.
"""
def __init__(__self__, *,
type: str,
description: Optional[str] = None,
environment_refs: Optional[Sequence['outputs.SsisEnvironmentReferenceResponse']] = None,
folder_id: Optional[float] = None,
id: Optional[float] = None,
name: Optional[str] = None,
parameters: Optional[Sequence['outputs.SsisParameterResponse']] = None,
version: Optional[float] = None):
"""
Ssis project.
:param str type: The type of SSIS object metadata.
Expected value is 'Project'.
:param str description: Metadata description.
:param Sequence['SsisEnvironmentReferenceResponse'] environment_refs: Environment reference in project
:param float folder_id: Folder id which contains project.
:param float id: Metadata id.
:param str name: Metadata name.
:param Sequence['SsisParameterResponse'] parameters: Parameters in project
:param float version: Project version.
"""
pulumi.set(__self__, "type", 'Project')
if description is not None:
pulumi.set(__self__, "description", description)
if environment_refs is not None:
pulumi.set(__self__, "environment_refs", environment_refs)
if folder_id is not None:
pulumi.set(__self__, "folder_id", folder_id)
if id is not None:
pulumi.set(__self__, "id", id)
if name is not None:
pulumi.set(__self__, "name", name)
if parameters is not None:
pulumi.set(__self__, "parameters", parameters)
if version is not None:
pulumi.set(__self__, "version", version)
@property
@pulumi.getter
def type(self) -> str:
"""
The type of SSIS object metadata.
Expected value is 'Project'.
"""
return pulumi.get(self, "type")
@property
@pulumi.getter
def description(self) -> Optional[str]:
"""
Metadata description.
"""
return pulumi.get(self, "description")
@property
@pulumi.getter(name="environmentRefs")
def environment_refs(self) -> Optional[Sequence['outputs.SsisEnvironmentReferenceResponse']]:
"""
Environment reference in project
"""
return pulumi.get(self, "environment_refs")
@property
@pulumi.getter(name="folderId")
def folder_id(self) -> Optional[float]:
"""
Folder id which contains project.
"""
return pulumi.get(self, "folder_id")
@property
@pulumi.getter
def id(self) -> Optional[float]:
"""
Metadata id.
"""
return pulumi.get(self, "id")
@property
@pulumi.getter
def name(self) -> Optional[str]:
"""
Metadata name.
"""
return pulumi.get(self, "name")
@property
@pulumi.getter
def parameters(self) -> Optional[Sequence['outputs.SsisParameterResponse']]:
"""
Parameters in project
"""
return pulumi.get(self, "parameters")
@property
@pulumi.getter
def version(self) -> Optional[float]:
"""
Project version.
"""
return pulumi.get(self, "version")
@pulumi.output_type
class SsisVariableResponse(dict):
"""
Ssis variable.
"""
def __init__(__self__, *,
data_type: Optional[str] = None,
description: Optional[str] = None,
id: Optional[float] = None,
name: Optional[str] = None,
sensitive: Optional[bool] = None,
sensitive_value: Optional[str] = None,
value: Optional[str] = None):
"""
Ssis variable.
:param str data_type: Variable type.
:param str description: Variable description.
:param float id: Variable id.
:param str name: Variable name.
:param bool sensitive: Whether variable is sensitive.
:param str sensitive_value: Variable sensitive value.
:param str value: Variable value.
"""
if data_type is not None:
pulumi.set(__self__, "data_type", data_type)
if description is not None:
pulumi.set(__self__, "description", description)
if id is not None:
pulumi.set(__self__, "id", id)
if name is not None:
pulumi.set(__self__, "name", name)
if sensitive is not None:
pulumi.set(__self__, "sensitive", sensitive)
if sensitive_value is not None:
pulumi.set(__self__, "sensitive_value", sensitive_value)
if value is not None:
pulumi.set(__self__, "value", value)
@property
@pulumi.getter(name="dataType")
def data_type(self) -> Optional[str]:
"""
Variable type.
"""
return pulumi.get(self, "data_type")
@property
@pulumi.getter
def description(self) -> Optional[str]:
"""
Variable description.
"""
return pulumi.get(self, "description")
@property
@pulumi.getter
def id(self) -> Optional[float]:
"""
Variable id.
"""
return pulumi.get(self, "id")
@property
@pulumi.getter
def name(self) -> Optional[str]:
"""
Variable name.
"""
return pulumi.get(self, "name")
@property
@pulumi.getter
def sensitive(self) -> Optional[bool]:
"""
Whether variable is sensitive.
"""
return pulumi.get(self, "sensitive")
@property
@pulumi.getter(name="sensitiveValue")
def sensitive_value(self) -> Optional[str]:
"""
Variable sensitive value.
"""
return pulumi.get(self, "sensitive_value")
@property
@pulumi.getter
def value(self) -> Optional[str]:
"""
Variable value.
"""
return pulumi.get(self, "value")
@pulumi.output_type
class StorageAccountKeyResponse(dict):
"""
An access key for the storage account.
"""
def __init__(__self__, *,
creation_time: str,
key_name: str,
permissions: str,
value: str):
"""
An access key for the storage account.
:param str creation_time: Creation time of the key, in round trip date format.
:param str key_name: Name of the key.
:param str permissions: Permissions for the key -- read-only or full permissions.
:param str value: Base 64-encoded value of the key.
"""
pulumi.set(__self__, "creation_time", creation_time)
pulumi.set(__self__, "key_name", key_name)
pulumi.set(__self__, "permissions", permissions)
pulumi.set(__self__, "value", value)
@property
@pulumi.getter(name="creationTime")
def creation_time(self) -> str:
"""
Creation time of the key, in round trip date format.
"""
return pulumi.get(self, "creation_time")
@property
@pulumi.getter(name="keyName")
def key_name(self) -> str:
"""
Name of the key.
"""
return pulumi.get(self, "key_name")
@property
@pulumi.getter
def permissions(self) -> str:
"""
Permissions for the key -- read-only or full permissions.
"""
return pulumi.get(self, "permissions")
@property
@pulumi.getter
def value(self) -> str:
"""
Base 64-encoded value of the key.
"""
return pulumi.get(self, "value")

View file

@ -0,0 +1,73 @@
# coding=utf-8
# *** WARNING: this file was generated by test. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from . import _utilities
__all__ = ['ProviderArgs', 'Provider']
@pulumi.input_type
class ProviderArgs:
def __init__(__self__):
"""
The set of arguments for constructing a Provider resource.
"""
pass
class Provider(pulumi.ProviderResource):
@overload
def __init__(__self__,
resource_name: str,
opts: Optional[pulumi.ResourceOptions] = None,
__props__=None):
"""
Create a Mypkg resource with the given unique name, props, and options.
:param str resource_name: The name of the resource.
:param pulumi.ResourceOptions opts: Options for the resource.
"""
...
@overload
def __init__(__self__,
resource_name: str,
args: Optional[ProviderArgs] = None,
opts: Optional[pulumi.ResourceOptions] = None):
"""
Create a Mypkg resource with the given unique name, props, and options.
:param str resource_name: The name of the resource.
:param ProviderArgs args: The arguments to use to populate this resource's properties.
:param pulumi.ResourceOptions opts: Options for the resource.
"""
...
def __init__(__self__, resource_name: str, *args, **kwargs):
resource_args, opts = _utilities.get_resource_args_opts(ProviderArgs, pulumi.ResourceOptions, *args, **kwargs)
if resource_args is not None:
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
else:
__self__._internal_init(resource_name, *args, **kwargs)
def _internal_init(__self__,
resource_name: str,
opts: Optional[pulumi.ResourceOptions] = None,
__props__=None):
if opts is None:
opts = pulumi.ResourceOptions()
if not isinstance(opts, pulumi.ResourceOptions):
raise TypeError('Expected resource options to be a ResourceOptions instance')
if opts.version is None:
opts.version = _utilities.get_version()
if opts.id is None:
if __props__ is not None:
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
__props__ = ProviderArgs.__new__(ProviderArgs)
super(Provider, __self__).__init__(
'mypkg',
resource_name,
__props__,
opts)

Some files were not shown because too many files have changed in this diff Show more