diff --git a/examples/go.mod b/examples/go.mod index a2aed63c..bcaca7f5 100644 --- a/examples/go.mod +++ b/examples/go.mod @@ -2,7 +2,7 @@ module github.com/pulumi/pulumi-tailscale/examples go 1.21 -require github.com/pulumi/pulumi/pkg/v3 v3.133.0 +require github.com/pulumi/pulumi/pkg/v3 v3.136.1 require ( cloud.google.com/go v0.112.1 // indirect @@ -123,7 +123,7 @@ require ( github.com/pmezard/go-difflib v1.0.0 // indirect github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect github.com/pulumi/esc v0.10.0 // indirect - github.com/pulumi/pulumi/sdk/v3 v3.133.0 // indirect + github.com/pulumi/pulumi/sdk/v3 v3.136.1 // indirect github.com/rivo/uniseg v0.4.4 // indirect github.com/rogpeppe/go-internal v1.12.0 // indirect github.com/ryanuber/go-glob v1.0.0 // indirect diff --git a/examples/go.sum b/examples/go.sum index 3cbb21d7..408d628c 100644 --- a/examples/go.sum +++ b/examples/go.sum @@ -342,10 +342,10 @@ github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435 github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= github.com/pulumi/esc v0.10.0 h1:jzBKzkLVW0mePeanDRfqSQoCJ5yrkux0jIwAkUxpRKE= github.com/pulumi/esc v0.10.0/go.mod h1:2Bfa+FWj/xl8CKqRTWbWgDX0SOD4opdQgvYSURTGK2c= -github.com/pulumi/pulumi/pkg/v3 v3.133.0 h1:j1rd7ToLZIQc5H0427ISOXSbOIIemZ6B0MXtRhQ38Yg= -github.com/pulumi/pulumi/pkg/v3 v3.133.0/go.mod h1:JtMAnrsFIccO138WcMfPdhO0PioDukKihnZC0xTRLwo= -github.com/pulumi/pulumi/sdk/v3 v3.133.0 h1:o+7dbJZY9BVgAjOF5GYIWgjp/zpKAgWZwD4pPjUMXKQ= -github.com/pulumi/pulumi/sdk/v3 v3.133.0/go.mod h1:J5kQEX8v87aeUhk6NdQXnjCo1DbiOnOiL3Sf2DuDda8= +github.com/pulumi/pulumi/pkg/v3 v3.136.1 h1:zA8aJZ7qI0QgZkBKjjQaYHEcigK6pZfrbfG38imXzWo= +github.com/pulumi/pulumi/pkg/v3 v3.136.1/go.mod h1:Iz8QIs07AbEdrO52hEIEM5C4VBDUYFH2NdM9u2xxBxY= +github.com/pulumi/pulumi/sdk/v3 v3.136.1 h1:VJWTgdBrLvvzIkMbGq/epNEfT65P9gTvw14UF/I7hTI= +github.com/pulumi/pulumi/sdk/v3 v3.136.1/go.mod h1:PvKsX88co8XuwuPdzolMvew5lZV+4JmZfkeSjj7A6dI= github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= diff --git a/provider/cmd/pulumi-resource-tailscale/schema.json b/provider/cmd/pulumi-resource-tailscale/schema.json index f5ba1a58..6d9007e0 100644 --- a/provider/cmd/pulumi-resource-tailscale/schema.json +++ b/provider/cmd/pulumi-resource-tailscale/schema.json @@ -1583,7 +1583,7 @@ } }, "tailscale:index/getUsers:getUsers": { - "description": "The users data source describes a list of users in a tailnet\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as tailscale from \"@pulumi/tailscale\";\n\nconst all-users = tailscale.getUsers({});\n```\n```python\nimport pulumi\nimport pulumi_tailscale as tailscale\n\nall_users = tailscale.get_users()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Tailscale = Pulumi.Tailscale;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var all_users = Tailscale.GetUsers.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-tailscale/sdk/go/tailscale\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := tailscale.GetUsers(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.tailscale.TailscaleFunctions;\nimport com.pulumi.tailscale.inputs.GetUsersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var all-users = TailscaleFunctions.getUsers();\n\n }\n}\n```\n```yaml\nvariables:\n all-users:\n fn::invoke:\n Function: tailscale:getUsers\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "The users data source describes a list of users in a tailnet\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as tailscale from \"@pulumi/tailscale\";\n\nconst all-users = tailscale.getUsers({});\n```\n```python\nimport pulumi\nimport pulumi_tailscale as tailscale\n\nall_users = tailscale.get_users()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Tailscale = Pulumi.Tailscale;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var all_users = Tailscale.GetUsers.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-tailscale/sdk/go/tailscale\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := tailscale.GetUsers(ctx, \u0026tailscale.GetUsersArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.tailscale.TailscaleFunctions;\nimport com.pulumi.tailscale.inputs.GetUsersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var all-users = TailscaleFunctions.getUsers();\n\n }\n}\n```\n```yaml\nvariables:\n all-users:\n fn::invoke:\n Function: tailscale:getUsers\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getUsers.\n", "properties": { diff --git a/provider/go.mod b/provider/go.mod index a18014c5..a688fb2c 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -6,9 +6,9 @@ replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraf require ( github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0 - github.com/pulumi/providertest v0.0.14 - github.com/pulumi/pulumi-terraform-bridge/v3 v3.91.1 - github.com/pulumi/pulumi/sdk/v3 v3.133.0 + github.com/pulumi/providertest v0.1.2 + github.com/pulumi/pulumi-terraform-bridge/v3 v3.92.0 + github.com/pulumi/pulumi/sdk/v3 v3.136.1 github.com/stretchr/testify v1.9.0 github.com/tailscale/terraform-provider-tailscale v0.17.2 ) @@ -169,8 +169,8 @@ require ( github.com/pulumi/inflector v0.1.1 // indirect github.com/pulumi/pulumi-java/pkg v0.16.1 // indirect github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.8 // indirect - github.com/pulumi/pulumi-yaml v1.10.0 // indirect - github.com/pulumi/pulumi/pkg/v3 v3.133.0 // indirect + github.com/pulumi/pulumi-yaml v1.10.3 // indirect + github.com/pulumi/pulumi/pkg/v3 v3.136.1 // indirect github.com/pulumi/schema-tools v0.1.2 // indirect github.com/pulumi/terraform-diff-reader v0.0.2 // indirect github.com/rivo/uniseg v0.4.4 // indirect diff --git a/provider/go.sum b/provider/go.sum index 18005e80..69dd5261 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1925,20 +1925,20 @@ github.com/pulumi/esc v0.10.0 h1:jzBKzkLVW0mePeanDRfqSQoCJ5yrkux0jIwAkUxpRKE= github.com/pulumi/esc v0.10.0/go.mod h1:2Bfa+FWj/xl8CKqRTWbWgDX0SOD4opdQgvYSURTGK2c= github.com/pulumi/inflector v0.1.1 h1:dvlxlWtXwOJTUUtcYDvwnl6Mpg33prhK+7mzeF+SobA= github.com/pulumi/inflector v0.1.1/go.mod h1:HUFCjcPTz96YtTuUlwG3i3EZG4WlniBvR9bd+iJxCUY= -github.com/pulumi/providertest v0.0.14 h1:5QlAPAAs82jkQraHsJvq1xgVfC7xtW8sFJwv2pHgxQ8= -github.com/pulumi/providertest v0.0.14/go.mod h1:GcsqEGgSngwaNOD+kICJPIUQlnA911fGBU8HDlJvVL0= +github.com/pulumi/providertest v0.1.2 h1:9pJS9MeNkMyGwyNeHmvh8QqLgJy39Nk2/ym5u7r13ng= +github.com/pulumi/providertest v0.1.2/go.mod h1:GcsqEGgSngwaNOD+kICJPIUQlnA911fGBU8HDlJvVL0= github.com/pulumi/pulumi-java/pkg v0.16.1 h1:orHnDWFbpOERwaBLry9f+6nqPX7x0MsrIkaa5QDGAns= github.com/pulumi/pulumi-java/pkg v0.16.1/go.mod h1:QH0DihZkWYle9XFc+LJ76m4hUo+fA3RdyaM90pqOaSM= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.91.1 h1:Twh0IKS1pGHP6LHDq1oR0vbHlV52asoUCC7spEJl3Ao= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.91.1/go.mod h1:DvueDDtOIbf7W1Or4oH0o7F990ozp/ROmlm/vgLoe+g= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.92.0 h1:LOUHyMFGYkchv4Bzej7v+1W1ooaspgQG6/oZVJ+3lXY= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.92.0/go.mod h1:aI3U3eanRcyOX05No+Nk6FuJvppx4jjcQwFelHSI8yE= github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.8 h1:mav2tSitA9BPJPLLahKgepHyYsMzwaTm4cvp0dcTMYw= github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.8/go.mod h1:qUYk2c9i/yqMGNj9/bQyXpS39BxNDSXYjVN1njnq0zY= -github.com/pulumi/pulumi-yaml v1.10.0 h1:djbgMJCxJBmYMr4kOpAXH5iauxGohYjEuTLfxD3NUUI= -github.com/pulumi/pulumi-yaml v1.10.0/go.mod h1://lTvwHpgJ+WBKeMGiLrd/jinc4dl3eWV5LZ3G8iCfE= -github.com/pulumi/pulumi/pkg/v3 v3.133.0 h1:j1rd7ToLZIQc5H0427ISOXSbOIIemZ6B0MXtRhQ38Yg= -github.com/pulumi/pulumi/pkg/v3 v3.133.0/go.mod h1:JtMAnrsFIccO138WcMfPdhO0PioDukKihnZC0xTRLwo= -github.com/pulumi/pulumi/sdk/v3 v3.133.0 h1:o+7dbJZY9BVgAjOF5GYIWgjp/zpKAgWZwD4pPjUMXKQ= -github.com/pulumi/pulumi/sdk/v3 v3.133.0/go.mod h1:J5kQEX8v87aeUhk6NdQXnjCo1DbiOnOiL3Sf2DuDda8= +github.com/pulumi/pulumi-yaml v1.10.3 h1:j5cjPiE32ILmjrWnC1cfZ0MWdqCZ8fg9wlaWk7HOtM4= +github.com/pulumi/pulumi-yaml v1.10.3/go.mod h1:MFMQXkaUP5YQUKVJ6Z/aagZDl2f8hdU9oGaJfTcMf1Y= +github.com/pulumi/pulumi/pkg/v3 v3.136.1 h1:zA8aJZ7qI0QgZkBKjjQaYHEcigK6pZfrbfG38imXzWo= +github.com/pulumi/pulumi/pkg/v3 v3.136.1/go.mod h1:Iz8QIs07AbEdrO52hEIEM5C4VBDUYFH2NdM9u2xxBxY= +github.com/pulumi/pulumi/sdk/v3 v3.136.1 h1:VJWTgdBrLvvzIkMbGq/epNEfT65P9gTvw14UF/I7hTI= +github.com/pulumi/pulumi/sdk/v3 v3.136.1/go.mod h1:PvKsX88co8XuwuPdzolMvew5lZV+4JmZfkeSjj7A6dI= github.com/pulumi/schema-tools v0.1.2 h1:Fd9xvUjgck4NA+7/jSk7InqCUT4Kj940+EcnbQKpfZo= github.com/pulumi/schema-tools v0.1.2/go.mod h1:62lgj52Tzq11eqWTIaKd+EVyYAu5dEcDJxMhTjvMO/k= github.com/pulumi/terraform-diff-reader v0.0.2 h1:kTE4nEXU3/SYXESvAIem+wyHMI3abqkI3OhJ0G04LLI= diff --git a/provider/provider_program_test.go b/provider/provider_program_test.go index 34bc568c..1747aea2 100644 --- a/provider/provider_program_test.go +++ b/provider/provider_program_test.go @@ -15,7 +15,6 @@ import ( "github.com/pulumi/providertest/pulumitest" "github.com/pulumi/providertest/pulumitest/assertpreview" "github.com/pulumi/providertest/pulumitest/opttest" - "github.com/pulumi/pulumi/sdk/v3/go/auto" ) const providerName = "tailscale" @@ -29,64 +28,20 @@ var programs = []string{ func TestUpgradeCoverage(t *testing.T) { providertest.ReportUpgradeCoverage(t) } - -type UpgradeTestOpts struct { - baselineVersion string - assertFunc func(*testing.T, auto.PreviewResult) - config map[string]string -} - -func WithBaselineVersion(baselineVersion string) func(opts *UpgradeTestOpts) { - return func(opts *UpgradeTestOpts) { - opts.baselineVersion = baselineVersion - } -} - -func WithAssertFunc(assertFunc func(*testing.T, auto.PreviewResult)) func(opts *UpgradeTestOpts) { - return func(opts *UpgradeTestOpts) { - opts.assertFunc = assertFunc - } -} - -func WithConfig(config map[string]string) func(opts *UpgradeTestOpts) { - return func(opts *UpgradeTestOpts) { - opts.config = config - } -} -func testProviderUpgrade(t *testing.T, dir string, opts ...func(*UpgradeTestOpts)) { - options := &UpgradeTestOpts{} - for _, o := range opts { - o(options) - } - testProviderUpgradeWithOpts(t, dir, options.baselineVersion, options.config, options.assertFunc) -} - -func testProviderUpgradeWithOpts( - t *testing.T, dir, baselineVersion string, config map[string]string, - assertFunction func(*testing.T, auto.PreviewResult), -) { +func testProviderUpgrade(t *testing.T, dir string) { if testing.Short() { t.Skipf("Skipping in testing.Short() mode, assuming this is a CI run without credentials") } cwd, err := os.Getwd() require.NoError(t, err) - if baselineVersion == "" { - baselineVersion = defaultBaselineVersion - } test := pulumitest.NewPulumiTest(t, dir, - opttest.DownloadProviderVersion(providerName, baselineVersion), + opttest.DownloadProviderVersion(providerName, defaultBaselineVersion), opttest.LocalProviderPath(providerName, filepath.Join(cwd, "..", "bin")), ) - for k, v := range config { - test.SetConfig(k, v) - } - result := providertest.PreviewProviderUpgrade(t, test, providerName, baselineVersion, + result := providertest.PreviewProviderUpgrade(t, test, providerName, defaultBaselineVersion, optproviderupgrade.DisableAttach()) - if assertFunction != nil { - assertFunction(t, result) - } else { - assertpreview.HasNoReplacements(t, result) - } + assertpreview.HasNoReplacements(t, result) + } func testProgram(t *testing.T, dir string) { @@ -99,7 +54,7 @@ func testProgram(t *testing.T, dir string) { opttest.LocalProviderPath(providerName, filepath.Join(cwd, "..", "bin")), opttest.SkipInstall(), ) - test.Up() + test.Up(t) } func TestPrograms(t *testing.T) { diff --git a/sdk/go.mod b/sdk/go.mod index ffb2adfe..5fed7f97 100644 --- a/sdk/go.mod +++ b/sdk/go.mod @@ -4,7 +4,7 @@ go 1.21 require ( github.com/blang/semver v3.5.1+incompatible - github.com/pulumi/pulumi/sdk/v3 v3.133.0 + github.com/pulumi/pulumi/sdk/v3 v3.136.1 ) require ( diff --git a/sdk/go.sum b/sdk/go.sum index 15266336..ecce3b21 100644 --- a/sdk/go.sum +++ b/sdk/go.sum @@ -150,8 +150,8 @@ github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435 github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= github.com/pulumi/esc v0.9.1 h1:HH5eEv8sgyxSpY5a8yePyqFXzA8cvBvapfH8457+mIs= github.com/pulumi/esc v0.9.1/go.mod h1:oEJ6bOsjYlQUpjf70GiX+CXn3VBmpwFDxUTlmtUN84c= -github.com/pulumi/pulumi/sdk/v3 v3.133.0 h1:o+7dbJZY9BVgAjOF5GYIWgjp/zpKAgWZwD4pPjUMXKQ= -github.com/pulumi/pulumi/sdk/v3 v3.133.0/go.mod h1:J5kQEX8v87aeUhk6NdQXnjCo1DbiOnOiL3Sf2DuDda8= +github.com/pulumi/pulumi/sdk/v3 v3.136.1 h1:VJWTgdBrLvvzIkMbGq/epNEfT65P9gTvw14UF/I7hTI= +github.com/pulumi/pulumi/sdk/v3 v3.136.1/go.mod h1:PvKsX88co8XuwuPdzolMvew5lZV+4JmZfkeSjj7A6dI= github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= diff --git a/sdk/go/tailscale/getUsers.go b/sdk/go/tailscale/getUsers.go index b7c1f10b..fd406524 100644 --- a/sdk/go/tailscale/getUsers.go +++ b/sdk/go/tailscale/getUsers.go @@ -27,7 +27,7 @@ import ( // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := tailscale.GetUsers(ctx, nil, nil) +// _, err := tailscale.GetUsers(ctx, &tailscale.GetUsersArgs{}, nil) // if err != nil { // return err // } diff --git a/sdk/nodejs/package.json b/sdk/nodejs/package.json index 5f6eb48d..793f4317 100644 --- a/sdk/nodejs/package.json +++ b/sdk/nodejs/package.json @@ -13,7 +13,7 @@ "build": "tsc" }, "dependencies": { - "@pulumi/pulumi": "^3.42.0" + "@pulumi/pulumi": "^3.136.0" }, "devDependencies": { "@types/mime": "^2.0.0", diff --git a/sdk/python/pulumi_tailscale/_inputs.py b/sdk/python/pulumi_tailscale/_inputs.py index 67857f8c..c5425c72 100644 --- a/sdk/python/pulumi_tailscale/_inputs.py +++ b/sdk/python/pulumi_tailscale/_inputs.py @@ -4,17 +4,36 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = [ 'ContactsAccountArgs', + 'ContactsAccountArgsDict', 'ContactsSecurityArgs', + 'ContactsSecurityArgsDict', 'ContactsSupportArgs', + 'ContactsSupportArgsDict', ] +MYPY = False + +if not MYPY: + class ContactsAccountArgsDict(TypedDict): + email: pulumi.Input[str] + """ + Email address to send communications to + """ +elif False: + ContactsAccountArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class ContactsAccountArgs: def __init__(__self__, *, @@ -37,6 +56,15 @@ def email(self, value: pulumi.Input[str]): pulumi.set(self, "email", value) +if not MYPY: + class ContactsSecurityArgsDict(TypedDict): + email: pulumi.Input[str] + """ + Email address to send communications to + """ +elif False: + ContactsSecurityArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class ContactsSecurityArgs: def __init__(__self__, *, @@ -59,6 +87,15 @@ def email(self, value: pulumi.Input[str]): pulumi.set(self, "email", value) +if not MYPY: + class ContactsSupportArgsDict(TypedDict): + email: pulumi.Input[str] + """ + Email address to send communications to + """ +elif False: + ContactsSupportArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class ContactsSupportArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_tailscale/_utilities.py b/sdk/python/pulumi_tailscale/_utilities.py index d14b49ac..3ce408d5 100644 --- a/sdk/python/pulumi_tailscale/_utilities.py +++ b/sdk/python/pulumi_tailscale/_utilities.py @@ -264,7 +264,7 @@ def call_plain( output = pulumi.runtime.call(tok, props, res, typ) # Ingoring deps silently. They are typically non-empty, r.f() calls include r as a dependency. - result, known, secret, _ = _sync_await(asyncio.ensure_future(_await_output(output))) + result, known, secret, _ = _sync_await(asyncio.create_task(_await_output(output))) problem = None if not known: diff --git a/sdk/python/pulumi_tailscale/acl.py b/sdk/python/pulumi_tailscale/acl.py index d798f8de..e791bdc9 100644 --- a/sdk/python/pulumi_tailscale/acl.py +++ b/sdk/python/pulumi_tailscale/acl.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['AclArgs', 'Acl'] diff --git a/sdk/python/pulumi_tailscale/config/__init__.pyi b/sdk/python/pulumi_tailscale/config/__init__.pyi index 8cfcbc1d..eac14455 100644 --- a/sdk/python/pulumi_tailscale/config/__init__.pyi +++ b/sdk/python/pulumi_tailscale/config/__init__.pyi @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities apiKey: Optional[str] diff --git a/sdk/python/pulumi_tailscale/config/vars.py b/sdk/python/pulumi_tailscale/config/vars.py index 0bf9a503..71edad7f 100644 --- a/sdk/python/pulumi_tailscale/config/vars.py +++ b/sdk/python/pulumi_tailscale/config/vars.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities import types diff --git a/sdk/python/pulumi_tailscale/contacts.py b/sdk/python/pulumi_tailscale/contacts.py index 9c9ebaa2..5e13d58c 100644 --- a/sdk/python/pulumi_tailscale/contacts.py +++ b/sdk/python/pulumi_tailscale/contacts.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs from ._inputs import * diff --git a/sdk/python/pulumi_tailscale/device_authorization.py b/sdk/python/pulumi_tailscale/device_authorization.py index a315f779..747a188e 100644 --- a/sdk/python/pulumi_tailscale/device_authorization.py +++ b/sdk/python/pulumi_tailscale/device_authorization.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['DeviceAuthorizationArgs', 'DeviceAuthorization'] diff --git a/sdk/python/pulumi_tailscale/device_key.py b/sdk/python/pulumi_tailscale/device_key.py index acb7a5e4..bcd04d48 100644 --- a/sdk/python/pulumi_tailscale/device_key.py +++ b/sdk/python/pulumi_tailscale/device_key.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['DeviceKeyArgs', 'DeviceKey'] diff --git a/sdk/python/pulumi_tailscale/device_subnet_routes.py b/sdk/python/pulumi_tailscale/device_subnet_routes.py index 9e847ef5..3415a420 100644 --- a/sdk/python/pulumi_tailscale/device_subnet_routes.py +++ b/sdk/python/pulumi_tailscale/device_subnet_routes.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['DeviceSubnetRoutesArgs', 'DeviceSubnetRoutes'] diff --git a/sdk/python/pulumi_tailscale/device_tags.py b/sdk/python/pulumi_tailscale/device_tags.py index aa2c46a6..bb67e710 100644 --- a/sdk/python/pulumi_tailscale/device_tags.py +++ b/sdk/python/pulumi_tailscale/device_tags.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['DeviceTagsArgs', 'DeviceTags'] diff --git a/sdk/python/pulumi_tailscale/dns_nameservers.py b/sdk/python/pulumi_tailscale/dns_nameservers.py index 923ae5be..b0b9a6a9 100644 --- a/sdk/python/pulumi_tailscale/dns_nameservers.py +++ b/sdk/python/pulumi_tailscale/dns_nameservers.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['DnsNameserversArgs', 'DnsNameservers'] diff --git a/sdk/python/pulumi_tailscale/dns_preferences.py b/sdk/python/pulumi_tailscale/dns_preferences.py index c5aeb248..8845dabb 100644 --- a/sdk/python/pulumi_tailscale/dns_preferences.py +++ b/sdk/python/pulumi_tailscale/dns_preferences.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['DnsPreferencesArgs', 'DnsPreferences'] diff --git a/sdk/python/pulumi_tailscale/dns_search_paths.py b/sdk/python/pulumi_tailscale/dns_search_paths.py index 8199a7ff..f0e2ed97 100644 --- a/sdk/python/pulumi_tailscale/dns_search_paths.py +++ b/sdk/python/pulumi_tailscale/dns_search_paths.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['DnsSearchPathsArgs', 'DnsSearchPaths'] diff --git a/sdk/python/pulumi_tailscale/dns_split_nameservers.py b/sdk/python/pulumi_tailscale/dns_split_nameservers.py index 87292d6c..64c3c030 100644 --- a/sdk/python/pulumi_tailscale/dns_split_nameservers.py +++ b/sdk/python/pulumi_tailscale/dns_split_nameservers.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['DnsSplitNameserversArgs', 'DnsSplitNameservers'] diff --git a/sdk/python/pulumi_tailscale/get4_via6.py b/sdk/python/pulumi_tailscale/get4_via6.py index 6178d668..cdb2d316 100644 --- a/sdk/python/pulumi_tailscale/get4_via6.py +++ b/sdk/python/pulumi_tailscale/get4_via6.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = [ @@ -111,9 +116,6 @@ def get4_via6(cidr: Optional[str] = None, id=pulumi.get(__ret__, 'id'), ipv6=pulumi.get(__ret__, 'ipv6'), site=pulumi.get(__ret__, 'site')) - - -@_utilities.lift_output_func(get4_via6) def get4_via6_output(cidr: Optional[pulumi.Input[str]] = None, site: Optional[pulumi.Input[int]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[Get4Via6Result]: @@ -134,4 +136,13 @@ def get4_via6_output(cidr: Optional[pulumi.Input[str]] = None, :param str cidr: The IPv4 CIDR to map :param int site: Site ID (between 0 and 65535) """ - ... + __args__ = dict() + __args__['cidr'] = cidr + __args__['site'] = site + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('tailscale:index/get4Via6:get4Via6', __args__, opts=opts, typ=Get4Via6Result) + return __ret__.apply(lambda __response__: Get4Via6Result( + cidr=pulumi.get(__response__, 'cidr'), + id=pulumi.get(__response__, 'id'), + ipv6=pulumi.get(__response__, 'ipv6'), + site=pulumi.get(__response__, 'site'))) diff --git a/sdk/python/pulumi_tailscale/get_acl.py b/sdk/python/pulumi_tailscale/get_acl.py index 982cb48e..14bd8893 100644 --- a/sdk/python/pulumi_tailscale/get_acl.py +++ b/sdk/python/pulumi_tailscale/get_acl.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = [ @@ -80,11 +85,14 @@ def get_acl(opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAclResul hujson=pulumi.get(__ret__, 'hujson'), id=pulumi.get(__ret__, 'id'), json=pulumi.get(__ret__, 'json')) - - -@_utilities.lift_output_func(get_acl) def get_acl_output(opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAclResult]: """ The acl data source gets the Tailscale ACL for a tailnet """ - ... + __args__ = dict() + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('tailscale:index/getAcl:getAcl', __args__, opts=opts, typ=GetAclResult) + return __ret__.apply(lambda __response__: GetAclResult( + hujson=pulumi.get(__response__, 'hujson'), + id=pulumi.get(__response__, 'id'), + json=pulumi.get(__response__, 'json'))) diff --git a/sdk/python/pulumi_tailscale/get_device.py b/sdk/python/pulumi_tailscale/get_device.py index 33d1e433..b5787f6a 100644 --- a/sdk/python/pulumi_tailscale/get_device.py +++ b/sdk/python/pulumi_tailscale/get_device.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = [ @@ -155,9 +160,6 @@ def get_device(hostname: Optional[str] = None, tags=pulumi.get(__ret__, 'tags'), user=pulumi.get(__ret__, 'user'), wait_for=pulumi.get(__ret__, 'wait_for')) - - -@_utilities.lift_output_func(get_device) def get_device_output(hostname: Optional[pulumi.Input[Optional[str]]] = None, name: Optional[pulumi.Input[Optional[str]]] = None, wait_for: Optional[pulumi.Input[Optional[str]]] = None, @@ -182,4 +184,17 @@ def get_device_output(hostname: Optional[pulumi.Input[Optional[str]]] = None, :param str name: The full name of the device (e.g. `hostname.domain.ts.net`) :param str wait_for: If specified, the provider will make multiple attempts to obtain the data source until the wait_for duration is reached. Retries are made every second so this value should be greater than 1s """ - ... + __args__ = dict() + __args__['hostname'] = hostname + __args__['name'] = name + __args__['waitFor'] = wait_for + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('tailscale:index/getDevice:getDevice', __args__, opts=opts, typ=GetDeviceResult) + return __ret__.apply(lambda __response__: GetDeviceResult( + addresses=pulumi.get(__response__, 'addresses'), + hostname=pulumi.get(__response__, 'hostname'), + id=pulumi.get(__response__, 'id'), + name=pulumi.get(__response__, 'name'), + tags=pulumi.get(__response__, 'tags'), + user=pulumi.get(__response__, 'user'), + wait_for=pulumi.get(__response__, 'wait_for'))) diff --git a/sdk/python/pulumi_tailscale/get_devices.py b/sdk/python/pulumi_tailscale/get_devices.py index cfe1ee2c..182896f7 100644 --- a/sdk/python/pulumi_tailscale/get_devices.py +++ b/sdk/python/pulumi_tailscale/get_devices.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs @@ -95,9 +100,6 @@ def get_devices(name_prefix: Optional[str] = None, devices=pulumi.get(__ret__, 'devices'), id=pulumi.get(__ret__, 'id'), name_prefix=pulumi.get(__ret__, 'name_prefix')) - - -@_utilities.lift_output_func(get_devices) def get_devices_output(name_prefix: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDevicesResult]: """ @@ -115,4 +117,11 @@ def get_devices_output(name_prefix: Optional[pulumi.Input[Optional[str]]] = None :param str name_prefix: Filters the device list to elements whose name has the provided prefix """ - ... + __args__ = dict() + __args__['namePrefix'] = name_prefix + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('tailscale:index/getDevices:getDevices', __args__, opts=opts, typ=GetDevicesResult) + return __ret__.apply(lambda __response__: GetDevicesResult( + devices=pulumi.get(__response__, 'devices'), + id=pulumi.get(__response__, 'id'), + name_prefix=pulumi.get(__response__, 'name_prefix'))) diff --git a/sdk/python/pulumi_tailscale/get_user.py b/sdk/python/pulumi_tailscale/get_user.py index a2905b00..0807a386 100644 --- a/sdk/python/pulumi_tailscale/get_user.py +++ b/sdk/python/pulumi_tailscale/get_user.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = [ @@ -205,9 +210,6 @@ def get_user(id: Optional[str] = None, status=pulumi.get(__ret__, 'status'), tailnet_id=pulumi.get(__ret__, 'tailnet_id'), type=pulumi.get(__ret__, 'type')) - - -@_utilities.lift_output_func(get_user) def get_user_output(id: Optional[pulumi.Input[Optional[str]]] = None, login_name: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetUserResult]: @@ -218,4 +220,21 @@ def get_user_output(id: Optional[pulumi.Input[Optional[str]]] = None, :param str id: The unique identifier for the user. :param str login_name: The emailish login name of the user. """ - ... + __args__ = dict() + __args__['id'] = id + __args__['loginName'] = login_name + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('tailscale:index/getUser:getUser', __args__, opts=opts, typ=GetUserResult) + return __ret__.apply(lambda __response__: GetUserResult( + created=pulumi.get(__response__, 'created'), + currently_connected=pulumi.get(__response__, 'currently_connected'), + device_count=pulumi.get(__response__, 'device_count'), + display_name=pulumi.get(__response__, 'display_name'), + id=pulumi.get(__response__, 'id'), + last_seen=pulumi.get(__response__, 'last_seen'), + login_name=pulumi.get(__response__, 'login_name'), + profile_pic_url=pulumi.get(__response__, 'profile_pic_url'), + role=pulumi.get(__response__, 'role'), + status=pulumi.get(__response__, 'status'), + tailnet_id=pulumi.get(__response__, 'tailnet_id'), + type=pulumi.get(__response__, 'type'))) diff --git a/sdk/python/pulumi_tailscale/get_users.py b/sdk/python/pulumi_tailscale/get_users.py index e7e19442..c3f35890 100644 --- a/sdk/python/pulumi_tailscale/get_users.py +++ b/sdk/python/pulumi_tailscale/get_users.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs @@ -111,9 +116,6 @@ def get_users(role: Optional[str] = None, role=pulumi.get(__ret__, 'role'), type=pulumi.get(__ret__, 'type'), users=pulumi.get(__ret__, 'users')) - - -@_utilities.lift_output_func(get_users) def get_users_output(role: Optional[pulumi.Input[Optional[str]]] = None, type: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetUsersResult]: @@ -133,4 +135,13 @@ def get_users_output(role: Optional[pulumi.Input[Optional[str]]] = None, :param str role: Filters the users list to elements whose role is the provided value. :param str type: Filters the users list to elements whose type is the provided value. """ - ... + __args__ = dict() + __args__['role'] = role + __args__['type'] = type + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('tailscale:index/getUsers:getUsers', __args__, opts=opts, typ=GetUsersResult) + return __ret__.apply(lambda __response__: GetUsersResult( + id=pulumi.get(__response__, 'id'), + role=pulumi.get(__response__, 'role'), + type=pulumi.get(__response__, 'type'), + users=pulumi.get(__response__, 'users'))) diff --git a/sdk/python/pulumi_tailscale/logstream_configuration.py b/sdk/python/pulumi_tailscale/logstream_configuration.py index 1512ebd4..3b4a84bc 100644 --- a/sdk/python/pulumi_tailscale/logstream_configuration.py +++ b/sdk/python/pulumi_tailscale/logstream_configuration.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['LogstreamConfigurationArgs', 'LogstreamConfiguration'] diff --git a/sdk/python/pulumi_tailscale/outputs.py b/sdk/python/pulumi_tailscale/outputs.py index a5283577..c7f11d71 100644 --- a/sdk/python/pulumi_tailscale/outputs.py +++ b/sdk/python/pulumi_tailscale/outputs.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = [ diff --git a/sdk/python/pulumi_tailscale/posture_integration.py b/sdk/python/pulumi_tailscale/posture_integration.py index 21f9d0a7..14f9830d 100644 --- a/sdk/python/pulumi_tailscale/posture_integration.py +++ b/sdk/python/pulumi_tailscale/posture_integration.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['PostureIntegrationArgs', 'PostureIntegration'] diff --git a/sdk/python/pulumi_tailscale/provider.py b/sdk/python/pulumi_tailscale/provider.py index 8dcc52d5..6a672950 100644 --- a/sdk/python/pulumi_tailscale/provider.py +++ b/sdk/python/pulumi_tailscale/provider.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['ProviderArgs', 'Provider'] diff --git a/sdk/python/pulumi_tailscale/tailnet_key.py b/sdk/python/pulumi_tailscale/tailnet_key.py index b01c969b..8ef8393d 100644 --- a/sdk/python/pulumi_tailscale/tailnet_key.py +++ b/sdk/python/pulumi_tailscale/tailnet_key.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['TailnetKeyArgs', 'TailnetKey'] diff --git a/sdk/python/pulumi_tailscale/tailnet_settings.py b/sdk/python/pulumi_tailscale/tailnet_settings.py index 00d31649..2d68164f 100644 --- a/sdk/python/pulumi_tailscale/tailnet_settings.py +++ b/sdk/python/pulumi_tailscale/tailnet_settings.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['TailnetSettingsArgs', 'TailnetSettings'] diff --git a/sdk/python/pulumi_tailscale/webhook.py b/sdk/python/pulumi_tailscale/webhook.py index 154720cb..0d76e35b 100644 --- a/sdk/python/pulumi_tailscale/webhook.py +++ b/sdk/python/pulumi_tailscale/webhook.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['WebhookArgs', 'Webhook'] diff --git a/sdk/python/pyproject.toml b/sdk/python/pyproject.toml index ed51a94d..8004f76e 100644 --- a/sdk/python/pyproject.toml +++ b/sdk/python/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "pulumi_tailscale" description = "A Pulumi package for creating and managing Tailscale cloud resources." - dependencies = ["parver>=0.2.1", "pulumi>=3.0.0,<4.0.0", "semver>=2.8.1"] + dependencies = ["parver>=0.2.1", "pulumi>=3.136.0,<4.0.0", "semver>=2.8.1", "typing-extensions>=4.11; python_version < \"3.11\""] keywords = ["pulumi", "tailscale"] readme = "README.md" requires-python = ">=3.8"