diff --git a/.pulumi-java-gen.version b/.pulumi-java-gen.version index 07feb82..47d04a5 100644 --- a/.pulumi-java-gen.version +++ b/.pulumi-java-gen.version @@ -1 +1 @@ -0.17.0 \ No newline at end of file +0.18.0 \ No newline at end of file diff --git a/examples/go.mod b/examples/go.mod index 9aaedad..9eb7c16 100644 --- a/examples/go.mod +++ b/examples/go.mod @@ -2,7 +2,7 @@ module github.com/pulumi/pulumi-ns1/examples/v2 go 1.21 -require github.com/pulumi/pulumi/pkg/v3 v3.140.0 +require github.com/pulumi/pulumi/pkg/v3 v3.142.0 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.140.0 // indirect + github.com/pulumi/pulumi/sdk/v3 v3.142.0 // 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 d4db4ac..7cd2b46 100644 --- a/examples/go.sum +++ b/examples/go.sum @@ -339,10 +339,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.140.0 h1:/bvHa19HY/6qHWvuAOVII8qr72MDGGczBWlPYlPo3j0= -github.com/pulumi/pulumi/pkg/v3 v3.140.0/go.mod h1:rcTtSyisd7BzZTugNk/s9zlYgX9S0S10+pha3Tko6yM= -github.com/pulumi/pulumi/sdk/v3 v3.140.0 h1:+Z/RBvdYg7tBNkBwk4p/FzlV7niBT3TbLAICq/Y0LDU= -github.com/pulumi/pulumi/sdk/v3 v3.140.0/go.mod h1:PvKsX88co8XuwuPdzolMvew5lZV+4JmZfkeSjj7A6dI= +github.com/pulumi/pulumi/pkg/v3 v3.142.0 h1:UE8TFyXrlxvPrATpd3Kl3En34KrFIFWOxxNAodywPNU= +github.com/pulumi/pulumi/pkg/v3 v3.142.0/go.mod h1:3k6WwRIT7veiDnk3Yo2NtqEYX+4dgLCrMIFvEOnjQqI= +github.com/pulumi/pulumi/sdk/v3 v3.142.0 h1:SmcVddGuvwAh3g3XUVQQ5gVRQUKH1yZ6iETpDNHIHlw= +github.com/pulumi/pulumi/sdk/v3 v3.142.0/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-ns1/schema.json b/provider/cmd/pulumi-resource-ns1/schema.json index 291fd77..34ba2d1 100644 --- a/provider/cmd/pulumi-resource-ns1/schema.json +++ b/provider/cmd/pulumi-resource-ns1/schema.json @@ -2283,7 +2283,7 @@ } }, "ns1:index/record:Record": { - "description": "Provides a NS1 Record resource. This can be used to create, modify, and delete records.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as external from \"@pulumi/external\";\nimport * as ns1 from \"@pulumi/ns1\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new ns1.Zone(\"example\", {zone: \"terraform.example.io\"});\nconst ns1 = new ns1.DataSource(\"ns1\", {\n name: \"ns1_source\",\n sourcetype: \"nsone_v1\",\n});\nconst foo = new ns1.DataFeed(\"foo\", {\n name: \"foo_feed\",\n sourceId: ns1.id,\n config: {\n label: \"foo\",\n },\n});\nconst bar = new ns1.DataFeed(\"bar\", {\n name: \"bar_feed\",\n sourceId: ns1.id,\n config: {\n label: \"bar\",\n },\n});\nconst www = new ns1.Record(\"www\", {\n zone: tld.zone,\n domain: `www.${tld.zone}`,\n type: \"CNAME\",\n ttl: 60,\n meta: {\n up: \"true\",\n },\n regions: [\n {\n name: \"east\",\n meta: {\n georegion: \"US-EAST\",\n },\n },\n {\n name: \"usa\",\n meta: {\n country: \"US\",\n },\n },\n ],\n answers: [\n {\n answer: `sub1.${tld.zone}`,\n region: \"east\",\n meta: {\n up: pulumi.interpolate`{\"feed\":\"${foo.id}\"}`,\n },\n },\n {\n answer: `sub2.${tld.zone}`,\n meta: {\n up: pulumi.interpolate`{\"feed\":\"${bar.id}\"}`,\n connections: \"3\",\n },\n },\n {\n answer: `sub3.${tld.zone}`,\n meta: {\n pulsar: JSON.stringify([{\n job_id: \"abcdef\",\n bias: \"*0.55\",\n a5m_cutoff: 0.9,\n }]),\n subdivisions: JSON.stringify({\n BR: [\n \"SP\",\n \"SC\",\n ],\n DZ: [\n \"01\",\n \"02\",\n \"03\",\n ],\n }),\n },\n },\n ],\n filters: [{\n filter: \"select_first_n\",\n config: {\n N: \"1\",\n },\n }],\n});\n// Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\nconst baz = new external.index.Source(\"baz\", {\n zone: \"terraform.example.io.\",\n domain: \".www.terraform.example.io\",\n});\n// Basic record showing how to clean a zone or domain field that comes from\n// another non-NS1 resource. DNS names often end in '.' characters to signify\n// the root of the DNS tree, but the NS1 provider does not support this.\n//\n// In other cases, a domain or zone may be passed in with a preceding dot ('.')\n// character which would likewise lead the system to fail.\nconst external = new ns1.Record(\"external\", {\n zone: std.replace({\n text: zone,\n search: \"/(^\\\\.)|(\\\\.$)/\",\n replace: \"\",\n }).then(invoke =\u003e invoke.result),\n domain: std.replace({\n text: domain,\n search: \"/(^\\\\.)|(\\\\.$)/\",\n replace: \"\",\n }).then(invoke =\u003e invoke.result),\n type: \"CNAME\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_external as external\nimport pulumi_ns1 as ns1\nimport pulumi_std as std\n\nexample = ns1.Zone(\"example\", zone=\"terraform.example.io\")\nns1 = ns1.DataSource(\"ns1\",\n name=\"ns1_source\",\n sourcetype=\"nsone_v1\")\nfoo = ns1.DataFeed(\"foo\",\n name=\"foo_feed\",\n source_id=ns1.id,\n config={\n \"label\": \"foo\",\n })\nbar = ns1.DataFeed(\"bar\",\n name=\"bar_feed\",\n source_id=ns1.id,\n config={\n \"label\": \"bar\",\n })\nwww = ns1.Record(\"www\",\n zone=tld[\"zone\"],\n domain=f\"www.{tld['zone']}\",\n type=\"CNAME\",\n ttl=60,\n meta={\n \"up\": \"true\",\n },\n regions=[\n {\n \"name\": \"east\",\n \"meta\": {\n \"georegion\": \"US-EAST\",\n },\n },\n {\n \"name\": \"usa\",\n \"meta\": {\n \"country\": \"US\",\n },\n },\n ],\n answers=[\n {\n \"answer\": f\"sub1.{tld['zone']}\",\n \"region\": \"east\",\n \"meta\": {\n \"up\": foo.id.apply(lambda id: f\"{{\\\"feed\\\":\\\"{id}\\\"}}\"),\n },\n },\n {\n \"answer\": f\"sub2.{tld['zone']}\",\n \"meta\": {\n \"up\": bar.id.apply(lambda id: f\"{{\\\"feed\\\":\\\"{id}\\\"}}\"),\n \"connections\": \"3\",\n },\n },\n {\n \"answer\": f\"sub3.{tld['zone']}\",\n \"meta\": {\n \"pulsar\": json.dumps([{\n \"job_id\": \"abcdef\",\n \"bias\": \"*0.55\",\n \"a5m_cutoff\": 0.9,\n }]),\n \"subdivisions\": json.dumps({\n \"BR\": [\n \"SP\",\n \"SC\",\n ],\n \"DZ\": [\n \"01\",\n \"02\",\n \"03\",\n ],\n }),\n },\n },\n ],\n filters=[{\n \"filter\": \"select_first_n\",\n \"config\": {\n \"N\": \"1\",\n },\n }])\n# Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\nbaz = external.index.Source(\"baz\",\n zone=terraform.example.io.,\n domain=.www.terraform.example.io)\n# Basic record showing how to clean a zone or domain field that comes from\n# another non-NS1 resource. DNS names often end in '.' characters to signify\n# the root of the DNS tree, but the NS1 provider does not support this.\n#\n# In other cases, a domain or zone may be passed in with a preceding dot ('.')\n# character which would likewise lead the system to fail.\nexternal = ns1.Record(\"external\",\n zone=std.replace(text=zone,\n search=\"/(^\\\\.)|(\\\\.$)/\",\n replace=\"\").result,\n domain=std.replace(text=domain,\n search=\"/(^\\\\.)|(\\\\.$)/\",\n replace=\"\").result,\n type=\"CNAME\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing External = Pulumi.External;\nusing Ns1 = Pulumi.Ns1;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Ns1.Zone(\"example\", new()\n {\n ZoneName = \"terraform.example.io\",\n });\n\n var ns1 = new Ns1.DataSource(\"ns1\", new()\n {\n Name = \"ns1_source\",\n Sourcetype = \"nsone_v1\",\n });\n\n var foo = new Ns1.DataFeed(\"foo\", new()\n {\n Name = \"foo_feed\",\n SourceId = ns1.Id,\n Config = \n {\n { \"label\", \"foo\" },\n },\n });\n\n var bar = new Ns1.DataFeed(\"bar\", new()\n {\n Name = \"bar_feed\",\n SourceId = ns1.Id,\n Config = \n {\n { \"label\", \"bar\" },\n },\n });\n\n var www = new Ns1.Record(\"www\", new()\n {\n Zone = tld.Zone,\n Domain = $\"www.{tld.Zone}\",\n Type = \"CNAME\",\n Ttl = 60,\n Meta = \n {\n { \"up\", \"true\" },\n },\n Regions = new[]\n {\n new Ns1.Inputs.RecordRegionArgs\n {\n Name = \"east\",\n Meta = \n {\n { \"georegion\", \"US-EAST\" },\n },\n },\n new Ns1.Inputs.RecordRegionArgs\n {\n Name = \"usa\",\n Meta = \n {\n { \"country\", \"US\" },\n },\n },\n },\n Answers = new[]\n {\n new Ns1.Inputs.RecordAnswerArgs\n {\n Answer = $\"sub1.{tld.Zone}\",\n Region = \"east\",\n Meta = \n {\n { \"up\", foo.Id.Apply(id =\u003e $\"{{\\\"feed\\\":\\\"{id}\\\"}}\") },\n },\n },\n new Ns1.Inputs.RecordAnswerArgs\n {\n Answer = $\"sub2.{tld.Zone}\",\n Meta = \n {\n { \"up\", bar.Id.Apply(id =\u003e $\"{{\\\"feed\\\":\\\"{id}\\\"}}\") },\n { \"connections\", \"3\" },\n },\n },\n new Ns1.Inputs.RecordAnswerArgs\n {\n Answer = $\"sub3.{tld.Zone}\",\n Meta = \n {\n { \"pulsar\", JsonSerializer.Serialize(new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"job_id\"] = \"abcdef\",\n [\"bias\"] = \"*0.55\",\n [\"a5m_cutoff\"] = 0.9,\n },\n }) },\n { \"subdivisions\", JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"BR\"] = new[]\n {\n \"SP\",\n \"SC\",\n },\n [\"DZ\"] = new[]\n {\n \"01\",\n \"02\",\n \"03\",\n },\n }) },\n },\n },\n },\n Filters = new[]\n {\n new Ns1.Inputs.RecordFilterArgs\n {\n Filter = \"select_first_n\",\n Config = \n {\n { \"N\", \"1\" },\n },\n },\n },\n });\n\n // Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\n var baz = new External.Index.Source(\"baz\", new()\n {\n Zone = \"terraform.example.io.\",\n Domain = \".www.terraform.example.io\",\n });\n\n // Basic record showing how to clean a zone or domain field that comes from\n // another non-NS1 resource. DNS names often end in '.' characters to signify\n // the root of the DNS tree, but the NS1 provider does not support this.\n //\n // In other cases, a domain or zone may be passed in with a preceding dot ('.')\n // character which would likewise lead the system to fail.\n var external = new Ns1.Record(\"external\", new()\n {\n Zone = Std.Replace.Invoke(new()\n {\n Text = zone,\n Search = \"/(^\\\\.)|(\\\\.$)/\",\n Replace = \"\",\n }).Apply(invoke =\u003e invoke.Result),\n Domain = Std.Replace.Invoke(new()\n {\n Text = domain,\n Search = \"/(^\\\\.)|(\\\\.$)/\",\n Replace = \"\",\n }).Apply(invoke =\u003e invoke.Result),\n Type = \"CNAME\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-external/sdk/go/external\"\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\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 := ns1.NewZone(ctx, \"example\", \u0026ns1.ZoneArgs{\n\t\t\tZone: pulumi.String(\"terraform.example.io\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tns1, err := ns1.NewDataSource(ctx, \"ns1\", \u0026ns1.DataSourceArgs{\n\t\t\tName: pulumi.String(\"ns1_source\"),\n\t\t\tSourcetype: pulumi.String(\"nsone_v1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfoo, err := ns1.NewDataFeed(ctx, \"foo\", \u0026ns1.DataFeedArgs{\n\t\t\tName: pulumi.String(\"foo_feed\"),\n\t\t\tSourceId: ns1.ID(),\n\t\t\tConfig: pulumi.StringMap{\n\t\t\t\t\"label\": pulumi.String(\"foo\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tbar, err := ns1.NewDataFeed(ctx, \"bar\", \u0026ns1.DataFeedArgs{\n\t\t\tName: pulumi.String(\"bar_feed\"),\n\t\t\tSourceId: ns1.ID(),\n\t\t\tConfig: pulumi.StringMap{\n\t\t\t\t\"label\": pulumi.String(\"bar\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal([]map[string]interface{}{\n\t\t\tmap[string]interface{}{\n\t\t\t\t\"job_id\": \"abcdef\",\n\t\t\t\t\"bias\": \"*0.55\",\n\t\t\t\t\"a5m_cutoff\": 0.9,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"BR\": []string{\n\t\t\t\t\"SP\",\n\t\t\t\t\"SC\",\n\t\t\t},\n\t\t\t\"DZ\": []string{\n\t\t\t\t\"01\",\n\t\t\t\t\"02\",\n\t\t\t\t\"03\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = ns1.NewRecord(ctx, \"www\", \u0026ns1.RecordArgs{\n\t\t\tZone: pulumi.Any(tld.Zone),\n\t\t\tDomain: pulumi.Sprintf(\"www.%v\", tld.Zone),\n\t\t\tType: pulumi.String(\"CNAME\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\"up\": pulumi.String(\"true\"),\n\t\t\t},\n\t\t\tRegions: ns1.RecordRegionArray{\n\t\t\t\t\u0026ns1.RecordRegionArgs{\n\t\t\t\t\tName: pulumi.String(\"east\"),\n\t\t\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\t\t\"georegion\": pulumi.String(\"US-EAST\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026ns1.RecordRegionArgs{\n\t\t\t\t\tName: pulumi.String(\"usa\"),\n\t\t\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\t\t\"country\": pulumi.String(\"US\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAnswers: ns1.RecordAnswerArray{\n\t\t\t\t\u0026ns1.RecordAnswerArgs{\n\t\t\t\t\tAnswer: pulumi.Sprintf(\"sub1.%v\", tld.Zone),\n\t\t\t\t\tRegion: pulumi.String(\"east\"),\n\t\t\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\t\t\"up\": foo.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\t\t\t\treturn fmt.Sprintf(\"{\\\"feed\\\":\\\"%v\\\"}\", id), nil\n\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026ns1.RecordAnswerArgs{\n\t\t\t\t\tAnswer: pulumi.Sprintf(\"sub2.%v\", tld.Zone),\n\t\t\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\t\t\"up\": bar.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\t\t\t\treturn fmt.Sprintf(\"{\\\"feed\\\":\\\"%v\\\"}\", id), nil\n\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\"connections\": pulumi.String(\"3\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026ns1.RecordAnswerArgs{\n\t\t\t\t\tAnswer: pulumi.Sprintf(\"sub3.%v\", tld.Zone),\n\t\t\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\t\t\"pulsar\": pulumi.String(json0),\n\t\t\t\t\t\t\"subdivisions\": pulumi.String(json1),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tFilters: ns1.RecordFilterArray{\n\t\t\t\t\u0026ns1.RecordFilterArgs{\n\t\t\t\t\tFilter: pulumi.String(\"select_first_n\"),\n\t\t\t\t\tConfig: pulumi.StringMap{\n\t\t\t\t\t\t\"N\": pulumi.String(\"1\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\n\t\t_, err = external.NewSource(ctx, \"baz\", \u0026external.SourceArgs{\n\t\t\tZone: \"terraform.example.io.\",\n\t\t\tDomain: \".www.terraform.example.io\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeReplace, err := std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\tText: zone,\n\t\t\tSearch: \"/(^\\\\.)|(\\\\.$)/\",\n\t\t\tReplace: \"\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeReplace1, err := std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\tText: domain,\n\t\t\tSearch: \"/(^\\\\.)|(\\\\.$)/\",\n\t\t\tReplace: \"\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Basic record showing how to clean a zone or domain field that comes from\n\t\t// another non-NS1 resource. DNS names often end in '.' characters to signify\n\t\t// the root of the DNS tree, but the NS1 provider does not support this.\n\t\t//\n\t\t// In other cases, a domain or zone may be passed in with a preceding dot ('.')\n\t\t// character which would likewise lead the system to fail.\n\t\t_, err = ns1.NewRecord(ctx, \"external\", \u0026ns1.RecordArgs{\n\t\t\tZone: pulumi.String(invokeReplace.Result),\n\t\t\tDomain: pulumi.String(invokeReplace1.Result),\n\t\t\tType: pulumi.String(\"CNAME\"),\n\t\t})\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.ns1.Zone;\nimport com.pulumi.ns1.ZoneArgs;\nimport com.pulumi.ns1.DataSource;\nimport com.pulumi.ns1.DataSourceArgs;\nimport com.pulumi.ns1.DataFeed;\nimport com.pulumi.ns1.DataFeedArgs;\nimport com.pulumi.ns1.Record;\nimport com.pulumi.ns1.RecordArgs;\nimport com.pulumi.ns1.inputs.RecordRegionArgs;\nimport com.pulumi.ns1.inputs.RecordAnswerArgs;\nimport com.pulumi.ns1.inputs.RecordFilterArgs;\nimport com.pulumi.external.source;\nimport com.pulumi.external.SourceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\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 var example = new Zone(\"example\", ZoneArgs.builder()\n .zone(\"terraform.example.io\")\n .build());\n\n var ns1 = new DataSource(\"ns1\", DataSourceArgs.builder()\n .name(\"ns1_source\")\n .sourcetype(\"nsone_v1\")\n .build());\n\n var foo = new DataFeed(\"foo\", DataFeedArgs.builder()\n .name(\"foo_feed\")\n .sourceId(ns1.id())\n .config(Map.of(\"label\", \"foo\"))\n .build());\n\n var bar = new DataFeed(\"bar\", DataFeedArgs.builder()\n .name(\"bar_feed\")\n .sourceId(ns1.id())\n .config(Map.of(\"label\", \"bar\"))\n .build());\n\n var www = new Record(\"www\", RecordArgs.builder()\n .zone(tld.zone())\n .domain(String.format(\"www.%s\", tld.zone()))\n .type(\"CNAME\")\n .ttl(60)\n .meta(Map.of(\"up\", true))\n .regions( \n RecordRegionArgs.builder()\n .name(\"east\")\n .meta(Map.of(\"georegion\", \"US-EAST\"))\n .build(),\n RecordRegionArgs.builder()\n .name(\"usa\")\n .meta(Map.of(\"country\", \"US\"))\n .build())\n .answers( \n RecordAnswerArgs.builder()\n .answer(String.format(\"sub1.%s\", tld.zone()))\n .region(\"east\")\n .meta(Map.of(\"up\", foo.id().applyValue(id -\u003e String.format(\"{{\\\"feed\\\":\\\"%s\\\"}}\", id))))\n .build(),\n RecordAnswerArgs.builder()\n .answer(String.format(\"sub2.%s\", tld.zone()))\n .meta(Map.ofEntries(\n Map.entry(\"up\", bar.id().applyValue(id -\u003e String.format(\"{{\\\"feed\\\":\\\"%s\\\"}}\", id))),\n Map.entry(\"connections\", 3)\n ))\n .build(),\n RecordAnswerArgs.builder()\n .answer(String.format(\"sub3.%s\", tld.zone()))\n .meta(Map.ofEntries(\n Map.entry(\"pulsar\", serializeJson(\n jsonArray(jsonObject(\n jsonProperty(\"job_id\", \"abcdef\"),\n jsonProperty(\"bias\", \"*0.55\"),\n jsonProperty(\"a5m_cutoff\", 0.9)\n )))),\n Map.entry(\"subdivisions\", serializeJson(\n jsonObject(\n jsonProperty(\"BR\", jsonArray(\n \"SP\", \n \"SC\"\n )),\n jsonProperty(\"DZ\", jsonArray(\n \"01\", \n \"02\", \n \"03\"\n ))\n )))\n ))\n .build())\n .filters(RecordFilterArgs.builder()\n .filter(\"select_first_n\")\n .config(Map.of(\"N\", 1))\n .build())\n .build());\n\n // Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\n var baz = new Source(\"baz\", SourceArgs.builder()\n .zone(\"terraform.example.io.\")\n .domain(\".www.terraform.example.io\")\n .build());\n\n // Basic record showing how to clean a zone or domain field that comes from\n // another non-NS1 resource. DNS names often end in '.' characters to signify\n // the root of the DNS tree, but the NS1 provider does not support this.\n //\n // In other cases, a domain or zone may be passed in with a preceding dot ('.')\n // character which would likewise lead the system to fail.\n var external = new Record(\"external\", RecordArgs.builder()\n .zone(StdFunctions.replace(ReplaceArgs.builder()\n .text(zone)\n .search(\"/(^\\\\.)|(\\\\.$)/\")\n .replace(\"\")\n .build()).result())\n .domain(StdFunctions.replace(ReplaceArgs.builder()\n .text(domain)\n .search(\"/(^\\\\.)|(\\\\.$)/\")\n .replace(\"\")\n .build()).result())\n .type(\"CNAME\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: ns1:Zone\n properties:\n zone: terraform.example.io\n ns1:\n type: ns1:DataSource\n properties:\n name: ns1_source\n sourcetype: nsone_v1\n foo:\n type: ns1:DataFeed\n properties:\n name: foo_feed\n sourceId: ${ns1.id}\n config:\n label: foo\n bar:\n type: ns1:DataFeed\n properties:\n name: bar_feed\n sourceId: ${ns1.id}\n config:\n label: bar\n www:\n type: ns1:Record\n properties:\n zone: ${tld.zone}\n domain: www.${tld.zone}\n type: CNAME\n ttl: 60\n meta:\n up: true\n regions:\n - name: east\n meta:\n georegion: US-EAST\n - name: usa\n meta:\n country: US\n answers:\n - answer: sub1.${tld.zone}\n region: east\n meta:\n up: '{\"feed\":\"${foo.id}\"}'\n - answer: sub2.${tld.zone}\n meta:\n up: '{\"feed\":\"${bar.id}\"}'\n connections: 3\n - answer: sub3.${tld.zone}\n meta:\n pulsar:\n fn::toJSON:\n - job_id: abcdef\n bias: '*0.55'\n a5m_cutoff: 0.9\n subdivisions:\n fn::toJSON:\n BR:\n - SP\n - SC\n DZ:\n - '01'\n - '02'\n - '03'\n filters:\n - filter: select_first_n\n config:\n N: 1\n # Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\n baz:\n type: external:source\n properties:\n zone: terraform.example.io.\n domain: .www.terraform.example.io\n # Basic record showing how to clean a zone or domain field that comes from\n # another non-NS1 resource. DNS names often end in '.' characters to signify\n # the root of the DNS tree, but the NS1 provider does not support this.\n #\n # In other cases, a domain or zone may be passed in with a preceding dot ('.')\n # character which would likewise lead the system to fail.\n external:\n type: ns1:Record\n properties:\n zone:\n fn::invoke:\n Function: std:replace\n Arguments:\n text: ${zone}\n search: /(^\\.)|(\\.$)/\n replace:\n Return: result\n domain:\n fn::invoke:\n Function: std:replace\n Arguments:\n text: ${domain}\n search: /(^\\.)|(\\.$)/\n replace:\n Return: result\n type: CNAME\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## NS1 Documentation\n\n[Record Api Doc](https://ns1.com/api#records)\n\n## Import\n\n```sh\n$ pulumi import ns1:index/record:Record \u003cname\u003e \u003czone\u003e/\u003cdomain\u003e/\u003ctype\u003e`\n```\n\nSo for the example above:\n\n```sh\n$ pulumi import ns1:index/record:Record www terraform.example.io/www.terraform.example.io/CNAME`\n```\n\n", + "description": "Provides a NS1 Record resource. This can be used to create, modify, and delete records.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as external from \"@pulumi/external\";\nimport * as ns1 from \"@pulumi/ns1\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new ns1.Zone(\"example\", {zone: \"terraform.example.io\"});\nconst ns1 = new ns1.DataSource(\"ns1\", {\n name: \"ns1_source\",\n sourcetype: \"nsone_v1\",\n});\nconst foo = new ns1.DataFeed(\"foo\", {\n name: \"foo_feed\",\n sourceId: ns1.id,\n config: {\n label: \"foo\",\n },\n});\nconst bar = new ns1.DataFeed(\"bar\", {\n name: \"bar_feed\",\n sourceId: ns1.id,\n config: {\n label: \"bar\",\n },\n});\nconst www = new ns1.Record(\"www\", {\n zone: tld.zone,\n domain: `www.${tld.zone}`,\n type: \"CNAME\",\n ttl: 60,\n meta: {\n up: \"true\",\n },\n regions: [\n {\n name: \"east\",\n meta: {\n georegion: \"US-EAST\",\n },\n },\n {\n name: \"usa\",\n meta: {\n country: \"US\",\n },\n },\n ],\n answers: [\n {\n answer: `sub1.${tld.zone}`,\n region: \"east\",\n meta: {\n up: pulumi.interpolate`{\"feed\":\"${foo.id}\"}`,\n },\n },\n {\n answer: `sub2.${tld.zone}`,\n meta: {\n up: pulumi.interpolate`{\"feed\":\"${bar.id}\"}`,\n connections: \"3\",\n },\n },\n {\n answer: `sub3.${tld.zone}`,\n meta: {\n pulsar: JSON.stringify([{\n job_id: \"abcdef\",\n bias: \"*0.55\",\n a5m_cutoff: 0.9,\n }]),\n subdivisions: JSON.stringify({\n BR: [\n \"SP\",\n \"SC\",\n ],\n DZ: [\n \"01\",\n \"02\",\n \"03\",\n ],\n }),\n },\n },\n ],\n filters: [{\n filter: \"select_first_n\",\n config: {\n N: \"1\",\n },\n }],\n});\n// Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\nconst baz = new external.index.Source(\"baz\", {\n zone: \"terraform.example.io.\",\n domain: \".www.terraform.example.io\",\n});\n// Basic record showing how to clean a zone or domain field that comes from\n// another non-NS1 resource. DNS names often end in '.' characters to signify\n// the root of the DNS tree, but the NS1 provider does not support this.\n//\n// In other cases, a domain or zone may be passed in with a preceding dot ('.')\n// character which would likewise lead the system to fail.\nconst external = new ns1.Record(\"external\", {\n zone: std.replace({\n text: zone,\n search: \"/(^\\\\.)|(\\\\.$)/\",\n replace: \"\",\n }).then(invoke =\u003e invoke.result),\n domain: std.replace({\n text: domain,\n search: \"/(^\\\\.)|(\\\\.$)/\",\n replace: \"\",\n }).then(invoke =\u003e invoke.result),\n type: \"CNAME\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_external as external\nimport pulumi_ns1 as ns1\nimport pulumi_std as std\n\nexample = ns1.Zone(\"example\", zone=\"terraform.example.io\")\nns1 = ns1.DataSource(\"ns1\",\n name=\"ns1_source\",\n sourcetype=\"nsone_v1\")\nfoo = ns1.DataFeed(\"foo\",\n name=\"foo_feed\",\n source_id=ns1.id,\n config={\n \"label\": \"foo\",\n })\nbar = ns1.DataFeed(\"bar\",\n name=\"bar_feed\",\n source_id=ns1.id,\n config={\n \"label\": \"bar\",\n })\nwww = ns1.Record(\"www\",\n zone=tld[\"zone\"],\n domain=f\"www.{tld['zone']}\",\n type=\"CNAME\",\n ttl=60,\n meta={\n \"up\": \"true\",\n },\n regions=[\n {\n \"name\": \"east\",\n \"meta\": {\n \"georegion\": \"US-EAST\",\n },\n },\n {\n \"name\": \"usa\",\n \"meta\": {\n \"country\": \"US\",\n },\n },\n ],\n answers=[\n {\n \"answer\": f\"sub1.{tld['zone']}\",\n \"region\": \"east\",\n \"meta\": {\n \"up\": foo.id.apply(lambda id: f\"{{\\\"feed\\\":\\\"{id}\\\"}}\"),\n },\n },\n {\n \"answer\": f\"sub2.{tld['zone']}\",\n \"meta\": {\n \"up\": bar.id.apply(lambda id: f\"{{\\\"feed\\\":\\\"{id}\\\"}}\"),\n \"connections\": \"3\",\n },\n },\n {\n \"answer\": f\"sub3.{tld['zone']}\",\n \"meta\": {\n \"pulsar\": json.dumps([{\n \"job_id\": \"abcdef\",\n \"bias\": \"*0.55\",\n \"a5m_cutoff\": 0.9,\n }]),\n \"subdivisions\": json.dumps({\n \"BR\": [\n \"SP\",\n \"SC\",\n ],\n \"DZ\": [\n \"01\",\n \"02\",\n \"03\",\n ],\n }),\n },\n },\n ],\n filters=[{\n \"filter\": \"select_first_n\",\n \"config\": {\n \"N\": \"1\",\n },\n }])\n# Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\nbaz = external.index.Source(\"baz\",\n zone=terraform.example.io.,\n domain=.www.terraform.example.io)\n# Basic record showing how to clean a zone or domain field that comes from\n# another non-NS1 resource. DNS names often end in '.' characters to signify\n# the root of the DNS tree, but the NS1 provider does not support this.\n#\n# In other cases, a domain or zone may be passed in with a preceding dot ('.')\n# character which would likewise lead the system to fail.\nexternal = ns1.Record(\"external\",\n zone=std.replace(text=zone,\n search=\"/(^\\\\.)|(\\\\.$)/\",\n replace=\"\").result,\n domain=std.replace(text=domain,\n search=\"/(^\\\\.)|(\\\\.$)/\",\n replace=\"\").result,\n type=\"CNAME\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing External = Pulumi.External;\nusing Ns1 = Pulumi.Ns1;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Ns1.Zone(\"example\", new()\n {\n ZoneName = \"terraform.example.io\",\n });\n\n var ns1 = new Ns1.DataSource(\"ns1\", new()\n {\n Name = \"ns1_source\",\n Sourcetype = \"nsone_v1\",\n });\n\n var foo = new Ns1.DataFeed(\"foo\", new()\n {\n Name = \"foo_feed\",\n SourceId = ns1.Id,\n Config = \n {\n { \"label\", \"foo\" },\n },\n });\n\n var bar = new Ns1.DataFeed(\"bar\", new()\n {\n Name = \"bar_feed\",\n SourceId = ns1.Id,\n Config = \n {\n { \"label\", \"bar\" },\n },\n });\n\n var www = new Ns1.Record(\"www\", new()\n {\n Zone = tld.Zone,\n Domain = $\"www.{tld.Zone}\",\n Type = \"CNAME\",\n Ttl = 60,\n Meta = \n {\n { \"up\", \"true\" },\n },\n Regions = new[]\n {\n new Ns1.Inputs.RecordRegionArgs\n {\n Name = \"east\",\n Meta = \n {\n { \"georegion\", \"US-EAST\" },\n },\n },\n new Ns1.Inputs.RecordRegionArgs\n {\n Name = \"usa\",\n Meta = \n {\n { \"country\", \"US\" },\n },\n },\n },\n Answers = new[]\n {\n new Ns1.Inputs.RecordAnswerArgs\n {\n Answer = $\"sub1.{tld.Zone}\",\n Region = \"east\",\n Meta = \n {\n { \"up\", foo.Id.Apply(id =\u003e $\"{{\\\"feed\\\":\\\"{id}\\\"}}\") },\n },\n },\n new Ns1.Inputs.RecordAnswerArgs\n {\n Answer = $\"sub2.{tld.Zone}\",\n Meta = \n {\n { \"up\", bar.Id.Apply(id =\u003e $\"{{\\\"feed\\\":\\\"{id}\\\"}}\") },\n { \"connections\", \"3\" },\n },\n },\n new Ns1.Inputs.RecordAnswerArgs\n {\n Answer = $\"sub3.{tld.Zone}\",\n Meta = \n {\n { \"pulsar\", JsonSerializer.Serialize(new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"job_id\"] = \"abcdef\",\n [\"bias\"] = \"*0.55\",\n [\"a5m_cutoff\"] = 0.9,\n },\n }) },\n { \"subdivisions\", JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"BR\"] = new[]\n {\n \"SP\",\n \"SC\",\n },\n [\"DZ\"] = new[]\n {\n \"01\",\n \"02\",\n \"03\",\n },\n }) },\n },\n },\n },\n Filters = new[]\n {\n new Ns1.Inputs.RecordFilterArgs\n {\n Filter = \"select_first_n\",\n Config = \n {\n { \"N\", \"1\" },\n },\n },\n },\n });\n\n // Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\n var baz = new External.Index.Source(\"baz\", new()\n {\n Zone = \"terraform.example.io.\",\n Domain = \".www.terraform.example.io\",\n });\n\n // Basic record showing how to clean a zone or domain field that comes from\n // another non-NS1 resource. DNS names often end in '.' characters to signify\n // the root of the DNS tree, but the NS1 provider does not support this.\n //\n // In other cases, a domain or zone may be passed in with a preceding dot ('.')\n // character which would likewise lead the system to fail.\n var external = new Ns1.Record(\"external\", new()\n {\n Zone = Std.Replace.Invoke(new()\n {\n Text = zone,\n Search = \"/(^\\\\.)|(\\\\.$)/\",\n Replace = \"\",\n }).Apply(invoke =\u003e invoke.Result),\n Domain = Std.Replace.Invoke(new()\n {\n Text = domain,\n Search = \"/(^\\\\.)|(\\\\.$)/\",\n Replace = \"\",\n }).Apply(invoke =\u003e invoke.Result),\n Type = \"CNAME\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-external/sdk/go/external\"\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\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 := ns1.NewZone(ctx, \"example\", \u0026ns1.ZoneArgs{\n\t\t\tZone: pulumi.String(\"terraform.example.io\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tns1, err := ns1.NewDataSource(ctx, \"ns1\", \u0026ns1.DataSourceArgs{\n\t\t\tName: pulumi.String(\"ns1_source\"),\n\t\t\tSourcetype: pulumi.String(\"nsone_v1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfoo, err := ns1.NewDataFeed(ctx, \"foo\", \u0026ns1.DataFeedArgs{\n\t\t\tName: pulumi.String(\"foo_feed\"),\n\t\t\tSourceId: ns1.ID(),\n\t\t\tConfig: pulumi.StringMap{\n\t\t\t\t\"label\": pulumi.String(\"foo\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tbar, err := ns1.NewDataFeed(ctx, \"bar\", \u0026ns1.DataFeedArgs{\n\t\t\tName: pulumi.String(\"bar_feed\"),\n\t\t\tSourceId: ns1.ID(),\n\t\t\tConfig: pulumi.StringMap{\n\t\t\t\t\"label\": pulumi.String(\"bar\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal([]map[string]interface{}{\n\t\t\tmap[string]interface{}{\n\t\t\t\t\"job_id\": \"abcdef\",\n\t\t\t\t\"bias\": \"*0.55\",\n\t\t\t\t\"a5m_cutoff\": 0.9,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"BR\": []string{\n\t\t\t\t\"SP\",\n\t\t\t\t\"SC\",\n\t\t\t},\n\t\t\t\"DZ\": []string{\n\t\t\t\t\"01\",\n\t\t\t\t\"02\",\n\t\t\t\t\"03\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = ns1.NewRecord(ctx, \"www\", \u0026ns1.RecordArgs{\n\t\t\tZone: pulumi.Any(tld.Zone),\n\t\t\tDomain: pulumi.Sprintf(\"www.%v\", tld.Zone),\n\t\t\tType: pulumi.String(\"CNAME\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\"up\": pulumi.String(\"true\"),\n\t\t\t},\n\t\t\tRegions: ns1.RecordRegionArray{\n\t\t\t\t\u0026ns1.RecordRegionArgs{\n\t\t\t\t\tName: pulumi.String(\"east\"),\n\t\t\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\t\t\"georegion\": pulumi.String(\"US-EAST\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026ns1.RecordRegionArgs{\n\t\t\t\t\tName: pulumi.String(\"usa\"),\n\t\t\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\t\t\"country\": pulumi.String(\"US\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAnswers: ns1.RecordAnswerArray{\n\t\t\t\t\u0026ns1.RecordAnswerArgs{\n\t\t\t\t\tAnswer: pulumi.Sprintf(\"sub1.%v\", tld.Zone),\n\t\t\t\t\tRegion: pulumi.String(\"east\"),\n\t\t\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\t\t\"up\": foo.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\t\t\t\treturn fmt.Sprintf(\"{\\\"feed\\\":\\\"%v\\\"}\", id), nil\n\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026ns1.RecordAnswerArgs{\n\t\t\t\t\tAnswer: pulumi.Sprintf(\"sub2.%v\", tld.Zone),\n\t\t\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\t\t\"up\": bar.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\t\t\t\treturn fmt.Sprintf(\"{\\\"feed\\\":\\\"%v\\\"}\", id), nil\n\t\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\t\t\"connections\": pulumi.String(\"3\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026ns1.RecordAnswerArgs{\n\t\t\t\t\tAnswer: pulumi.Sprintf(\"sub3.%v\", tld.Zone),\n\t\t\t\t\tMeta: pulumi.StringMap{\n\t\t\t\t\t\t\"pulsar\": pulumi.String(json0),\n\t\t\t\t\t\t\"subdivisions\": pulumi.String(json1),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tFilters: ns1.RecordFilterArray{\n\t\t\t\t\u0026ns1.RecordFilterArgs{\n\t\t\t\t\tFilter: pulumi.String(\"select_first_n\"),\n\t\t\t\t\tConfig: pulumi.StringMap{\n\t\t\t\t\t\t\"N\": pulumi.String(\"1\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\n\t\t_, err = external.NewSource(ctx, \"baz\", \u0026external.SourceArgs{\n\t\t\tZone: \"terraform.example.io.\",\n\t\t\tDomain: \".www.terraform.example.io\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeReplace, err := std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\tText: zone,\n\t\t\tSearch: \"/(^\\\\.)|(\\\\.$)/\",\n\t\t\tReplace: \"\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeReplace1, err := std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\tText: domain,\n\t\t\tSearch: \"/(^\\\\.)|(\\\\.$)/\",\n\t\t\tReplace: \"\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Basic record showing how to clean a zone or domain field that comes from\n\t\t// another non-NS1 resource. DNS names often end in '.' characters to signify\n\t\t// the root of the DNS tree, but the NS1 provider does not support this.\n\t\t//\n\t\t// In other cases, a domain or zone may be passed in with a preceding dot ('.')\n\t\t// character which would likewise lead the system to fail.\n\t\t_, err = ns1.NewRecord(ctx, \"external\", \u0026ns1.RecordArgs{\n\t\t\tZone: pulumi.String(invokeReplace.Result),\n\t\t\tDomain: pulumi.String(invokeReplace1.Result),\n\t\t\tType: pulumi.String(\"CNAME\"),\n\t\t})\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.ns1.Zone;\nimport com.pulumi.ns1.ZoneArgs;\nimport com.pulumi.ns1.DataSource;\nimport com.pulumi.ns1.DataSourceArgs;\nimport com.pulumi.ns1.DataFeed;\nimport com.pulumi.ns1.DataFeedArgs;\nimport com.pulumi.ns1.Record;\nimport com.pulumi.ns1.RecordArgs;\nimport com.pulumi.ns1.inputs.RecordRegionArgs;\nimport com.pulumi.ns1.inputs.RecordAnswerArgs;\nimport com.pulumi.ns1.inputs.RecordFilterArgs;\nimport com.pulumi.external.source;\nimport com.pulumi.external.SourceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\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 var example = new Zone(\"example\", ZoneArgs.builder()\n .zone(\"terraform.example.io\")\n .build());\n\n var ns1 = new DataSource(\"ns1\", DataSourceArgs.builder()\n .name(\"ns1_source\")\n .sourcetype(\"nsone_v1\")\n .build());\n\n var foo = new DataFeed(\"foo\", DataFeedArgs.builder()\n .name(\"foo_feed\")\n .sourceId(ns1.id())\n .config(Map.of(\"label\", \"foo\"))\n .build());\n\n var bar = new DataFeed(\"bar\", DataFeedArgs.builder()\n .name(\"bar_feed\")\n .sourceId(ns1.id())\n .config(Map.of(\"label\", \"bar\"))\n .build());\n\n var www = new Record(\"www\", RecordArgs.builder()\n .zone(tld.zone())\n .domain(String.format(\"www.%s\", tld.zone()))\n .type(\"CNAME\")\n .ttl(60)\n .meta(Map.of(\"up\", true))\n .regions( \n RecordRegionArgs.builder()\n .name(\"east\")\n .meta(Map.of(\"georegion\", \"US-EAST\"))\n .build(),\n RecordRegionArgs.builder()\n .name(\"usa\")\n .meta(Map.of(\"country\", \"US\"))\n .build())\n .answers( \n RecordAnswerArgs.builder()\n .answer(String.format(\"sub1.%s\", tld.zone()))\n .region(\"east\")\n .meta(Map.of(\"up\", foo.id().applyValue(id -\u003e String.format(\"{{\\\"feed\\\":\\\"%s\\\"}}\", id))))\n .build(),\n RecordAnswerArgs.builder()\n .answer(String.format(\"sub2.%s\", tld.zone()))\n .meta(Map.ofEntries(\n Map.entry(\"up\", bar.id().applyValue(id -\u003e String.format(\"{{\\\"feed\\\":\\\"%s\\\"}}\", id))),\n Map.entry(\"connections\", 3)\n ))\n .build(),\n RecordAnswerArgs.builder()\n .answer(String.format(\"sub3.%s\", tld.zone()))\n .meta(Map.ofEntries(\n Map.entry(\"pulsar\", serializeJson(\n jsonArray(jsonObject(\n jsonProperty(\"job_id\", \"abcdef\"),\n jsonProperty(\"bias\", \"*0.55\"),\n jsonProperty(\"a5m_cutoff\", 0.9)\n )))),\n Map.entry(\"subdivisions\", serializeJson(\n jsonObject(\n jsonProperty(\"BR\", jsonArray(\n \"SP\", \n \"SC\"\n )),\n jsonProperty(\"DZ\", jsonArray(\n \"01\", \n \"02\", \n \"03\"\n ))\n )))\n ))\n .build())\n .filters(RecordFilterArgs.builder()\n .filter(\"select_first_n\")\n .config(Map.of(\"N\", 1))\n .build())\n .build());\n\n // Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\n var baz = new Source(\"baz\", SourceArgs.builder()\n .zone(\"terraform.example.io.\")\n .domain(\".www.terraform.example.io\")\n .build());\n\n // Basic record showing how to clean a zone or domain field that comes from\n // another non-NS1 resource. DNS names often end in '.' characters to signify\n // the root of the DNS tree, but the NS1 provider does not support this.\n //\n // In other cases, a domain or zone may be passed in with a preceding dot ('.')\n // character which would likewise lead the system to fail.\n var external = new Record(\"external\", RecordArgs.builder()\n .zone(StdFunctions.replace(ReplaceArgs.builder()\n .text(zone)\n .search(\"/(^\\\\.)|(\\\\.$)/\")\n .replace(\"\")\n .build()).result())\n .domain(StdFunctions.replace(ReplaceArgs.builder()\n .text(domain)\n .search(\"/(^\\\\.)|(\\\\.$)/\")\n .replace(\"\")\n .build()).result())\n .type(\"CNAME\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: ns1:Zone\n properties:\n zone: terraform.example.io\n ns1:\n type: ns1:DataSource\n properties:\n name: ns1_source\n sourcetype: nsone_v1\n foo:\n type: ns1:DataFeed\n properties:\n name: foo_feed\n sourceId: ${ns1.id}\n config:\n label: foo\n bar:\n type: ns1:DataFeed\n properties:\n name: bar_feed\n sourceId: ${ns1.id}\n config:\n label: bar\n www:\n type: ns1:Record\n properties:\n zone: ${tld.zone}\n domain: www.${tld.zone}\n type: CNAME\n ttl: 60\n meta:\n up: true\n regions:\n - name: east\n meta:\n georegion: US-EAST\n - name: usa\n meta:\n country: US\n answers:\n - answer: sub1.${tld.zone}\n region: east\n meta:\n up: '{\"feed\":\"${foo.id}\"}'\n - answer: sub2.${tld.zone}\n meta:\n up: '{\"feed\":\"${bar.id}\"}'\n connections: 3\n - answer: sub3.${tld.zone}\n meta:\n pulsar:\n fn::toJSON:\n - job_id: abcdef\n bias: '*0.55'\n a5m_cutoff: 0.9\n subdivisions:\n fn::toJSON:\n BR:\n - SP\n - SC\n DZ:\n - '01'\n - '02'\n - '03'\n filters:\n - filter: select_first_n\n config:\n N: 1\n # Some other non-NS1 provider that returns a zone with a trailing dot and a domain with a leading dot.\n baz:\n type: external:source\n properties:\n zone: terraform.example.io.\n domain: .www.terraform.example.io\n # Basic record showing how to clean a zone or domain field that comes from\n # another non-NS1 resource. DNS names often end in '.' characters to signify\n # the root of the DNS tree, but the NS1 provider does not support this.\n #\n # In other cases, a domain or zone may be passed in with a preceding dot ('.')\n # character which would likewise lead the system to fail.\n external:\n type: ns1:Record\n properties:\n zone:\n fn::invoke:\n function: std:replace\n arguments:\n text: ${zone}\n search: /(^\\.)|(\\.$)/\n replace: \"\"\n return: result\n domain:\n fn::invoke:\n function: std:replace\n arguments:\n text: ${domain}\n search: /(^\\.)|(\\.$)/\n replace: \"\"\n return: result\n type: CNAME\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## NS1 Documentation\n\n[Record Api Doc](https://ns1.com/api#records)\n\n## Import\n\n```sh\n$ pulumi import ns1:index/record:Record \u003cname\u003e \u003czone\u003e/\u003cdomain\u003e/\u003ctype\u003e`\n```\n\nSo for the example above:\n\n```sh\n$ pulumi import ns1:index/record:Record www terraform.example.io/www.terraform.example.io/CNAME`\n```\n\n", "properties": { "answers": { "type": "array", @@ -4048,7 +4048,7 @@ }, "functions": { "ns1:index/getDNSSec:getDNSSec": { - "description": "Provides DNSSEC details about a NS1 Zone.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ns1 from \"@pulumi/ns1\";\n\n// Get DNSSEC details about a NS1 Zone.\nconst exampleZone = new ns1.Zone(\"example\", {\n zone: \"terraform.example.io\",\n dnssec: true,\n});\nconst example = ns1.getDNSSecOutput({\n zone: exampleZone.zone,\n});\n```\n```python\nimport pulumi\nimport pulumi_ns1 as ns1\n\n# Get DNSSEC details about a NS1 Zone.\nexample_zone = ns1.Zone(\"example\",\n zone=\"terraform.example.io\",\n dnssec=True)\nexample = ns1.get_dns_sec_output(zone=example_zone.zone)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ns1 = Pulumi.Ns1;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get DNSSEC details about a NS1 Zone.\n var exampleZone = new Ns1.Zone(\"example\", new()\n {\n ZoneName = \"terraform.example.io\",\n Dnssec = true,\n });\n\n var example = Ns1.GetDNSSec.Invoke(new()\n {\n Zone = exampleZone.ZoneName,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\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// Get DNSSEC details about a NS1 Zone.\n\t\texampleZone, err := ns1.NewZone(ctx, \"example\", \u0026ns1.ZoneArgs{\n\t\t\tZone: pulumi.String(\"terraform.example.io\"),\n\t\t\tDnssec: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = ns1.GetDNSSecOutput(ctx, ns1.GetDNSSecOutputArgs{\n\t\t\tZone: exampleZone.Zone,\n\t\t}, nil)\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.ns1.Zone;\nimport com.pulumi.ns1.ZoneArgs;\nimport com.pulumi.ns1.Ns1Functions;\nimport com.pulumi.ns1.inputs.GetDNSSecArgs;\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 // Get DNSSEC details about a NS1 Zone.\n var exampleZone = new Zone(\"exampleZone\", ZoneArgs.builder()\n .zone(\"terraform.example.io\")\n .dnssec(true)\n .build());\n\n final var example = Ns1Functions.getDNSSec(GetDNSSecArgs.builder()\n .zone(exampleZone.zone())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Get DNSSEC details about a NS1 Zone.\n exampleZone:\n type: ns1:Zone\n name: example\n properties:\n zone: terraform.example.io\n dnssec: true\nvariables:\n example:\n fn::invoke:\n Function: ns1:getDNSSec\n Arguments:\n zone: ${exampleZone.zone}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Provides DNSSEC details about a NS1 Zone.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ns1 from \"@pulumi/ns1\";\n\n// Get DNSSEC details about a NS1 Zone.\nconst exampleZone = new ns1.Zone(\"example\", {\n zone: \"terraform.example.io\",\n dnssec: true,\n});\nconst example = ns1.getDNSSecOutput({\n zone: exampleZone.zone,\n});\n```\n```python\nimport pulumi\nimport pulumi_ns1 as ns1\n\n# Get DNSSEC details about a NS1 Zone.\nexample_zone = ns1.Zone(\"example\",\n zone=\"terraform.example.io\",\n dnssec=True)\nexample = ns1.get_dns_sec_output(zone=example_zone.zone)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ns1 = Pulumi.Ns1;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get DNSSEC details about a NS1 Zone.\n var exampleZone = new Ns1.Zone(\"example\", new()\n {\n ZoneName = \"terraform.example.io\",\n Dnssec = true,\n });\n\n var example = Ns1.GetDNSSec.Invoke(new()\n {\n Zone = exampleZone.ZoneName,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\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// Get DNSSEC details about a NS1 Zone.\n\t\texampleZone, err := ns1.NewZone(ctx, \"example\", \u0026ns1.ZoneArgs{\n\t\t\tZone: pulumi.String(\"terraform.example.io\"),\n\t\t\tDnssec: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = ns1.GetDNSSecOutput(ctx, ns1.GetDNSSecOutputArgs{\n\t\t\tZone: exampleZone.Zone,\n\t\t}, nil)\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.ns1.Zone;\nimport com.pulumi.ns1.ZoneArgs;\nimport com.pulumi.ns1.Ns1Functions;\nimport com.pulumi.ns1.inputs.GetDNSSecArgs;\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 // Get DNSSEC details about a NS1 Zone.\n var exampleZone = new Zone(\"exampleZone\", ZoneArgs.builder()\n .zone(\"terraform.example.io\")\n .dnssec(true)\n .build());\n\n final var example = Ns1Functions.getDNSSec(GetDNSSecArgs.builder()\n .zone(exampleZone.zone())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Get DNSSEC details about a NS1 Zone.\n exampleZone:\n type: ns1:Zone\n name: example\n properties:\n zone: terraform.example.io\n dnssec: true\nvariables:\n example:\n fn::invoke:\n function: ns1:getDNSSec\n arguments:\n zone: ${exampleZone.zone}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getDNSSec.\n", "properties": { @@ -4097,7 +4097,7 @@ } }, "ns1:index/getMonitoringRegions:getMonitoringRegions": { - "description": "Provides details of all available monitoring regions.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ns1 from \"@pulumi/ns1\";\n\n// Get details of all available monitoring regions.\nconst example = ns1.getMonitoringRegions({});\n```\n```python\nimport pulumi\nimport pulumi_ns1 as ns1\n\n# Get details of all available monitoring regions.\nexample = ns1.get_monitoring_regions()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ns1 = Pulumi.Ns1;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get details of all available monitoring regions.\n var example = Ns1.GetMonitoringRegions.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\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// Get details of all available monitoring regions.\n\t\t_, err := ns1.GetMonitoringRegions(ctx, \u0026ns1.GetMonitoringRegionsArgs{}, 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.ns1.Ns1Functions;\nimport com.pulumi.ns1.inputs.GetMonitoringRegionsArgs;\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 // Get details of all available monitoring regions.\n final var example = Ns1Functions.getMonitoringRegions();\n\n }\n}\n```\n```yaml\nvariables:\n # Get details of all available monitoring regions.\n example:\n fn::invoke:\n Function: ns1:getMonitoringRegions\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Provides details of all available monitoring regions.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ns1 from \"@pulumi/ns1\";\n\n// Get details of all available monitoring regions.\nconst example = ns1.getMonitoringRegions({});\n```\n```python\nimport pulumi\nimport pulumi_ns1 as ns1\n\n# Get details of all available monitoring regions.\nexample = ns1.get_monitoring_regions()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ns1 = Pulumi.Ns1;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get details of all available monitoring regions.\n var example = Ns1.GetMonitoringRegions.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\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// Get details of all available monitoring regions.\n\t\t_, err := ns1.GetMonitoringRegions(ctx, \u0026ns1.GetMonitoringRegionsArgs{}, 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.ns1.Ns1Functions;\nimport com.pulumi.ns1.inputs.GetMonitoringRegionsArgs;\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 // Get details of all available monitoring regions.\n final var example = Ns1Functions.getMonitoringRegions();\n\n }\n}\n```\n```yaml\nvariables:\n # Get details of all available monitoring regions.\n example:\n fn::invoke:\n function: ns1:getMonitoringRegions\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getMonitoringRegions.\n", "properties": { @@ -4133,7 +4133,7 @@ } }, "ns1:index/getNetworks:getNetworks": { - "description": "Provides details about NS1 Networks. Use this if you would simply like to read\ninformation from NS1 into your configurations. For read/write operations, you\nshould use a resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ns1 from \"@pulumi/ns1\";\n\n// Get details about NS1 Networks.\nconst example = ns1.getNetworks({});\n```\n```python\nimport pulumi\nimport pulumi_ns1 as ns1\n\n# Get details about NS1 Networks.\nexample = ns1.get_networks()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ns1 = Pulumi.Ns1;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get details about NS1 Networks.\n var example = Ns1.GetNetworks.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\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// Get details about NS1 Networks.\n\t\t_, err := ns1.GetNetworks(ctx, map[string]interface{}{}, 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.ns1.Ns1Functions;\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 // Get details about NS1 Networks.\n final var example = Ns1Functions.getNetworks();\n\n }\n}\n```\n```yaml\nvariables:\n # Get details about NS1 Networks.\n example:\n fn::invoke:\n Function: ns1:getNetworks\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Provides details about NS1 Networks. Use this if you would simply like to read\ninformation from NS1 into your configurations. For read/write operations, you\nshould use a resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ns1 from \"@pulumi/ns1\";\n\n// Get details about NS1 Networks.\nconst example = ns1.getNetworks({});\n```\n```python\nimport pulumi\nimport pulumi_ns1 as ns1\n\n# Get details about NS1 Networks.\nexample = ns1.get_networks()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ns1 = Pulumi.Ns1;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get details about NS1 Networks.\n var example = Ns1.GetNetworks.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\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// Get details about NS1 Networks.\n\t\t_, err := ns1.GetNetworks(ctx, map[string]interface{}{}, 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.ns1.Ns1Functions;\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 // Get details about NS1 Networks.\n final var example = Ns1Functions.getNetworks();\n\n }\n}\n```\n```yaml\nvariables:\n # Get details about NS1 Networks.\n example:\n fn::invoke:\n function: ns1:getNetworks\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "outputs": { "description": "A collection of values returned by getNetworks.\n", "properties": { @@ -4157,7 +4157,7 @@ } }, "ns1:index/getRecord:getRecord": { - "description": "Provides details about a NS1 Record. Use this if you would simply like to read\ninformation from NS1 into your configurations. For read/write operations, you\nshould use a resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ns1 from \"@pulumi/ns1\";\n\n// Get details about a NS1 Record.\nconst example = ns1.getRecord({\n zone: \"example.io\",\n domain: \"terraform.example.io\",\n type: \"A\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ns1 as ns1\n\n# Get details about a NS1 Record.\nexample = ns1.get_record(zone=\"example.io\",\n domain=\"terraform.example.io\",\n type=\"A\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ns1 = Pulumi.Ns1;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get details about a NS1 Record.\n var example = Ns1.GetRecord.Invoke(new()\n {\n Zone = \"example.io\",\n Domain = \"terraform.example.io\",\n Type = \"A\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\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// Get details about a NS1 Record.\n\t\t_, err := ns1.LookupRecord(ctx, \u0026ns1.LookupRecordArgs{\n\t\t\tZone: \"example.io\",\n\t\t\tDomain: \"terraform.example.io\",\n\t\t\tType: \"A\",\n\t\t}, 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.ns1.Ns1Functions;\nimport com.pulumi.ns1.inputs.GetRecordArgs;\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 // Get details about a NS1 Record.\n final var example = Ns1Functions.getRecord(GetRecordArgs.builder()\n .zone(\"example.io\")\n .domain(\"terraform.example.io\")\n .type(\"A\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get details about a NS1 Record.\n example:\n fn::invoke:\n Function: ns1:getRecord\n Arguments:\n zone: example.io\n domain: terraform.example.io\n type: A\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Provides details about a NS1 Record. Use this if you would simply like to read\ninformation from NS1 into your configurations. For read/write operations, you\nshould use a resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ns1 from \"@pulumi/ns1\";\n\n// Get details about a NS1 Record.\nconst example = ns1.getRecord({\n zone: \"example.io\",\n domain: \"terraform.example.io\",\n type: \"A\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ns1 as ns1\n\n# Get details about a NS1 Record.\nexample = ns1.get_record(zone=\"example.io\",\n domain=\"terraform.example.io\",\n type=\"A\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ns1 = Pulumi.Ns1;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get details about a NS1 Record.\n var example = Ns1.GetRecord.Invoke(new()\n {\n Zone = \"example.io\",\n Domain = \"terraform.example.io\",\n Type = \"A\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\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// Get details about a NS1 Record.\n\t\t_, err := ns1.LookupRecord(ctx, \u0026ns1.LookupRecordArgs{\n\t\t\tZone: \"example.io\",\n\t\t\tDomain: \"terraform.example.io\",\n\t\t\tType: \"A\",\n\t\t}, 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.ns1.Ns1Functions;\nimport com.pulumi.ns1.inputs.GetRecordArgs;\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 // Get details about a NS1 Record.\n final var example = Ns1Functions.getRecord(GetRecordArgs.builder()\n .zone(\"example.io\")\n .domain(\"terraform.example.io\")\n .type(\"A\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get details about a NS1 Record.\n example:\n fn::invoke:\n function: ns1:getRecord\n arguments:\n zone: example.io\n domain: terraform.example.io\n type: A\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getRecord.\n", "properties": { @@ -4277,7 +4277,7 @@ } }, "ns1:index/getZone:getZone": { - "description": "Provides details about a NS1 Zone. Use this if you would simply like to read\ninformation from NS1 into your configurations. For read/write operations, you\nshould use a resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ns1 from \"@pulumi/ns1\";\n\n// Get details about a NS1 Zone.\nconst example = ns1.getZone({\n zone: \"terraform.example.io\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ns1 as ns1\n\n# Get details about a NS1 Zone.\nexample = ns1.get_zone(zone=\"terraform.example.io\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ns1 = Pulumi.Ns1;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get details about a NS1 Zone.\n var example = Ns1.GetZone.Invoke(new()\n {\n Zone = \"terraform.example.io\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\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// Get details about a NS1 Zone.\n\t\t_, err := ns1.LookupZone(ctx, \u0026ns1.LookupZoneArgs{\n\t\t\tZone: \"terraform.example.io\",\n\t\t}, 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.ns1.Ns1Functions;\nimport com.pulumi.ns1.inputs.GetZoneArgs;\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 // Get details about a NS1 Zone.\n final var example = Ns1Functions.getZone(GetZoneArgs.builder()\n .zone(\"terraform.example.io\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get details about a NS1 Zone.\n example:\n fn::invoke:\n Function: ns1:getZone\n Arguments:\n zone: terraform.example.io\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Provides details about a NS1 Zone. Use this if you would simply like to read\ninformation from NS1 into your configurations. For read/write operations, you\nshould use a resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ns1 from \"@pulumi/ns1\";\n\n// Get details about a NS1 Zone.\nconst example = ns1.getZone({\n zone: \"terraform.example.io\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ns1 as ns1\n\n# Get details about a NS1 Zone.\nexample = ns1.get_zone(zone=\"terraform.example.io\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ns1 = Pulumi.Ns1;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get details about a NS1 Zone.\n var example = Ns1.GetZone.Invoke(new()\n {\n Zone = \"terraform.example.io\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-ns1/sdk/v3/go/ns1\"\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// Get details about a NS1 Zone.\n\t\t_, err := ns1.LookupZone(ctx, \u0026ns1.LookupZoneArgs{\n\t\t\tZone: \"terraform.example.io\",\n\t\t}, 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.ns1.Ns1Functions;\nimport com.pulumi.ns1.inputs.GetZoneArgs;\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 // Get details about a NS1 Zone.\n final var example = Ns1Functions.getZone(GetZoneArgs.builder()\n .zone(\"terraform.example.io\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get details about a NS1 Zone.\n example:\n fn::invoke:\n function: ns1:getZone\n arguments:\n zone: terraform.example.io\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getZone.\n", "properties": { diff --git a/provider/go.mod b/provider/go.mod index b4abddc..6f5d82b 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -12,8 +12,8 @@ replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraf require ( github.com/ns1-terraform/terraform-provider-ns1 v0.0.0 - github.com/pulumi/pulumi-terraform-bridge/v3 v3.96.0 - github.com/pulumi/pulumi/sdk/v3 v3.140.0 + github.com/pulumi/pulumi-terraform-bridge/v3 v3.96.1-0.20241206114232-0852d643b60d + github.com/pulumi/pulumi/sdk/v3 v3.142.0 ) require ( @@ -143,9 +143,9 @@ require ( github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect github.com/pulumi/esc v0.10.0 // indirect github.com/pulumi/inflector v0.1.1 // indirect - github.com/pulumi/pulumi-java/pkg v0.17.0 // indirect - github.com/pulumi/pulumi-yaml v1.11.2 // indirect - github.com/pulumi/pulumi/pkg/v3 v3.140.0 // indirect + github.com/pulumi/pulumi-java/pkg v0.18.0 // indirect + github.com/pulumi/pulumi-yaml v1.12.0 // indirect + github.com/pulumi/pulumi/pkg/v3 v3.142.0 // 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 e9fcc65..502861d 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1916,16 +1916,16 @@ github.com/pulumi/inflector v0.1.1 h1:dvlxlWtXwOJTUUtcYDvwnl6Mpg33prhK+7mzeF+Sob github.com/pulumi/inflector v0.1.1/go.mod h1:HUFCjcPTz96YtTuUlwG3i3EZG4WlniBvR9bd+iJxCUY= github.com/pulumi/providertest v0.1.3 h1:GpNKRy/haNjRHiUA9bi4diU4Op2zf3axYXbga5AepHg= github.com/pulumi/providertest v0.1.3/go.mod h1:GcsqEGgSngwaNOD+kICJPIUQlnA911fGBU8HDlJvVL0= -github.com/pulumi/pulumi-java/pkg v0.17.0 h1:KmaVLrVmlkzShOfaJNJDlckorbFm8dM/C7L4hj6LX8U= -github.com/pulumi/pulumi-java/pkg v0.17.0/go.mod h1:ji4U4H7t81X4aaE88D9+z5CmKH/QoLwQi9N1iGl+2KQ= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.96.0 h1:uJB3tM1j+9SKeXLCAx3DBVHsYk4ddXNrVoiqpgXal2Q= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.96.0/go.mod h1:WnOTAfdtm5+kW3rIU0rLhxFSEHtJIMf19FdOU6NFXG0= -github.com/pulumi/pulumi-yaml v1.11.2 h1:MU7TTNbruGCSgNHhaBygjIbLWm3WSbd1q98GpMIgQzE= -github.com/pulumi/pulumi-yaml v1.11.2/go.mod h1:RdXRBupRGGAD1kbYNG1V1h6pyFnXisvQsl0AANvVjGI= -github.com/pulumi/pulumi/pkg/v3 v3.140.0 h1:/bvHa19HY/6qHWvuAOVII8qr72MDGGczBWlPYlPo3j0= -github.com/pulumi/pulumi/pkg/v3 v3.140.0/go.mod h1:rcTtSyisd7BzZTugNk/s9zlYgX9S0S10+pha3Tko6yM= -github.com/pulumi/pulumi/sdk/v3 v3.140.0 h1:+Z/RBvdYg7tBNkBwk4p/FzlV7niBT3TbLAICq/Y0LDU= -github.com/pulumi/pulumi/sdk/v3 v3.140.0/go.mod h1:PvKsX88co8XuwuPdzolMvew5lZV+4JmZfkeSjj7A6dI= +github.com/pulumi/pulumi-java/pkg v0.18.0 h1:3PApc5YegH69n6oubB63mqI97pF+oQywWr7ii4082Mw= +github.com/pulumi/pulumi-java/pkg v0.18.0/go.mod h1:YKYYFEb3Jvzf/dDJo0xOeEkIfBAMkkkdhXulauvEjmc= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.96.1-0.20241206114232-0852d643b60d h1:vWIXiBALW2hDTtkxjfbLJqit6G3oxv5JDxlLs5GFH2Y= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.96.1-0.20241206114232-0852d643b60d/go.mod h1:B/Auryr+yVUkLOMzgpFe7HLwKAtXc6YJwpAXfNGyLPk= +github.com/pulumi/pulumi-yaml v1.12.0 h1:ThJP+EBqeJyCnS6w6/PwcEFOT5o112qv0lObhefmFCk= +github.com/pulumi/pulumi-yaml v1.12.0/go.mod h1:EhZd1XDfuLa15O51qVVE16U6r8ldK9mLIBclqWCX27Y= +github.com/pulumi/pulumi/pkg/v3 v3.142.0 h1:UE8TFyXrlxvPrATpd3Kl3En34KrFIFWOxxNAodywPNU= +github.com/pulumi/pulumi/pkg/v3 v3.142.0/go.mod h1:3k6WwRIT7veiDnk3Yo2NtqEYX+4dgLCrMIFvEOnjQqI= +github.com/pulumi/pulumi/sdk/v3 v3.142.0 h1:SmcVddGuvwAh3g3XUVQQ5gVRQUKH1yZ6iETpDNHIHlw= +github.com/pulumi/pulumi/sdk/v3 v3.142.0/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/sdk/go.mod b/sdk/go.mod index 40c1232..c12346d 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.140.0 + github.com/pulumi/pulumi/sdk/v3 v3.142.0 ) require ( diff --git a/sdk/go.sum b/sdk/go.sum index 5d5453c..54cd0ac 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.140.0 h1:+Z/RBvdYg7tBNkBwk4p/FzlV7niBT3TbLAICq/Y0LDU= -github.com/pulumi/pulumi/sdk/v3 v3.140.0/go.mod h1:PvKsX88co8XuwuPdzolMvew5lZV+4JmZfkeSjj7A6dI= +github.com/pulumi/pulumi/sdk/v3 v3.142.0 h1:SmcVddGuvwAh3g3XUVQQ5gVRQUKH1yZ6iETpDNHIHlw= +github.com/pulumi/pulumi/sdk/v3 v3.142.0/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/java/build.gradle b/sdk/java/build.gradle index c87225d..0f0d059 100644 --- a/sdk/java/build.gradle +++ b/sdk/java/build.gradle @@ -5,7 +5,7 @@ plugins { id("signing") id("java-library") id("maven-publish") - id("io.github.gradle-nexus.publish-plugin") version "1.1.0" + id("io.github.gradle-nexus.publish-plugin") version "2.0.0" } group = "com.pulumi" @@ -44,7 +44,7 @@ repositories { dependencies { implementation("com.google.code.findbugs:jsr305:3.0.2") implementation("com.google.code.gson:gson:2.8.9") - implementation("com.pulumi:pulumi:0.17.0") + implementation("com.pulumi:pulumi:0.18.0") } task sourcesJar(type: Jar) { diff --git a/sdk/nodejs/getDNSSec.ts b/sdk/nodejs/getDNSSec.ts index f1f5d50..de34363 100644 --- a/sdk/nodejs/getDNSSec.ts +++ b/sdk/nodejs/getDNSSec.ts @@ -80,7 +80,7 @@ export interface GetDNSSecResult { * }); * ``` */ -export function getDNSSecOutput(args: GetDNSSecOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { +export function getDNSSecOutput(args: GetDNSSecOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("ns1:index/getDNSSec:getDNSSec", { "zone": args.zone, diff --git a/sdk/nodejs/getMonitoringRegions.ts b/sdk/nodejs/getMonitoringRegions.ts index 1c69783..f72105a 100644 --- a/sdk/nodejs/getMonitoringRegions.ts +++ b/sdk/nodejs/getMonitoringRegions.ts @@ -65,7 +65,7 @@ export interface GetMonitoringRegionsResult { * const example = ns1.getMonitoringRegions({}); * ``` */ -export function getMonitoringRegionsOutput(args?: GetMonitoringRegionsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { +export function getMonitoringRegionsOutput(args?: GetMonitoringRegionsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("ns1:index/getMonitoringRegions:getMonitoringRegions", { diff --git a/sdk/nodejs/getNetworks.ts b/sdk/nodejs/getNetworks.ts index b966cd7..a554093 100644 --- a/sdk/nodejs/getNetworks.ts +++ b/sdk/nodejs/getNetworks.ts @@ -56,7 +56,7 @@ export interface GetNetworksResult { * const example = ns1.getNetworks({}); * ``` */ -export function getNetworksOutput(opts?: pulumi.InvokeOptions): pulumi.Output { +export function getNetworksOutput(opts?: pulumi.InvokeOutputOptions): pulumi.Output { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("ns1:index/getNetworks:getNetworks", { }, opts); diff --git a/sdk/nodejs/getRecord.ts b/sdk/nodejs/getRecord.ts index 067cc37..3f6f9ce 100644 --- a/sdk/nodejs/getRecord.ts +++ b/sdk/nodejs/getRecord.ts @@ -115,7 +115,7 @@ export interface GetRecordResult { * }); * ``` */ -export function getRecordOutput(args: GetRecordOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { +export function getRecordOutput(args: GetRecordOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("ns1:index/getRecord:getRecord", { "domain": args.domain, diff --git a/sdk/nodejs/getZone.ts b/sdk/nodejs/getZone.ts index 153b41b..b49b4e9 100644 --- a/sdk/nodejs/getZone.ts +++ b/sdk/nodejs/getZone.ts @@ -135,7 +135,7 @@ export interface GetZoneResult { * }); * ``` */ -export function getZoneOutput(args: GetZoneOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { +export function getZoneOutput(args: GetZoneOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("ns1:index/getZone:getZone", { "additionalPorts": args.additionalPorts, diff --git a/sdk/python/pulumi_ns1/get_dns_sec.py b/sdk/python/pulumi_ns1/get_dns_sec.py index 42b459b..733bd84 100644 --- a/sdk/python/pulumi_ns1/get_dns_sec.py +++ b/sdk/python/pulumi_ns1/get_dns_sec.py @@ -116,7 +116,7 @@ def get_dns_sec(zone: Optional[str] = None, keys=pulumi.get(__ret__, 'keys'), zone=pulumi.get(__ret__, 'zone')) def get_dns_sec_output(zone: Optional[pulumi.Input[str]] = None, - opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDNSSecResult]: + opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDNSSecResult]: """ Provides DNSSEC details about a NS1 Zone. @@ -138,7 +138,7 @@ def get_dns_sec_output(zone: Optional[pulumi.Input[str]] = None, """ __args__ = dict() __args__['zone'] = zone - opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('ns1:index/getDNSSec:getDNSSec', __args__, opts=opts, typ=GetDNSSecResult) return __ret__.apply(lambda __response__: GetDNSSecResult( delegations=pulumi.get(__response__, 'delegations'), diff --git a/sdk/python/pulumi_ns1/get_monitoring_regions.py b/sdk/python/pulumi_ns1/get_monitoring_regions.py index 86a80ee..0942952 100644 --- a/sdk/python/pulumi_ns1/get_monitoring_regions.py +++ b/sdk/python/pulumi_ns1/get_monitoring_regions.py @@ -92,7 +92,7 @@ def get_monitoring_regions(regions: Optional[Sequence[Union['GetMonitoringRegion id=pulumi.get(__ret__, 'id'), regions=pulumi.get(__ret__, 'regions')) def get_monitoring_regions_output(regions: Optional[pulumi.Input[Optional[Sequence[Union['GetMonitoringRegionsRegionArgs', 'GetMonitoringRegionsRegionArgsDict']]]]] = None, - opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetMonitoringRegionsResult]: + opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetMonitoringRegionsResult]: """ Provides details of all available monitoring regions. @@ -112,7 +112,7 @@ def get_monitoring_regions_output(regions: Optional[pulumi.Input[Optional[Sequen """ __args__ = dict() __args__['regions'] = regions - opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('ns1:index/getMonitoringRegions:getMonitoringRegions', __args__, opts=opts, typ=GetMonitoringRegionsResult) return __ret__.apply(lambda __response__: GetMonitoringRegionsResult( id=pulumi.get(__response__, 'id'), diff --git a/sdk/python/pulumi_ns1/get_networks.py b/sdk/python/pulumi_ns1/get_networks.py index 20c20ae..1aa3346 100644 --- a/sdk/python/pulumi_ns1/get_networks.py +++ b/sdk/python/pulumi_ns1/get_networks.py @@ -86,7 +86,7 @@ def get_networks(opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNet return AwaitableGetNetworksResult( id=pulumi.get(__ret__, 'id'), networks=pulumi.get(__ret__, 'networks')) -def get_networks_output(opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetNetworksResult]: +def get_networks_output(opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetNetworksResult]: """ Provides details about NS1 Networks. Use this if you would simply like to read information from NS1 into your configurations. For read/write operations, you @@ -103,7 +103,7 @@ def get_networks_output(opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.O ``` """ __args__ = dict() - opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('ns1:index/getNetworks:getNetworks', __args__, opts=opts, typ=GetNetworksResult) return __ret__.apply(lambda __response__: GetNetworksResult( id=pulumi.get(__response__, 'id'), diff --git a/sdk/python/pulumi_ns1/get_record.py b/sdk/python/pulumi_ns1/get_record.py index 747b44c..cc8f790 100644 --- a/sdk/python/pulumi_ns1/get_record.py +++ b/sdk/python/pulumi_ns1/get_record.py @@ -249,7 +249,7 @@ def get_record(domain: Optional[str] = None, def get_record_output(domain: Optional[pulumi.Input[str]] = None, type: Optional[pulumi.Input[str]] = None, zone: Optional[pulumi.Input[str]] = None, - opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRecordResult]: + opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetRecordResult]: """ Provides details about a NS1 Record. Use this if you would simply like to read information from NS1 into your configurations. For read/write operations, you @@ -276,7 +276,7 @@ def get_record_output(domain: Optional[pulumi.Input[str]] = None, __args__['domain'] = domain __args__['type'] = type __args__['zone'] = zone - opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('ns1:index/getRecord:getRecord', __args__, opts=opts, typ=GetRecordResult) return __ret__.apply(lambda __response__: GetRecordResult( answers=pulumi.get(__response__, 'answers'), diff --git a/sdk/python/pulumi_ns1/get_zone.py b/sdk/python/pulumi_ns1/get_zone.py index 3472e49..44a89eb 100644 --- a/sdk/python/pulumi_ns1/get_zone.py +++ b/sdk/python/pulumi_ns1/get_zone.py @@ -301,7 +301,7 @@ def get_zone_output(additional_ports: Optional[pulumi.Input[Optional[Sequence[in additional_primaries: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, primary_port: Optional[pulumi.Input[Optional[int]]] = None, zone: Optional[pulumi.Input[str]] = None, - opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetZoneResult]: + opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetZoneResult]: """ Provides details about a NS1 Zone. Use this if you would simply like to read information from NS1 into your configurations. For read/write operations, you @@ -327,7 +327,7 @@ def get_zone_output(additional_ports: Optional[pulumi.Input[Optional[Sequence[in __args__['additionalPrimaries'] = additional_primaries __args__['primaryPort'] = primary_port __args__['zone'] = zone - opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('ns1:index/getZone:getZone', __args__, opts=opts, typ=GetZoneResult) return __ret__.apply(lambda __response__: GetZoneResult( additional_ports=pulumi.get(__response__, 'additional_ports'),