diff --git a/provider/cmd/pulumi-resource-scaleway/schema.json b/provider/cmd/pulumi-resource-scaleway/schema.json
index c0ea91e0..8a7582b0 100644
--- a/provider/cmd/pulumi-resource-scaleway/schema.json
+++ b/provider/cmd/pulumi-resource-scaleway/schema.json
@@ -739,147 +739,6 @@
}
}
},
- "scaleway:index/DocumentdbPrivateNetworkEndpointPrivateNetwork:DocumentdbPrivateNetworkEndpointPrivateNetwork": {
- "properties": {
- "hostname": {
- "type": "string",
- "description": "The hostname of your endpoint.\n"
- },
- "id": {
- "type": "string",
- "description": "The private network ID.\n"
- },
- "ip": {
- "type": "string",
- "description": "The IP of your private network service.\n"
- },
- "ipNet": {
- "type": "string",
- "description": "The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM) service if not set.\n",
- "willReplaceOnChanges": true
- },
- "name": {
- "type": "string",
- "description": "The name of your private service.\n"
- },
- "port": {
- "type": "integer",
- "description": "The port of your private service.\n"
- },
- "zone": {
- "type": "string",
- "description": "The zone of your endpoint.\n",
- "willReplaceOnChanges": true
- }
- },
- "type": "object",
- "required": [
- "id"
- ],
- "language": {
- "nodejs": {
- "requiredOutputs": [
- "hostname",
- "id",
- "ip",
- "ipNet",
- "name",
- "port",
- "zone"
- ]
- }
- }
- },
- "scaleway:index/DocumentdbReadReplicaDirectAccess:DocumentdbReadReplicaDirectAccess": {
- "properties": {
- "endpointId": {
- "type": "string",
- "description": "The ID of the endpoint of the read replica.\n"
- },
- "hostname": {
- "type": "string",
- "description": "Hostname of the endpoint. Only one of ip and hostname may be set.\n"
- },
- "ip": {
- "type": "string",
- "description": "IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.\n"
- },
- "name": {
- "type": "string",
- "description": "Name of the endpoint.\n"
- },
- "port": {
- "type": "integer",
- "description": "TCP port of the endpoint.\n"
- }
- },
- "type": "object",
- "language": {
- "nodejs": {
- "requiredOutputs": [
- "endpointId",
- "hostname",
- "ip",
- "name",
- "port"
- ]
- }
- }
- },
- "scaleway:index/DocumentdbReadReplicaPrivateNetwork:DocumentdbReadReplicaPrivateNetwork": {
- "properties": {
- "endpointId": {
- "type": "string",
- "description": "The ID of the endpoint of the read replica.\n"
- },
- "hostname": {
- "type": "string",
- "description": "Hostname of the endpoint. Only one of ip and hostname may be set.\n"
- },
- "ip": {
- "type": "string",
- "description": "IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.\n"
- },
- "name": {
- "type": "string",
- "description": "Name of the endpoint.\n"
- },
- "port": {
- "type": "integer",
- "description": "TCP port of the endpoint.\n"
- },
- "privateNetworkId": {
- "type": "string",
- "description": "UUID of the private network to be connected to the read replica.\n"
- },
- "serviceIp": {
- "type": "string",
- "description": "The IP network address within the private subnet. This must be an IPv4 address with a\nCIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM)\nservice if not set.\n"
- },
- "zone": {
- "type": "string",
- "description": "Private network zone\n"
- }
- },
- "type": "object",
- "required": [
- "privateNetworkId"
- ],
- "language": {
- "nodejs": {
- "requiredOutputs": [
- "endpointId",
- "hostname",
- "ip",
- "name",
- "port",
- "privateNetworkId",
- "serviceIp",
- "zone"
- ]
- }
- }
- },
"scaleway:index/DomainRecordGeoIp:DomainRecordGeoIp": {
"properties": {
"matches": {
@@ -7283,7 +7142,7 @@
}
},
"scaleway:index/cockpitAlertManager:CockpitAlertManager": {
- "description": "The `scaleway.CockpitAlertManager` resource allows you to enable and manage the Scaleway Cockpit [alert manager](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#alert-manager).\n\nRefer to Cockpit's [product documentation](https://www.scaleway.com/en/docs/observability/cockpit/concepts/) and [API documentation](https://www.scaleway.com/en/developers/api/cockpit/regional-api) for more information.\n\n\n## Example Usage\n\n## Import\n\nThis section explains how to import alert managers using the ID of the Project associated with Cockpit.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/cockpitAlertManager:CockpitAlertManager main fr-par/11111111-1111-1111-1111-111111111111\n```\n\n",
+ "description": "The `scaleway.CockpitAlertManager` resource allows you to enable and manage the Scaleway Cockpit [alert manager](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#alert-manager).\n\nRefer to Cockpit's [product documentation](https://www.scaleway.com/en/docs/observability/cockpit/concepts/) and [API documentation](https://www.scaleway.com/en/developers/api/cockpit/regional-api) for more information.\n\n\n## Example Usage\n\n### Enable the alert manager and configure managed alerts\n\nThe following commands allow you to:\n\n- enable the alert manager in a Project named `tf_test_project`\n- enable [managed alerts](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#managed-alerts)\n- set up [contact points](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#contact-points) to receive alert notifications\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst project = new scaleway.AccountProject(\"project\", {name: \"tf_test_project\"});\nconst alertManager = new scaleway.CockpitAlertManager(\"alert_manager\", {\n projectId: project.id,\n enableManagedAlerts: true,\n contactPoints: [\n {\n email: \"alert1@example.com\",\n },\n {\n email: \"alert2@example.com\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\nproject = scaleway.AccountProject(\"project\", name=\"tf_test_project\")\nalert_manager = scaleway.CockpitAlertManager(\"alert_manager\",\n project_id=project.id,\n enable_managed_alerts=True,\n contact_points=[\n {\n \"email\": \"alert1@example.com\",\n },\n {\n \"email\": \"alert2@example.com\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var project = new Scaleway.AccountProject(\"project\", new()\n {\n Name = \"tf_test_project\",\n });\n\n var alertManager = new Scaleway.CockpitAlertManager(\"alert_manager\", new()\n {\n ProjectId = project.Id,\n EnableManagedAlerts = true,\n ContactPoints = new[]\n {\n new Scaleway.Inputs.CockpitAlertManagerContactPointArgs\n {\n Email = \"alert1@example.com\",\n },\n new Scaleway.Inputs.CockpitAlertManagerContactPointArgs\n {\n Email = \"alert2@example.com\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tproject, err := scaleway.NewAccountProject(ctx, \"project\", \u0026scaleway.AccountProjectArgs{\n\t\t\tName: pulumi.String(\"tf_test_project\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewCockpitAlertManager(ctx, \"alert_manager\", \u0026scaleway.CockpitAlertManagerArgs{\n\t\t\tProjectId: project.ID(),\n\t\t\tEnableManagedAlerts: pulumi.Bool(true),\n\t\t\tContactPoints: scaleway.CockpitAlertManagerContactPointArray{\n\t\t\t\t\u0026scaleway.CockpitAlertManagerContactPointArgs{\n\t\t\t\t\tEmail: pulumi.String(\"alert1@example.com\"),\n\t\t\t\t},\n\t\t\t\t\u0026scaleway.CockpitAlertManagerContactPointArgs{\n\t\t\t\t\tEmail: pulumi.String(\"alert2@example.com\"),\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\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.scaleway.AccountProject;\nimport com.pulumi.scaleway.AccountProjectArgs;\nimport com.pulumi.scaleway.CockpitAlertManager;\nimport com.pulumi.scaleway.CockpitAlertManagerArgs;\nimport com.pulumi.scaleway.inputs.CockpitAlertManagerContactPointArgs;\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 project = new AccountProject(\"project\", AccountProjectArgs.builder()\n .name(\"tf_test_project\")\n .build());\n\n var alertManager = new CockpitAlertManager(\"alertManager\", CockpitAlertManagerArgs.builder()\n .projectId(project.id())\n .enableManagedAlerts(true)\n .contactPoints( \n CockpitAlertManagerContactPointArgs.builder()\n .email(\"alert1@example.com\")\n .build(),\n CockpitAlertManagerContactPointArgs.builder()\n .email(\"alert2@example.com\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n project:\n type: scaleway:AccountProject\n properties:\n name: tf_test_project\n alertManager:\n type: scaleway:CockpitAlertManager\n name: alert_manager\n properties:\n projectId: ${project.id}\n enableManagedAlerts: true\n contactPoints:\n - email: alert1@example.com\n - email: alert2@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis section explains how to import alert managers using the ID of the Project associated with Cockpit.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/cockpitAlertManager:CockpitAlertManager main fr-par/11111111-1111-1111-1111-111111111111\n```\n\n",
"properties": {
"alertManagerUrl": {
"type": "string",
@@ -9478,761 +9337,155 @@
"type": "object"
}
},
- "scaleway:index/documentdbDatabase:DocumentdbDatabase": {
- "description": "Creates and manages Scaleway DocumentDB database.\n\n## Example Usage\n\n### Basic\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst instance = new scaleway.DocumentdbInstance(\"instance\", {\n name: \"test-document_db-basic\",\n nodeType: \"docdb-play2-pico\",\n engine: \"FerretDB-1\",\n userName: \"my_initial_user\",\n password: \"thiZ_is_v\u0026ry_s3cret\",\n volumeSizeInGb: 20,\n});\nconst main = new scaleway.DocumentdbDatabase(\"main\", {\n instanceId: instance.id,\n name: \"my-new-database\",\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\ninstance = scaleway.DocumentdbInstance(\"instance\",\n name=\"test-document_db-basic\",\n node_type=\"docdb-play2-pico\",\n engine=\"FerretDB-1\",\n user_name=\"my_initial_user\",\n password=\"thiZ_is_v\u0026ry_s3cret\",\n volume_size_in_gb=20)\nmain = scaleway.DocumentdbDatabase(\"main\",\n instance_id=instance.id,\n name=\"my-new-database\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var instance = new Scaleway.DocumentdbInstance(\"instance\", new()\n {\n Name = \"test-document_db-basic\",\n NodeType = \"docdb-play2-pico\",\n Engine = \"FerretDB-1\",\n UserName = \"my_initial_user\",\n Password = \"thiZ_is_v\u0026ry_s3cret\",\n VolumeSizeInGb = 20,\n });\n\n var main = new Scaleway.DocumentdbDatabase(\"main\", new()\n {\n InstanceId = instance.Id,\n Name = \"my-new-database\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinstance, err := scaleway.NewDocumentdbInstance(ctx, \"instance\", \u0026scaleway.DocumentdbInstanceArgs{\n\t\t\tName: pulumi.String(\"test-document_db-basic\"),\n\t\t\tNodeType: pulumi.String(\"docdb-play2-pico\"),\n\t\t\tEngine: pulumi.String(\"FerretDB-1\"),\n\t\t\tUserName: pulumi.String(\"my_initial_user\"),\n\t\t\tPassword: pulumi.String(\"thiZ_is_v\u0026ry_s3cret\"),\n\t\t\tVolumeSizeInGb: pulumi.Int(20),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDocumentdbDatabase(ctx, \"main\", \u0026scaleway.DocumentdbDatabaseArgs{\n\t\t\tInstanceId: instance.ID(),\n\t\t\tName: pulumi.String(\"my-new-database\"),\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.scaleway.DocumentdbInstance;\nimport com.pulumi.scaleway.DocumentdbInstanceArgs;\nimport com.pulumi.scaleway.DocumentdbDatabase;\nimport com.pulumi.scaleway.DocumentdbDatabaseArgs;\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 instance = new DocumentdbInstance(\"instance\", DocumentdbInstanceArgs.builder()\n .name(\"test-document_db-basic\")\n .nodeType(\"docdb-play2-pico\")\n .engine(\"FerretDB-1\")\n .userName(\"my_initial_user\")\n .password(\"thiZ_is_v\u0026ry_s3cret\")\n .volumeSizeInGb(20)\n .build());\n\n var main = new DocumentdbDatabase(\"main\", DocumentdbDatabaseArgs.builder()\n .instanceId(instance.id())\n .name(\"my-new-database\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n instance:\n type: scaleway:DocumentdbInstance\n properties:\n name: test-document_db-basic\n nodeType: docdb-play2-pico\n engine: FerretDB-1\n userName: my_initial_user\n password: thiZ_is_v\u0026ry_s3cret\n volumeSizeInGb: 20\n main:\n type: scaleway:DocumentdbDatabase\n properties:\n instanceId: ${instance.id}\n name: my-new-database\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDocumentDB Database can be imported using the `{region}/{id}/{DBNAME}`, e.g.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/documentdbDatabase:DocumentdbDatabase mydb fr-par/11111111-1111-1111-1111-111111111111/mydb\n```\n\n",
+ "scaleway:index/domainRecord:DomainRecord": {
+ "description": "The `scaleway.DomainRecord` resource allows you to create and manage DNS records for Scaleway domains.\n\nRefer to the Domains and DNS [product documentation](https://www.scaleway.com/en/docs/network/domains-and-dns/) and [API documentation](https://www.scaleway.com/en/developers/api/domains-and-dns/) for more information.\n\n## Example Usage\n\n### Create basic DNS records\n\nThe folllowing commands allow you to:\n\n- create an A record for the `www.domain.tld` domain, pointing to `1.2.3.4` and another one pointing to `1.2.3.5`\n\n- create an MX record with the `mx.online.net.` mail server and a priority of 10, and another one with the `mx-cache.online.net.` mail server and a priority of 20\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst www = new scaleway.DomainRecord(\"www\", {\n dnsZone: \"domain.tld\",\n name: \"www\",\n type: \"A\",\n data: \"1.2.3.4\",\n ttl: 3600,\n});\nconst www2 = new scaleway.DomainRecord(\"www2\", {\n dnsZone: \"domain.tld\",\n name: \"www\",\n type: \"A\",\n data: \"1.2.3.5\",\n ttl: 3600,\n});\nconst mx = new scaleway.DomainRecord(\"mx\", {\n dnsZone: \"domain.tld\",\n name: \"\",\n type: \"MX\",\n data: \"mx.online.net.\",\n ttl: 3600,\n priority: 10,\n});\nconst mx2 = new scaleway.DomainRecord(\"mx2\", {\n dnsZone: \"domain.tld\",\n name: \"\",\n type: \"MX\",\n data: \"mx-cache.online.net.\",\n ttl: 3600,\n priority: 20,\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\nwww = scaleway.DomainRecord(\"www\",\n dns_zone=\"domain.tld\",\n name=\"www\",\n type=\"A\",\n data=\"1.2.3.4\",\n ttl=3600)\nwww2 = scaleway.DomainRecord(\"www2\",\n dns_zone=\"domain.tld\",\n name=\"www\",\n type=\"A\",\n data=\"1.2.3.5\",\n ttl=3600)\nmx = scaleway.DomainRecord(\"mx\",\n dns_zone=\"domain.tld\",\n name=\"\",\n type=\"MX\",\n data=\"mx.online.net.\",\n ttl=3600,\n priority=10)\nmx2 = scaleway.DomainRecord(\"mx2\",\n dns_zone=\"domain.tld\",\n name=\"\",\n type=\"MX\",\n data=\"mx-cache.online.net.\",\n ttl=3600,\n priority=20)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var www = new Scaleway.DomainRecord(\"www\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"www\",\n Type = \"A\",\n Data = \"1.2.3.4\",\n Ttl = 3600,\n });\n\n var www2 = new Scaleway.DomainRecord(\"www2\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"www\",\n Type = \"A\",\n Data = \"1.2.3.5\",\n Ttl = 3600,\n });\n\n var mx = new Scaleway.DomainRecord(\"mx\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"\",\n Type = \"MX\",\n Data = \"mx.online.net.\",\n Ttl = 3600,\n Priority = 10,\n });\n\n var mx2 = new Scaleway.DomainRecord(\"mx2\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"\",\n Type = \"MX\",\n Data = \"mx-cache.online.net.\",\n Ttl = 3600,\n Priority = 20,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := scaleway.NewDomainRecord(ctx, \"www\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"www\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.4\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"www2\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"www\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.5\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"mx\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"\"),\n\t\t\tType: pulumi.String(\"MX\"),\n\t\t\tData: pulumi.String(\"mx.online.net.\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tPriority: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"mx2\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"\"),\n\t\t\tType: pulumi.String(\"MX\"),\n\t\t\tData: pulumi.String(\"mx-cache.online.net.\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tPriority: pulumi.Int(20),\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.scaleway.DomainRecord;\nimport com.pulumi.scaleway.DomainRecordArgs;\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 www = new DomainRecord(\"www\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"www\")\n .type(\"A\")\n .data(\"1.2.3.4\")\n .ttl(3600)\n .build());\n\n var www2 = new DomainRecord(\"www2\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"www\")\n .type(\"A\")\n .data(\"1.2.3.5\")\n .ttl(3600)\n .build());\n\n var mx = new DomainRecord(\"mx\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"\")\n .type(\"MX\")\n .data(\"mx.online.net.\")\n .ttl(3600)\n .priority(10)\n .build());\n\n var mx2 = new DomainRecord(\"mx2\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"\")\n .type(\"MX\")\n .data(\"mx-cache.online.net.\")\n .ttl(3600)\n .priority(20)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n www:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name: www\n type: A\n data: 1.2.3.4\n ttl: 3600\n www2:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name: www\n type: A\n data: 1.2.3.5\n ttl: 3600\n mx:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name:\n type: MX\n data: mx.online.net.\n ttl: 3600\n priority: 10\n mx2:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name:\n type: MX\n data: mx-cache.online.net.\n ttl: 3600\n priority: 20\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create dynamic records\n\nThe folllowing commands allow you to:\n\n- create a Geo IP record for `images.domain.tld` that points to different IPs based on the user's location: `1.2.3.5` for users in France (EU), and `4.3.2.1` for users in North America (NA)\n\n- create an HTTP service record for `app.domain.tld` that checks the health of specified IPs and responds based on their status.\n\n- create view-based records for `db.domain.tld` that resolve differently based on the client's subnet.\n\n- create a weighted record for `web.domain.tld` that directs traffic to different IPs based on their weights.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst geoIp = new scaleway.DomainRecord(\"geo_ip\", {\n dnsZone: \"domain.tld\",\n name: \"images\",\n type: \"A\",\n data: \"1.2.3.4\",\n ttl: 3600,\n geoIp: {\n matches: [\n {\n continents: [\"EU\"],\n countries: [\"FR\"],\n data: \"1.2.3.5\",\n },\n {\n continents: [\"NA\"],\n data: \"4.3.2.1\",\n },\n ],\n },\n});\nconst httpService = new scaleway.DomainRecord(\"http_service\", {\n dnsZone: \"domain.tld\",\n name: \"app\",\n type: \"A\",\n data: \"1.2.3.4\",\n ttl: 3600,\n httpService: {\n ips: [\n \"1.2.3.5\",\n \"1.2.3.6\",\n ],\n mustContain: \"up\",\n url: \"http://mywebsite.com/health\",\n userAgent: \"scw_service_up\",\n strategy: \"hashed\",\n },\n});\nconst view = new scaleway.DomainRecord(\"view\", {\n dnsZone: \"domain.tld\",\n name: \"db\",\n type: \"A\",\n data: \"1.2.3.4\",\n ttl: 3600,\n views: [\n {\n subnet: \"100.0.0.0/16\",\n data: \"1.2.3.5\",\n },\n {\n subnet: \"100.1.0.0/16\",\n data: \"1.2.3.6\",\n },\n ],\n});\nconst weighted = new scaleway.DomainRecord(\"weighted\", {\n dnsZone: \"domain.tld\",\n name: \"web\",\n type: \"A\",\n data: \"1.2.3.4\",\n ttl: 3600,\n weighteds: [\n {\n ip: \"1.2.3.5\",\n weight: 1,\n },\n {\n ip: \"1.2.3.6\",\n weight: 2,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\ngeo_ip = scaleway.DomainRecord(\"geo_ip\",\n dns_zone=\"domain.tld\",\n name=\"images\",\n type=\"A\",\n data=\"1.2.3.4\",\n ttl=3600,\n geo_ip={\n \"matches\": [\n {\n \"continents\": [\"EU\"],\n \"countries\": [\"FR\"],\n \"data\": \"1.2.3.5\",\n },\n {\n \"continents\": [\"NA\"],\n \"data\": \"4.3.2.1\",\n },\n ],\n })\nhttp_service = scaleway.DomainRecord(\"http_service\",\n dns_zone=\"domain.tld\",\n name=\"app\",\n type=\"A\",\n data=\"1.2.3.4\",\n ttl=3600,\n http_service={\n \"ips\": [\n \"1.2.3.5\",\n \"1.2.3.6\",\n ],\n \"must_contain\": \"up\",\n \"url\": \"http://mywebsite.com/health\",\n \"user_agent\": \"scw_service_up\",\n \"strategy\": \"hashed\",\n })\nview = scaleway.DomainRecord(\"view\",\n dns_zone=\"domain.tld\",\n name=\"db\",\n type=\"A\",\n data=\"1.2.3.4\",\n ttl=3600,\n views=[\n {\n \"subnet\": \"100.0.0.0/16\",\n \"data\": \"1.2.3.5\",\n },\n {\n \"subnet\": \"100.1.0.0/16\",\n \"data\": \"1.2.3.6\",\n },\n ])\nweighted = scaleway.DomainRecord(\"weighted\",\n dns_zone=\"domain.tld\",\n name=\"web\",\n type=\"A\",\n data=\"1.2.3.4\",\n ttl=3600,\n weighteds=[\n {\n \"ip\": \"1.2.3.5\",\n \"weight\": 1,\n },\n {\n \"ip\": \"1.2.3.6\",\n \"weight\": 2,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var geoIp = new Scaleway.DomainRecord(\"geo_ip\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"images\",\n Type = \"A\",\n Data = \"1.2.3.4\",\n Ttl = 3600,\n GeoIp = new Scaleway.Inputs.DomainRecordGeoIpArgs\n {\n Matches = new[]\n {\n new Scaleway.Inputs.DomainRecordGeoIpMatchArgs\n {\n Continents = new[]\n {\n \"EU\",\n },\n Countries = new[]\n {\n \"FR\",\n },\n Data = \"1.2.3.5\",\n },\n new Scaleway.Inputs.DomainRecordGeoIpMatchArgs\n {\n Continents = new[]\n {\n \"NA\",\n },\n Data = \"4.3.2.1\",\n },\n },\n },\n });\n\n var httpService = new Scaleway.DomainRecord(\"http_service\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"app\",\n Type = \"A\",\n Data = \"1.2.3.4\",\n Ttl = 3600,\n HttpService = new Scaleway.Inputs.DomainRecordHttpServiceArgs\n {\n Ips = new[]\n {\n \"1.2.3.5\",\n \"1.2.3.6\",\n },\n MustContain = \"up\",\n Url = \"http://mywebsite.com/health\",\n UserAgent = \"scw_service_up\",\n Strategy = \"hashed\",\n },\n });\n\n var view = new Scaleway.DomainRecord(\"view\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"db\",\n Type = \"A\",\n Data = \"1.2.3.4\",\n Ttl = 3600,\n Views = new[]\n {\n new Scaleway.Inputs.DomainRecordViewArgs\n {\n Subnet = \"100.0.0.0/16\",\n Data = \"1.2.3.5\",\n },\n new Scaleway.Inputs.DomainRecordViewArgs\n {\n Subnet = \"100.1.0.0/16\",\n Data = \"1.2.3.6\",\n },\n },\n });\n\n var weighted = new Scaleway.DomainRecord(\"weighted\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"web\",\n Type = \"A\",\n Data = \"1.2.3.4\",\n Ttl = 3600,\n Weighteds = new[]\n {\n new Scaleway.Inputs.DomainRecordWeightedArgs\n {\n Ip = \"1.2.3.5\",\n Weight = 1,\n },\n new Scaleway.Inputs.DomainRecordWeightedArgs\n {\n Ip = \"1.2.3.6\",\n Weight = 2,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := scaleway.NewDomainRecord(ctx, \"geo_ip\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"images\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.4\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tGeoIp: \u0026scaleway.DomainRecordGeoIpArgs{\n\t\t\t\tMatches: scaleway.DomainRecordGeoIpMatchArray{\n\t\t\t\t\t\u0026scaleway.DomainRecordGeoIpMatchArgs{\n\t\t\t\t\t\tContinents: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"EU\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tCountries: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"FR\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tData: pulumi.String(\"1.2.3.5\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026scaleway.DomainRecordGeoIpMatchArgs{\n\t\t\t\t\t\tContinents: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"NA\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tData: pulumi.String(\"4.3.2.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_, err = scaleway.NewDomainRecord(ctx, \"http_service\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"app\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.4\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tHttpService: \u0026scaleway.DomainRecordHttpServiceArgs{\n\t\t\t\tIps: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"1.2.3.5\"),\n\t\t\t\t\tpulumi.String(\"1.2.3.6\"),\n\t\t\t\t},\n\t\t\t\tMustContain: pulumi.String(\"up\"),\n\t\t\t\tUrl: pulumi.String(\"http://mywebsite.com/health\"),\n\t\t\t\tUserAgent: pulumi.String(\"scw_service_up\"),\n\t\t\t\tStrategy: pulumi.String(\"hashed\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"view\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"db\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.4\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tViews: scaleway.DomainRecordViewArray{\n\t\t\t\t\u0026scaleway.DomainRecordViewArgs{\n\t\t\t\t\tSubnet: pulumi.String(\"100.0.0.0/16\"),\n\t\t\t\t\tData: pulumi.String(\"1.2.3.5\"),\n\t\t\t\t},\n\t\t\t\t\u0026scaleway.DomainRecordViewArgs{\n\t\t\t\t\tSubnet: pulumi.String(\"100.1.0.0/16\"),\n\t\t\t\t\tData: pulumi.String(\"1.2.3.6\"),\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_, err = scaleway.NewDomainRecord(ctx, \"weighted\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"web\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.4\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tWeighteds: scaleway.DomainRecordWeightedArray{\n\t\t\t\t\u0026scaleway.DomainRecordWeightedArgs{\n\t\t\t\t\tIp: pulumi.String(\"1.2.3.5\"),\n\t\t\t\t\tWeight: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t\t\u0026scaleway.DomainRecordWeightedArgs{\n\t\t\t\t\tIp: pulumi.String(\"1.2.3.6\"),\n\t\t\t\t\tWeight: pulumi.Int(2),\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\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.scaleway.DomainRecord;\nimport com.pulumi.scaleway.DomainRecordArgs;\nimport com.pulumi.scaleway.inputs.DomainRecordGeoIpArgs;\nimport com.pulumi.scaleway.inputs.DomainRecordHttpServiceArgs;\nimport com.pulumi.scaleway.inputs.DomainRecordViewArgs;\nimport com.pulumi.scaleway.inputs.DomainRecordWeightedArgs;\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 geoIp = new DomainRecord(\"geoIp\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"images\")\n .type(\"A\")\n .data(\"1.2.3.4\")\n .ttl(3600)\n .geoIp(DomainRecordGeoIpArgs.builder()\n .matches( \n DomainRecordGeoIpMatchArgs.builder()\n .continents(\"EU\")\n .countries(\"FR\")\n .data(\"1.2.3.5\")\n .build(),\n DomainRecordGeoIpMatchArgs.builder()\n .continents(\"NA\")\n .data(\"4.3.2.1\")\n .build())\n .build())\n .build());\n\n var httpService = new DomainRecord(\"httpService\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"app\")\n .type(\"A\")\n .data(\"1.2.3.4\")\n .ttl(3600)\n .httpService(DomainRecordHttpServiceArgs.builder()\n .ips( \n \"1.2.3.5\",\n \"1.2.3.6\")\n .mustContain(\"up\")\n .url(\"http://mywebsite.com/health\")\n .userAgent(\"scw_service_up\")\n .strategy(\"hashed\")\n .build())\n .build());\n\n var view = new DomainRecord(\"view\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"db\")\n .type(\"A\")\n .data(\"1.2.3.4\")\n .ttl(3600)\n .views( \n DomainRecordViewArgs.builder()\n .subnet(\"100.0.0.0/16\")\n .data(\"1.2.3.5\")\n .build(),\n DomainRecordViewArgs.builder()\n .subnet(\"100.1.0.0/16\")\n .data(\"1.2.3.6\")\n .build())\n .build());\n\n var weighted = new DomainRecord(\"weighted\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"web\")\n .type(\"A\")\n .data(\"1.2.3.4\")\n .ttl(3600)\n .weighteds( \n DomainRecordWeightedArgs.builder()\n .ip(\"1.2.3.5\")\n .weight(1)\n .build(),\n DomainRecordWeightedArgs.builder()\n .ip(\"1.2.3.6\")\n .weight(2)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n geoIp:\n type: scaleway:DomainRecord\n name: geo_ip\n properties:\n dnsZone: domain.tld\n name: images\n type: A\n data: 1.2.3.4\n ttl: 3600\n geoIp:\n matches:\n - continents:\n - EU\n countries:\n - FR\n data: 1.2.3.5\n - continents:\n - NA\n data: 4.3.2.1\n httpService:\n type: scaleway:DomainRecord\n name: http_service\n properties:\n dnsZone: domain.tld\n name: app\n type: A\n data: 1.2.3.4\n ttl: 3600\n httpService:\n ips:\n - 1.2.3.5\n - 1.2.3.6\n mustContain: up\n url: http://mywebsite.com/health\n userAgent: scw_service_up\n strategy: hashed\n view:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name: db\n type: A\n data: 1.2.3.4\n ttl: 3600\n views:\n - subnet: 100.0.0.0/16\n data: 1.2.3.5\n - subnet: 100.1.0.0/16\n data: 1.2.3.6\n weighted:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name: web\n type: A\n data: 1.2.3.4\n ttl: 3600\n weighteds:\n - ip: 1.2.3.5\n weight: 1\n - ip: 1.2.3.6\n weight: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create an Instance and add records with the new Instance IP\n\nThe following commands allow you to:\n\n- create a Scaleway Instance\n- assign The Instance's IP address to various DNS records for a specified DNS zone\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst config = new pulumi.Config();\n// Your project ID.\nconst projectId = config.require(\"projectId\");\n// The DNS Zone used for testing records.\nconst dnsZone = config.require(\"dnsZone\");\nconst publicIp = new scaleway.InstanceIp(\"public_ip\", {projectId: projectId});\nconst web = new scaleway.InstanceServer(\"web\", {\n projectId: projectId,\n type: \"DEV1-S\",\n image: \"ubuntu_jammy\",\n tags: [\n \"front\",\n \"web\",\n ],\n ipId: publicIp.id,\n rootVolume: {\n sizeInGb: 20,\n },\n});\nconst webA = new scaleway.DomainRecord(\"web_A\", {\n dnsZone: dnsZone,\n name: \"web\",\n type: \"A\",\n data: web.publicIp,\n ttl: 3600,\n});\nconst webCname = new scaleway.DomainRecord(\"web_cname\", {\n dnsZone: dnsZone,\n name: \"www\",\n type: \"CNAME\",\n data: `web.${dnsZone}.`,\n ttl: 3600,\n});\nconst webAlias = new scaleway.DomainRecord(\"web_alias\", {\n dnsZone: dnsZone,\n name: \"\",\n type: \"ALIAS\",\n data: `web.${dnsZone}.`,\n ttl: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\nconfig = pulumi.Config()\n# Your project ID.\nproject_id = config.require(\"projectId\")\n# The DNS Zone used for testing records.\ndns_zone = config.require(\"dnsZone\")\npublic_ip = scaleway.InstanceIp(\"public_ip\", project_id=project_id)\nweb = scaleway.InstanceServer(\"web\",\n project_id=project_id,\n type=\"DEV1-S\",\n image=\"ubuntu_jammy\",\n tags=[\n \"front\",\n \"web\",\n ],\n ip_id=public_ip.id,\n root_volume={\n \"size_in_gb\": 20,\n })\nweb_a = scaleway.DomainRecord(\"web_A\",\n dns_zone=dns_zone,\n name=\"web\",\n type=\"A\",\n data=web.public_ip,\n ttl=3600)\nweb_cname = scaleway.DomainRecord(\"web_cname\",\n dns_zone=dns_zone,\n name=\"www\",\n type=\"CNAME\",\n data=f\"web.{dns_zone}.\",\n ttl=3600)\nweb_alias = scaleway.DomainRecord(\"web_alias\",\n dns_zone=dns_zone,\n name=\"\",\n type=\"ALIAS\",\n data=f\"web.{dns_zone}.\",\n ttl=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n // Your project ID.\n var projectId = config.Require(\"projectId\");\n // The DNS Zone used for testing records.\n var dnsZone = config.Require(\"dnsZone\");\n var publicIp = new Scaleway.InstanceIp(\"public_ip\", new()\n {\n ProjectId = projectId,\n });\n\n var web = new Scaleway.InstanceServer(\"web\", new()\n {\n ProjectId = projectId,\n Type = \"DEV1-S\",\n Image = \"ubuntu_jammy\",\n Tags = new[]\n {\n \"front\",\n \"web\",\n },\n IpId = publicIp.Id,\n RootVolume = new Scaleway.Inputs.InstanceServerRootVolumeArgs\n {\n SizeInGb = 20,\n },\n });\n\n var webA = new Scaleway.DomainRecord(\"web_A\", new()\n {\n DnsZone = dnsZone,\n Name = \"web\",\n Type = \"A\",\n Data = web.PublicIp,\n Ttl = 3600,\n });\n\n var webCname = new Scaleway.DomainRecord(\"web_cname\", new()\n {\n DnsZone = dnsZone,\n Name = \"www\",\n Type = \"CNAME\",\n Data = $\"web.{dnsZone}.\",\n Ttl = 3600,\n });\n\n var webAlias = new Scaleway.DomainRecord(\"web_alias\", new()\n {\n DnsZone = dnsZone,\n Name = \"\",\n Type = \"ALIAS\",\n Data = $\"web.{dnsZone}.\",\n Ttl = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\t// Your project ID.\n\t\tprojectId := cfg.Require(\"projectId\")\n\t\t// The DNS Zone used for testing records.\n\t\tdnsZone := cfg.Require(\"dnsZone\")\n\t\tpublicIp, err := scaleway.NewInstanceIp(ctx, \"public_ip\", \u0026scaleway.InstanceIpArgs{\n\t\t\tProjectId: pulumi.String(projectId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tweb, err := scaleway.NewInstanceServer(ctx, \"web\", \u0026scaleway.InstanceServerArgs{\n\t\t\tProjectId: pulumi.String(projectId),\n\t\t\tType: pulumi.String(\"DEV1-S\"),\n\t\t\tImage: pulumi.String(\"ubuntu_jammy\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"front\"),\n\t\t\t\tpulumi.String(\"web\"),\n\t\t\t},\n\t\t\tIpId: publicIp.ID(),\n\t\t\tRootVolume: \u0026scaleway.InstanceServerRootVolumeArgs{\n\t\t\t\tSizeInGb: pulumi.Int(20),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"web_A\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(dnsZone),\n\t\t\tName: pulumi.String(\"web\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: web.PublicIp,\n\t\t\tTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"web_cname\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(dnsZone),\n\t\t\tName: pulumi.String(\"www\"),\n\t\t\tType: pulumi.String(\"CNAME\"),\n\t\t\tData: pulumi.Sprintf(\"web.%v.\", dnsZone),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"web_alias\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(dnsZone),\n\t\t\tName: pulumi.String(\"\"),\n\t\t\tType: pulumi.String(\"ALIAS\"),\n\t\t\tData: pulumi.Sprintf(\"web.%v.\", dnsZone),\n\t\t\tTtl: pulumi.Int(3600),\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.scaleway.InstanceIp;\nimport com.pulumi.scaleway.InstanceIpArgs;\nimport com.pulumi.scaleway.InstanceServer;\nimport com.pulumi.scaleway.InstanceServerArgs;\nimport com.pulumi.scaleway.inputs.InstanceServerRootVolumeArgs;\nimport com.pulumi.scaleway.DomainRecord;\nimport com.pulumi.scaleway.DomainRecordArgs;\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 config = ctx.config();\n final var projectId = config.get(\"projectId\");\n final var dnsZone = config.get(\"dnsZone\");\n var publicIp = new InstanceIp(\"publicIp\", InstanceIpArgs.builder()\n .projectId(projectId)\n .build());\n\n var web = new InstanceServer(\"web\", InstanceServerArgs.builder()\n .projectId(projectId)\n .type(\"DEV1-S\")\n .image(\"ubuntu_jammy\")\n .tags( \n \"front\",\n \"web\")\n .ipId(publicIp.id())\n .rootVolume(InstanceServerRootVolumeArgs.builder()\n .sizeInGb(20)\n .build())\n .build());\n\n var webA = new DomainRecord(\"webA\", DomainRecordArgs.builder()\n .dnsZone(dnsZone)\n .name(\"web\")\n .type(\"A\")\n .data(web.publicIp())\n .ttl(3600)\n .build());\n\n var webCname = new DomainRecord(\"webCname\", DomainRecordArgs.builder()\n .dnsZone(dnsZone)\n .name(\"www\")\n .type(\"CNAME\")\n .data(String.format(\"web.%s.\", dnsZone))\n .ttl(3600)\n .build());\n\n var webAlias = new DomainRecord(\"webAlias\", DomainRecordArgs.builder()\n .dnsZone(dnsZone)\n .name(\"\")\n .type(\"ALIAS\")\n .data(String.format(\"web.%s.\", dnsZone))\n .ttl(3600)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n projectId:\n type: string\n dnsZone:\n type: string\nresources:\n publicIp:\n type: scaleway:InstanceIp\n name: public_ip\n properties:\n projectId: ${projectId}\n web:\n type: scaleway:InstanceServer\n properties:\n projectId: ${projectId}\n type: DEV1-S\n image: ubuntu_jammy\n tags:\n - front\n - web\n ipId: ${publicIp.id}\n rootVolume:\n sizeInGb: 20\n webA:\n type: scaleway:DomainRecord\n name: web_A\n properties:\n dnsZone: ${dnsZone}\n name: web\n type: A\n data: ${web.publicIp}\n ttl: 3600\n webCname:\n type: scaleway:DomainRecord\n name: web_cname\n properties:\n dnsZone: ${dnsZone}\n name: www\n type: CNAME\n data: web.${dnsZone}.\n ttl: 3600\n webAlias:\n type: scaleway:DomainRecord\n name: web_alias\n properties:\n dnsZone: ${dnsZone}\n name:\n type: ALIAS\n data: web.${dnsZone}.\n ttl: 3600\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Multiple records\n\nSome record types can have multiple data with the same name (e.g., `A`, `AAAA`, `MX`, `NS`, etc.). You can duplicate a `scaleway.DomainRecord` resource with the same `name`, and the records will be added.\n\nNote however, that some records (e.g., CNAME, multiple dynamic records of different types) must be unique.\n\n## Import\n\nThis section explains how to import a record using the `{dns_zone}/{id}` format.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/domainRecord:DomainRecord www subdomain.domain.tld/11111111-1111-1111-1111-111111111111\n```\n\n",
"properties": {
- "instanceId": {
+ "data": {
+ "type": "string",
+ "description": "The content of the record (an IPv4 for an `A` record, a string for a `TXT` record, etc.).\n"
+ },
+ "dnsZone": {
"type": "string",
- "description": "UUID of the documentdb instance.\n\n\u003e **Important:** Updates to `instance_id` will recreate the Database.\n"
+ "description": "The DNS zone of the domain. If the domain has no DNS zone, one will be automatically created.\n"
},
- "managed": {
+ "fqdn": {
+ "type": "string",
+ "description": "The FQDN of the record.\n"
+ },
+ "geoIp": {
+ "$ref": "#/types/scaleway:index/DomainRecordGeoIp:DomainRecordGeoIp",
+ "description": "Return record based on client localisation\n"
+ },
+ "httpService": {
+ "$ref": "#/types/scaleway:index/DomainRecordHttpService:DomainRecordHttpService",
+ "description": "Return record based on client localisation\n"
+ },
+ "keepEmptyZone": {
"type": "boolean",
- "description": "Whether the database is managed or not.\n"
+ "description": "When destroying a resource, if only NS records remain and this is set to `false`, the zone will be deleted. Note that each zone not deleted will [be billed](https://www.scaleway.com/en/dns/).\n"
},
"name": {
"type": "string",
- "description": "Name of the database (e.g. `my-new-database`).\n"
+ "description": "The name of the record (can be an empty string for a root record).\n"
},
- "owner": {
- "type": "string",
- "description": "The name of the owner of the database.\n"
+ "priority": {
+ "type": "integer",
+ "description": "The priority of the record (mostly used with an `MX` record).\n"
},
"projectId": {
"type": "string",
"description": "The project_id you want to attach the resource to\n"
},
- "region": {
- "type": "string",
- "description": "`region`) The region in which the resource exists.\n"
+ "rootZone": {
+ "type": "boolean",
+ "description": "Does the DNS zone is the root zone or not\n"
},
- "size": {
+ "ttl": {
+ "type": "integer",
+ "description": "Time To Live of the record in seconds.\n"
+ },
+ "type": {
"type": "string",
- "description": "Size in gigabytes of the database.\n"
+ "description": "The type of the record (`A`, `AAAA`, `MX`, `CNAME`, `DNAME`, `ALIAS`, `NS`, `PTR`, `SRV`, `TXT`, `TLSA`, or `CAA`).\n"
+ },
+ "views": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/scaleway:index/DomainRecordView:DomainRecordView"
+ },
+ "description": "Return record based on client subnet\n"
+ },
+ "weighteds": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/scaleway:index/DomainRecordWeighted:DomainRecordWeighted"
+ },
+ "description": "Return record based on weight\n"
}
},
"required": [
- "instanceId",
- "managed",
+ "data",
+ "dnsZone",
+ "fqdn",
"name",
- "owner",
+ "priority",
"projectId",
- "region",
- "size"
+ "rootZone",
+ "type"
],
"inputProperties": {
- "instanceId": {
+ "data": {
+ "type": "string",
+ "description": "The content of the record (an IPv4 for an `A` record, a string for a `TXT` record, etc.).\n"
+ },
+ "dnsZone": {
"type": "string",
- "description": "UUID of the documentdb instance.\n\n\u003e **Important:** Updates to `instance_id` will recreate the Database.\n",
+ "description": "The DNS zone of the domain. If the domain has no DNS zone, one will be automatically created.\n",
"willReplaceOnChanges": true
},
+ "geoIp": {
+ "$ref": "#/types/scaleway:index/DomainRecordGeoIp:DomainRecordGeoIp",
+ "description": "Return record based on client localisation\n"
+ },
+ "httpService": {
+ "$ref": "#/types/scaleway:index/DomainRecordHttpService:DomainRecordHttpService",
+ "description": "Return record based on client localisation\n"
+ },
+ "keepEmptyZone": {
+ "type": "boolean",
+ "description": "When destroying a resource, if only NS records remain and this is set to `false`, the zone will be deleted. Note that each zone not deleted will [be billed](https://www.scaleway.com/en/dns/).\n"
+ },
"name": {
"type": "string",
- "description": "Name of the database (e.g. `my-new-database`).\n",
+ "description": "The name of the record (can be an empty string for a root record).\n",
"willReplaceOnChanges": true
},
+ "priority": {
+ "type": "integer",
+ "description": "The priority of the record (mostly used with an `MX` record).\n"
+ },
"projectId": {
"type": "string",
"description": "The project_id you want to attach the resource to\n",
"willReplaceOnChanges": true
},
- "region": {
+ "ttl": {
+ "type": "integer",
+ "description": "Time To Live of the record in seconds.\n"
+ },
+ "type": {
"type": "string",
- "description": "`region`) The region in which the resource exists.\n",
+ "description": "The type of the record (`A`, `AAAA`, `MX`, `CNAME`, `DNAME`, `ALIAS`, `NS`, `PTR`, `SRV`, `TXT`, `TLSA`, or `CAA`).\n",
"willReplaceOnChanges": true
+ },
+ "views": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/scaleway:index/DomainRecordView:DomainRecordView"
+ },
+ "description": "Return record based on client subnet\n"
+ },
+ "weighteds": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/scaleway:index/DomainRecordWeighted:DomainRecordWeighted"
+ },
+ "description": "Return record based on weight\n"
}
},
"requiredInputs": [
- "instanceId"
+ "data",
+ "dnsZone",
+ "type"
],
"stateInputs": {
- "description": "Input properties used for looking up and filtering DocumentdbDatabase resources.\n",
+ "description": "Input properties used for looking up and filtering DomainRecord resources.\n",
"properties": {
- "instanceId": {
+ "data": {
"type": "string",
- "description": "UUID of the documentdb instance.\n\n\u003e **Important:** Updates to `instance_id` will recreate the Database.\n",
- "willReplaceOnChanges": true
- },
- "managed": {
- "type": "boolean",
- "description": "Whether the database is managed or not.\n"
+ "description": "The content of the record (an IPv4 for an `A` record, a string for a `TXT` record, etc.).\n"
},
- "name": {
- "type": "string",
- "description": "Name of the database (e.g. `my-new-database`).\n",
- "willReplaceOnChanges": true
- },
- "owner": {
- "type": "string",
- "description": "The name of the owner of the database.\n"
- },
- "projectId": {
- "type": "string",
- "description": "The project_id you want to attach the resource to\n",
- "willReplaceOnChanges": true
- },
- "region": {
- "type": "string",
- "description": "`region`) The region in which the resource exists.\n",
- "willReplaceOnChanges": true
- },
- "size": {
- "type": "string",
- "description": "Size in gigabytes of the database.\n"
- }
- },
- "type": "object"
- }
- },
- "scaleway:index/documentdbInstance:DocumentdbInstance": {
- "description": "Creates and manages Scaleway Database Instances.\n\n## Example Usage\n\n### Example Basic\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst main = new scaleway.DocumentdbInstance(\"main\", {\n name: \"test-documentdb-instance-basic\",\n nodeType: \"docdb-play2-pico\",\n engine: \"FerretDB-1\",\n userName: \"my_initial_user\",\n password: \"thiZ_is_v\u0026ry_s3cret\",\n tags: [\n \"terraform-test\",\n \"scaleway_documentdb_instance\",\n \"minimal\",\n ],\n volumeSizeInGb: 20,\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\nmain = scaleway.DocumentdbInstance(\"main\",\n name=\"test-documentdb-instance-basic\",\n node_type=\"docdb-play2-pico\",\n engine=\"FerretDB-1\",\n user_name=\"my_initial_user\",\n password=\"thiZ_is_v\u0026ry_s3cret\",\n tags=[\n \"terraform-test\",\n \"scaleway_documentdb_instance\",\n \"minimal\",\n ],\n volume_size_in_gb=20)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var main = new Scaleway.DocumentdbInstance(\"main\", new()\n {\n Name = \"test-documentdb-instance-basic\",\n NodeType = \"docdb-play2-pico\",\n Engine = \"FerretDB-1\",\n UserName = \"my_initial_user\",\n Password = \"thiZ_is_v\u0026ry_s3cret\",\n Tags = new[]\n {\n \"terraform-test\",\n \"scaleway_documentdb_instance\",\n \"minimal\",\n },\n VolumeSizeInGb = 20,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := scaleway.NewDocumentdbInstance(ctx, \"main\", \u0026scaleway.DocumentdbInstanceArgs{\n\t\t\tName: pulumi.String(\"test-documentdb-instance-basic\"),\n\t\t\tNodeType: pulumi.String(\"docdb-play2-pico\"),\n\t\t\tEngine: pulumi.String(\"FerretDB-1\"),\n\t\t\tUserName: pulumi.String(\"my_initial_user\"),\n\t\t\tPassword: pulumi.String(\"thiZ_is_v\u0026ry_s3cret\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"terraform-test\"),\n\t\t\t\tpulumi.String(\"scaleway_documentdb_instance\"),\n\t\t\t\tpulumi.String(\"minimal\"),\n\t\t\t},\n\t\t\tVolumeSizeInGb: pulumi.Int(20),\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.scaleway.DocumentdbInstance;\nimport com.pulumi.scaleway.DocumentdbInstanceArgs;\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 main = new DocumentdbInstance(\"main\", DocumentdbInstanceArgs.builder()\n .name(\"test-documentdb-instance-basic\")\n .nodeType(\"docdb-play2-pico\")\n .engine(\"FerretDB-1\")\n .userName(\"my_initial_user\")\n .password(\"thiZ_is_v\u0026ry_s3cret\")\n .tags( \n \"terraform-test\",\n \"scaleway_documentdb_instance\",\n \"minimal\")\n .volumeSizeInGb(20)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n main:\n type: scaleway:DocumentdbInstance\n properties:\n name: test-documentdb-instance-basic\n nodeType: docdb-play2-pico\n engine: FerretDB-1\n userName: my_initial_user\n password: thiZ_is_v\u0026ry_s3cret\n tags:\n - terraform-test\n - scaleway_documentdb_instance\n - minimal\n volumeSizeInGb: 20\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatabase Instance can be imported using the `{region}/{id}`, e.g.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/documentdbInstance:DocumentdbInstance db fr-par/11111111-1111-1111-1111-111111111111\n```\n\n",
- "properties": {
- "engine": {
- "type": "string",
- "description": "Database Instance's engine version (e.g. `FerretDB-1`).\n\n\u003e **Important:** Updates to `engine` will recreate the Database Instance.\n"
- },
- "isHaCluster": {
- "type": "boolean",
- "description": "Enable or disable high availability for the database instance.\n"
- },
- "name": {
- "type": "string",
- "description": "The name of the Database Instance.\n"
- },
- "nodeType": {
- "type": "string",
- "description": "The type of database instance you want to create (e.g. `docdb-play2-pico`).\n\n\u003e **Important:** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any\ninterruption. Keep in mind that you cannot downgrade a Database Instance.\n"
- },
- "password": {
- "type": "string",
- "description": "Password for the first user of the database instance.\n",
- "secret": true
- },
- "projectId": {
- "type": "string",
- "description": "`project_id`) The ID of the project the Database\nInstance is associated with.\n"
- },
- "region": {
- "type": "string",
- "description": "`region`) The region\nin which the Database Instance should be created.\n"
- },
- "tags": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "The tags associated with the Database Instance.\n"
- },
- "telemetryEnabled": {
- "type": "boolean",
- "description": "Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).\n\n\u003e **Important:** Updates to `is_ha_cluster` will recreate the Database Instance.\n"
- },
- "userName": {
- "type": "string",
- "description": "Identifier for the first user of the database instance.\n\n\u003e **Important:** Updates to `user_name` will recreate the Database Instance.\n"
- },
- "volumeSizeInGb": {
- "type": "integer",
- "description": "Volume size (in GB) when `volume_type` is set to `bssd`.\n"
- },
- "volumeType": {
- "type": "string",
- "description": "Type of volume where data are stored (`bssd` or `lssd`).\n"
- }
- },
- "required": [
- "engine",
- "name",
- "nodeType",
- "projectId",
- "region",
- "volumeSizeInGb"
- ],
- "inputProperties": {
- "engine": {
- "type": "string",
- "description": "Database Instance's engine version (e.g. `FerretDB-1`).\n\n\u003e **Important:** Updates to `engine` will recreate the Database Instance.\n",
- "willReplaceOnChanges": true
- },
- "isHaCluster": {
- "type": "boolean",
- "description": "Enable or disable high availability for the database instance.\n"
- },
- "name": {
- "type": "string",
- "description": "The name of the Database Instance.\n"
- },
- "nodeType": {
- "type": "string",
- "description": "The type of database instance you want to create (e.g. `docdb-play2-pico`).\n\n\u003e **Important:** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any\ninterruption. Keep in mind that you cannot downgrade a Database Instance.\n"
- },
- "password": {
- "type": "string",
- "description": "Password for the first user of the database instance.\n",
- "secret": true,
- "willReplaceOnChanges": true
- },
- "projectId": {
- "type": "string",
- "description": "`project_id`) The ID of the project the Database\nInstance is associated with.\n",
- "willReplaceOnChanges": true
- },
- "region": {
- "type": "string",
- "description": "`region`) The region\nin which the Database Instance should be created.\n",
- "willReplaceOnChanges": true
- },
- "tags": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "The tags associated with the Database Instance.\n"
- },
- "telemetryEnabled": {
- "type": "boolean",
- "description": "Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).\n\n\u003e **Important:** Updates to `is_ha_cluster` will recreate the Database Instance.\n"
- },
- "userName": {
- "type": "string",
- "description": "Identifier for the first user of the database instance.\n\n\u003e **Important:** Updates to `user_name` will recreate the Database Instance.\n",
- "willReplaceOnChanges": true
- },
- "volumeSizeInGb": {
- "type": "integer",
- "description": "Volume size (in GB) when `volume_type` is set to `bssd`.\n"
- },
- "volumeType": {
- "type": "string",
- "description": "Type of volume where data are stored (`bssd` or `lssd`).\n"
- }
- },
- "requiredInputs": [
- "engine",
- "nodeType"
- ],
- "stateInputs": {
- "description": "Input properties used for looking up and filtering DocumentdbInstance resources.\n",
- "properties": {
- "engine": {
- "type": "string",
- "description": "Database Instance's engine version (e.g. `FerretDB-1`).\n\n\u003e **Important:** Updates to `engine` will recreate the Database Instance.\n",
- "willReplaceOnChanges": true
- },
- "isHaCluster": {
- "type": "boolean",
- "description": "Enable or disable high availability for the database instance.\n"
- },
- "name": {
- "type": "string",
- "description": "The name of the Database Instance.\n"
- },
- "nodeType": {
- "type": "string",
- "description": "The type of database instance you want to create (e.g. `docdb-play2-pico`).\n\n\u003e **Important:** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any\ninterruption. Keep in mind that you cannot downgrade a Database Instance.\n"
- },
- "password": {
- "type": "string",
- "description": "Password for the first user of the database instance.\n",
- "secret": true,
- "willReplaceOnChanges": true
- },
- "projectId": {
- "type": "string",
- "description": "`project_id`) The ID of the project the Database\nInstance is associated with.\n",
- "willReplaceOnChanges": true
- },
- "region": {
- "type": "string",
- "description": "`region`) The region\nin which the Database Instance should be created.\n",
- "willReplaceOnChanges": true
- },
- "tags": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "The tags associated with the Database Instance.\n"
- },
- "telemetryEnabled": {
- "type": "boolean",
- "description": "Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).\n\n\u003e **Important:** Updates to `is_ha_cluster` will recreate the Database Instance.\n"
- },
- "userName": {
- "type": "string",
- "description": "Identifier for the first user of the database instance.\n\n\u003e **Important:** Updates to `user_name` will recreate the Database Instance.\n",
- "willReplaceOnChanges": true
- },
- "volumeSizeInGb": {
- "type": "integer",
- "description": "Volume size (in GB) when `volume_type` is set to `bssd`.\n"
- },
- "volumeType": {
- "type": "string",
- "description": "Type of volume where data are stored (`bssd` or `lssd`).\n"
- }
- },
- "type": "object"
- }
- },
- "scaleway:index/documentdbPrivateNetworkEndpoint:DocumentdbPrivateNetworkEndpoint": {
- "description": "Creates and manages Scaleway Database Private Network Endpoint.\n\n## Example Usage\n\n### Example Basic\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst pn = new scaleway.VpcPrivateNetwork(\"pn\", {name: \"my_private_network\"});\nconst instance = new scaleway.DocumentdbInstance(\"instance\", {\n name: \"test-document_db-basic\",\n nodeType: \"docdb-play2-pico\",\n engine: \"FerretDB-1\",\n userName: \"my_initial_user\",\n password: \"thiZ_is_v\u0026ry_s3cret\",\n volumeSizeInGb: 20,\n});\nconst main = new scaleway.DocumentdbPrivateNetworkEndpoint(\"main\", {\n instanceId: instance.id,\n privateNetwork: {\n ipNet: \"172.16.32.3/22\",\n id: pn.id,\n },\n}, {\n dependsOn: [pn],\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\npn = scaleway.VpcPrivateNetwork(\"pn\", name=\"my_private_network\")\ninstance = scaleway.DocumentdbInstance(\"instance\",\n name=\"test-document_db-basic\",\n node_type=\"docdb-play2-pico\",\n engine=\"FerretDB-1\",\n user_name=\"my_initial_user\",\n password=\"thiZ_is_v\u0026ry_s3cret\",\n volume_size_in_gb=20)\nmain = scaleway.DocumentdbPrivateNetworkEndpoint(\"main\",\n instance_id=instance.id,\n private_network={\n \"ip_net\": \"172.16.32.3/22\",\n \"id\": pn.id,\n },\n opts = pulumi.ResourceOptions(depends_on=[pn]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pn = new Scaleway.VpcPrivateNetwork(\"pn\", new()\n {\n Name = \"my_private_network\",\n });\n\n var instance = new Scaleway.DocumentdbInstance(\"instance\", new()\n {\n Name = \"test-document_db-basic\",\n NodeType = \"docdb-play2-pico\",\n Engine = \"FerretDB-1\",\n UserName = \"my_initial_user\",\n Password = \"thiZ_is_v\u0026ry_s3cret\",\n VolumeSizeInGb = 20,\n });\n\n var main = new Scaleway.DocumentdbPrivateNetworkEndpoint(\"main\", new()\n {\n InstanceId = instance.Id,\n PrivateNetwork = new Scaleway.Inputs.DocumentdbPrivateNetworkEndpointPrivateNetworkArgs\n {\n IpNet = \"172.16.32.3/22\",\n Id = pn.Id,\n },\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n pn,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpn, err := scaleway.NewVpcPrivateNetwork(ctx, \"pn\", \u0026scaleway.VpcPrivateNetworkArgs{\n\t\t\tName: pulumi.String(\"my_private_network\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinstance, err := scaleway.NewDocumentdbInstance(ctx, \"instance\", \u0026scaleway.DocumentdbInstanceArgs{\n\t\t\tName: pulumi.String(\"test-document_db-basic\"),\n\t\t\tNodeType: pulumi.String(\"docdb-play2-pico\"),\n\t\t\tEngine: pulumi.String(\"FerretDB-1\"),\n\t\t\tUserName: pulumi.String(\"my_initial_user\"),\n\t\t\tPassword: pulumi.String(\"thiZ_is_v\u0026ry_s3cret\"),\n\t\t\tVolumeSizeInGb: pulumi.Int(20),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDocumentdbPrivateNetworkEndpoint(ctx, \"main\", \u0026scaleway.DocumentdbPrivateNetworkEndpointArgs{\n\t\t\tInstanceId: instance.ID(),\n\t\t\tPrivateNetwork: \u0026scaleway.DocumentdbPrivateNetworkEndpointPrivateNetworkArgs{\n\t\t\t\tIpNet: pulumi.String(\"172.16.32.3/22\"),\n\t\t\t\tId: pn.ID(),\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tpn,\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.scaleway.VpcPrivateNetwork;\nimport com.pulumi.scaleway.VpcPrivateNetworkArgs;\nimport com.pulumi.scaleway.DocumentdbInstance;\nimport com.pulumi.scaleway.DocumentdbInstanceArgs;\nimport com.pulumi.scaleway.DocumentdbPrivateNetworkEndpoint;\nimport com.pulumi.scaleway.DocumentdbPrivateNetworkEndpointArgs;\nimport com.pulumi.scaleway.inputs.DocumentdbPrivateNetworkEndpointPrivateNetworkArgs;\nimport com.pulumi.resources.CustomResourceOptions;\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 pn = new VpcPrivateNetwork(\"pn\", VpcPrivateNetworkArgs.builder()\n .name(\"my_private_network\")\n .build());\n\n var instance = new DocumentdbInstance(\"instance\", DocumentdbInstanceArgs.builder()\n .name(\"test-document_db-basic\")\n .nodeType(\"docdb-play2-pico\")\n .engine(\"FerretDB-1\")\n .userName(\"my_initial_user\")\n .password(\"thiZ_is_v\u0026ry_s3cret\")\n .volumeSizeInGb(20)\n .build());\n\n var main = new DocumentdbPrivateNetworkEndpoint(\"main\", DocumentdbPrivateNetworkEndpointArgs.builder()\n .instanceId(instance.id())\n .privateNetwork(DocumentdbPrivateNetworkEndpointPrivateNetworkArgs.builder()\n .ipNet(\"172.16.32.3/22\")\n .id(pn.id())\n .build())\n .build(), CustomResourceOptions.builder()\n .dependsOn(pn)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pn:\n type: scaleway:VpcPrivateNetwork\n properties:\n name: my_private_network\n instance:\n type: scaleway:DocumentdbInstance\n properties:\n name: test-document_db-basic\n nodeType: docdb-play2-pico\n engine: FerretDB-1\n userName: my_initial_user\n password: thiZ_is_v\u0026ry_s3cret\n volumeSizeInGb: 20\n main:\n type: scaleway:DocumentdbPrivateNetworkEndpoint\n properties:\n instanceId: ${instance.id}\n privateNetwork:\n ipNet: 172.16.32.3/22\n id: ${pn.id}\n options:\n dependson:\n - ${pn}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatabase Instance Endpoint can be imported using the `{region}/{endpoint_id}`, e.g.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/documentdbPrivateNetworkEndpoint:DocumentdbPrivateNetworkEndpoint end fr-par/11111111-1111-1111-1111-111111111111\n```\n\n",
- "properties": {
- "instanceId": {
- "type": "string",
- "description": "UUID of the documentdb instance.\n"
- },
- "privateNetwork": {
- "$ref": "#/types/scaleway:index/DocumentdbPrivateNetworkEndpointPrivateNetwork:DocumentdbPrivateNetworkEndpointPrivateNetwork",
- "description": "The private network specs details. This is a list with maximum one element and supports the following attributes:\n"
- },
- "region": {
- "type": "string",
- "description": "The region of the endpoint.\n\n\n\u003e **NOTE:** Please calculate your host IP.\nusing cirhost. Otherwise, lets IPAM service\nhandle the host IP on the network.\n"
- }
- },
- "required": [
- "instanceId",
- "region"
- ],
- "inputProperties": {
- "instanceId": {
- "type": "string",
- "description": "UUID of the documentdb instance.\n"
- },
- "privateNetwork": {
- "$ref": "#/types/scaleway:index/DocumentdbPrivateNetworkEndpointPrivateNetwork:DocumentdbPrivateNetworkEndpointPrivateNetwork",
- "description": "The private network specs details. This is a list with maximum one element and supports the following attributes:\n"
- },
- "region": {
- "type": "string",
- "description": "The region of the endpoint.\n\n\n\u003e **NOTE:** Please calculate your host IP.\nusing cirhost. Otherwise, lets IPAM service\nhandle the host IP on the network.\n",
- "willReplaceOnChanges": true
- }
- },
- "requiredInputs": [
- "instanceId"
- ],
- "stateInputs": {
- "description": "Input properties used for looking up and filtering DocumentdbPrivateNetworkEndpoint resources.\n",
- "properties": {
- "instanceId": {
- "type": "string",
- "description": "UUID of the documentdb instance.\n"
- },
- "privateNetwork": {
- "$ref": "#/types/scaleway:index/DocumentdbPrivateNetworkEndpointPrivateNetwork:DocumentdbPrivateNetworkEndpointPrivateNetwork",
- "description": "The private network specs details. This is a list with maximum one element and supports the following attributes:\n"
- },
- "region": {
- "type": "string",
- "description": "The region of the endpoint.\n\n\n\u003e **NOTE:** Please calculate your host IP.\nusing cirhost. Otherwise, lets IPAM service\nhandle the host IP on the network.\n",
- "willReplaceOnChanges": true
- }
- },
- "type": "object"
- }
- },
- "scaleway:index/documentdbPrivilege:DocumentdbPrivilege": {
- "description": "Create and manage Scaleway DocumentDB database privilege.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst instance = new scaleway.DocumentdbInstance(\"instance\", {\n name: \"test-document_db-basic\",\n nodeType: \"docdb-play2-pico\",\n engine: \"FerretDB-1\",\n userName: \"my_initial_user\",\n password: \"thiZ_is_v\u0026ry_s3cret\",\n volumeSizeInGb: 20,\n});\nconst main = new scaleway.DocumentdbPrivilege(\"main\", {\n instanceId: instance.id,\n userName: \"my-db-user\",\n databaseName: \"my-db-name\",\n permission: \"all\",\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\ninstance = scaleway.DocumentdbInstance(\"instance\",\n name=\"test-document_db-basic\",\n node_type=\"docdb-play2-pico\",\n engine=\"FerretDB-1\",\n user_name=\"my_initial_user\",\n password=\"thiZ_is_v\u0026ry_s3cret\",\n volume_size_in_gb=20)\nmain = scaleway.DocumentdbPrivilege(\"main\",\n instance_id=instance.id,\n user_name=\"my-db-user\",\n database_name=\"my-db-name\",\n permission=\"all\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var instance = new Scaleway.DocumentdbInstance(\"instance\", new()\n {\n Name = \"test-document_db-basic\",\n NodeType = \"docdb-play2-pico\",\n Engine = \"FerretDB-1\",\n UserName = \"my_initial_user\",\n Password = \"thiZ_is_v\u0026ry_s3cret\",\n VolumeSizeInGb = 20,\n });\n\n var main = new Scaleway.DocumentdbPrivilege(\"main\", new()\n {\n InstanceId = instance.Id,\n UserName = \"my-db-user\",\n DatabaseName = \"my-db-name\",\n Permission = \"all\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinstance, err := scaleway.NewDocumentdbInstance(ctx, \"instance\", \u0026scaleway.DocumentdbInstanceArgs{\n\t\t\tName: pulumi.String(\"test-document_db-basic\"),\n\t\t\tNodeType: pulumi.String(\"docdb-play2-pico\"),\n\t\t\tEngine: pulumi.String(\"FerretDB-1\"),\n\t\t\tUserName: pulumi.String(\"my_initial_user\"),\n\t\t\tPassword: pulumi.String(\"thiZ_is_v\u0026ry_s3cret\"),\n\t\t\tVolumeSizeInGb: pulumi.Int(20),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDocumentdbPrivilege(ctx, \"main\", \u0026scaleway.DocumentdbPrivilegeArgs{\n\t\t\tInstanceId: instance.ID(),\n\t\t\tUserName: pulumi.String(\"my-db-user\"),\n\t\t\tDatabaseName: pulumi.String(\"my-db-name\"),\n\t\t\tPermission: pulumi.String(\"all\"),\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.scaleway.DocumentdbInstance;\nimport com.pulumi.scaleway.DocumentdbInstanceArgs;\nimport com.pulumi.scaleway.DocumentdbPrivilege;\nimport com.pulumi.scaleway.DocumentdbPrivilegeArgs;\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 instance = new DocumentdbInstance(\"instance\", DocumentdbInstanceArgs.builder()\n .name(\"test-document_db-basic\")\n .nodeType(\"docdb-play2-pico\")\n .engine(\"FerretDB-1\")\n .userName(\"my_initial_user\")\n .password(\"thiZ_is_v\u0026ry_s3cret\")\n .volumeSizeInGb(20)\n .build());\n\n var main = new DocumentdbPrivilege(\"main\", DocumentdbPrivilegeArgs.builder()\n .instanceId(instance.id())\n .userName(\"my-db-user\")\n .databaseName(\"my-db-name\")\n .permission(\"all\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n instance:\n type: scaleway:DocumentdbInstance\n properties:\n name: test-document_db-basic\n nodeType: docdb-play2-pico\n engine: FerretDB-1\n userName: my_initial_user\n password: thiZ_is_v\u0026ry_s3cret\n volumeSizeInGb: 20\n main:\n type: scaleway:DocumentdbPrivilege\n properties:\n instanceId: ${instance.id}\n userName: my-db-user\n databaseName: my-db-name\n permission: all\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe user privileges can be imported using the `{region}/{instance_id}/{database_name}/{user_name}`, e.g.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/documentdbPrivilege:DocumentdbPrivilege o fr-par/11111111-1111-1111-1111-111111111111/database_name/foo\n```\n\n",
- "properties": {
- "databaseName": {
- "type": "string",
- "description": "Name of the database (e.g. `my-db-name`).\n"
- },
- "instanceId": {
- "type": "string",
- "description": "UUID of the rdb instance.\n"
- },
- "permission": {
- "type": "string",
- "description": "Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.\n"
- },
- "region": {
- "type": "string",
- "description": "`region`) The region in which the resource exists.\n"
- },
- "userName": {
- "type": "string",
- "description": "Name of the user (e.g. `my-db-user`).\n"
- }
- },
- "required": [
- "databaseName",
- "instanceId",
- "permission",
- "region",
- "userName"
- ],
- "inputProperties": {
- "databaseName": {
- "type": "string",
- "description": "Name of the database (e.g. `my-db-name`).\n"
- },
- "instanceId": {
- "type": "string",
- "description": "UUID of the rdb instance.\n",
- "willReplaceOnChanges": true
- },
- "permission": {
- "type": "string",
- "description": "Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.\n"
- },
- "region": {
- "type": "string",
- "description": "`region`) The region in which the resource exists.\n",
- "willReplaceOnChanges": true
- },
- "userName": {
- "type": "string",
- "description": "Name of the user (e.g. `my-db-user`).\n"
- }
- },
- "requiredInputs": [
- "databaseName",
- "instanceId",
- "permission",
- "userName"
- ],
- "stateInputs": {
- "description": "Input properties used for looking up and filtering DocumentdbPrivilege resources.\n",
- "properties": {
- "databaseName": {
- "type": "string",
- "description": "Name of the database (e.g. `my-db-name`).\n"
- },
- "instanceId": {
- "type": "string",
- "description": "UUID of the rdb instance.\n",
- "willReplaceOnChanges": true
- },
- "permission": {
- "type": "string",
- "description": "Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.\n"
- },
- "region": {
- "type": "string",
- "description": "`region`) The region in which the resource exists.\n",
- "willReplaceOnChanges": true
- },
- "userName": {
- "type": "string",
- "description": "Name of the user (e.g. `my-db-user`).\n"
- }
- },
- "type": "object"
- }
- },
- "scaleway:index/documentdbReadReplica:DocumentdbReadReplica": {
- "description": "Creates and manages Scaleway DocumentDB Database read replicas.\n\n## Example Usage\n\n### Basic\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst replica = new scaleway.DocumentdbReadReplica(\"replica\", {\n instanceId: \"11111111-1111-1111-1111-111111111111\",\n directAccess: {},\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\nreplica = scaleway.DocumentdbReadReplica(\"replica\",\n instance_id=\"11111111-1111-1111-1111-111111111111\",\n direct_access={})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var replica = new Scaleway.DocumentdbReadReplica(\"replica\", new()\n {\n InstanceId = \"11111111-1111-1111-1111-111111111111\",\n DirectAccess = null,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := scaleway.NewDocumentdbReadReplica(ctx, \"replica\", \u0026scaleway.DocumentdbReadReplicaArgs{\n\t\t\tInstanceId: pulumi.String(\"11111111-1111-1111-1111-111111111111\"),\n\t\t\tDirectAccess: \u0026scaleway.DocumentdbReadReplicaDirectAccessArgs{},\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.scaleway.DocumentdbReadReplica;\nimport com.pulumi.scaleway.DocumentdbReadReplicaArgs;\nimport com.pulumi.scaleway.inputs.DocumentdbReadReplicaDirectAccessArgs;\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 replica = new DocumentdbReadReplica(\"replica\", DocumentdbReadReplicaArgs.builder()\n .instanceId(\"11111111-1111-1111-1111-111111111111\")\n .directAccess()\n .build());\n\n }\n}\n```\n```yaml\nresources:\n replica:\n type: scaleway:DocumentdbReadReplica\n properties:\n instanceId: 11111111-1111-1111-1111-111111111111\n directAccess: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Private network\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst pn = new scaleway.VpcPrivateNetwork(\"pn\", {});\nconst instance = new scaleway.DocumentdbInstance(\"instance\", {\n name: \"document_db-read-replica-basic\",\n nodeType: \"docdb-play2-pico\",\n engine: \"FerretDB-1\",\n userName: \"my_initial_user\",\n password: \"thiZ_is_v\u0026ry_s3cret\",\n volumeSizeInGb: 20,\n});\nconst replica = new scaleway.DocumentdbReadReplica(\"replica\", {\n instanceId: instance.id,\n privateNetwork: {\n privateNetworkId: pn.id,\n serviceIp: \"192.168.1.254/24\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\npn = scaleway.VpcPrivateNetwork(\"pn\")\ninstance = scaleway.DocumentdbInstance(\"instance\",\n name=\"document_db-read-replica-basic\",\n node_type=\"docdb-play2-pico\",\n engine=\"FerretDB-1\",\n user_name=\"my_initial_user\",\n password=\"thiZ_is_v\u0026ry_s3cret\",\n volume_size_in_gb=20)\nreplica = scaleway.DocumentdbReadReplica(\"replica\",\n instance_id=instance.id,\n private_network={\n \"private_network_id\": pn.id,\n \"service_ip\": \"192.168.1.254/24\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pn = new Scaleway.VpcPrivateNetwork(\"pn\");\n\n var instance = new Scaleway.DocumentdbInstance(\"instance\", new()\n {\n Name = \"document_db-read-replica-basic\",\n NodeType = \"docdb-play2-pico\",\n Engine = \"FerretDB-1\",\n UserName = \"my_initial_user\",\n Password = \"thiZ_is_v\u0026ry_s3cret\",\n VolumeSizeInGb = 20,\n });\n\n var replica = new Scaleway.DocumentdbReadReplica(\"replica\", new()\n {\n InstanceId = instance.Id,\n PrivateNetwork = new Scaleway.Inputs.DocumentdbReadReplicaPrivateNetworkArgs\n {\n PrivateNetworkId = pn.Id,\n ServiceIp = \"192.168.1.254/24\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpn, err := scaleway.NewVpcPrivateNetwork(ctx, \"pn\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinstance, err := scaleway.NewDocumentdbInstance(ctx, \"instance\", \u0026scaleway.DocumentdbInstanceArgs{\n\t\t\tName: pulumi.String(\"document_db-read-replica-basic\"),\n\t\t\tNodeType: pulumi.String(\"docdb-play2-pico\"),\n\t\t\tEngine: pulumi.String(\"FerretDB-1\"),\n\t\t\tUserName: pulumi.String(\"my_initial_user\"),\n\t\t\tPassword: pulumi.String(\"thiZ_is_v\u0026ry_s3cret\"),\n\t\t\tVolumeSizeInGb: pulumi.Int(20),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDocumentdbReadReplica(ctx, \"replica\", \u0026scaleway.DocumentdbReadReplicaArgs{\n\t\t\tInstanceId: instance.ID(),\n\t\t\tPrivateNetwork: \u0026scaleway.DocumentdbReadReplicaPrivateNetworkArgs{\n\t\t\t\tPrivateNetworkId: pn.ID(),\n\t\t\t\tServiceIp: pulumi.String(\"192.168.1.254/24\"),\n\t\t\t},\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.scaleway.VpcPrivateNetwork;\nimport com.pulumi.scaleway.DocumentdbInstance;\nimport com.pulumi.scaleway.DocumentdbInstanceArgs;\nimport com.pulumi.scaleway.DocumentdbReadReplica;\nimport com.pulumi.scaleway.DocumentdbReadReplicaArgs;\nimport com.pulumi.scaleway.inputs.DocumentdbReadReplicaPrivateNetworkArgs;\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 pn = new VpcPrivateNetwork(\"pn\");\n\n var instance = new DocumentdbInstance(\"instance\", DocumentdbInstanceArgs.builder()\n .name(\"document_db-read-replica-basic\")\n .nodeType(\"docdb-play2-pico\")\n .engine(\"FerretDB-1\")\n .userName(\"my_initial_user\")\n .password(\"thiZ_is_v\u0026ry_s3cret\")\n .volumeSizeInGb(20)\n .build());\n\n var replica = new DocumentdbReadReplica(\"replica\", DocumentdbReadReplicaArgs.builder()\n .instanceId(instance.id())\n .privateNetwork(DocumentdbReadReplicaPrivateNetworkArgs.builder()\n .privateNetworkId(pn.id())\n .serviceIp(\"192.168.1.254/24\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pn:\n type: scaleway:VpcPrivateNetwork\n instance:\n type: scaleway:DocumentdbInstance\n properties:\n name: document_db-read-replica-basic\n nodeType: docdb-play2-pico\n engine: FerretDB-1\n userName: my_initial_user\n password: thiZ_is_v\u0026ry_s3cret\n volumeSizeInGb: 20\n replica:\n type: scaleway:DocumentdbReadReplica\n properties:\n instanceId: ${instance.id}\n privateNetwork:\n privateNetworkId: ${pn.id}\n serviceIp: 192.168.1.254/24\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatabase Read replica can be imported using the `{region}/{id}`, e.g.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/documentdbReadReplica:DocumentdbReadReplica rr fr-par/11111111-1111-1111-1111-111111111111\n```\n\n",
- "properties": {
- "directAccess": {
- "$ref": "#/types/scaleway:index/DocumentdbReadReplicaDirectAccess:DocumentdbReadReplicaDirectAccess",
- "description": "Creates a direct access endpoint to documentdb replica.\n"
- },
- "instanceId": {
- "type": "string",
- "description": "UUID of the documentdb instance.\n\n\u003e **Important:** The replica musts contains at least one of `direct_access` or `private_network`. It can contain both.\n"
- },
- "privateNetwork": {
- "$ref": "#/types/scaleway:index/DocumentdbReadReplicaPrivateNetwork:DocumentdbReadReplicaPrivateNetwork",
- "description": "Create an endpoint in a private network.\n"
- },
- "region": {
- "type": "string",
- "description": "`region`) The region\nin which the Database read replica should be created.\n"
- }
- },
- "required": [
- "instanceId",
- "region"
- ],
- "inputProperties": {
- "directAccess": {
- "$ref": "#/types/scaleway:index/DocumentdbReadReplicaDirectAccess:DocumentdbReadReplicaDirectAccess",
- "description": "Creates a direct access endpoint to documentdb replica.\n"
- },
- "instanceId": {
- "type": "string",
- "description": "UUID of the documentdb instance.\n\n\u003e **Important:** The replica musts contains at least one of `direct_access` or `private_network`. It can contain both.\n"
- },
- "privateNetwork": {
- "$ref": "#/types/scaleway:index/DocumentdbReadReplicaPrivateNetwork:DocumentdbReadReplicaPrivateNetwork",
- "description": "Create an endpoint in a private network.\n"
- },
- "region": {
- "type": "string",
- "description": "`region`) The region\nin which the Database read replica should be created.\n",
- "willReplaceOnChanges": true
- }
- },
- "requiredInputs": [
- "instanceId"
- ],
- "stateInputs": {
- "description": "Input properties used for looking up and filtering DocumentdbReadReplica resources.\n",
- "properties": {
- "directAccess": {
- "$ref": "#/types/scaleway:index/DocumentdbReadReplicaDirectAccess:DocumentdbReadReplicaDirectAccess",
- "description": "Creates a direct access endpoint to documentdb replica.\n"
- },
- "instanceId": {
- "type": "string",
- "description": "UUID of the documentdb instance.\n\n\u003e **Important:** The replica musts contains at least one of `direct_access` or `private_network`. It can contain both.\n"
- },
- "privateNetwork": {
- "$ref": "#/types/scaleway:index/DocumentdbReadReplicaPrivateNetwork:DocumentdbReadReplicaPrivateNetwork",
- "description": "Create an endpoint in a private network.\n"
- },
- "region": {
- "type": "string",
- "description": "`region`) The region\nin which the Database read replica should be created.\n",
- "willReplaceOnChanges": true
- }
- },
- "type": "object"
- }
- },
- "scaleway:index/documentdbUser:DocumentdbUser": {
- "description": "Creates and manages Scaleway Database DocumentDB Users.\n\n## Example Usage\n\n### Basic\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as random from \"@pulumi/random\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst instance = new scaleway.DocumentdbInstance(\"instance\", {\n name: \"test-document_db-basic\",\n nodeType: \"docdb-play2-pico\",\n engine: \"FerretDB-1\",\n userName: \"my_initial_user\",\n password: \"thiZ_is_v\u0026ry_s3cret\",\n volumeSizeInGb: 20,\n});\nconst dbPassword = new random.RandomPassword(\"db_password\", {\n length: 16,\n special: true,\n});\nconst dbAdmin = new scaleway.DocumentdbUser(\"db_admin\", {\n instanceId: instance.id,\n name: \"devtools\",\n password: dbPassword.result,\n isAdmin: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_random as random\nimport pulumiverse_scaleway as scaleway\n\ninstance = scaleway.DocumentdbInstance(\"instance\",\n name=\"test-document_db-basic\",\n node_type=\"docdb-play2-pico\",\n engine=\"FerretDB-1\",\n user_name=\"my_initial_user\",\n password=\"thiZ_is_v\u0026ry_s3cret\",\n volume_size_in_gb=20)\ndb_password = random.RandomPassword(\"db_password\",\n length=16,\n special=True)\ndb_admin = scaleway.DocumentdbUser(\"db_admin\",\n instance_id=instance.id,\n name=\"devtools\",\n password=db_password.result,\n is_admin=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Random = Pulumi.Random;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var instance = new Scaleway.DocumentdbInstance(\"instance\", new()\n {\n Name = \"test-document_db-basic\",\n NodeType = \"docdb-play2-pico\",\n Engine = \"FerretDB-1\",\n UserName = \"my_initial_user\",\n Password = \"thiZ_is_v\u0026ry_s3cret\",\n VolumeSizeInGb = 20,\n });\n\n var dbPassword = new Random.RandomPassword(\"db_password\", new()\n {\n Length = 16,\n Special = true,\n });\n\n var dbAdmin = new Scaleway.DocumentdbUser(\"db_admin\", new()\n {\n InstanceId = instance.Id,\n Name = \"devtools\",\n Password = dbPassword.Result,\n IsAdmin = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinstance, err := scaleway.NewDocumentdbInstance(ctx, \"instance\", \u0026scaleway.DocumentdbInstanceArgs{\n\t\t\tName: pulumi.String(\"test-document_db-basic\"),\n\t\t\tNodeType: pulumi.String(\"docdb-play2-pico\"),\n\t\t\tEngine: pulumi.String(\"FerretDB-1\"),\n\t\t\tUserName: pulumi.String(\"my_initial_user\"),\n\t\t\tPassword: pulumi.String(\"thiZ_is_v\u0026ry_s3cret\"),\n\t\t\tVolumeSizeInGb: pulumi.Int(20),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdbPassword, err := random.NewRandomPassword(ctx, \"db_password\", \u0026random.RandomPasswordArgs{\n\t\t\tLength: pulumi.Int(16),\n\t\t\tSpecial: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDocumentdbUser(ctx, \"db_admin\", \u0026scaleway.DocumentdbUserArgs{\n\t\t\tInstanceId: instance.ID(),\n\t\t\tName: pulumi.String(\"devtools\"),\n\t\t\tPassword: dbPassword.Result,\n\t\t\tIsAdmin: pulumi.Bool(true),\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.scaleway.DocumentdbInstance;\nimport com.pulumi.scaleway.DocumentdbInstanceArgs;\nimport com.pulumi.random.RandomPassword;\nimport com.pulumi.random.RandomPasswordArgs;\nimport com.pulumi.scaleway.DocumentdbUser;\nimport com.pulumi.scaleway.DocumentdbUserArgs;\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 instance = new DocumentdbInstance(\"instance\", DocumentdbInstanceArgs.builder()\n .name(\"test-document_db-basic\")\n .nodeType(\"docdb-play2-pico\")\n .engine(\"FerretDB-1\")\n .userName(\"my_initial_user\")\n .password(\"thiZ_is_v\u0026ry_s3cret\")\n .volumeSizeInGb(20)\n .build());\n\n var dbPassword = new RandomPassword(\"dbPassword\", RandomPasswordArgs.builder()\n .length(16)\n .special(true)\n .build());\n\n var dbAdmin = new DocumentdbUser(\"dbAdmin\", DocumentdbUserArgs.builder()\n .instanceId(instance.id())\n .name(\"devtools\")\n .password(dbPassword.result())\n .isAdmin(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n instance:\n type: scaleway:DocumentdbInstance\n properties:\n name: test-document_db-basic\n nodeType: docdb-play2-pico\n engine: FerretDB-1\n userName: my_initial_user\n password: thiZ_is_v\u0026ry_s3cret\n volumeSizeInGb: 20\n dbPassword:\n type: random:RandomPassword\n name: db_password\n properties:\n length: 16\n special: true\n dbAdmin:\n type: scaleway:DocumentdbUser\n name: db_admin\n properties:\n instanceId: ${instance.id}\n name: devtools\n password: ${dbPassword.result}\n isAdmin: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatabase User can be imported using `{region}/{instance_id}/{user_name}`, e.g.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/documentdbUser:DocumentdbUser admin fr-par/11111111-1111-1111-1111-111111111111/admin\n```\n\n",
- "properties": {
- "instanceId": {
- "type": "string",
- "description": "UUID of the documentDB instance.\n\n\u003e **Important:** Updates to `instance_id` will recreate the Database User.\n"
- },
- "isAdmin": {
- "type": "boolean",
- "description": "Grant admin permissions to the Database User.\n"
- },
- "name": {
- "type": "string",
- "description": "Database Username.\n\n\u003e **Important:** Updates to `name` will recreate the Database User.\n"
- },
- "password": {
- "type": "string",
- "description": "Database User password.\n",
- "secret": true
- },
- "region": {
- "type": "string",
- "description": "The Scaleway region this resource resides in.\n"
- }
- },
- "required": [
- "instanceId",
- "name",
- "password",
- "region"
- ],
- "inputProperties": {
- "instanceId": {
- "type": "string",
- "description": "UUID of the documentDB instance.\n\n\u003e **Important:** Updates to `instance_id` will recreate the Database User.\n",
- "willReplaceOnChanges": true
- },
- "isAdmin": {
- "type": "boolean",
- "description": "Grant admin permissions to the Database User.\n"
- },
- "name": {
- "type": "string",
- "description": "Database Username.\n\n\u003e **Important:** Updates to `name` will recreate the Database User.\n",
- "willReplaceOnChanges": true
- },
- "password": {
- "type": "string",
- "description": "Database User password.\n",
- "secret": true
- },
- "region": {
- "type": "string",
- "description": "The Scaleway region this resource resides in.\n",
- "willReplaceOnChanges": true
- }
- },
- "requiredInputs": [
- "instanceId",
- "password"
- ],
- "stateInputs": {
- "description": "Input properties used for looking up and filtering DocumentdbUser resources.\n",
- "properties": {
- "instanceId": {
- "type": "string",
- "description": "UUID of the documentDB instance.\n\n\u003e **Important:** Updates to `instance_id` will recreate the Database User.\n",
- "willReplaceOnChanges": true
- },
- "isAdmin": {
- "type": "boolean",
- "description": "Grant admin permissions to the Database User.\n"
- },
- "name": {
- "type": "string",
- "description": "Database Username.\n\n\u003e **Important:** Updates to `name` will recreate the Database User.\n",
- "willReplaceOnChanges": true
- },
- "password": {
- "type": "string",
- "description": "Database User password.\n",
- "secret": true
- },
- "region": {
- "type": "string",
- "description": "The Scaleway region this resource resides in.\n",
- "willReplaceOnChanges": true
- }
- },
- "type": "object"
- }
- },
- "scaleway:index/domainRecord:DomainRecord": {
- "description": "The `scaleway.DomainRecord` resource allows you to create and manage DNS records for Scaleway domains.\n\nRefer to the Domains and DNS [product documentation](https://www.scaleway.com/en/docs/network/domains-and-dns/) and [API documentation](https://www.scaleway.com/en/developers/api/domains-and-dns/) for more information.\n\n## Example Usage\n\n### Create basic DNS records\n\nThe folllowing commands allow you to:\n\n- create an A record for the `www.domain.tld` domain, pointing to `1.2.3.4` and another one pointing to `1.2.3.5`\n\n- create an MX record with the `mx.online.net.` mail server and a priority of 10, and another one with the `mx-cache.online.net.` mail server and a priority of 20\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst www = new scaleway.DomainRecord(\"www\", {\n dnsZone: \"domain.tld\",\n name: \"www\",\n type: \"A\",\n data: \"1.2.3.4\",\n ttl: 3600,\n});\nconst www2 = new scaleway.DomainRecord(\"www2\", {\n dnsZone: \"domain.tld\",\n name: \"www\",\n type: \"A\",\n data: \"1.2.3.5\",\n ttl: 3600,\n});\nconst mx = new scaleway.DomainRecord(\"mx\", {\n dnsZone: \"domain.tld\",\n name: \"\",\n type: \"MX\",\n data: \"mx.online.net.\",\n ttl: 3600,\n priority: 10,\n});\nconst mx2 = new scaleway.DomainRecord(\"mx2\", {\n dnsZone: \"domain.tld\",\n name: \"\",\n type: \"MX\",\n data: \"mx-cache.online.net.\",\n ttl: 3600,\n priority: 20,\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\nwww = scaleway.DomainRecord(\"www\",\n dns_zone=\"domain.tld\",\n name=\"www\",\n type=\"A\",\n data=\"1.2.3.4\",\n ttl=3600)\nwww2 = scaleway.DomainRecord(\"www2\",\n dns_zone=\"domain.tld\",\n name=\"www\",\n type=\"A\",\n data=\"1.2.3.5\",\n ttl=3600)\nmx = scaleway.DomainRecord(\"mx\",\n dns_zone=\"domain.tld\",\n name=\"\",\n type=\"MX\",\n data=\"mx.online.net.\",\n ttl=3600,\n priority=10)\nmx2 = scaleway.DomainRecord(\"mx2\",\n dns_zone=\"domain.tld\",\n name=\"\",\n type=\"MX\",\n data=\"mx-cache.online.net.\",\n ttl=3600,\n priority=20)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var www = new Scaleway.DomainRecord(\"www\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"www\",\n Type = \"A\",\n Data = \"1.2.3.4\",\n Ttl = 3600,\n });\n\n var www2 = new Scaleway.DomainRecord(\"www2\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"www\",\n Type = \"A\",\n Data = \"1.2.3.5\",\n Ttl = 3600,\n });\n\n var mx = new Scaleway.DomainRecord(\"mx\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"\",\n Type = \"MX\",\n Data = \"mx.online.net.\",\n Ttl = 3600,\n Priority = 10,\n });\n\n var mx2 = new Scaleway.DomainRecord(\"mx2\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"\",\n Type = \"MX\",\n Data = \"mx-cache.online.net.\",\n Ttl = 3600,\n Priority = 20,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := scaleway.NewDomainRecord(ctx, \"www\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"www\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.4\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"www2\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"www\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.5\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"mx\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"\"),\n\t\t\tType: pulumi.String(\"MX\"),\n\t\t\tData: pulumi.String(\"mx.online.net.\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tPriority: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"mx2\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"\"),\n\t\t\tType: pulumi.String(\"MX\"),\n\t\t\tData: pulumi.String(\"mx-cache.online.net.\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tPriority: pulumi.Int(20),\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.scaleway.DomainRecord;\nimport com.pulumi.scaleway.DomainRecordArgs;\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 www = new DomainRecord(\"www\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"www\")\n .type(\"A\")\n .data(\"1.2.3.4\")\n .ttl(3600)\n .build());\n\n var www2 = new DomainRecord(\"www2\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"www\")\n .type(\"A\")\n .data(\"1.2.3.5\")\n .ttl(3600)\n .build());\n\n var mx = new DomainRecord(\"mx\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"\")\n .type(\"MX\")\n .data(\"mx.online.net.\")\n .ttl(3600)\n .priority(10)\n .build());\n\n var mx2 = new DomainRecord(\"mx2\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"\")\n .type(\"MX\")\n .data(\"mx-cache.online.net.\")\n .ttl(3600)\n .priority(20)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n www:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name: www\n type: A\n data: 1.2.3.4\n ttl: 3600\n www2:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name: www\n type: A\n data: 1.2.3.5\n ttl: 3600\n mx:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name:\n type: MX\n data: mx.online.net.\n ttl: 3600\n priority: 10\n mx2:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name:\n type: MX\n data: mx-cache.online.net.\n ttl: 3600\n priority: 20\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create dynamic records\n\nThe folllowing commands allow you to:\n\n- create a Geo IP record for `images.domain.tld` that points to different IPs based on the user's location: `1.2.3.5` for users in France (EU), and `4.3.2.1` for users in North America (NA)\n\n- create an HTTP service record for `app.domain.tld` that checks the health of specified IPs and responds based on their status.\n\n- create view-based records for `db.domain.tld` that resolve differently based on the client's subnet.\n\n- create a weighted record for `web.domain.tld` that directs traffic to different IPs based on their weights.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst geoIp = new scaleway.DomainRecord(\"geo_ip\", {\n dnsZone: \"domain.tld\",\n name: \"images\",\n type: \"A\",\n data: \"1.2.3.4\",\n ttl: 3600,\n geoIp: {\n matches: [\n {\n continents: [\"EU\"],\n countries: [\"FR\"],\n data: \"1.2.3.5\",\n },\n {\n continents: [\"NA\"],\n data: \"4.3.2.1\",\n },\n ],\n },\n});\nconst httpService = new scaleway.DomainRecord(\"http_service\", {\n dnsZone: \"domain.tld\",\n name: \"app\",\n type: \"A\",\n data: \"1.2.3.4\",\n ttl: 3600,\n httpService: {\n ips: [\n \"1.2.3.5\",\n \"1.2.3.6\",\n ],\n mustContain: \"up\",\n url: \"http://mywebsite.com/health\",\n userAgent: \"scw_service_up\",\n strategy: \"hashed\",\n },\n});\nconst view = new scaleway.DomainRecord(\"view\", {\n dnsZone: \"domain.tld\",\n name: \"db\",\n type: \"A\",\n data: \"1.2.3.4\",\n ttl: 3600,\n views: [\n {\n subnet: \"100.0.0.0/16\",\n data: \"1.2.3.5\",\n },\n {\n subnet: \"100.1.0.0/16\",\n data: \"1.2.3.6\",\n },\n ],\n});\nconst weighted = new scaleway.DomainRecord(\"weighted\", {\n dnsZone: \"domain.tld\",\n name: \"web\",\n type: \"A\",\n data: \"1.2.3.4\",\n ttl: 3600,\n weighteds: [\n {\n ip: \"1.2.3.5\",\n weight: 1,\n },\n {\n ip: \"1.2.3.6\",\n weight: 2,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\ngeo_ip = scaleway.DomainRecord(\"geo_ip\",\n dns_zone=\"domain.tld\",\n name=\"images\",\n type=\"A\",\n data=\"1.2.3.4\",\n ttl=3600,\n geo_ip={\n \"matches\": [\n {\n \"continents\": [\"EU\"],\n \"countries\": [\"FR\"],\n \"data\": \"1.2.3.5\",\n },\n {\n \"continents\": [\"NA\"],\n \"data\": \"4.3.2.1\",\n },\n ],\n })\nhttp_service = scaleway.DomainRecord(\"http_service\",\n dns_zone=\"domain.tld\",\n name=\"app\",\n type=\"A\",\n data=\"1.2.3.4\",\n ttl=3600,\n http_service={\n \"ips\": [\n \"1.2.3.5\",\n \"1.2.3.6\",\n ],\n \"must_contain\": \"up\",\n \"url\": \"http://mywebsite.com/health\",\n \"user_agent\": \"scw_service_up\",\n \"strategy\": \"hashed\",\n })\nview = scaleway.DomainRecord(\"view\",\n dns_zone=\"domain.tld\",\n name=\"db\",\n type=\"A\",\n data=\"1.2.3.4\",\n ttl=3600,\n views=[\n {\n \"subnet\": \"100.0.0.0/16\",\n \"data\": \"1.2.3.5\",\n },\n {\n \"subnet\": \"100.1.0.0/16\",\n \"data\": \"1.2.3.6\",\n },\n ])\nweighted = scaleway.DomainRecord(\"weighted\",\n dns_zone=\"domain.tld\",\n name=\"web\",\n type=\"A\",\n data=\"1.2.3.4\",\n ttl=3600,\n weighteds=[\n {\n \"ip\": \"1.2.3.5\",\n \"weight\": 1,\n },\n {\n \"ip\": \"1.2.3.6\",\n \"weight\": 2,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var geoIp = new Scaleway.DomainRecord(\"geo_ip\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"images\",\n Type = \"A\",\n Data = \"1.2.3.4\",\n Ttl = 3600,\n GeoIp = new Scaleway.Inputs.DomainRecordGeoIpArgs\n {\n Matches = new[]\n {\n new Scaleway.Inputs.DomainRecordGeoIpMatchArgs\n {\n Continents = new[]\n {\n \"EU\",\n },\n Countries = new[]\n {\n \"FR\",\n },\n Data = \"1.2.3.5\",\n },\n new Scaleway.Inputs.DomainRecordGeoIpMatchArgs\n {\n Continents = new[]\n {\n \"NA\",\n },\n Data = \"4.3.2.1\",\n },\n },\n },\n });\n\n var httpService = new Scaleway.DomainRecord(\"http_service\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"app\",\n Type = \"A\",\n Data = \"1.2.3.4\",\n Ttl = 3600,\n HttpService = new Scaleway.Inputs.DomainRecordHttpServiceArgs\n {\n Ips = new[]\n {\n \"1.2.3.5\",\n \"1.2.3.6\",\n },\n MustContain = \"up\",\n Url = \"http://mywebsite.com/health\",\n UserAgent = \"scw_service_up\",\n Strategy = \"hashed\",\n },\n });\n\n var view = new Scaleway.DomainRecord(\"view\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"db\",\n Type = \"A\",\n Data = \"1.2.3.4\",\n Ttl = 3600,\n Views = new[]\n {\n new Scaleway.Inputs.DomainRecordViewArgs\n {\n Subnet = \"100.0.0.0/16\",\n Data = \"1.2.3.5\",\n },\n new Scaleway.Inputs.DomainRecordViewArgs\n {\n Subnet = \"100.1.0.0/16\",\n Data = \"1.2.3.6\",\n },\n },\n });\n\n var weighted = new Scaleway.DomainRecord(\"weighted\", new()\n {\n DnsZone = \"domain.tld\",\n Name = \"web\",\n Type = \"A\",\n Data = \"1.2.3.4\",\n Ttl = 3600,\n Weighteds = new[]\n {\n new Scaleway.Inputs.DomainRecordWeightedArgs\n {\n Ip = \"1.2.3.5\",\n Weight = 1,\n },\n new Scaleway.Inputs.DomainRecordWeightedArgs\n {\n Ip = \"1.2.3.6\",\n Weight = 2,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := scaleway.NewDomainRecord(ctx, \"geo_ip\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"images\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.4\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tGeoIp: \u0026scaleway.DomainRecordGeoIpArgs{\n\t\t\t\tMatches: scaleway.DomainRecordGeoIpMatchArray{\n\t\t\t\t\t\u0026scaleway.DomainRecordGeoIpMatchArgs{\n\t\t\t\t\t\tContinents: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"EU\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tCountries: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"FR\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tData: pulumi.String(\"1.2.3.5\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026scaleway.DomainRecordGeoIpMatchArgs{\n\t\t\t\t\t\tContinents: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"NA\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tData: pulumi.String(\"4.3.2.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_, err = scaleway.NewDomainRecord(ctx, \"http_service\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"app\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.4\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tHttpService: \u0026scaleway.DomainRecordHttpServiceArgs{\n\t\t\t\tIps: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"1.2.3.5\"),\n\t\t\t\t\tpulumi.String(\"1.2.3.6\"),\n\t\t\t\t},\n\t\t\t\tMustContain: pulumi.String(\"up\"),\n\t\t\t\tUrl: pulumi.String(\"http://mywebsite.com/health\"),\n\t\t\t\tUserAgent: pulumi.String(\"scw_service_up\"),\n\t\t\t\tStrategy: pulumi.String(\"hashed\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"view\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"db\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.4\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tViews: scaleway.DomainRecordViewArray{\n\t\t\t\t\u0026scaleway.DomainRecordViewArgs{\n\t\t\t\t\tSubnet: pulumi.String(\"100.0.0.0/16\"),\n\t\t\t\t\tData: pulumi.String(\"1.2.3.5\"),\n\t\t\t\t},\n\t\t\t\t\u0026scaleway.DomainRecordViewArgs{\n\t\t\t\t\tSubnet: pulumi.String(\"100.1.0.0/16\"),\n\t\t\t\t\tData: pulumi.String(\"1.2.3.6\"),\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_, err = scaleway.NewDomainRecord(ctx, \"weighted\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(\"domain.tld\"),\n\t\t\tName: pulumi.String(\"web\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: pulumi.String(\"1.2.3.4\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tWeighteds: scaleway.DomainRecordWeightedArray{\n\t\t\t\t\u0026scaleway.DomainRecordWeightedArgs{\n\t\t\t\t\tIp: pulumi.String(\"1.2.3.5\"),\n\t\t\t\t\tWeight: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t\t\u0026scaleway.DomainRecordWeightedArgs{\n\t\t\t\t\tIp: pulumi.String(\"1.2.3.6\"),\n\t\t\t\t\tWeight: pulumi.Int(2),\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\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.scaleway.DomainRecord;\nimport com.pulumi.scaleway.DomainRecordArgs;\nimport com.pulumi.scaleway.inputs.DomainRecordGeoIpArgs;\nimport com.pulumi.scaleway.inputs.DomainRecordHttpServiceArgs;\nimport com.pulumi.scaleway.inputs.DomainRecordViewArgs;\nimport com.pulumi.scaleway.inputs.DomainRecordWeightedArgs;\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 geoIp = new DomainRecord(\"geoIp\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"images\")\n .type(\"A\")\n .data(\"1.2.3.4\")\n .ttl(3600)\n .geoIp(DomainRecordGeoIpArgs.builder()\n .matches( \n DomainRecordGeoIpMatchArgs.builder()\n .continents(\"EU\")\n .countries(\"FR\")\n .data(\"1.2.3.5\")\n .build(),\n DomainRecordGeoIpMatchArgs.builder()\n .continents(\"NA\")\n .data(\"4.3.2.1\")\n .build())\n .build())\n .build());\n\n var httpService = new DomainRecord(\"httpService\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"app\")\n .type(\"A\")\n .data(\"1.2.3.4\")\n .ttl(3600)\n .httpService(DomainRecordHttpServiceArgs.builder()\n .ips( \n \"1.2.3.5\",\n \"1.2.3.6\")\n .mustContain(\"up\")\n .url(\"http://mywebsite.com/health\")\n .userAgent(\"scw_service_up\")\n .strategy(\"hashed\")\n .build())\n .build());\n\n var view = new DomainRecord(\"view\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"db\")\n .type(\"A\")\n .data(\"1.2.3.4\")\n .ttl(3600)\n .views( \n DomainRecordViewArgs.builder()\n .subnet(\"100.0.0.0/16\")\n .data(\"1.2.3.5\")\n .build(),\n DomainRecordViewArgs.builder()\n .subnet(\"100.1.0.0/16\")\n .data(\"1.2.3.6\")\n .build())\n .build());\n\n var weighted = new DomainRecord(\"weighted\", DomainRecordArgs.builder()\n .dnsZone(\"domain.tld\")\n .name(\"web\")\n .type(\"A\")\n .data(\"1.2.3.4\")\n .ttl(3600)\n .weighteds( \n DomainRecordWeightedArgs.builder()\n .ip(\"1.2.3.5\")\n .weight(1)\n .build(),\n DomainRecordWeightedArgs.builder()\n .ip(\"1.2.3.6\")\n .weight(2)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n geoIp:\n type: scaleway:DomainRecord\n name: geo_ip\n properties:\n dnsZone: domain.tld\n name: images\n type: A\n data: 1.2.3.4\n ttl: 3600\n geoIp:\n matches:\n - continents:\n - EU\n countries:\n - FR\n data: 1.2.3.5\n - continents:\n - NA\n data: 4.3.2.1\n httpService:\n type: scaleway:DomainRecord\n name: http_service\n properties:\n dnsZone: domain.tld\n name: app\n type: A\n data: 1.2.3.4\n ttl: 3600\n httpService:\n ips:\n - 1.2.3.5\n - 1.2.3.6\n mustContain: up\n url: http://mywebsite.com/health\n userAgent: scw_service_up\n strategy: hashed\n view:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name: db\n type: A\n data: 1.2.3.4\n ttl: 3600\n views:\n - subnet: 100.0.0.0/16\n data: 1.2.3.5\n - subnet: 100.1.0.0/16\n data: 1.2.3.6\n weighted:\n type: scaleway:DomainRecord\n properties:\n dnsZone: domain.tld\n name: web\n type: A\n data: 1.2.3.4\n ttl: 3600\n weighteds:\n - ip: 1.2.3.5\n weight: 1\n - ip: 1.2.3.6\n weight: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create an Instance and add records with the new Instance IP\n\nThe following commands allow you to:\n\n- create a Scaleway Instance\n- assign The Instance's IP address to various DNS records for a specified DNS zone\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst config = new pulumi.Config();\n// Your project ID.\nconst projectId = config.require(\"projectId\");\n// The DNS Zone used for testing records.\nconst dnsZone = config.require(\"dnsZone\");\nconst publicIp = new scaleway.InstanceIp(\"public_ip\", {projectId: projectId});\nconst web = new scaleway.InstanceServer(\"web\", {\n projectId: projectId,\n type: \"DEV1-S\",\n image: \"ubuntu_jammy\",\n tags: [\n \"front\",\n \"web\",\n ],\n ipId: publicIp.id,\n rootVolume: {\n sizeInGb: 20,\n },\n});\nconst webA = new scaleway.DomainRecord(\"web_A\", {\n dnsZone: dnsZone,\n name: \"web\",\n type: \"A\",\n data: web.publicIp,\n ttl: 3600,\n});\nconst webCname = new scaleway.DomainRecord(\"web_cname\", {\n dnsZone: dnsZone,\n name: \"www\",\n type: \"CNAME\",\n data: `web.${dnsZone}.`,\n ttl: 3600,\n});\nconst webAlias = new scaleway.DomainRecord(\"web_alias\", {\n dnsZone: dnsZone,\n name: \"\",\n type: \"ALIAS\",\n data: `web.${dnsZone}.`,\n ttl: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\nconfig = pulumi.Config()\n# Your project ID.\nproject_id = config.require(\"projectId\")\n# The DNS Zone used for testing records.\ndns_zone = config.require(\"dnsZone\")\npublic_ip = scaleway.InstanceIp(\"public_ip\", project_id=project_id)\nweb = scaleway.InstanceServer(\"web\",\n project_id=project_id,\n type=\"DEV1-S\",\n image=\"ubuntu_jammy\",\n tags=[\n \"front\",\n \"web\",\n ],\n ip_id=public_ip.id,\n root_volume={\n \"size_in_gb\": 20,\n })\nweb_a = scaleway.DomainRecord(\"web_A\",\n dns_zone=dns_zone,\n name=\"web\",\n type=\"A\",\n data=web.public_ip,\n ttl=3600)\nweb_cname = scaleway.DomainRecord(\"web_cname\",\n dns_zone=dns_zone,\n name=\"www\",\n type=\"CNAME\",\n data=f\"web.{dns_zone}.\",\n ttl=3600)\nweb_alias = scaleway.DomainRecord(\"web_alias\",\n dns_zone=dns_zone,\n name=\"\",\n type=\"ALIAS\",\n data=f\"web.{dns_zone}.\",\n ttl=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n // Your project ID.\n var projectId = config.Require(\"projectId\");\n // The DNS Zone used for testing records.\n var dnsZone = config.Require(\"dnsZone\");\n var publicIp = new Scaleway.InstanceIp(\"public_ip\", new()\n {\n ProjectId = projectId,\n });\n\n var web = new Scaleway.InstanceServer(\"web\", new()\n {\n ProjectId = projectId,\n Type = \"DEV1-S\",\n Image = \"ubuntu_jammy\",\n Tags = new[]\n {\n \"front\",\n \"web\",\n },\n IpId = publicIp.Id,\n RootVolume = new Scaleway.Inputs.InstanceServerRootVolumeArgs\n {\n SizeInGb = 20,\n },\n });\n\n var webA = new Scaleway.DomainRecord(\"web_A\", new()\n {\n DnsZone = dnsZone,\n Name = \"web\",\n Type = \"A\",\n Data = web.PublicIp,\n Ttl = 3600,\n });\n\n var webCname = new Scaleway.DomainRecord(\"web_cname\", new()\n {\n DnsZone = dnsZone,\n Name = \"www\",\n Type = \"CNAME\",\n Data = $\"web.{dnsZone}.\",\n Ttl = 3600,\n });\n\n var webAlias = new Scaleway.DomainRecord(\"web_alias\", new()\n {\n DnsZone = dnsZone,\n Name = \"\",\n Type = \"ALIAS\",\n Data = $\"web.{dnsZone}.\",\n Ttl = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\t// Your project ID.\n\t\tprojectId := cfg.Require(\"projectId\")\n\t\t// The DNS Zone used for testing records.\n\t\tdnsZone := cfg.Require(\"dnsZone\")\n\t\tpublicIp, err := scaleway.NewInstanceIp(ctx, \"public_ip\", \u0026scaleway.InstanceIpArgs{\n\t\t\tProjectId: pulumi.String(projectId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tweb, err := scaleway.NewInstanceServer(ctx, \"web\", \u0026scaleway.InstanceServerArgs{\n\t\t\tProjectId: pulumi.String(projectId),\n\t\t\tType: pulumi.String(\"DEV1-S\"),\n\t\t\tImage: pulumi.String(\"ubuntu_jammy\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"front\"),\n\t\t\t\tpulumi.String(\"web\"),\n\t\t\t},\n\t\t\tIpId: publicIp.ID(),\n\t\t\tRootVolume: \u0026scaleway.InstanceServerRootVolumeArgs{\n\t\t\t\tSizeInGb: pulumi.Int(20),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"web_A\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(dnsZone),\n\t\t\tName: pulumi.String(\"web\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tData: web.PublicIp,\n\t\t\tTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"web_cname\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(dnsZone),\n\t\t\tName: pulumi.String(\"www\"),\n\t\t\tType: pulumi.String(\"CNAME\"),\n\t\t\tData: pulumi.Sprintf(\"web.%v.\", dnsZone),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewDomainRecord(ctx, \"web_alias\", \u0026scaleway.DomainRecordArgs{\n\t\t\tDnsZone: pulumi.String(dnsZone),\n\t\t\tName: pulumi.String(\"\"),\n\t\t\tType: pulumi.String(\"ALIAS\"),\n\t\t\tData: pulumi.Sprintf(\"web.%v.\", dnsZone),\n\t\t\tTtl: pulumi.Int(3600),\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.scaleway.InstanceIp;\nimport com.pulumi.scaleway.InstanceIpArgs;\nimport com.pulumi.scaleway.InstanceServer;\nimport com.pulumi.scaleway.InstanceServerArgs;\nimport com.pulumi.scaleway.inputs.InstanceServerRootVolumeArgs;\nimport com.pulumi.scaleway.DomainRecord;\nimport com.pulumi.scaleway.DomainRecordArgs;\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 config = ctx.config();\n final var projectId = config.get(\"projectId\");\n final var dnsZone = config.get(\"dnsZone\");\n var publicIp = new InstanceIp(\"publicIp\", InstanceIpArgs.builder()\n .projectId(projectId)\n .build());\n\n var web = new InstanceServer(\"web\", InstanceServerArgs.builder()\n .projectId(projectId)\n .type(\"DEV1-S\")\n .image(\"ubuntu_jammy\")\n .tags( \n \"front\",\n \"web\")\n .ipId(publicIp.id())\n .rootVolume(InstanceServerRootVolumeArgs.builder()\n .sizeInGb(20)\n .build())\n .build());\n\n var webA = new DomainRecord(\"webA\", DomainRecordArgs.builder()\n .dnsZone(dnsZone)\n .name(\"web\")\n .type(\"A\")\n .data(web.publicIp())\n .ttl(3600)\n .build());\n\n var webCname = new DomainRecord(\"webCname\", DomainRecordArgs.builder()\n .dnsZone(dnsZone)\n .name(\"www\")\n .type(\"CNAME\")\n .data(String.format(\"web.%s.\", dnsZone))\n .ttl(3600)\n .build());\n\n var webAlias = new DomainRecord(\"webAlias\", DomainRecordArgs.builder()\n .dnsZone(dnsZone)\n .name(\"\")\n .type(\"ALIAS\")\n .data(String.format(\"web.%s.\", dnsZone))\n .ttl(3600)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n projectId:\n type: string\n dnsZone:\n type: string\nresources:\n publicIp:\n type: scaleway:InstanceIp\n name: public_ip\n properties:\n projectId: ${projectId}\n web:\n type: scaleway:InstanceServer\n properties:\n projectId: ${projectId}\n type: DEV1-S\n image: ubuntu_jammy\n tags:\n - front\n - web\n ipId: ${publicIp.id}\n rootVolume:\n sizeInGb: 20\n webA:\n type: scaleway:DomainRecord\n name: web_A\n properties:\n dnsZone: ${dnsZone}\n name: web\n type: A\n data: ${web.publicIp}\n ttl: 3600\n webCname:\n type: scaleway:DomainRecord\n name: web_cname\n properties:\n dnsZone: ${dnsZone}\n name: www\n type: CNAME\n data: web.${dnsZone}.\n ttl: 3600\n webAlias:\n type: scaleway:DomainRecord\n name: web_alias\n properties:\n dnsZone: ${dnsZone}\n name:\n type: ALIAS\n data: web.${dnsZone}.\n ttl: 3600\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Multiple records\n\nSome record types can have multiple data with the same name (e.g., `A`, `AAAA`, `MX`, `NS`, etc.). You can duplicate a `scaleway.DomainRecord` resource with the same `name`, and the records will be added.\n\nNote however, that some records (e.g., CNAME, multiple dynamic records of different types) must be unique.\n\n## Import\n\nThis section explains how to import a record using the `{dns_zone}/{id}` format.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/domainRecord:DomainRecord www subdomain.domain.tld/11111111-1111-1111-1111-111111111111\n```\n\n",
- "properties": {
- "data": {
- "type": "string",
- "description": "The content of the record (an IPv4 for an `A` record, a string for a `TXT` record, etc.).\n"
- },
- "dnsZone": {
- "type": "string",
- "description": "The DNS zone of the domain. If the domain has no DNS zone, one will be automatically created.\n"
- },
- "fqdn": {
- "type": "string",
- "description": "The FQDN of the record.\n"
- },
- "geoIp": {
- "$ref": "#/types/scaleway:index/DomainRecordGeoIp:DomainRecordGeoIp",
- "description": "Return record based on client localisation\n"
- },
- "httpService": {
- "$ref": "#/types/scaleway:index/DomainRecordHttpService:DomainRecordHttpService",
- "description": "Return record based on client localisation\n"
- },
- "keepEmptyZone": {
- "type": "boolean",
- "description": "When destroying a resource, if only NS records remain and this is set to `false`, the zone will be deleted. Note that each zone not deleted will [be billed](https://www.scaleway.com/en/dns/).\n"
- },
- "name": {
- "type": "string",
- "description": "The name of the record (can be an empty string for a root record).\n"
- },
- "priority": {
- "type": "integer",
- "description": "The priority of the record (mostly used with an `MX` record).\n"
- },
- "projectId": {
- "type": "string",
- "description": "The project_id you want to attach the resource to\n"
- },
- "rootZone": {
- "type": "boolean",
- "description": "Does the DNS zone is the root zone or not\n"
- },
- "ttl": {
- "type": "integer",
- "description": "Time To Live of the record in seconds.\n"
- },
- "type": {
- "type": "string",
- "description": "The type of the record (`A`, `AAAA`, `MX`, `CNAME`, `DNAME`, `ALIAS`, `NS`, `PTR`, `SRV`, `TXT`, `TLSA`, or `CAA`).\n"
- },
- "views": {
- "type": "array",
- "items": {
- "$ref": "#/types/scaleway:index/DomainRecordView:DomainRecordView"
- },
- "description": "Return record based on client subnet\n"
- },
- "weighteds": {
- "type": "array",
- "items": {
- "$ref": "#/types/scaleway:index/DomainRecordWeighted:DomainRecordWeighted"
- },
- "description": "Return record based on weight\n"
- }
- },
- "required": [
- "data",
- "dnsZone",
- "fqdn",
- "name",
- "priority",
- "projectId",
- "rootZone",
- "type"
- ],
- "inputProperties": {
- "data": {
- "type": "string",
- "description": "The content of the record (an IPv4 for an `A` record, a string for a `TXT` record, etc.).\n"
- },
- "dnsZone": {
- "type": "string",
- "description": "The DNS zone of the domain. If the domain has no DNS zone, one will be automatically created.\n",
- "willReplaceOnChanges": true
- },
- "geoIp": {
- "$ref": "#/types/scaleway:index/DomainRecordGeoIp:DomainRecordGeoIp",
- "description": "Return record based on client localisation\n"
- },
- "httpService": {
- "$ref": "#/types/scaleway:index/DomainRecordHttpService:DomainRecordHttpService",
- "description": "Return record based on client localisation\n"
- },
- "keepEmptyZone": {
- "type": "boolean",
- "description": "When destroying a resource, if only NS records remain and this is set to `false`, the zone will be deleted. Note that each zone not deleted will [be billed](https://www.scaleway.com/en/dns/).\n"
- },
- "name": {
- "type": "string",
- "description": "The name of the record (can be an empty string for a root record).\n",
- "willReplaceOnChanges": true
- },
- "priority": {
- "type": "integer",
- "description": "The priority of the record (mostly used with an `MX` record).\n"
- },
- "projectId": {
- "type": "string",
- "description": "The project_id you want to attach the resource to\n",
- "willReplaceOnChanges": true
- },
- "ttl": {
- "type": "integer",
- "description": "Time To Live of the record in seconds.\n"
- },
- "type": {
- "type": "string",
- "description": "The type of the record (`A`, `AAAA`, `MX`, `CNAME`, `DNAME`, `ALIAS`, `NS`, `PTR`, `SRV`, `TXT`, `TLSA`, or `CAA`).\n",
- "willReplaceOnChanges": true
- },
- "views": {
- "type": "array",
- "items": {
- "$ref": "#/types/scaleway:index/DomainRecordView:DomainRecordView"
- },
- "description": "Return record based on client subnet\n"
- },
- "weighteds": {
- "type": "array",
- "items": {
- "$ref": "#/types/scaleway:index/DomainRecordWeighted:DomainRecordWeighted"
- },
- "description": "Return record based on weight\n"
- }
- },
- "requiredInputs": [
- "data",
- "dnsZone",
- "type"
- ],
- "stateInputs": {
- "description": "Input properties used for looking up and filtering DomainRecord resources.\n",
- "properties": {
- "data": {
- "type": "string",
- "description": "The content of the record (an IPv4 for an `A` record, a string for a `TXT` record, etc.).\n"
- },
- "dnsZone": {
+ "dnsZone": {
"type": "string",
"description": "The DNS zone of the domain. If the domain has no DNS zone, one will be automatically created.\n",
"willReplaceOnChanges": true
@@ -12875,7 +12128,7 @@
}
},
"scaleway:index/instancePrivateNic:InstancePrivateNic": {
- "description": "Creates and manages Scaleway Instance Private NICs. For more information, see\n[the documentation](https://www.scaleway.com/en/developers/api/instance/#path-private-nics-list-all-private-nics).\n\n## Example Usage\n\n### Basic\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst pnic01 = new scaleway.InstancePrivateNic(\"pnic01\", {\n serverId: \"fr-par-1/11111111-1111-1111-1111-111111111111\",\n privateNetworkId: \"fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\",\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\npnic01 = scaleway.InstancePrivateNic(\"pnic01\",\n server_id=\"fr-par-1/11111111-1111-1111-1111-111111111111\",\n private_network_id=\"fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pnic01 = new Scaleway.InstancePrivateNic(\"pnic01\", new()\n {\n ServerId = \"fr-par-1/11111111-1111-1111-1111-111111111111\",\n PrivateNetworkId = \"fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := scaleway.NewInstancePrivateNic(ctx, \"pnic01\", \u0026scaleway.InstancePrivateNicArgs{\n\t\t\tServerId: pulumi.String(\"fr-par-1/11111111-1111-1111-1111-111111111111\"),\n\t\t\tPrivateNetworkId: pulumi.String(\"fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\"),\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.scaleway.InstancePrivateNic;\nimport com.pulumi.scaleway.InstancePrivateNicArgs;\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 pnic01 = new InstancePrivateNic(\"pnic01\", InstancePrivateNicArgs.builder()\n .serverId(\"fr-par-1/11111111-1111-1111-1111-111111111111\")\n .privateNetworkId(\"fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pnic01:\n type: scaleway:InstancePrivateNic\n properties:\n serverId: fr-par-1/11111111-1111-1111-1111-111111111111\n privateNetworkId: fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### With zone\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst pn01 = new scaleway.VpcPrivateNetwork(\"pn01\", {\n name: \"private_network_instance\",\n zone: \"fr-par-2\",\n});\nconst base = new scaleway.InstanceServer(\"base\", {\n image: \"ubuntu_jammy\",\n type: \"DEV1-S\",\n zone: pn01.zone,\n});\nconst pnic01 = new scaleway.InstancePrivateNic(\"pnic01\", {\n serverId: base.id,\n privateNetworkId: pn01.id,\n zone: pn01.zone,\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\npn01 = scaleway.VpcPrivateNetwork(\"pn01\",\n name=\"private_network_instance\",\n zone=\"fr-par-2\")\nbase = scaleway.InstanceServer(\"base\",\n image=\"ubuntu_jammy\",\n type=\"DEV1-S\",\n zone=pn01.zone)\npnic01 = scaleway.InstancePrivateNic(\"pnic01\",\n server_id=base.id,\n private_network_id=pn01.id,\n zone=pn01.zone)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pn01 = new Scaleway.VpcPrivateNetwork(\"pn01\", new()\n {\n Name = \"private_network_instance\",\n Zone = \"fr-par-2\",\n });\n\n var @base = new Scaleway.InstanceServer(\"base\", new()\n {\n Image = \"ubuntu_jammy\",\n Type = \"DEV1-S\",\n Zone = pn01.Zone,\n });\n\n var pnic01 = new Scaleway.InstancePrivateNic(\"pnic01\", new()\n {\n ServerId = @base.Id,\n PrivateNetworkId = pn01.Id,\n Zone = pn01.Zone,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpn01, err := scaleway.NewVpcPrivateNetwork(ctx, \"pn01\", \u0026scaleway.VpcPrivateNetworkArgs{\n\t\t\tName: pulumi.String(\"private_network_instance\"),\n\t\t\tZone: pulumi.String(\"fr-par-2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tbase, err := scaleway.NewInstanceServer(ctx, \"base\", \u0026scaleway.InstanceServerArgs{\n\t\t\tImage: pulumi.String(\"ubuntu_jammy\"),\n\t\t\tType: pulumi.String(\"DEV1-S\"),\n\t\t\tZone: pn01.Zone,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewInstancePrivateNic(ctx, \"pnic01\", \u0026scaleway.InstancePrivateNicArgs{\n\t\t\tServerId: base.ID(),\n\t\t\tPrivateNetworkId: pn01.ID(),\n\t\t\tZone: pn01.Zone,\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.scaleway.VpcPrivateNetwork;\nimport com.pulumi.scaleway.VpcPrivateNetworkArgs;\nimport com.pulumi.scaleway.InstanceServer;\nimport com.pulumi.scaleway.InstanceServerArgs;\nimport com.pulumi.scaleway.InstancePrivateNic;\nimport com.pulumi.scaleway.InstancePrivateNicArgs;\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 pn01 = new VpcPrivateNetwork(\"pn01\", VpcPrivateNetworkArgs.builder()\n .name(\"private_network_instance\")\n .zone(\"fr-par-2\")\n .build());\n\n var base = new InstanceServer(\"base\", InstanceServerArgs.builder()\n .image(\"ubuntu_jammy\")\n .type(\"DEV1-S\")\n .zone(pn01.zone())\n .build());\n\n var pnic01 = new InstancePrivateNic(\"pnic01\", InstancePrivateNicArgs.builder()\n .serverId(base.id())\n .privateNetworkId(pn01.id())\n .zone(pn01.zone())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pn01:\n type: scaleway:VpcPrivateNetwork\n properties:\n name: private_network_instance\n zone: fr-par-2\n base:\n type: scaleway:InstanceServer\n properties:\n image: ubuntu_jammy\n type: DEV1-S\n zone: ${pn01.zone}\n pnic01:\n type: scaleway:InstancePrivateNic\n properties:\n serverId: ${base.id}\n privateNetworkId: ${pn01.id}\n zone: ${pn01.zone}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nPrivate NICs can be imported using the `{zone}/{server_id}/{private_nic_id}`, e.g.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/instancePrivateNic:InstancePrivateNic pnic01 fr-par-1/11111111-1111-1111-1111-111111111111/22222222-2222-2222-2222-222222222222\n```\n\n",
+ "description": "Creates and manages Scaleway Instance Private NICs. For more information, see\n[the documentation](https://www.scaleway.com/en/developers/api/instance/#path-private-nics-list-all-private-nics).\n\n## Example Usage\n\n### Basic\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst pnic01 = new scaleway.InstancePrivateNic(\"pnic01\", {\n serverId: \"fr-par-1/11111111-1111-1111-1111-111111111111\",\n privateNetworkId: \"fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\",\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\npnic01 = scaleway.InstancePrivateNic(\"pnic01\",\n server_id=\"fr-par-1/11111111-1111-1111-1111-111111111111\",\n private_network_id=\"fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pnic01 = new Scaleway.InstancePrivateNic(\"pnic01\", new()\n {\n ServerId = \"fr-par-1/11111111-1111-1111-1111-111111111111\",\n PrivateNetworkId = \"fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := scaleway.NewInstancePrivateNic(ctx, \"pnic01\", \u0026scaleway.InstancePrivateNicArgs{\n\t\t\tServerId: pulumi.String(\"fr-par-1/11111111-1111-1111-1111-111111111111\"),\n\t\t\tPrivateNetworkId: pulumi.String(\"fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\"),\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.scaleway.InstancePrivateNic;\nimport com.pulumi.scaleway.InstancePrivateNicArgs;\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 pnic01 = new InstancePrivateNic(\"pnic01\", InstancePrivateNicArgs.builder()\n .serverId(\"fr-par-1/11111111-1111-1111-1111-111111111111\")\n .privateNetworkId(\"fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pnic01:\n type: scaleway:InstancePrivateNic\n properties:\n serverId: fr-par-1/11111111-1111-1111-1111-111111111111\n privateNetworkId: fr-par-1/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### With zone\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst pn01 = new scaleway.VpcPrivateNetwork(\"pn01\", {\n name: \"private_network_instance\",\n region: \"fr-par\",\n});\nconst base = new scaleway.InstanceServer(\"base\", {\n image: \"ubuntu_jammy\",\n type: \"DEV1-S\",\n zone: pn01.zone,\n});\nconst pnic01 = new scaleway.InstancePrivateNic(\"pnic01\", {\n serverId: base.id,\n privateNetworkId: pn01.id,\n zone: pn01.zone,\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\npn01 = scaleway.VpcPrivateNetwork(\"pn01\",\n name=\"private_network_instance\",\n region=\"fr-par\")\nbase = scaleway.InstanceServer(\"base\",\n image=\"ubuntu_jammy\",\n type=\"DEV1-S\",\n zone=pn01.zone)\npnic01 = scaleway.InstancePrivateNic(\"pnic01\",\n server_id=base.id,\n private_network_id=pn01.id,\n zone=pn01.zone)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pn01 = new Scaleway.VpcPrivateNetwork(\"pn01\", new()\n {\n Name = \"private_network_instance\",\n Region = \"fr-par\",\n });\n\n var @base = new Scaleway.InstanceServer(\"base\", new()\n {\n Image = \"ubuntu_jammy\",\n Type = \"DEV1-S\",\n Zone = pn01.Zone,\n });\n\n var pnic01 = new Scaleway.InstancePrivateNic(\"pnic01\", new()\n {\n ServerId = @base.Id,\n PrivateNetworkId = pn01.Id,\n Zone = pn01.Zone,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpn01, err := scaleway.NewVpcPrivateNetwork(ctx, \"pn01\", \u0026scaleway.VpcPrivateNetworkArgs{\n\t\t\tName: pulumi.String(\"private_network_instance\"),\n\t\t\tRegion: pulumi.String(\"fr-par\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tbase, err := scaleway.NewInstanceServer(ctx, \"base\", \u0026scaleway.InstanceServerArgs{\n\t\t\tImage: pulumi.String(\"ubuntu_jammy\"),\n\t\t\tType: pulumi.String(\"DEV1-S\"),\n\t\t\tZone: pn01.Zone,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewInstancePrivateNic(ctx, \"pnic01\", \u0026scaleway.InstancePrivateNicArgs{\n\t\t\tServerId: base.ID(),\n\t\t\tPrivateNetworkId: pn01.ID(),\n\t\t\tZone: pn01.Zone,\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.scaleway.VpcPrivateNetwork;\nimport com.pulumi.scaleway.VpcPrivateNetworkArgs;\nimport com.pulumi.scaleway.InstanceServer;\nimport com.pulumi.scaleway.InstanceServerArgs;\nimport com.pulumi.scaleway.InstancePrivateNic;\nimport com.pulumi.scaleway.InstancePrivateNicArgs;\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 pn01 = new VpcPrivateNetwork(\"pn01\", VpcPrivateNetworkArgs.builder()\n .name(\"private_network_instance\")\n .region(\"fr-par\")\n .build());\n\n var base = new InstanceServer(\"base\", InstanceServerArgs.builder()\n .image(\"ubuntu_jammy\")\n .type(\"DEV1-S\")\n .zone(pn01.zone())\n .build());\n\n var pnic01 = new InstancePrivateNic(\"pnic01\", InstancePrivateNicArgs.builder()\n .serverId(base.id())\n .privateNetworkId(pn01.id())\n .zone(pn01.zone())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pn01:\n type: scaleway:VpcPrivateNetwork\n properties:\n name: private_network_instance\n region: fr-par\n base:\n type: scaleway:InstanceServer\n properties:\n image: ubuntu_jammy\n type: DEV1-S\n zone: ${pn01.zone}\n pnic01:\n type: scaleway:InstancePrivateNic\n properties:\n serverId: ${base.id}\n privateNetworkId: ${pn01.id}\n zone: ${pn01.zone}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### With IPAM IP IDs\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumiverse/scaleway\";\n\nconst vpc01 = new scaleway.Vpc(\"vpc01\", {name: \"vpc_instance\"});\nconst pn01 = new scaleway.VpcPrivateNetwork(\"pn01\", {\n name: \"private_network_instance\",\n ipv4Subnet: {\n subnet: \"172.16.64.0/22\",\n },\n vpcId: vpc01.id,\n});\nconst ip01 = new scaleway.IpamIp(\"ip01\", {\n address: \"172.16.64.7\",\n sources: [{\n privateNetworkId: pn01.id,\n }],\n});\nconst server01 = new scaleway.InstanceServer(\"server01\", {\n image: \"ubuntu_focal\",\n type: \"PLAY2-MICRO\",\n});\nconst pnic01 = new scaleway.InstancePrivateNic(\"pnic01\", {\n privateNetworkId: pn01.id,\n serverId: server01.id,\n ipamIpIds: [ip01.id],\n});\n```\n```python\nimport pulumi\nimport pulumiverse_scaleway as scaleway\n\nvpc01 = scaleway.Vpc(\"vpc01\", name=\"vpc_instance\")\npn01 = scaleway.VpcPrivateNetwork(\"pn01\",\n name=\"private_network_instance\",\n ipv4_subnet={\n \"subnet\": \"172.16.64.0/22\",\n },\n vpc_id=vpc01.id)\nip01 = scaleway.IpamIp(\"ip01\",\n address=\"172.16.64.7\",\n sources=[{\n \"private_network_id\": pn01.id,\n }])\nserver01 = scaleway.InstanceServer(\"server01\",\n image=\"ubuntu_focal\",\n type=\"PLAY2-MICRO\")\npnic01 = scaleway.InstancePrivateNic(\"pnic01\",\n private_network_id=pn01.id,\n server_id=server01.id,\n ipam_ip_ids=[ip01.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumiverse.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vpc01 = new Scaleway.Vpc(\"vpc01\", new()\n {\n Name = \"vpc_instance\",\n });\n\n var pn01 = new Scaleway.VpcPrivateNetwork(\"pn01\", new()\n {\n Name = \"private_network_instance\",\n Ipv4Subnet = new Scaleway.Inputs.VpcPrivateNetworkIpv4SubnetArgs\n {\n Subnet = \"172.16.64.0/22\",\n },\n VpcId = vpc01.Id,\n });\n\n var ip01 = new Scaleway.IpamIp(\"ip01\", new()\n {\n Address = \"172.16.64.7\",\n Sources = new[]\n {\n new Scaleway.Inputs.IpamIpSourceArgs\n {\n PrivateNetworkId = pn01.Id,\n },\n },\n });\n\n var server01 = new Scaleway.InstanceServer(\"server01\", new()\n {\n Image = \"ubuntu_focal\",\n Type = \"PLAY2-MICRO\",\n });\n\n var pnic01 = new Scaleway.InstancePrivateNic(\"pnic01\", new()\n {\n PrivateNetworkId = pn01.Id,\n ServerId = server01.Id,\n IpamIpIds = new[]\n {\n ip01.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tvpc01, err := scaleway.NewVpc(ctx, \"vpc01\", \u0026scaleway.VpcArgs{\n\t\t\tName: pulumi.String(\"vpc_instance\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpn01, err := scaleway.NewVpcPrivateNetwork(ctx, \"pn01\", \u0026scaleway.VpcPrivateNetworkArgs{\n\t\t\tName: pulumi.String(\"private_network_instance\"),\n\t\t\tIpv4Subnet: \u0026scaleway.VpcPrivateNetworkIpv4SubnetArgs{\n\t\t\t\tSubnet: pulumi.String(\"172.16.64.0/22\"),\n\t\t\t},\n\t\t\tVpcId: vpc01.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tip01, err := scaleway.NewIpamIp(ctx, \"ip01\", \u0026scaleway.IpamIpArgs{\n\t\t\tAddress: pulumi.String(\"172.16.64.7\"),\n\t\t\tSources: scaleway.IpamIpSourceArray{\n\t\t\t\t\u0026scaleway.IpamIpSourceArgs{\n\t\t\t\t\tPrivateNetworkId: pn01.ID(),\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\tserver01, err := scaleway.NewInstanceServer(ctx, \"server01\", \u0026scaleway.InstanceServerArgs{\n\t\t\tImage: pulumi.String(\"ubuntu_focal\"),\n\t\t\tType: pulumi.String(\"PLAY2-MICRO\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.NewInstancePrivateNic(ctx, \"pnic01\", \u0026scaleway.InstancePrivateNicArgs{\n\t\t\tPrivateNetworkId: pn01.ID(),\n\t\t\tServerId: server01.ID(),\n\t\t\tIpamIpIds: pulumi.StringArray{\n\t\t\t\tip01.ID(),\n\t\t\t},\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.scaleway.Vpc;\nimport com.pulumi.scaleway.VpcArgs;\nimport com.pulumi.scaleway.VpcPrivateNetwork;\nimport com.pulumi.scaleway.VpcPrivateNetworkArgs;\nimport com.pulumi.scaleway.inputs.VpcPrivateNetworkIpv4SubnetArgs;\nimport com.pulumi.scaleway.IpamIp;\nimport com.pulumi.scaleway.IpamIpArgs;\nimport com.pulumi.scaleway.inputs.IpamIpSourceArgs;\nimport com.pulumi.scaleway.InstanceServer;\nimport com.pulumi.scaleway.InstanceServerArgs;\nimport com.pulumi.scaleway.InstancePrivateNic;\nimport com.pulumi.scaleway.InstancePrivateNicArgs;\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 vpc01 = new Vpc(\"vpc01\", VpcArgs.builder()\n .name(\"vpc_instance\")\n .build());\n\n var pn01 = new VpcPrivateNetwork(\"pn01\", VpcPrivateNetworkArgs.builder()\n .name(\"private_network_instance\")\n .ipv4Subnet(VpcPrivateNetworkIpv4SubnetArgs.builder()\n .subnet(\"172.16.64.0/22\")\n .build())\n .vpcId(vpc01.id())\n .build());\n\n var ip01 = new IpamIp(\"ip01\", IpamIpArgs.builder()\n .address(\"172.16.64.7\")\n .sources(IpamIpSourceArgs.builder()\n .privateNetworkId(pn01.id())\n .build())\n .build());\n\n var server01 = new InstanceServer(\"server01\", InstanceServerArgs.builder()\n .image(\"ubuntu_focal\")\n .type(\"PLAY2-MICRO\")\n .build());\n\n var pnic01 = new InstancePrivateNic(\"pnic01\", InstancePrivateNicArgs.builder()\n .privateNetworkId(pn01.id())\n .serverId(server01.id())\n .ipamIpIds(ip01.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vpc01:\n type: scaleway:Vpc\n properties:\n name: vpc_instance\n pn01:\n type: scaleway:VpcPrivateNetwork\n properties:\n name: private_network_instance\n ipv4Subnet:\n subnet: 172.16.64.0/22\n vpcId: ${vpc01.id}\n ip01:\n type: scaleway:IpamIp\n properties:\n address: 172.16.64.7\n sources:\n - privateNetworkId: ${pn01.id}\n server01:\n type: scaleway:InstanceServer\n properties:\n image: ubuntu_focal\n type: PLAY2-MICRO\n pnic01:\n type: scaleway:InstancePrivateNic\n properties:\n privateNetworkId: ${pn01.id}\n serverId: ${server01.id}\n ipamIpIds:\n - ${ip01.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nPrivate NICs can be imported using the `{zone}/{server_id}/{private_nic_id}`, e.g.\n\nbash\n\n```sh\n$ pulumi import scaleway:index/instancePrivateNic:InstancePrivateNic pnic01 fr-par-1/11111111-1111-1111-1111-111111111111/22222222-2222-2222-2222-222222222222\n```\n\n",
"properties": {
"ipIds": {
"type": "array",
@@ -12884,6 +12137,13 @@
},
"description": "IPAM ip list, should be for internal use only\n"
},
+ "ipamIpIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.\n"
+ },
"macAddress": {
"type": "string",
"description": "The MAC address of the private NIC.\n"
@@ -12923,6 +12183,14 @@
"description": "IPAM ip list, should be for internal use only\n",
"willReplaceOnChanges": true
},
+ "ipamIpIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.\n",
+ "willReplaceOnChanges": true
+ },
"privateNetworkId": {
"type": "string",
"description": "The ID of the private network attached to.\n",
@@ -12961,6 +12229,14 @@
"description": "IPAM ip list, should be for internal use only\n",
"willReplaceOnChanges": true
},
+ "ipamIpIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.\n",
+ "willReplaceOnChanges": true
+ },
"macAddress": {
"type": "string",
"description": "The MAC address of the private NIC.\n"
@@ -22939,235 +22215,34 @@
"type": "object"
},
"outputs": {
- "description": "A collection of values returned by getContainerNamespace.\n",
- "properties": {
- "description": {
- "description": "The description of the namespace.\n",
- "type": "string"
- },
- "destroyRegistry": {
- "type": "boolean"
- },
- "environmentVariables": {
- "additionalProperties": {
- "type": "string"
- },
- "description": "The environment variables of the namespace.\n",
- "type": "object"
- },
- "id": {
- "description": "The provider-assigned unique ID for this managed resource.\n",
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "namespaceId": {
- "type": "string"
- },
- "organizationId": {
- "description": "The unique identifier of the organization with which the namespace is associated.\n",
- "type": "string"
- },
- "projectId": {
- "type": "string"
- },
- "region": {
- "type": "string"
- },
- "registryEndpoint": {
- "description": "The registry endpoint of the namespace.\n",
- "type": "string"
- },
- "registryNamespaceId": {
- "description": "The unique identifier of the registry namespace of the Serverless Containers namespace.\n",
- "type": "string"
- },
- "secretEnvironmentVariables": {
- "additionalProperties": {
- "type": "string"
- },
- "type": "object"
- }
- },
- "required": [
- "description",
- "destroyRegistry",
- "environmentVariables",
- "organizationId",
- "registryEndpoint",
- "registryNamespaceId",
- "secretEnvironmentVariables",
- "id"
- ],
- "type": "object"
- }
- },
- "scaleway:index/getDatabase:getDatabase": {
- "description": "Gets information about a database.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumi/scaleway\";\n\n// Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\nconst myDb = scaleway.getDatabase({\n instanceId: \"11111111-1111-1111-1111-111111111111\",\n name: \"foobar\",\n});\n```\n```python\nimport pulumi\nimport pulumi_scaleway as scaleway\n\n# Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\nmy_db = scaleway.get_database(instance_id=\"11111111-1111-1111-1111-111111111111\",\n name=\"foobar\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumi.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n var myDb = Scaleway.GetDatabase.Invoke(new()\n {\n InstanceId = \"11111111-1111-1111-1111-111111111111\",\n Name = \"foobar\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n\t\t_, err := scaleway.LookupDatabase(ctx, \u0026scaleway.LookupDatabaseArgs{\n\t\t\tInstanceId: \"11111111-1111-1111-1111-111111111111\",\n\t\t\tName: \"foobar\",\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.scaleway.ScalewayFunctions;\nimport com.pulumi.scaleway.inputs.GetDatabaseArgs;\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 the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n final var myDb = ScalewayFunctions.getDatabase(GetDatabaseArgs.builder()\n .instanceId(\"11111111-1111-1111-1111-111111111111\")\n .name(\"foobar\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n myDb:\n fn::invoke:\n Function: scaleway:getDatabase\n Arguments:\n instanceId: 11111111-1111-1111-1111-111111111111\n name: foobar\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
- "inputs": {
- "description": "A collection of arguments for invoking getDatabase.\n",
- "properties": {
- "instanceId": {
- "type": "string",
- "description": "The RDB instance ID.\n"
- },
- "name": {
- "type": "string",
- "description": "The name of the RDB instance.\n"
- },
- "region": {
- "type": "string"
- }
- },
- "type": "object",
- "required": [
- "instanceId",
- "name"
- ]
- },
- "outputs": {
- "description": "A collection of values returned by getDatabase.\n",
- "properties": {
- "id": {
- "description": "The provider-assigned unique ID for this managed resource.\n",
- "type": "string"
- },
- "instanceId": {
- "type": "string"
- },
- "managed": {
- "description": "Whether the database is managed or not.\n",
- "type": "boolean"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "description": "The name of the owner of the database.\n",
- "type": "string"
- },
- "region": {
- "type": "string"
- },
- "size": {
- "description": "Size of the database (in bytes).\n",
- "type": "string"
- }
- },
- "required": [
- "instanceId",
- "managed",
- "name",
- "owner",
- "size",
- "id"
- ],
- "type": "object"
- }
- },
- "scaleway:index/getDatabaseAcl:getDatabaseAcl": {
- "description": "Gets information about the Database Instance network Access Control List.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumi/scaleway\";\n\n// Get the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\nconst myAcl = scaleway.getDatabaseAcl({\n instanceId: \"11111111-1111-1111-1111-111111111111\",\n});\n```\n```python\nimport pulumi\nimport pulumi_scaleway as scaleway\n\n# Get the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\nmy_acl = scaleway.get_database_acl(instance_id=\"11111111-1111-1111-1111-111111111111\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumi.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\n var myAcl = Scaleway.GetDatabaseAcl.Invoke(new()\n {\n InstanceId = \"11111111-1111-1111-1111-111111111111\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\n\t\t_, err := scaleway.LookupDatabaseAcl(ctx, \u0026scaleway.LookupDatabaseAclArgs{\n\t\t\tInstanceId: \"11111111-1111-1111-1111-111111111111\",\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.scaleway.ScalewayFunctions;\nimport com.pulumi.scaleway.inputs.GetDatabaseAclArgs;\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 the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\n final var myAcl = ScalewayFunctions.getDatabaseAcl(GetDatabaseAclArgs.builder()\n .instanceId(\"11111111-1111-1111-1111-111111111111\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\n myAcl:\n fn::invoke:\n Function: scaleway:getDatabaseAcl\n Arguments:\n instanceId: 11111111-1111-1111-1111-111111111111\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
- "inputs": {
- "description": "A collection of arguments for invoking getDatabaseAcl.\n",
- "properties": {
- "instanceId": {
- "type": "string",
- "description": "The RDB instance ID.\n"
- },
- "region": {
- "type": "string",
- "description": "`region`) The region in which the Database Instance should be created.\n"
- }
- },
- "type": "object",
- "required": [
- "instanceId"
- ]
- },
- "outputs": {
- "description": "A collection of values returned by getDatabaseAcl.\n",
- "properties": {
- "aclRules": {
- "description": "A list of ACLs rules (structure is described below)\n",
- "items": {
- "$ref": "#/types/scaleway:index/getDatabaseAclAclRule:getDatabaseAclAclRule"
- },
- "type": "array"
- },
- "id": {
- "description": "The provider-assigned unique ID for this managed resource.\n",
- "type": "string"
- },
- "instanceId": {
- "type": "string"
- },
- "region": {
- "type": "string"
- }
- },
- "required": [
- "aclRules",
- "instanceId",
- "id"
- ],
- "type": "object"
- }
- },
- "scaleway:index/getDatabaseBackup:getDatabaseBackup": {
- "description": "Gets information about an RDB backup.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumi/scaleway\";\n\nconst findByName = scaleway.getDatabaseBackup({\n name: \"mybackup\",\n});\nconst findByNameAndInstance = scaleway.getDatabaseBackup({\n name: \"mybackup\",\n instanceId: \"11111111-1111-1111-1111-111111111111\",\n});\nconst findById = scaleway.getDatabaseBackup({\n backupId: \"11111111-1111-1111-1111-111111111111\",\n});\n```\n```python\nimport pulumi\nimport pulumi_scaleway as scaleway\n\nfind_by_name = scaleway.get_database_backup(name=\"mybackup\")\nfind_by_name_and_instance = scaleway.get_database_backup(name=\"mybackup\",\n instance_id=\"11111111-1111-1111-1111-111111111111\")\nfind_by_id = scaleway.get_database_backup(backup_id=\"11111111-1111-1111-1111-111111111111\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumi.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var findByName = Scaleway.GetDatabaseBackup.Invoke(new()\n {\n Name = \"mybackup\",\n });\n\n var findByNameAndInstance = Scaleway.GetDatabaseBackup.Invoke(new()\n {\n Name = \"mybackup\",\n InstanceId = \"11111111-1111-1111-1111-111111111111\",\n });\n\n var findById = Scaleway.GetDatabaseBackup.Invoke(new()\n {\n BackupId = \"11111111-1111-1111-1111-111111111111\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := scaleway.LookupDatabaseBackup(ctx, \u0026scaleway.LookupDatabaseBackupArgs{\n\t\t\tName: pulumi.StringRef(\"mybackup\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.LookupDatabaseBackup(ctx, \u0026scaleway.LookupDatabaseBackupArgs{\n\t\t\tName: pulumi.StringRef(\"mybackup\"),\n\t\t\tInstanceId: pulumi.StringRef(\"11111111-1111-1111-1111-111111111111\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.LookupDatabaseBackup(ctx, \u0026scaleway.LookupDatabaseBackupArgs{\n\t\t\tBackupId: pulumi.StringRef(\"11111111-1111-1111-1111-111111111111\"),\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.scaleway.ScalewayFunctions;\nimport com.pulumi.scaleway.inputs.GetDatabaseBackupArgs;\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 findByName = ScalewayFunctions.getDatabaseBackup(GetDatabaseBackupArgs.builder()\n .name(\"mybackup\")\n .build());\n\n final var findByNameAndInstance = ScalewayFunctions.getDatabaseBackup(GetDatabaseBackupArgs.builder()\n .name(\"mybackup\")\n .instanceId(\"11111111-1111-1111-1111-111111111111\")\n .build());\n\n final var findById = ScalewayFunctions.getDatabaseBackup(GetDatabaseBackupArgs.builder()\n .backupId(\"11111111-1111-1111-1111-111111111111\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n findByName:\n fn::invoke:\n Function: scaleway:getDatabaseBackup\n Arguments:\n name: mybackup\n findByNameAndInstance:\n fn::invoke:\n Function: scaleway:getDatabaseBackup\n Arguments:\n name: mybackup\n instanceId: 11111111-1111-1111-1111-111111111111\n findById:\n fn::invoke:\n Function: scaleway:getDatabaseBackup\n Arguments:\n backupId: 11111111-1111-1111-1111-111111111111\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
- "inputs": {
- "description": "A collection of arguments for invoking getDatabaseBackup.\n",
- "properties": {
- "backupId": {
- "type": "string",
- "description": "The backup ID.\n"
- },
- "instanceId": {
- "type": "string",
- "description": "The Database Instance ID.\n"
- },
- "name": {
- "type": "string",
- "description": "The name of the RDB instance.\n\n\u003e **Note** You must specify at least one: `name` and/or `backup_id`.\n"
- },
- "projectId": {
- "type": "string",
- "description": "The ID of the project the Database Backup is associated with.\n"
- },
- "region": {
- "type": "string",
- "description": "`region`) The region in which the Database Backup is associated with.\n"
- }
- },
- "type": "object"
- },
- "outputs": {
- "description": "A collection of values returned by getDatabaseBackup.\n",
+ "description": "A collection of values returned by getContainerNamespace.\n",
"properties": {
- "backupId": {
- "type": "string"
- },
- "createdAt": {
+ "description": {
+ "description": "The description of the namespace.\n",
"type": "string"
},
- "databaseName": {
- "type": "string"
+ "destroyRegistry": {
+ "type": "boolean"
},
- "expiresAt": {
- "type": "string"
+ "environmentVariables": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The environment variables of the namespace.\n",
+ "type": "object"
},
"id": {
"description": "The provider-assigned unique ID for this managed resource.\n",
"type": "string"
},
- "instanceId": {
+ "name": {
"type": "string"
},
- "instanceName": {
+ "namespaceId": {
"type": "string"
},
- "name": {
+ "organizationId": {
+ "description": "The unique identifier of the organization with which the namespace is associated.\n",
"type": "string"
},
"projectId": {
@@ -23176,222 +22251,125 @@
"region": {
"type": "string"
},
- "size": {
- "type": "integer"
+ "registryEndpoint": {
+ "description": "The registry endpoint of the namespace.\n",
+ "type": "string"
},
- "updatedAt": {
+ "registryNamespaceId": {
+ "description": "The unique identifier of the registry namespace of the Serverless Containers namespace.\n",
"type": "string"
+ },
+ "secretEnvironmentVariables": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
}
},
"required": [
- "createdAt",
- "databaseName",
- "expiresAt",
- "instanceName",
- "size",
- "updatedAt",
+ "description",
+ "destroyRegistry",
+ "environmentVariables",
+ "organizationId",
+ "registryEndpoint",
+ "registryNamespaceId",
+ "secretEnvironmentVariables",
"id"
],
"type": "object"
}
},
- "scaleway:index/getDatabaseInstance:getDatabaseInstance": {
- "description": "Gets information about an Database Instance.\n\nFor further information refer the Managed Databases for PostgreSQL and MySQL [API documentation](https://developers.scaleway.com/en/products/rdb/api/#database-instance)\n\n",
+ "scaleway:index/getDatabase:getDatabase": {
+ "description": "Gets information about a database.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumi/scaleway\";\n\n// Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\nconst myDb = scaleway.getDatabase({\n instanceId: \"11111111-1111-1111-1111-111111111111\",\n name: \"foobar\",\n});\n```\n```python\nimport pulumi\nimport pulumi_scaleway as scaleway\n\n# Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\nmy_db = scaleway.get_database(instance_id=\"11111111-1111-1111-1111-111111111111\",\n name=\"foobar\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumi.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n var myDb = Scaleway.GetDatabase.Invoke(new()\n {\n InstanceId = \"11111111-1111-1111-1111-111111111111\",\n Name = \"foobar\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n\t\t_, err := scaleway.LookupDatabase(ctx, \u0026scaleway.LookupDatabaseArgs{\n\t\t\tInstanceId: \"11111111-1111-1111-1111-111111111111\",\n\t\t\tName: \"foobar\",\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.scaleway.ScalewayFunctions;\nimport com.pulumi.scaleway.inputs.GetDatabaseArgs;\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 the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n final var myDb = ScalewayFunctions.getDatabase(GetDatabaseArgs.builder()\n .instanceId(\"11111111-1111-1111-1111-111111111111\")\n .name(\"foobar\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n myDb:\n fn::invoke:\n Function: scaleway:getDatabase\n Arguments:\n instanceId: 11111111-1111-1111-1111-111111111111\n name: foobar\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
"inputs": {
- "description": "A collection of arguments for invoking getDatabaseInstance.\n",
+ "description": "A collection of arguments for invoking getDatabase.\n",
"properties": {
"instanceId": {
"type": "string",
- "description": "The RDB instance ID.\n\n\u003e **Note** You must specify at least one: `name` and/or `instance_id`.\n"
+ "description": "The RDB instance ID.\n"
},
"name": {
"type": "string",
"description": "The name of the RDB instance.\n"
},
- "projectId": {
- "type": "string",
- "description": "The ID of the project the Database Instance is in. Can be used to filter instances when using `name`.\n"
- },
"region": {
- "type": "string",
- "description": "`region`) The region in which the Database Instance exists.\n"
+ "type": "string"
}
},
- "type": "object"
+ "type": "object",
+ "required": [
+ "instanceId",
+ "name"
+ ]
},
"outputs": {
- "description": "A collection of values returned by getDatabaseInstance.\n",
+ "description": "A collection of values returned by getDatabase.\n",
"properties": {
- "backupSameRegion": {
- "type": "boolean"
- },
- "backupScheduleFrequency": {
- "type": "integer"
- },
- "backupScheduleRetention": {
- "type": "integer"
- },
- "certificate": {
- "type": "string"
- },
- "disableBackup": {
- "type": "boolean"
- },
- "encryptionAtRest": {
- "type": "boolean"
- },
- "endpointIp": {
- "type": "string"
- },
- "endpointPort": {
- "type": "integer"
- },
- "engine": {
- "type": "string"
- },
"id": {
"description": "The provider-assigned unique ID for this managed resource.\n",
"type": "string"
},
- "initSettings": {
- "additionalProperties": {
- "type": "string"
- },
- "type": "object"
- },
"instanceId": {
"type": "string"
},
- "isHaCluster": {
+ "managed": {
+ "description": "Whether the database is managed or not.\n",
"type": "boolean"
},
- "loadBalancers": {
- "items": {
- "$ref": "#/types/scaleway:index/getDatabaseInstanceLoadBalancer:getDatabaseInstanceLoadBalancer"
- },
- "type": "array"
- },
- "logsPolicies": {
- "items": {
- "$ref": "#/types/scaleway:index/getDatabaseInstanceLogsPolicy:getDatabaseInstanceLogsPolicy"
- },
- "type": "array"
- },
"name": {
"type": "string"
},
- "nodeType": {
- "type": "string"
- },
- "organizationId": {
- "type": "string"
- },
- "password": {
- "type": "string"
- },
- "privateNetworks": {
- "items": {
- "$ref": "#/types/scaleway:index/getDatabaseInstancePrivateNetwork:getDatabaseInstancePrivateNetwork"
- },
- "type": "array"
- },
- "projectId": {
+ "owner": {
+ "description": "The name of the owner of the database.\n",
"type": "string"
},
- "readReplicas": {
- "items": {
- "$ref": "#/types/scaleway:index/getDatabaseInstanceReadReplica:getDatabaseInstanceReadReplica"
- },
- "type": "array"
- },
"region": {
"type": "string"
},
- "settings": {
- "additionalProperties": {
- "type": "string"
- },
- "type": "object"
- },
- "tags": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "userName": {
- "type": "string"
- },
- "volumeSizeInGb": {
- "type": "integer"
- },
- "volumeType": {
+ "size": {
+ "description": "Size of the database (in bytes).\n",
"type": "string"
}
},
"required": [
- "backupSameRegion",
- "backupScheduleFrequency",
- "backupScheduleRetention",
- "certificate",
- "disableBackup",
- "encryptionAtRest",
- "endpointIp",
- "endpointPort",
- "engine",
- "initSettings",
- "isHaCluster",
- "loadBalancers",
- "logsPolicies",
- "nodeType",
- "organizationId",
- "password",
- "privateNetworks",
- "readReplicas",
- "settings",
- "tags",
- "userName",
- "volumeSizeInGb",
- "volumeType",
+ "instanceId",
+ "managed",
+ "name",
+ "owner",
+ "size",
"id"
],
"type": "object"
}
},
- "scaleway:index/getDatabasePrivilege:getDatabasePrivilege": {
- "description": "Gets information about the privileges in a database.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumi/scaleway\";\n\n// Get the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\nconst main = scaleway.getDatabasePrivilege({\n instanceId: \"11111111-1111-111111111111\",\n userName: \"my-user\",\n databaseName: \"my-database\",\n});\n```\n```python\nimport pulumi\nimport pulumi_scaleway as scaleway\n\n# Get the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\nmain = scaleway.get_database_privilege(instance_id=\"11111111-1111-111111111111\",\n user_name=\"my-user\",\n database_name=\"my-database\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumi.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\n var main = Scaleway.GetDatabasePrivilege.Invoke(new()\n {\n InstanceId = \"11111111-1111-111111111111\",\n UserName = \"my-user\",\n DatabaseName = \"my-database\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\n\t\t_, err := scaleway.LookupDatabasePrivilege(ctx, \u0026scaleway.LookupDatabasePrivilegeArgs{\n\t\t\tInstanceId: \"11111111-1111-111111111111\",\n\t\t\tUserName: \"my-user\",\n\t\t\tDatabaseName: \"my-database\",\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.scaleway.ScalewayFunctions;\nimport com.pulumi.scaleway.inputs.GetDatabasePrivilegeArgs;\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 the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\n final var main = ScalewayFunctions.getDatabasePrivilege(GetDatabasePrivilegeArgs.builder()\n .instanceId(\"11111111-1111-111111111111\")\n .userName(\"my-user\")\n .databaseName(\"my-database\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\n main:\n fn::invoke:\n Function: scaleway:getDatabasePrivilege\n Arguments:\n instanceId: 11111111-1111-111111111111\n userName: my-user\n databaseName: my-database\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "scaleway:index/getDatabaseAcl:getDatabaseAcl": {
+ "description": "Gets information about the Database Instance network Access Control List.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumi/scaleway\";\n\n// Get the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\nconst myAcl = scaleway.getDatabaseAcl({\n instanceId: \"11111111-1111-1111-1111-111111111111\",\n});\n```\n```python\nimport pulumi\nimport pulumi_scaleway as scaleway\n\n# Get the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\nmy_acl = scaleway.get_database_acl(instance_id=\"11111111-1111-1111-1111-111111111111\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumi.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\n var myAcl = Scaleway.GetDatabaseAcl.Invoke(new()\n {\n InstanceId = \"11111111-1111-1111-1111-111111111111\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\n\t\t_, err := scaleway.LookupDatabaseAcl(ctx, \u0026scaleway.LookupDatabaseAclArgs{\n\t\t\tInstanceId: \"11111111-1111-1111-1111-111111111111\",\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.scaleway.ScalewayFunctions;\nimport com.pulumi.scaleway.inputs.GetDatabaseAclArgs;\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 the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\n final var myAcl = ScalewayFunctions.getDatabaseAcl(GetDatabaseAclArgs.builder()\n .instanceId(\"11111111-1111-1111-1111-111111111111\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get the database ACL for the instance id 11111111-1111-1111-1111-111111111111 located in the default region e.g: fr-par\n myAcl:\n fn::invoke:\n Function: scaleway:getDatabaseAcl\n Arguments:\n instanceId: 11111111-1111-1111-1111-111111111111\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
"inputs": {
- "description": "A collection of arguments for invoking getDatabasePrivilege.\n",
+ "description": "A collection of arguments for invoking getDatabaseAcl.\n",
"properties": {
- "databaseName": {
- "type": "string",
- "description": "The database name.\n"
- },
"instanceId": {
"type": "string",
- "description": "The Database Instance ID.\n"
+ "description": "The RDB instance ID.\n"
},
"region": {
"type": "string",
- "description": "`region`) The region in which the resource exists.\n"
- },
- "userName": {
- "type": "string",
- "description": "The user name.\n"
+ "description": "`region`) The region in which the Database Instance should be created.\n"
}
},
"type": "object",
"required": [
- "databaseName",
- "instanceId",
- "userName"
+ "instanceId"
]
},
"outputs": {
- "description": "A collection of values returned by getDatabasePrivilege.\n",
+ "description": "A collection of values returned by getDatabaseAcl.\n",
"properties": {
- "databaseName": {
- "type": "string"
+ "aclRules": {
+ "description": "A list of ACLs rules (structure is described below)\n",
+ "items": {
+ "$ref": "#/types/scaleway:index/getDatabaseAclAclRule:getDatabaseAclAclRule"
+ },
+ "type": "array"
},
"id": {
"description": "The provider-assigned unique ID for this managed resource.\n",
@@ -23400,52 +22378,61 @@
"instanceId": {
"type": "string"
},
- "permission": {
- "description": "The permission for this user on the database. Possible values are `readonly`, `readwrite`, `all`\n, `custom` and `none`.\n",
- "type": "string"
- },
"region": {
"type": "string"
- },
- "userName": {
- "type": "string"
}
},
"required": [
- "databaseName",
+ "aclRules",
"instanceId",
- "permission",
- "userName",
"id"
],
"type": "object"
}
},
- "scaleway:index/getDocumentdbDatabase:getDocumentdbDatabase": {
- "description": "Gets information about DocumentDB database.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumi/scaleway\";\n\n// Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\nconst main = scaleway.getDocumentdbDatabase({\n instanceId: \"11111111-1111-1111-1111-111111111111\",\n name: \"foobar\",\n});\n```\n```python\nimport pulumi\nimport pulumi_scaleway as scaleway\n\n# Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\nmain = scaleway.get_documentdb_database(instance_id=\"11111111-1111-1111-1111-111111111111\",\n name=\"foobar\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumi.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n var main = Scaleway.GetDocumentdbDatabase.Invoke(new()\n {\n InstanceId = \"11111111-1111-1111-1111-111111111111\",\n Name = \"foobar\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n\t\t_, err := scaleway.LookupDocumentdbDatabase(ctx, \u0026scaleway.LookupDocumentdbDatabaseArgs{\n\t\t\tInstanceId: \"11111111-1111-1111-1111-111111111111\",\n\t\t\tName: pulumi.StringRef(\"foobar\"),\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.scaleway.ScalewayFunctions;\nimport com.pulumi.scaleway.inputs.GetDocumentdbDatabaseArgs;\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 the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n final var main = ScalewayFunctions.getDocumentdbDatabase(GetDocumentdbDatabaseArgs.builder()\n .instanceId(\"11111111-1111-1111-1111-111111111111\")\n .name(\"foobar\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111\n main:\n fn::invoke:\n Function: scaleway:getDocumentdbDatabase\n Arguments:\n instanceId: 11111111-1111-1111-1111-111111111111\n name: foobar\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "scaleway:index/getDatabaseBackup:getDatabaseBackup": {
+ "description": "Gets information about an RDB backup.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumi/scaleway\";\n\nconst findByName = scaleway.getDatabaseBackup({\n name: \"mybackup\",\n});\nconst findByNameAndInstance = scaleway.getDatabaseBackup({\n name: \"mybackup\",\n instanceId: \"11111111-1111-1111-1111-111111111111\",\n});\nconst findById = scaleway.getDatabaseBackup({\n backupId: \"11111111-1111-1111-1111-111111111111\",\n});\n```\n```python\nimport pulumi\nimport pulumi_scaleway as scaleway\n\nfind_by_name = scaleway.get_database_backup(name=\"mybackup\")\nfind_by_name_and_instance = scaleway.get_database_backup(name=\"mybackup\",\n instance_id=\"11111111-1111-1111-1111-111111111111\")\nfind_by_id = scaleway.get_database_backup(backup_id=\"11111111-1111-1111-1111-111111111111\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumi.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var findByName = Scaleway.GetDatabaseBackup.Invoke(new()\n {\n Name = \"mybackup\",\n });\n\n var findByNameAndInstance = Scaleway.GetDatabaseBackup.Invoke(new()\n {\n Name = \"mybackup\",\n InstanceId = \"11111111-1111-1111-1111-111111111111\",\n });\n\n var findById = Scaleway.GetDatabaseBackup.Invoke(new()\n {\n BackupId = \"11111111-1111-1111-1111-111111111111\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := scaleway.LookupDatabaseBackup(ctx, \u0026scaleway.LookupDatabaseBackupArgs{\n\t\t\tName: pulumi.StringRef(\"mybackup\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.LookupDatabaseBackup(ctx, \u0026scaleway.LookupDatabaseBackupArgs{\n\t\t\tName: pulumi.StringRef(\"mybackup\"),\n\t\t\tInstanceId: pulumi.StringRef(\"11111111-1111-1111-1111-111111111111\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = scaleway.LookupDatabaseBackup(ctx, \u0026scaleway.LookupDatabaseBackupArgs{\n\t\t\tBackupId: pulumi.StringRef(\"11111111-1111-1111-1111-111111111111\"),\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.scaleway.ScalewayFunctions;\nimport com.pulumi.scaleway.inputs.GetDatabaseBackupArgs;\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 findByName = ScalewayFunctions.getDatabaseBackup(GetDatabaseBackupArgs.builder()\n .name(\"mybackup\")\n .build());\n\n final var findByNameAndInstance = ScalewayFunctions.getDatabaseBackup(GetDatabaseBackupArgs.builder()\n .name(\"mybackup\")\n .instanceId(\"11111111-1111-1111-1111-111111111111\")\n .build());\n\n final var findById = ScalewayFunctions.getDatabaseBackup(GetDatabaseBackupArgs.builder()\n .backupId(\"11111111-1111-1111-1111-111111111111\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n findByName:\n fn::invoke:\n Function: scaleway:getDatabaseBackup\n Arguments:\n name: mybackup\n findByNameAndInstance:\n fn::invoke:\n Function: scaleway:getDatabaseBackup\n Arguments:\n name: mybackup\n instanceId: 11111111-1111-1111-1111-111111111111\n findById:\n fn::invoke:\n Function: scaleway:getDatabaseBackup\n Arguments:\n backupId: 11111111-1111-1111-1111-111111111111\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
"inputs": {
- "description": "A collection of arguments for invoking getDocumentdbDatabase.\n",
+ "description": "A collection of arguments for invoking getDatabaseBackup.\n",
"properties": {
+ "backupId": {
+ "type": "string",
+ "description": "The backup ID.\n"
+ },
"instanceId": {
"type": "string",
- "description": "The DocumentDB instance ID.\n"
+ "description": "The Database Instance ID.\n"
},
"name": {
"type": "string",
- "description": "The name of the DocumentDB instance.\n"
+ "description": "The name of the RDB instance.\n\n\u003e **Note** You must specify at least one: `name` and/or `backup_id`.\n"
+ },
+ "projectId": {
+ "type": "string",
+ "description": "The ID of the project the Database Backup is associated with.\n"
},
"region": {
- "type": "string"
+ "type": "string",
+ "description": "`region`) The region in which the Database Backup is associated with.\n"
}
},
- "type": "object",
- "required": [
- "instanceId"
- ]
+ "type": "object"
},
"outputs": {
- "description": "A collection of values returned by getDocumentdbDatabase.\n",
+ "description": "A collection of values returned by getDatabaseBackup.\n",
"properties": {
+ "backupId": {
+ "type": "string"
+ },
+ "createdAt": {
+ "type": "string"
+ },
+ "databaseName": {
+ "type": "string"
+ },
+ "expiresAt": {
+ "type": "string"
+ },
"id": {
"description": "The provider-assigned unique ID for this managed resource.\n",
"type": "string"
@@ -23453,15 +22440,10 @@
"instanceId": {
"type": "string"
},
- "managed": {
- "description": "Whether the database is managed or not.\n",
- "type": "boolean"
- },
- "name": {
+ "instanceName": {
"type": "string"
},
- "owner": {
- "description": "The name of the owner of the database.\n",
+ "name": {
"type": "string"
},
"projectId": {
@@ -23471,48 +22453,75 @@
"type": "string"
},
"size": {
- "description": "Size of the database (in bytes).\n",
+ "type": "integer"
+ },
+ "updatedAt": {
"type": "string"
}
},
"required": [
- "instanceId",
- "managed",
- "owner",
- "projectId",
+ "createdAt",
+ "databaseName",
+ "expiresAt",
+ "instanceName",
"size",
+ "updatedAt",
"id"
],
"type": "object"
}
},
- "scaleway:index/getDocumentdbInstance:getDocumentdbInstance": {
- "description": "Gets information about an DocumentDB instance.\n\n",
+ "scaleway:index/getDatabaseInstance:getDatabaseInstance": {
+ "description": "Gets information about an Database Instance.\n\nFor further information refer the Managed Databases for PostgreSQL and MySQL [API documentation](https://developers.scaleway.com/en/products/rdb/api/#database-instance)\n\n",
"inputs": {
- "description": "A collection of arguments for invoking getDocumentdbInstance.\n",
+ "description": "A collection of arguments for invoking getDatabaseInstance.\n",
"properties": {
"instanceId": {
"type": "string",
- "description": "The DocumentDB instance ID.\nOnly one of `name` and `instance_id` should be specified.\n"
+ "description": "The RDB instance ID.\n\n\u003e **Note** You must specify at least one: `name` and/or `instance_id`.\n"
},
"name": {
"type": "string",
- "description": "The name of the DocumentDB instance.\nOnly one of `name` and `instance_id` should be specified.\n"
+ "description": "The name of the RDB instance.\n"
},
"projectId": {
"type": "string",
- "description": "The ID of the project the DocumentDB instance is associated with.\n"
+ "description": "The ID of the project the Database Instance is in. Can be used to filter instances when using `name`.\n"
},
"region": {
"type": "string",
- "description": "`region`) The region in which the DocumentDB instance exists.\n"
+ "description": "`region`) The region in which the Database Instance exists.\n"
}
},
"type": "object"
},
"outputs": {
- "description": "A collection of values returned by getDocumentdbInstance.\n",
+ "description": "A collection of values returned by getDatabaseInstance.\n",
"properties": {
+ "backupSameRegion": {
+ "type": "boolean"
+ },
+ "backupScheduleFrequency": {
+ "type": "integer"
+ },
+ "backupScheduleRetention": {
+ "type": "integer"
+ },
+ "certificate": {
+ "type": "string"
+ },
+ "disableBackup": {
+ "type": "boolean"
+ },
+ "encryptionAtRest": {
+ "type": "boolean"
+ },
+ "endpointIp": {
+ "type": "string"
+ },
+ "endpointPort": {
+ "type": "integer"
+ },
"engine": {
"type": "string"
},
@@ -23520,36 +22529,72 @@
"description": "The provider-assigned unique ID for this managed resource.\n",
"type": "string"
},
+ "initSettings": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
"instanceId": {
"type": "string"
},
"isHaCluster": {
"type": "boolean"
},
+ "loadBalancers": {
+ "items": {
+ "$ref": "#/types/scaleway:index/getDatabaseInstanceLoadBalancer:getDatabaseInstanceLoadBalancer"
+ },
+ "type": "array"
+ },
+ "logsPolicies": {
+ "items": {
+ "$ref": "#/types/scaleway:index/getDatabaseInstanceLogsPolicy:getDatabaseInstanceLogsPolicy"
+ },
+ "type": "array"
+ },
"name": {
"type": "string"
},
"nodeType": {
"type": "string"
},
+ "organizationId": {
+ "type": "string"
+ },
"password": {
"type": "string"
},
+ "privateNetworks": {
+ "items": {
+ "$ref": "#/types/scaleway:index/getDatabaseInstancePrivateNetwork:getDatabaseInstancePrivateNetwork"
+ },
+ "type": "array"
+ },
"projectId": {
"type": "string"
},
+ "readReplicas": {
+ "items": {
+ "$ref": "#/types/scaleway:index/getDatabaseInstanceReadReplica:getDatabaseInstanceReadReplica"
+ },
+ "type": "array"
+ },
"region": {
"type": "string"
},
+ "settings": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
- "telemetryEnabled": {
- "type": "boolean"
- },
"userName": {
"type": "string"
},
@@ -23561,12 +22606,26 @@
}
},
"required": [
+ "backupSameRegion",
+ "backupScheduleFrequency",
+ "backupScheduleRetention",
+ "certificate",
+ "disableBackup",
+ "encryptionAtRest",
+ "endpointIp",
+ "endpointPort",
"engine",
+ "initSettings",
"isHaCluster",
+ "loadBalancers",
+ "logsPolicies",
"nodeType",
+ "organizationId",
"password",
+ "privateNetworks",
+ "readReplicas",
+ "settings",
"tags",
- "telemetryEnabled",
"userName",
"volumeSizeInGb",
"volumeType",
@@ -23575,37 +22634,39 @@
"type": "object"
}
},
- "scaleway:index/getDocumentdbLoadBalancerEndpoint:getDocumentdbLoadBalancerEndpoint": {
- "description": "Gets information about an DocumentDB load balancer endpoint.\n\n",
+ "scaleway:index/getDatabasePrivilege:getDatabasePrivilege": {
+ "description": "Gets information about the privileges in a database.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as scaleway from \"@pulumi/scaleway\";\n\n// Get the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\nconst main = scaleway.getDatabasePrivilege({\n instanceId: \"11111111-1111-111111111111\",\n userName: \"my-user\",\n databaseName: \"my-database\",\n});\n```\n```python\nimport pulumi\nimport pulumi_scaleway as scaleway\n\n# Get the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\nmain = scaleway.get_database_privilege(instance_id=\"11111111-1111-111111111111\",\n user_name=\"my-user\",\n database_name=\"my-database\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Scaleway = Pulumi.Scaleway;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Get the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\n var main = Scaleway.GetDatabasePrivilege.Invoke(new()\n {\n InstanceId = \"11111111-1111-111111111111\",\n UserName = \"my-user\",\n DatabaseName = \"my-database\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\n\t\t_, err := scaleway.LookupDatabasePrivilege(ctx, \u0026scaleway.LookupDatabasePrivilegeArgs{\n\t\t\tInstanceId: \"11111111-1111-111111111111\",\n\t\t\tUserName: \"my-user\",\n\t\t\tDatabaseName: \"my-database\",\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.scaleway.ScalewayFunctions;\nimport com.pulumi.scaleway.inputs.GetDatabasePrivilegeArgs;\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 the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\n final var main = ScalewayFunctions.getDatabasePrivilege(GetDatabasePrivilegeArgs.builder()\n .instanceId(\"11111111-1111-111111111111\")\n .userName(\"my-user\")\n .databaseName(\"my-database\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n # Get the database privilege for the user \"my-user\" on the database \"my-database\" hosted on instance id 11111111-1111-1111-1111-111111111111 and on the default region. e.g: fr-par\n main:\n fn::invoke:\n Function: scaleway:getDatabasePrivilege\n Arguments:\n instanceId: 11111111-1111-111111111111\n userName: my-user\n databaseName: my-database\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
"inputs": {
- "description": "A collection of arguments for invoking getDocumentdbLoadBalancerEndpoint.\n",
+ "description": "A collection of arguments for invoking getDatabasePrivilege.\n",
"properties": {
- "instanceId": {
+ "databaseName": {
"type": "string",
- "description": "The DocumentDB Instance on which the endpoint is attached. Only one of `instance_name` and `instance_id` should be specified.\n"
+ "description": "The database name.\n"
},
- "instanceName": {
+ "instanceId": {
"type": "string",
- "description": "The DocumentDB Instance Name on which the endpoint is attached. Only one of `instance_name` and `instance_id` should be specified.\n"
+ "description": "The Database Instance ID.\n"
},
- "projectId": {
+ "region": {
"type": "string",
- "description": "The ID of the project the DocumentDB endpoint is associated with.\n",
- "willReplaceOnChanges": true
+ "description": "`region`) The region in which the resource exists.\n"
},
- "region": {
+ "userName": {
"type": "string",
- "description": "`region`) The region in which the DocumentDB endpoint exists.\n",
- "willReplaceOnChanges": true
+ "description": "The user name.\n"
}
},
- "type": "object"
+ "type": "object",
+ "required": [
+ "databaseName",
+ "instanceId",
+ "userName"
+ ]
},
"outputs": {
- "description": "A collection of values returned by getDocumentdbLoadBalancerEndpoint.\n",
+ "description": "A collection of values returned by getDatabasePrivilege.\n",
"properties": {
- "hostname": {
- "description": "The hostname of your endpoint.\n",
+ "databaseName": {
"type": "string"
},
"id": {
@@ -23615,37 +22676,22 @@
"instanceId": {
"type": "string"
},
- "instanceName": {
- "type": "string"
- },
- "ip": {
- "description": "The IP of your load balancer service.\n",
- "type": "string"
- },
- "name": {
- "description": "The name of your load balancer service.\n",
+ "permission": {
+ "description": "The permission for this user on the database. Possible values are `readonly`, `readwrite`, `all`\n, `custom` and `none`.\n",
"type": "string"
},
- "port": {
- "description": "The port of your load balancer service.\n",
- "type": "integer"
- },
- "projectId": {
+ "region": {
"type": "string"
},
- "region": {
+ "userName": {
"type": "string"
}
},
"required": [
- "hostname",
+ "databaseName",
"instanceId",
- "instanceName",
- "ip",
- "name",
- "port",
- "projectId",
- "region",
+ "permission",
+ "userName",
"id"
],
"type": "object"
@@ -24889,6 +23935,12 @@
},
"type": "array"
},
+ "ipamIpIds": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
"macAddress": {
"type": "string"
},
@@ -24913,6 +23965,7 @@
},
"required": [
"ipIds",
+ "ipamIpIds",
"macAddress",
"serverId",
"id"
@@ -27829,6 +26882,96 @@
"type": "object"
}
},
+ "scaleway:index/getRegistryImageTag:getRegistryImageTag": {
+ "description": "Gets information about a specific tag of a Container Registry image.\n\n",
+ "inputs": {
+ "description": "A collection of arguments for invoking getRegistryImageTag.\n",
+ "properties": {
+ "imageId": {
+ "type": "string",
+ "description": "The ID of the registry image.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the registry image tag.\n"
+ },
+ "projectId": {
+ "type": "string",
+ "description": "The ID of the project the image tag is associated with.\n",
+ "willReplaceOnChanges": true
+ },
+ "region": {
+ "type": "string",
+ "description": "The region in which the registry image tag exists.\n",
+ "willReplaceOnChanges": true
+ },
+ "tagId": {
+ "type": "string",
+ "description": "The ID of the registry image tag.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "imageId"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getRegistryImageTag.\n",
+ "properties": {
+ "createdAt": {
+ "description": "The date and time when the registry image tag was created.\n",
+ "type": "string"
+ },
+ "digest": {
+ "description": "Hash of the tag content. Several tags of the same image may have the same digest.\n",
+ "type": "string"
+ },
+ "id": {
+ "description": "The provider-assigned unique ID for this managed resource.\n",
+ "type": "string"
+ },
+ "imageId": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "organizationId": {
+ "description": "The organization ID the image tag is associated with.\n",
+ "type": "string"
+ },
+ "projectId": {
+ "type": "string"
+ },
+ "region": {
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the registry image tag.\n",
+ "type": "string"
+ },
+ "tagId": {
+ "type": "string"
+ },
+ "updatedAt": {
+ "description": "The date and time of the last update to the registry image tag.\n",
+ "type": "string"
+ }
+ },
+ "required": [
+ "createdAt",
+ "digest",
+ "imageId",
+ "organizationId",
+ "projectId",
+ "region",
+ "status",
+ "updatedAt",
+ "id"
+ ],
+ "type": "object"
+ }
+ },
"scaleway:index/getRegistryNamespace:getRegistryNamespace": {
"description": "Gets information about a registry namespace.\n\n",
"inputs": {
diff --git a/provider/go.mod b/provider/go.mod
index 2d357900..722db5d6 100644
--- a/provider/go.mod
+++ b/provider/go.mod
@@ -195,7 +195,7 @@ require (
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect
github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30 // indirect
- github.com/scaleway/terraform-provider-scaleway/v2 v2.45.0 // indirect
+ github.com/scaleway/terraform-provider-scaleway/v2 v2.46.0 // indirect
github.com/segmentio/asm v1.1.3 // indirect
github.com/segmentio/encoding v0.3.5 // indirect
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect
diff --git a/provider/go.sum b/provider/go.sum
index 8022e872..285ea10f 100644
--- a/provider/go.sum
+++ b/provider/go.sum
@@ -1990,8 +1990,8 @@ github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 h1:TToq11gyfNlrMFZiYujSekIsPd9Am
github.com/santhosh-tekuri/jsonschema/v5 v5.0.0/go.mod h1:FKdcjfQW6rpZSnxxUvEA5H/cDPdvJ/SZJQLWWXWGrZ0=
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30 h1:yoKAVkEVwAqbGbR8n87rHQ1dulL25rKloGadb3vm770=
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30/go.mod h1:sH0u6fq6x4R5M7WxkoQFY/o7UaiItec0o1LinLCJNq8=
-github.com/scaleway/terraform-provider-scaleway/v2 v2.45.0 h1:47OF1l/AhTJztNb6pRMa2wY4oyyRtehOFUuvO/EAkR8=
-github.com/scaleway/terraform-provider-scaleway/v2 v2.45.0/go.mod h1:UIl6/JpUkO30efjRsV5fh+WU3Bcg0j0LA+qc6E+bhlU=
+github.com/scaleway/terraform-provider-scaleway/v2 v2.46.0 h1:VD9V/t43In0CDmjzcZv0gLcMmGprd0eZP/ZIs91vbxs=
+github.com/scaleway/terraform-provider-scaleway/v2 v2.46.0/go.mod h1:UIl6/JpUkO30efjRsV5fh+WU3Bcg0j0LA+qc6E+bhlU=
github.com/sebdah/goldie v1.0.0/go.mod h1:jXP4hmWywNEwZzhMuv2ccnqTSFpuq8iyQhtQdkkZBH4=
github.com/segmentio/asm v1.1.3 h1:WM03sfUOENvvKexOLp+pCqgb/WDjsi7EK8gIsICtzhc=
github.com/segmentio/asm v1.1.3/go.mod h1:Ld3L4ZXGNcSLRg4JBsZ3//1+f/TjYl0Mzen/DQy1EJg=
diff --git a/provider/resources.go b/provider/resources.go
index 22d34a21..2cdb89af 100644
--- a/provider/resources.go
+++ b/provider/resources.go
@@ -233,42 +233,6 @@ func Provider() tfbridge.ProviderInfo {
Source: "domain_zone.md",
},
},
- "scaleway_documentdb_database": {
- Tok: scalewayResource(scalewayMod, "DocumentdbDatabase"),
- Docs: &tfbridge.DocInfo{
- Source: "documentdb_database.md",
- },
- },
- "scaleway_documentdb_instance": {
- Tok: scalewayResource(scalewayMod, "DocumentdbInstance"),
- Docs: &tfbridge.DocInfo{
- Source: "documentdb_instance.md",
- },
- },
- "scaleway_documentdb_private_network_endpoint": {
- Tok: scalewayResource(scalewayMod, "DocumentdbPrivateNetworkEndpoint"),
- Docs: &tfbridge.DocInfo{
- Source: "documentdb_private_network_endpoint.md",
- },
- },
- "scaleway_documentdb_privilege": {
- Tok: scalewayResource(scalewayMod, "DocumentdbPrivilege"),
- Docs: &tfbridge.DocInfo{
- Source: "documentdb_privilege.md",
- },
- },
- "scaleway_documentdb_read_replica": {
- Tok: scalewayResource(scalewayMod, "DocumentdbReadReplica"),
- Docs: &tfbridge.DocInfo{
- Source: "documentdb_read_replica.md",
- },
- },
- "scaleway_documentdb_user": {
- Tok: scalewayResource(scalewayMod, "DocumentdbUser"),
- Docs: &tfbridge.DocInfo{
- Source: "documentdb_user.md",
- },
- },
"scaleway_flexible_ip_mac_address": {
Tok: scalewayResource(scalewayMod, "FlexibleIpMacAddress"),
Docs: &tfbridge.DocInfo{
@@ -871,24 +835,6 @@ func Provider() tfbridge.ProviderInfo {
Source: "domain_zone.md",
},
},
- "scaleway_documentdb_database": {
- Tok: scalewayDataSource(scalewayMod, "getDocumentdbDatabase"),
- Docs: &tfbridge.DocInfo{
- Source: "documentdb_database.md",
- },
- },
- "scaleway_documentdb_instance": {
- Tok: scalewayDataSource(scalewayMod, "getDocumentdbInstance"),
- Docs: &tfbridge.DocInfo{
- Source: "documentdb_instance.md",
- },
- },
- "scaleway_documentdb_load_balancer_endpoint": {
- Tok: scalewayDataSource(scalewayMod, "getDocumentdbLoadBalancerEndpoint"),
- Docs: &tfbridge.DocInfo{
- Source: "documentdb_load_balancer_endpoint.md",
- },
- },
"scaleway_flexible_ip": {
Tok: scalewayDataSource(scalewayMod, "getFlexibleIp"),
Docs: &tfbridge.DocInfo{
@@ -1171,6 +1117,12 @@ func Provider() tfbridge.ProviderInfo {
Source: "registry_image.md",
},
},
+ "scaleway_registry_image_tag": {
+ Tok: scalewayDataSource(scalewayMod, "getRegistryImageTag"),
+ Docs: &tfbridge.DocInfo{
+ Source: "registry_image_tag.md",
+ },
+ },
"scaleway_registry_namespace": {
Tok: scalewayDataSource(scalewayMod, "getRegistryNamespace"),
Docs: &tfbridge.DocInfo{
diff --git a/provider/shim/go.mod b/provider/shim/go.mod
index ac406113..305408f4 100644
--- a/provider/shim/go.mod
+++ b/provider/shim/go.mod
@@ -4,7 +4,7 @@ go 1.22
require (
github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0
- github.com/scaleway/terraform-provider-scaleway/v2 v2.45.0
+ github.com/scaleway/terraform-provider-scaleway/v2 v2.46.0
)
require (
diff --git a/provider/shim/go.sum b/provider/shim/go.sum
index 5af0d697..9411c70d 100644
--- a/provider/shim/go.sum
+++ b/provider/shim/go.sum
@@ -180,8 +180,8 @@ github.com/robfig/cron/v3 v3.0.1 h1:WdRxkvbJztn8LMz/QEvLN5sBU+xKpSqwwUO1Pjr4qDs=
github.com/robfig/cron/v3 v3.0.1/go.mod h1:eQICP3HwyT7UooqI/z+Ov+PtYAWygg1TEWWzGIFLtro=
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30 h1:yoKAVkEVwAqbGbR8n87rHQ1dulL25rKloGadb3vm770=
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30/go.mod h1:sH0u6fq6x4R5M7WxkoQFY/o7UaiItec0o1LinLCJNq8=
-github.com/scaleway/terraform-provider-scaleway/v2 v2.45.0 h1:47OF1l/AhTJztNb6pRMa2wY4oyyRtehOFUuvO/EAkR8=
-github.com/scaleway/terraform-provider-scaleway/v2 v2.45.0/go.mod h1:UIl6/JpUkO30efjRsV5fh+WU3Bcg0j0LA+qc6E+bhlU=
+github.com/scaleway/terraform-provider-scaleway/v2 v2.46.0 h1:VD9V/t43In0CDmjzcZv0gLcMmGprd0eZP/ZIs91vbxs=
+github.com/scaleway/terraform-provider-scaleway/v2 v2.46.0/go.mod h1:UIl6/JpUkO30efjRsV5fh+WU3Bcg0j0LA+qc6E+bhlU=
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8=
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4=
github.com/skeema/knownhosts v1.2.2 h1:Iug2P4fLmDw9f41PB6thxUkNUkJzB5i+1/exaj40L3A=
diff --git a/sdk/dotnet/CockpitAlertManager.cs b/sdk/dotnet/CockpitAlertManager.cs
index 5cb9b7ca..8cc140e0 100644
--- a/sdk/dotnet/CockpitAlertManager.cs
+++ b/sdk/dotnet/CockpitAlertManager.cs
@@ -17,6 +17,47 @@ namespace Pulumiverse.Scaleway
///
/// ## Example Usage
///
+ /// ### Enable the alert manager and configure managed alerts
+ ///
+ /// The following commands allow you to:
+ ///
+ /// - enable the alert manager in a Project named `tf_test_project`
+ /// - enable [managed alerts](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#managed-alerts)
+ /// - set up [contact points](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#contact-points) to receive alert notifications
+ ///
+ /// ```csharp
+ /// using System.Collections.Generic;
+ /// using System.Linq;
+ /// using Pulumi;
+ /// using Scaleway = Pulumiverse.Scaleway;
+ ///
+ /// return await Deployment.RunAsync(() =>
+ /// {
+ /// var project = new Scaleway.AccountProject("project", new()
+ /// {
+ /// Name = "tf_test_project",
+ /// });
+ ///
+ /// var alertManager = new Scaleway.CockpitAlertManager("alert_manager", new()
+ /// {
+ /// ProjectId = project.Id,
+ /// EnableManagedAlerts = true,
+ /// ContactPoints = new[]
+ /// {
+ /// new Scaleway.Inputs.CockpitAlertManagerContactPointArgs
+ /// {
+ /// Email = "alert1@example.com",
+ /// },
+ /// new Scaleway.Inputs.CockpitAlertManagerContactPointArgs
+ /// {
+ /// Email = "alert2@example.com",
+ /// },
+ /// },
+ /// });
+ ///
+ /// });
+ /// ```
+ ///
/// ## Import
///
/// This section explains how to import alert managers using the ID of the Project associated with Cockpit.
diff --git a/sdk/dotnet/DocumentdbDatabase.cs b/sdk/dotnet/DocumentdbDatabase.cs
deleted file mode 100644
index ca17f643..00000000
--- a/sdk/dotnet/DocumentdbDatabase.cs
+++ /dev/null
@@ -1,234 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway
-{
- ///
- /// Creates and manages Scaleway DocumentDB database.
- ///
- /// ## Example Usage
- ///
- /// ### Basic
- ///
- /// ```csharp
- /// using System.Collections.Generic;
- /// using System.Linq;
- /// using Pulumi;
- /// using Scaleway = Pulumiverse.Scaleway;
- ///
- /// return await Deployment.RunAsync(() =>
- /// {
- /// var instance = new Scaleway.DocumentdbInstance("instance", new()
- /// {
- /// Name = "test-document_db-basic",
- /// NodeType = "docdb-play2-pico",
- /// Engine = "FerretDB-1",
- /// UserName = "my_initial_user",
- /// Password = "thiZ_is_v&ry_s3cret",
- /// VolumeSizeInGb = 20,
- /// });
- ///
- /// var main = new Scaleway.DocumentdbDatabase("main", new()
- /// {
- /// InstanceId = instance.Id,
- /// Name = "my-new-database",
- /// });
- ///
- /// });
- /// ```
- ///
- /// ## Import
- ///
- /// DocumentDB Database can be imported using the `{region}/{id}/{DBNAME}`, e.g.
- ///
- /// bash
- ///
- /// ```sh
- /// $ pulumi import scaleway:index/documentdbDatabase:DocumentdbDatabase mydb fr-par/11111111-1111-1111-1111-111111111111/mydb
- /// ```
- ///
- [ScalewayResourceType("scaleway:index/documentdbDatabase:DocumentdbDatabase")]
- public partial class DocumentdbDatabase : global::Pulumi.CustomResource
- {
- ///
- /// UUID of the documentdb instance.
- ///
- /// > **Important:** Updates to `instance_id` will recreate the Database.
- ///
- [Output("instanceId")]
- public Output InstanceId { get; private set; } = null!;
-
- ///
- /// Whether the database is managed or not.
- ///
- [Output("managed")]
- public Output Managed { get; private set; } = null!;
-
- ///
- /// Name of the database (e.g. `my-new-database`).
- ///
- [Output("name")]
- public Output Name { get; private set; } = null!;
-
- ///
- /// The name of the owner of the database.
- ///
- [Output("owner")]
- public Output Owner { get; private set; } = null!;
-
- ///
- /// The project_id you want to attach the resource to
- ///
- [Output("projectId")]
- public Output ProjectId { get; private set; } = null!;
-
- ///
- /// `region`) The region in which the resource exists.
- ///
- [Output("region")]
- public Output Region { get; private set; } = null!;
-
- ///
- /// Size in gigabytes of the database.
- ///
- [Output("size")]
- public Output Size { get; private set; } = null!;
-
-
- ///
- /// Create a DocumentdbDatabase resource with the given unique name, arguments, and options.
- ///
- ///
- /// The unique name of the resource
- /// The arguments used to populate this resource's properties
- /// A bag of options that control this resource's behavior
- public DocumentdbDatabase(string name, DocumentdbDatabaseArgs args, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbDatabase:DocumentdbDatabase", name, args ?? new DocumentdbDatabaseArgs(), MakeResourceOptions(options, ""))
- {
- }
-
- private DocumentdbDatabase(string name, Input id, DocumentdbDatabaseState? state = null, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbDatabase:DocumentdbDatabase", name, state, MakeResourceOptions(options, id))
- {
- }
-
- private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
- {
- var defaultOptions = new CustomResourceOptions
- {
- Version = Utilities.Version,
- PluginDownloadURL = "github://api.github.com/pulumiverse",
- };
- var merged = CustomResourceOptions.Merge(defaultOptions, options);
- // Override the ID if one was specified for consistency with other language SDKs.
- merged.Id = id ?? merged.Id;
- return merged;
- }
- ///
- /// Get an existing DocumentdbDatabase resource's state with the given name, ID, and optional extra
- /// properties used to qualify the lookup.
- ///
- ///
- /// The unique name of the resulting resource.
- /// The unique provider ID of the resource to lookup.
- /// Any extra arguments used during the lookup.
- /// A bag of options that control this resource's behavior
- public static DocumentdbDatabase Get(string name, Input id, DocumentdbDatabaseState? state = null, CustomResourceOptions? options = null)
- {
- return new DocumentdbDatabase(name, id, state, options);
- }
- }
-
- public sealed class DocumentdbDatabaseArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// UUID of the documentdb instance.
- ///
- /// > **Important:** Updates to `instance_id` will recreate the Database.
- ///
- [Input("instanceId", required: true)]
- public Input InstanceId { get; set; } = null!;
-
- ///
- /// Name of the database (e.g. `my-new-database`).
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// The project_id you want to attach the resource to
- ///
- [Input("projectId")]
- public Input? ProjectId { get; set; }
-
- ///
- /// `region`) The region in which the resource exists.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- public DocumentdbDatabaseArgs()
- {
- }
- public static new DocumentdbDatabaseArgs Empty => new DocumentdbDatabaseArgs();
- }
-
- public sealed class DocumentdbDatabaseState : global::Pulumi.ResourceArgs
- {
- ///
- /// UUID of the documentdb instance.
- ///
- /// > **Important:** Updates to `instance_id` will recreate the Database.
- ///
- [Input("instanceId")]
- public Input? InstanceId { get; set; }
-
- ///
- /// Whether the database is managed or not.
- ///
- [Input("managed")]
- public Input? Managed { get; set; }
-
- ///
- /// Name of the database (e.g. `my-new-database`).
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// The name of the owner of the database.
- ///
- [Input("owner")]
- public Input? Owner { get; set; }
-
- ///
- /// The project_id you want to attach the resource to
- ///
- [Input("projectId")]
- public Input? ProjectId { get; set; }
-
- ///
- /// `region`) The region in which the resource exists.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- ///
- /// Size in gigabytes of the database.
- ///
- [Input("size")]
- public Input? Size { get; set; }
-
- public DocumentdbDatabaseState()
- {
- }
- public static new DocumentdbDatabaseState Empty => new DocumentdbDatabaseState();
- }
-}
diff --git a/sdk/dotnet/DocumentdbInstance.cs b/sdk/dotnet/DocumentdbInstance.cs
deleted file mode 100644
index 3e4a5a64..00000000
--- a/sdk/dotnet/DocumentdbInstance.cs
+++ /dev/null
@@ -1,405 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway
-{
- ///
- /// Creates and manages Scaleway Database Instances.
- ///
- /// ## Example Usage
- ///
- /// ### Example Basic
- ///
- /// ```csharp
- /// using System.Collections.Generic;
- /// using System.Linq;
- /// using Pulumi;
- /// using Scaleway = Pulumiverse.Scaleway;
- ///
- /// return await Deployment.RunAsync(() =>
- /// {
- /// var main = new Scaleway.DocumentdbInstance("main", new()
- /// {
- /// Name = "test-documentdb-instance-basic",
- /// NodeType = "docdb-play2-pico",
- /// Engine = "FerretDB-1",
- /// UserName = "my_initial_user",
- /// Password = "thiZ_is_v&ry_s3cret",
- /// Tags = new[]
- /// {
- /// "terraform-test",
- /// "scaleway_documentdb_instance",
- /// "minimal",
- /// },
- /// VolumeSizeInGb = 20,
- /// });
- ///
- /// });
- /// ```
- ///
- /// ## Import
- ///
- /// Database Instance can be imported using the `{region}/{id}`, e.g.
- ///
- /// bash
- ///
- /// ```sh
- /// $ pulumi import scaleway:index/documentdbInstance:DocumentdbInstance db fr-par/11111111-1111-1111-1111-111111111111
- /// ```
- ///
- [ScalewayResourceType("scaleway:index/documentdbInstance:DocumentdbInstance")]
- public partial class DocumentdbInstance : global::Pulumi.CustomResource
- {
- ///
- /// Database Instance's engine version (e.g. `FerretDB-1`).
- ///
- /// > **Important:** Updates to `engine` will recreate the Database Instance.
- ///
- [Output("engine")]
- public Output Engine { get; private set; } = null!;
-
- ///
- /// Enable or disable high availability for the database instance.
- ///
- [Output("isHaCluster")]
- public Output IsHaCluster { get; private set; } = null!;
-
- ///
- /// The name of the Database Instance.
- ///
- [Output("name")]
- public Output Name { get; private set; } = null!;
-
- ///
- /// The type of database instance you want to create (e.g. `docdb-play2-pico`).
- ///
- /// > **Important:** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any
- /// interruption. Keep in mind that you cannot downgrade a Database Instance.
- ///
- [Output("nodeType")]
- public Output NodeType { get; private set; } = null!;
-
- ///
- /// Password for the first user of the database instance.
- ///
- [Output("password")]
- public Output Password { get; private set; } = null!;
-
- ///
- /// `project_id`) The ID of the project the Database
- /// Instance is associated with.
- ///
- [Output("projectId")]
- public Output ProjectId { get; private set; } = null!;
-
- ///
- /// `region`) The region
- /// in which the Database Instance should be created.
- ///
- [Output("region")]
- public Output Region { get; private set; } = null!;
-
- ///
- /// The tags associated with the Database Instance.
- ///
- [Output("tags")]
- public Output> Tags { get; private set; } = null!;
-
- ///
- /// Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).
- ///
- /// > **Important:** Updates to `is_ha_cluster` will recreate the Database Instance.
- ///
- [Output("telemetryEnabled")]
- public Output TelemetryEnabled { get; private set; } = null!;
-
- ///
- /// Identifier for the first user of the database instance.
- ///
- /// > **Important:** Updates to `user_name` will recreate the Database Instance.
- ///
- [Output("userName")]
- public Output UserName { get; private set; } = null!;
-
- ///
- /// Volume size (in GB) when `volume_type` is set to `bssd`.
- ///
- [Output("volumeSizeInGb")]
- public Output VolumeSizeInGb { get; private set; } = null!;
-
- ///
- /// Type of volume where data are stored (`bssd` or `lssd`).
- ///
- [Output("volumeType")]
- public Output VolumeType { get; private set; } = null!;
-
-
- ///
- /// Create a DocumentdbInstance resource with the given unique name, arguments, and options.
- ///
- ///
- /// The unique name of the resource
- /// The arguments used to populate this resource's properties
- /// A bag of options that control this resource's behavior
- public DocumentdbInstance(string name, DocumentdbInstanceArgs args, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbInstance:DocumentdbInstance", name, args ?? new DocumentdbInstanceArgs(), MakeResourceOptions(options, ""))
- {
- }
-
- private DocumentdbInstance(string name, Input id, DocumentdbInstanceState? state = null, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbInstance:DocumentdbInstance", name, state, MakeResourceOptions(options, id))
- {
- }
-
- private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
- {
- var defaultOptions = new CustomResourceOptions
- {
- Version = Utilities.Version,
- PluginDownloadURL = "github://api.github.com/pulumiverse",
- AdditionalSecretOutputs =
- {
- "password",
- },
- };
- var merged = CustomResourceOptions.Merge(defaultOptions, options);
- // Override the ID if one was specified for consistency with other language SDKs.
- merged.Id = id ?? merged.Id;
- return merged;
- }
- ///
- /// Get an existing DocumentdbInstance resource's state with the given name, ID, and optional extra
- /// properties used to qualify the lookup.
- ///
- ///
- /// The unique name of the resulting resource.
- /// The unique provider ID of the resource to lookup.
- /// Any extra arguments used during the lookup.
- /// A bag of options that control this resource's behavior
- public static DocumentdbInstance Get(string name, Input id, DocumentdbInstanceState? state = null, CustomResourceOptions? options = null)
- {
- return new DocumentdbInstance(name, id, state, options);
- }
- }
-
- public sealed class DocumentdbInstanceArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// Database Instance's engine version (e.g. `FerretDB-1`).
- ///
- /// > **Important:** Updates to `engine` will recreate the Database Instance.
- ///
- [Input("engine", required: true)]
- public Input Engine { get; set; } = null!;
-
- ///
- /// Enable or disable high availability for the database instance.
- ///
- [Input("isHaCluster")]
- public Input? IsHaCluster { get; set; }
-
- ///
- /// The name of the Database Instance.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// The type of database instance you want to create (e.g. `docdb-play2-pico`).
- ///
- /// > **Important:** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any
- /// interruption. Keep in mind that you cannot downgrade a Database Instance.
- ///
- [Input("nodeType", required: true)]
- public Input NodeType { get; set; } = null!;
-
- [Input("password")]
- private Input? _password;
-
- ///
- /// Password for the first user of the database instance.
- ///
- public Input? Password
- {
- get => _password;
- set
- {
- var emptySecret = Output.CreateSecret(0);
- _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1);
- }
- }
-
- ///
- /// `project_id`) The ID of the project the Database
- /// Instance is associated with.
- ///
- [Input("projectId")]
- public Input? ProjectId { get; set; }
-
- ///
- /// `region`) The region
- /// in which the Database Instance should be created.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- [Input("tags")]
- private InputList? _tags;
-
- ///
- /// The tags associated with the Database Instance.
- ///
- public InputList Tags
- {
- get => _tags ?? (_tags = new InputList());
- set => _tags = value;
- }
-
- ///
- /// Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).
- ///
- /// > **Important:** Updates to `is_ha_cluster` will recreate the Database Instance.
- ///
- [Input("telemetryEnabled")]
- public Input? TelemetryEnabled { get; set; }
-
- ///
- /// Identifier for the first user of the database instance.
- ///
- /// > **Important:** Updates to `user_name` will recreate the Database Instance.
- ///
- [Input("userName")]
- public Input? UserName { get; set; }
-
- ///
- /// Volume size (in GB) when `volume_type` is set to `bssd`.
- ///
- [Input("volumeSizeInGb")]
- public Input? VolumeSizeInGb { get; set; }
-
- ///
- /// Type of volume where data are stored (`bssd` or `lssd`).
- ///
- [Input("volumeType")]
- public Input? VolumeType { get; set; }
-
- public DocumentdbInstanceArgs()
- {
- }
- public static new DocumentdbInstanceArgs Empty => new DocumentdbInstanceArgs();
- }
-
- public sealed class DocumentdbInstanceState : global::Pulumi.ResourceArgs
- {
- ///
- /// Database Instance's engine version (e.g. `FerretDB-1`).
- ///
- /// > **Important:** Updates to `engine` will recreate the Database Instance.
- ///
- [Input("engine")]
- public Input? Engine { get; set; }
-
- ///
- /// Enable or disable high availability for the database instance.
- ///
- [Input("isHaCluster")]
- public Input? IsHaCluster { get; set; }
-
- ///
- /// The name of the Database Instance.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// The type of database instance you want to create (e.g. `docdb-play2-pico`).
- ///
- /// > **Important:** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any
- /// interruption. Keep in mind that you cannot downgrade a Database Instance.
- ///
- [Input("nodeType")]
- public Input? NodeType { get; set; }
-
- [Input("password")]
- private Input? _password;
-
- ///
- /// Password for the first user of the database instance.
- ///
- public Input? Password
- {
- get => _password;
- set
- {
- var emptySecret = Output.CreateSecret(0);
- _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1);
- }
- }
-
- ///
- /// `project_id`) The ID of the project the Database
- /// Instance is associated with.
- ///
- [Input("projectId")]
- public Input? ProjectId { get; set; }
-
- ///
- /// `region`) The region
- /// in which the Database Instance should be created.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- [Input("tags")]
- private InputList? _tags;
-
- ///
- /// The tags associated with the Database Instance.
- ///
- public InputList Tags
- {
- get => _tags ?? (_tags = new InputList());
- set => _tags = value;
- }
-
- ///
- /// Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).
- ///
- /// > **Important:** Updates to `is_ha_cluster` will recreate the Database Instance.
- ///
- [Input("telemetryEnabled")]
- public Input? TelemetryEnabled { get; set; }
-
- ///
- /// Identifier for the first user of the database instance.
- ///
- /// > **Important:** Updates to `user_name` will recreate the Database Instance.
- ///
- [Input("userName")]
- public Input? UserName { get; set; }
-
- ///
- /// Volume size (in GB) when `volume_type` is set to `bssd`.
- ///
- [Input("volumeSizeInGb")]
- public Input? VolumeSizeInGb { get; set; }
-
- ///
- /// Type of volume where data are stored (`bssd` or `lssd`).
- ///
- [Input("volumeType")]
- public Input? VolumeType { get; set; }
-
- public DocumentdbInstanceState()
- {
- }
- public static new DocumentdbInstanceState Empty => new DocumentdbInstanceState();
- }
-}
diff --git a/sdk/dotnet/DocumentdbPrivateNetworkEndpoint.cs b/sdk/dotnet/DocumentdbPrivateNetworkEndpoint.cs
deleted file mode 100644
index e9c69677..00000000
--- a/sdk/dotnet/DocumentdbPrivateNetworkEndpoint.cs
+++ /dev/null
@@ -1,204 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway
-{
- ///
- /// Creates and manages Scaleway Database Private Network Endpoint.
- ///
- /// ## Example Usage
- ///
- /// ### Example Basic
- ///
- /// ```csharp
- /// using System.Collections.Generic;
- /// using System.Linq;
- /// using Pulumi;
- /// using Scaleway = Pulumiverse.Scaleway;
- ///
- /// return await Deployment.RunAsync(() =>
- /// {
- /// var pn = new Scaleway.VpcPrivateNetwork("pn", new()
- /// {
- /// Name = "my_private_network",
- /// });
- ///
- /// var instance = new Scaleway.DocumentdbInstance("instance", new()
- /// {
- /// Name = "test-document_db-basic",
- /// NodeType = "docdb-play2-pico",
- /// Engine = "FerretDB-1",
- /// UserName = "my_initial_user",
- /// Password = "thiZ_is_v&ry_s3cret",
- /// VolumeSizeInGb = 20,
- /// });
- ///
- /// var main = new Scaleway.DocumentdbPrivateNetworkEndpoint("main", new()
- /// {
- /// InstanceId = instance.Id,
- /// PrivateNetwork = new Scaleway.Inputs.DocumentdbPrivateNetworkEndpointPrivateNetworkArgs
- /// {
- /// IpNet = "172.16.32.3/22",
- /// Id = pn.Id,
- /// },
- /// }, new CustomResourceOptions
- /// {
- /// DependsOn =
- /// {
- /// pn,
- /// },
- /// });
- ///
- /// });
- /// ```
- ///
- /// ## Import
- ///
- /// Database Instance Endpoint can be imported using the `{region}/{endpoint_id}`, e.g.
- ///
- /// bash
- ///
- /// ```sh
- /// $ pulumi import scaleway:index/documentdbPrivateNetworkEndpoint:DocumentdbPrivateNetworkEndpoint end fr-par/11111111-1111-1111-1111-111111111111
- /// ```
- ///
- [ScalewayResourceType("scaleway:index/documentdbPrivateNetworkEndpoint:DocumentdbPrivateNetworkEndpoint")]
- public partial class DocumentdbPrivateNetworkEndpoint : global::Pulumi.CustomResource
- {
- ///
- /// UUID of the documentdb instance.
- ///
- [Output("instanceId")]
- public Output InstanceId { get; private set; } = null!;
-
- ///
- /// The private network specs details. This is a list with maximum one element and supports the following attributes:
- ///
- [Output("privateNetwork")]
- public Output PrivateNetwork { get; private set; } = null!;
-
- ///
- /// The region of the endpoint.
- ///
- ///
- /// > **NOTE:** Please calculate your host IP.
- /// using cirhost. Otherwise, lets IPAM service
- /// handle the host IP on the network.
- ///
- [Output("region")]
- public Output Region { get; private set; } = null!;
-
-
- ///
- /// Create a DocumentdbPrivateNetworkEndpoint resource with the given unique name, arguments, and options.
- ///
- ///
- /// The unique name of the resource
- /// The arguments used to populate this resource's properties
- /// A bag of options that control this resource's behavior
- public DocumentdbPrivateNetworkEndpoint(string name, DocumentdbPrivateNetworkEndpointArgs args, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbPrivateNetworkEndpoint:DocumentdbPrivateNetworkEndpoint", name, args ?? new DocumentdbPrivateNetworkEndpointArgs(), MakeResourceOptions(options, ""))
- {
- }
-
- private DocumentdbPrivateNetworkEndpoint(string name, Input id, DocumentdbPrivateNetworkEndpointState? state = null, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbPrivateNetworkEndpoint:DocumentdbPrivateNetworkEndpoint", name, state, MakeResourceOptions(options, id))
- {
- }
-
- private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
- {
- var defaultOptions = new CustomResourceOptions
- {
- Version = Utilities.Version,
- PluginDownloadURL = "github://api.github.com/pulumiverse",
- };
- var merged = CustomResourceOptions.Merge(defaultOptions, options);
- // Override the ID if one was specified for consistency with other language SDKs.
- merged.Id = id ?? merged.Id;
- return merged;
- }
- ///
- /// Get an existing DocumentdbPrivateNetworkEndpoint resource's state with the given name, ID, and optional extra
- /// properties used to qualify the lookup.
- ///
- ///
- /// The unique name of the resulting resource.
- /// The unique provider ID of the resource to lookup.
- /// Any extra arguments used during the lookup.
- /// A bag of options that control this resource's behavior
- public static DocumentdbPrivateNetworkEndpoint Get(string name, Input id, DocumentdbPrivateNetworkEndpointState? state = null, CustomResourceOptions? options = null)
- {
- return new DocumentdbPrivateNetworkEndpoint(name, id, state, options);
- }
- }
-
- public sealed class DocumentdbPrivateNetworkEndpointArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// UUID of the documentdb instance.
- ///
- [Input("instanceId", required: true)]
- public Input InstanceId { get; set; } = null!;
-
- ///
- /// The private network specs details. This is a list with maximum one element and supports the following attributes:
- ///
- [Input("privateNetwork")]
- public Input? PrivateNetwork { get; set; }
-
- ///
- /// The region of the endpoint.
- ///
- ///
- /// > **NOTE:** Please calculate your host IP.
- /// using cirhost. Otherwise, lets IPAM service
- /// handle the host IP on the network.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- public DocumentdbPrivateNetworkEndpointArgs()
- {
- }
- public static new DocumentdbPrivateNetworkEndpointArgs Empty => new DocumentdbPrivateNetworkEndpointArgs();
- }
-
- public sealed class DocumentdbPrivateNetworkEndpointState : global::Pulumi.ResourceArgs
- {
- ///
- /// UUID of the documentdb instance.
- ///
- [Input("instanceId")]
- public Input? InstanceId { get; set; }
-
- ///
- /// The private network specs details. This is a list with maximum one element and supports the following attributes:
- ///
- [Input("privateNetwork")]
- public Input? PrivateNetwork { get; set; }
-
- ///
- /// The region of the endpoint.
- ///
- ///
- /// > **NOTE:** Please calculate your host IP.
- /// using cirhost. Otherwise, lets IPAM service
- /// handle the host IP on the network.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- public DocumentdbPrivateNetworkEndpointState()
- {
- }
- public static new DocumentdbPrivateNetworkEndpointState Empty => new DocumentdbPrivateNetworkEndpointState();
- }
-}
diff --git a/sdk/dotnet/DocumentdbPrivilege.cs b/sdk/dotnet/DocumentdbPrivilege.cs
deleted file mode 100644
index 8204696e..00000000
--- a/sdk/dotnet/DocumentdbPrivilege.cs
+++ /dev/null
@@ -1,210 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway
-{
- ///
- /// Create and manage Scaleway DocumentDB database privilege.
- ///
- /// ## Example Usage
- ///
- /// ```csharp
- /// using System.Collections.Generic;
- /// using System.Linq;
- /// using Pulumi;
- /// using Scaleway = Pulumiverse.Scaleway;
- ///
- /// return await Deployment.RunAsync(() =>
- /// {
- /// var instance = new Scaleway.DocumentdbInstance("instance", new()
- /// {
- /// Name = "test-document_db-basic",
- /// NodeType = "docdb-play2-pico",
- /// Engine = "FerretDB-1",
- /// UserName = "my_initial_user",
- /// Password = "thiZ_is_v&ry_s3cret",
- /// VolumeSizeInGb = 20,
- /// });
- ///
- /// var main = new Scaleway.DocumentdbPrivilege("main", new()
- /// {
- /// InstanceId = instance.Id,
- /// UserName = "my-db-user",
- /// DatabaseName = "my-db-name",
- /// Permission = "all",
- /// });
- ///
- /// });
- /// ```
- ///
- /// ## Import
- ///
- /// The user privileges can be imported using the `{region}/{instance_id}/{database_name}/{user_name}`, e.g.
- ///
- /// bash
- ///
- /// ```sh
- /// $ pulumi import scaleway:index/documentdbPrivilege:DocumentdbPrivilege o fr-par/11111111-1111-1111-1111-111111111111/database_name/foo
- /// ```
- ///
- [ScalewayResourceType("scaleway:index/documentdbPrivilege:DocumentdbPrivilege")]
- public partial class DocumentdbPrivilege : global::Pulumi.CustomResource
- {
- ///
- /// Name of the database (e.g. `my-db-name`).
- ///
- [Output("databaseName")]
- public Output DatabaseName { get; private set; } = null!;
-
- ///
- /// UUID of the rdb instance.
- ///
- [Output("instanceId")]
- public Output InstanceId { get; private set; } = null!;
-
- ///
- /// Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.
- ///
- [Output("permission")]
- public Output Permission { get; private set; } = null!;
-
- ///
- /// `region`) The region in which the resource exists.
- ///
- [Output("region")]
- public Output Region { get; private set; } = null!;
-
- ///
- /// Name of the user (e.g. `my-db-user`).
- ///
- [Output("userName")]
- public Output UserName { get; private set; } = null!;
-
-
- ///
- /// Create a DocumentdbPrivilege resource with the given unique name, arguments, and options.
- ///
- ///
- /// The unique name of the resource
- /// The arguments used to populate this resource's properties
- /// A bag of options that control this resource's behavior
- public DocumentdbPrivilege(string name, DocumentdbPrivilegeArgs args, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbPrivilege:DocumentdbPrivilege", name, args ?? new DocumentdbPrivilegeArgs(), MakeResourceOptions(options, ""))
- {
- }
-
- private DocumentdbPrivilege(string name, Input id, DocumentdbPrivilegeState? state = null, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbPrivilege:DocumentdbPrivilege", name, state, MakeResourceOptions(options, id))
- {
- }
-
- private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
- {
- var defaultOptions = new CustomResourceOptions
- {
- Version = Utilities.Version,
- PluginDownloadURL = "github://api.github.com/pulumiverse",
- };
- var merged = CustomResourceOptions.Merge(defaultOptions, options);
- // Override the ID if one was specified for consistency with other language SDKs.
- merged.Id = id ?? merged.Id;
- return merged;
- }
- ///
- /// Get an existing DocumentdbPrivilege resource's state with the given name, ID, and optional extra
- /// properties used to qualify the lookup.
- ///
- ///
- /// The unique name of the resulting resource.
- /// The unique provider ID of the resource to lookup.
- /// Any extra arguments used during the lookup.
- /// A bag of options that control this resource's behavior
- public static DocumentdbPrivilege Get(string name, Input id, DocumentdbPrivilegeState? state = null, CustomResourceOptions? options = null)
- {
- return new DocumentdbPrivilege(name, id, state, options);
- }
- }
-
- public sealed class DocumentdbPrivilegeArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// Name of the database (e.g. `my-db-name`).
- ///
- [Input("databaseName", required: true)]
- public Input DatabaseName { get; set; } = null!;
-
- ///
- /// UUID of the rdb instance.
- ///
- [Input("instanceId", required: true)]
- public Input InstanceId { get; set; } = null!;
-
- ///
- /// Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.
- ///
- [Input("permission", required: true)]
- public Input Permission { get; set; } = null!;
-
- ///
- /// `region`) The region in which the resource exists.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- ///
- /// Name of the user (e.g. `my-db-user`).
- ///
- [Input("userName", required: true)]
- public Input UserName { get; set; } = null!;
-
- public DocumentdbPrivilegeArgs()
- {
- }
- public static new DocumentdbPrivilegeArgs Empty => new DocumentdbPrivilegeArgs();
- }
-
- public sealed class DocumentdbPrivilegeState : global::Pulumi.ResourceArgs
- {
- ///
- /// Name of the database (e.g. `my-db-name`).
- ///
- [Input("databaseName")]
- public Input? DatabaseName { get; set; }
-
- ///
- /// UUID of the rdb instance.
- ///
- [Input("instanceId")]
- public Input? InstanceId { get; set; }
-
- ///
- /// Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.
- ///
- [Input("permission")]
- public Input? Permission { get; set; }
-
- ///
- /// `region`) The region in which the resource exists.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- ///
- /// Name of the user (e.g. `my-db-user`).
- ///
- [Input("userName")]
- public Input? UserName { get; set; }
-
- public DocumentdbPrivilegeState()
- {
- }
- public static new DocumentdbPrivilegeState Empty => new DocumentdbPrivilegeState();
- }
-}
diff --git a/sdk/dotnet/DocumentdbReadReplica.cs b/sdk/dotnet/DocumentdbReadReplica.cs
deleted file mode 100644
index 32448e0b..00000000
--- a/sdk/dotnet/DocumentdbReadReplica.cs
+++ /dev/null
@@ -1,226 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway
-{
- ///
- /// Creates and manages Scaleway DocumentDB Database read replicas.
- ///
- /// ## Example Usage
- ///
- /// ### Basic
- ///
- /// ```csharp
- /// using System.Collections.Generic;
- /// using System.Linq;
- /// using Pulumi;
- /// using Scaleway = Pulumiverse.Scaleway;
- ///
- /// return await Deployment.RunAsync(() =>
- /// {
- /// var replica = new Scaleway.DocumentdbReadReplica("replica", new()
- /// {
- /// InstanceId = "11111111-1111-1111-1111-111111111111",
- /// DirectAccess = null,
- /// });
- ///
- /// });
- /// ```
- ///
- /// ### Private network
- ///
- /// ```csharp
- /// using System.Collections.Generic;
- /// using System.Linq;
- /// using Pulumi;
- /// using Scaleway = Pulumiverse.Scaleway;
- ///
- /// return await Deployment.RunAsync(() =>
- /// {
- /// var pn = new Scaleway.VpcPrivateNetwork("pn");
- ///
- /// var instance = new Scaleway.DocumentdbInstance("instance", new()
- /// {
- /// Name = "document_db-read-replica-basic",
- /// NodeType = "docdb-play2-pico",
- /// Engine = "FerretDB-1",
- /// UserName = "my_initial_user",
- /// Password = "thiZ_is_v&ry_s3cret",
- /// VolumeSizeInGb = 20,
- /// });
- ///
- /// var replica = new Scaleway.DocumentdbReadReplica("replica", new()
- /// {
- /// InstanceId = instance.Id,
- /// PrivateNetwork = new Scaleway.Inputs.DocumentdbReadReplicaPrivateNetworkArgs
- /// {
- /// PrivateNetworkId = pn.Id,
- /// ServiceIp = "192.168.1.254/24",
- /// },
- /// });
- ///
- /// });
- /// ```
- ///
- /// ## Import
- ///
- /// Database Read replica can be imported using the `{region}/{id}`, e.g.
- ///
- /// bash
- ///
- /// ```sh
- /// $ pulumi import scaleway:index/documentdbReadReplica:DocumentdbReadReplica rr fr-par/11111111-1111-1111-1111-111111111111
- /// ```
- ///
- [ScalewayResourceType("scaleway:index/documentdbReadReplica:DocumentdbReadReplica")]
- public partial class DocumentdbReadReplica : global::Pulumi.CustomResource
- {
- ///
- /// Creates a direct access endpoint to documentdb replica.
- ///
- [Output("directAccess")]
- public Output DirectAccess { get; private set; } = null!;
-
- ///
- /// UUID of the documentdb instance.
- ///
- /// > **Important:** The replica musts contains at least one of `direct_access` or `private_network`. It can contain both.
- ///
- [Output("instanceId")]
- public Output InstanceId { get; private set; } = null!;
-
- ///
- /// Create an endpoint in a private network.
- ///
- [Output("privateNetwork")]
- public Output PrivateNetwork { get; private set; } = null!;
-
- ///
- /// `region`) The region
- /// in which the Database read replica should be created.
- ///
- [Output("region")]
- public Output Region { get; private set; } = null!;
-
-
- ///
- /// Create a DocumentdbReadReplica resource with the given unique name, arguments, and options.
- ///
- ///
- /// The unique name of the resource
- /// The arguments used to populate this resource's properties
- /// A bag of options that control this resource's behavior
- public DocumentdbReadReplica(string name, DocumentdbReadReplicaArgs args, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbReadReplica:DocumentdbReadReplica", name, args ?? new DocumentdbReadReplicaArgs(), MakeResourceOptions(options, ""))
- {
- }
-
- private DocumentdbReadReplica(string name, Input id, DocumentdbReadReplicaState? state = null, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbReadReplica:DocumentdbReadReplica", name, state, MakeResourceOptions(options, id))
- {
- }
-
- private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
- {
- var defaultOptions = new CustomResourceOptions
- {
- Version = Utilities.Version,
- PluginDownloadURL = "github://api.github.com/pulumiverse",
- };
- var merged = CustomResourceOptions.Merge(defaultOptions, options);
- // Override the ID if one was specified for consistency with other language SDKs.
- merged.Id = id ?? merged.Id;
- return merged;
- }
- ///
- /// Get an existing DocumentdbReadReplica resource's state with the given name, ID, and optional extra
- /// properties used to qualify the lookup.
- ///
- ///
- /// The unique name of the resulting resource.
- /// The unique provider ID of the resource to lookup.
- /// Any extra arguments used during the lookup.
- /// A bag of options that control this resource's behavior
- public static DocumentdbReadReplica Get(string name, Input id, DocumentdbReadReplicaState? state = null, CustomResourceOptions? options = null)
- {
- return new DocumentdbReadReplica(name, id, state, options);
- }
- }
-
- public sealed class DocumentdbReadReplicaArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// Creates a direct access endpoint to documentdb replica.
- ///
- [Input("directAccess")]
- public Input? DirectAccess { get; set; }
-
- ///
- /// UUID of the documentdb instance.
- ///
- /// > **Important:** The replica musts contains at least one of `direct_access` or `private_network`. It can contain both.
- ///
- [Input("instanceId", required: true)]
- public Input InstanceId { get; set; } = null!;
-
- ///
- /// Create an endpoint in a private network.
- ///
- [Input("privateNetwork")]
- public Input? PrivateNetwork { get; set; }
-
- ///
- /// `region`) The region
- /// in which the Database read replica should be created.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- public DocumentdbReadReplicaArgs()
- {
- }
- public static new DocumentdbReadReplicaArgs Empty => new DocumentdbReadReplicaArgs();
- }
-
- public sealed class DocumentdbReadReplicaState : global::Pulumi.ResourceArgs
- {
- ///
- /// Creates a direct access endpoint to documentdb replica.
- ///
- [Input("directAccess")]
- public Input? DirectAccess { get; set; }
-
- ///
- /// UUID of the documentdb instance.
- ///
- /// > **Important:** The replica musts contains at least one of `direct_access` or `private_network`. It can contain both.
- ///
- [Input("instanceId")]
- public Input? InstanceId { get; set; }
-
- ///
- /// Create an endpoint in a private network.
- ///
- [Input("privateNetwork")]
- public Input? PrivateNetwork { get; set; }
-
- ///
- /// `region`) The region
- /// in which the Database read replica should be created.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- public DocumentdbReadReplicaState()
- {
- }
- public static new DocumentdbReadReplicaState Empty => new DocumentdbReadReplicaState();
- }
-}
diff --git a/sdk/dotnet/DocumentdbUser.cs b/sdk/dotnet/DocumentdbUser.cs
deleted file mode 100644
index 67de7a5b..00000000
--- a/sdk/dotnet/DocumentdbUser.cs
+++ /dev/null
@@ -1,255 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway
-{
- ///
- /// Creates and manages Scaleway Database DocumentDB Users.
- ///
- /// ## Example Usage
- ///
- /// ### Basic
- ///
- /// ```csharp
- /// using System.Collections.Generic;
- /// using System.Linq;
- /// using Pulumi;
- /// using Random = Pulumi.Random;
- /// using Scaleway = Pulumiverse.Scaleway;
- ///
- /// return await Deployment.RunAsync(() =>
- /// {
- /// var instance = new Scaleway.DocumentdbInstance("instance", new()
- /// {
- /// Name = "test-document_db-basic",
- /// NodeType = "docdb-play2-pico",
- /// Engine = "FerretDB-1",
- /// UserName = "my_initial_user",
- /// Password = "thiZ_is_v&ry_s3cret",
- /// VolumeSizeInGb = 20,
- /// });
- ///
- /// var dbPassword = new Random.RandomPassword("db_password", new()
- /// {
- /// Length = 16,
- /// Special = true,
- /// });
- ///
- /// var dbAdmin = new Scaleway.DocumentdbUser("db_admin", new()
- /// {
- /// InstanceId = instance.Id,
- /// Name = "devtools",
- /// Password = dbPassword.Result,
- /// IsAdmin = true,
- /// });
- ///
- /// });
- /// ```
- ///
- /// ## Import
- ///
- /// Database User can be imported using `{region}/{instance_id}/{user_name}`, e.g.
- ///
- /// bash
- ///
- /// ```sh
- /// $ pulumi import scaleway:index/documentdbUser:DocumentdbUser admin fr-par/11111111-1111-1111-1111-111111111111/admin
- /// ```
- ///
- [ScalewayResourceType("scaleway:index/documentdbUser:DocumentdbUser")]
- public partial class DocumentdbUser : global::Pulumi.CustomResource
- {
- ///
- /// UUID of the documentDB instance.
- ///
- /// > **Important:** Updates to `instance_id` will recreate the Database User.
- ///
- [Output("instanceId")]
- public Output InstanceId { get; private set; } = null!;
-
- ///
- /// Grant admin permissions to the Database User.
- ///
- [Output("isAdmin")]
- public Output IsAdmin { get; private set; } = null!;
-
- ///
- /// Database Username.
- ///
- /// > **Important:** Updates to `name` will recreate the Database User.
- ///
- [Output("name")]
- public Output Name { get; private set; } = null!;
-
- ///
- /// Database User password.
- ///
- [Output("password")]
- public Output Password { get; private set; } = null!;
-
- ///
- /// The Scaleway region this resource resides in.
- ///
- [Output("region")]
- public Output Region { get; private set; } = null!;
-
-
- ///
- /// Create a DocumentdbUser resource with the given unique name, arguments, and options.
- ///
- ///
- /// The unique name of the resource
- /// The arguments used to populate this resource's properties
- /// A bag of options that control this resource's behavior
- public DocumentdbUser(string name, DocumentdbUserArgs args, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbUser:DocumentdbUser", name, args ?? new DocumentdbUserArgs(), MakeResourceOptions(options, ""))
- {
- }
-
- private DocumentdbUser(string name, Input id, DocumentdbUserState? state = null, CustomResourceOptions? options = null)
- : base("scaleway:index/documentdbUser:DocumentdbUser", name, state, MakeResourceOptions(options, id))
- {
- }
-
- private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
- {
- var defaultOptions = new CustomResourceOptions
- {
- Version = Utilities.Version,
- PluginDownloadURL = "github://api.github.com/pulumiverse",
- AdditionalSecretOutputs =
- {
- "password",
- },
- };
- var merged = CustomResourceOptions.Merge(defaultOptions, options);
- // Override the ID if one was specified for consistency with other language SDKs.
- merged.Id = id ?? merged.Id;
- return merged;
- }
- ///
- /// Get an existing DocumentdbUser resource's state with the given name, ID, and optional extra
- /// properties used to qualify the lookup.
- ///
- ///
- /// The unique name of the resulting resource.
- /// The unique provider ID of the resource to lookup.
- /// Any extra arguments used during the lookup.
- /// A bag of options that control this resource's behavior
- public static DocumentdbUser Get(string name, Input id, DocumentdbUserState? state = null, CustomResourceOptions? options = null)
- {
- return new DocumentdbUser(name, id, state, options);
- }
- }
-
- public sealed class DocumentdbUserArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// UUID of the documentDB instance.
- ///
- /// > **Important:** Updates to `instance_id` will recreate the Database User.
- ///
- [Input("instanceId", required: true)]
- public Input InstanceId { get; set; } = null!;
-
- ///
- /// Grant admin permissions to the Database User.
- ///
- [Input("isAdmin")]
- public Input? IsAdmin { get; set; }
-
- ///
- /// Database Username.
- ///
- /// > **Important:** Updates to `name` will recreate the Database User.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- [Input("password", required: true)]
- private Input? _password;
-
- ///
- /// Database User password.
- ///
- public Input? Password
- {
- get => _password;
- set
- {
- var emptySecret = Output.CreateSecret(0);
- _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1);
- }
- }
-
- ///
- /// The Scaleway region this resource resides in.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- public DocumentdbUserArgs()
- {
- }
- public static new DocumentdbUserArgs Empty => new DocumentdbUserArgs();
- }
-
- public sealed class DocumentdbUserState : global::Pulumi.ResourceArgs
- {
- ///
- /// UUID of the documentDB instance.
- ///
- /// > **Important:** Updates to `instance_id` will recreate the Database User.
- ///
- [Input("instanceId")]
- public Input? InstanceId { get; set; }
-
- ///
- /// Grant admin permissions to the Database User.
- ///
- [Input("isAdmin")]
- public Input? IsAdmin { get; set; }
-
- ///
- /// Database Username.
- ///
- /// > **Important:** Updates to `name` will recreate the Database User.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- [Input("password")]
- private Input? _password;
-
- ///
- /// Database User password.
- ///
- public Input? Password
- {
- get => _password;
- set
- {
- var emptySecret = Output.CreateSecret(0);
- _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1);
- }
- }
-
- ///
- /// The Scaleway region this resource resides in.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- public DocumentdbUserState()
- {
- }
- public static new DocumentdbUserState Empty => new DocumentdbUserState();
- }
-}
diff --git a/sdk/dotnet/GetDocumentdbDatabase.cs b/sdk/dotnet/GetDocumentdbDatabase.cs
deleted file mode 100644
index a66e0487..00000000
--- a/sdk/dotnet/GetDocumentdbDatabase.cs
+++ /dev/null
@@ -1,168 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway
-{
- public static class GetDocumentdbDatabase
- {
- ///
- /// Gets information about DocumentDB database.
- ///
- /// ## Example Usage
- ///
- /// ```csharp
- /// using System.Collections.Generic;
- /// using System.Linq;
- /// using Pulumi;
- /// using Scaleway = Pulumi.Scaleway;
- ///
- /// return await Deployment.RunAsync(() =>
- /// {
- /// // Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111
- /// var main = Scaleway.GetDocumentdbDatabase.Invoke(new()
- /// {
- /// InstanceId = "11111111-1111-1111-1111-111111111111",
- /// Name = "foobar",
- /// });
- ///
- /// });
- /// ```
- ///
- public static Task InvokeAsync(GetDocumentdbDatabaseArgs args, InvokeOptions? options = null)
- => global::Pulumi.Deployment.Instance.InvokeAsync("scaleway:index/getDocumentdbDatabase:getDocumentdbDatabase", args ?? new GetDocumentdbDatabaseArgs(), options.WithDefaults());
-
- ///
- /// Gets information about DocumentDB database.
- ///
- /// ## Example Usage
- ///
- /// ```csharp
- /// using System.Collections.Generic;
- /// using System.Linq;
- /// using Pulumi;
- /// using Scaleway = Pulumi.Scaleway;
- ///
- /// return await Deployment.RunAsync(() =>
- /// {
- /// // Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111
- /// var main = Scaleway.GetDocumentdbDatabase.Invoke(new()
- /// {
- /// InstanceId = "11111111-1111-1111-1111-111111111111",
- /// Name = "foobar",
- /// });
- ///
- /// });
- /// ```
- ///
- public static Output Invoke(GetDocumentdbDatabaseInvokeArgs args, InvokeOptions? options = null)
- => global::Pulumi.Deployment.Instance.Invoke("scaleway:index/getDocumentdbDatabase:getDocumentdbDatabase", args ?? new GetDocumentdbDatabaseInvokeArgs(), options.WithDefaults());
- }
-
-
- public sealed class GetDocumentdbDatabaseArgs : global::Pulumi.InvokeArgs
- {
- ///
- /// The DocumentDB instance ID.
- ///
- [Input("instanceId", required: true)]
- public string InstanceId { get; set; } = null!;
-
- ///
- /// The name of the DocumentDB instance.
- ///
- [Input("name")]
- public string? Name { get; set; }
-
- [Input("region")]
- public string? Region { get; set; }
-
- public GetDocumentdbDatabaseArgs()
- {
- }
- public static new GetDocumentdbDatabaseArgs Empty => new GetDocumentdbDatabaseArgs();
- }
-
- public sealed class GetDocumentdbDatabaseInvokeArgs : global::Pulumi.InvokeArgs
- {
- ///
- /// The DocumentDB instance ID.
- ///
- [Input("instanceId", required: true)]
- public Input InstanceId { get; set; } = null!;
-
- ///
- /// The name of the DocumentDB instance.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- [Input("region")]
- public Input? Region { get; set; }
-
- public GetDocumentdbDatabaseInvokeArgs()
- {
- }
- public static new GetDocumentdbDatabaseInvokeArgs Empty => new GetDocumentdbDatabaseInvokeArgs();
- }
-
-
- [OutputType]
- public sealed class GetDocumentdbDatabaseResult
- {
- ///
- /// The provider-assigned unique ID for this managed resource.
- ///
- public readonly string Id;
- public readonly string InstanceId;
- ///
- /// Whether the database is managed or not.
- ///
- public readonly bool Managed;
- public readonly string? Name;
- ///
- /// The name of the owner of the database.
- ///
- public readonly string Owner;
- public readonly string ProjectId;
- public readonly string? Region;
- ///
- /// Size of the database (in bytes).
- ///
- public readonly string Size;
-
- [OutputConstructor]
- private GetDocumentdbDatabaseResult(
- string id,
-
- string instanceId,
-
- bool managed,
-
- string? name,
-
- string owner,
-
- string projectId,
-
- string? region,
-
- string size)
- {
- Id = id;
- InstanceId = instanceId;
- Managed = managed;
- Name = name;
- Owner = owner;
- ProjectId = projectId;
- Region = region;
- Size = size;
- }
- }
-}
diff --git a/sdk/dotnet/GetDocumentdbInstance.cs b/sdk/dotnet/GetDocumentdbInstance.cs
deleted file mode 100644
index 0bbf6738..00000000
--- a/sdk/dotnet/GetDocumentdbInstance.cs
+++ /dev/null
@@ -1,165 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway
-{
- public static class GetDocumentdbInstance
- {
- ///
- /// Gets information about an DocumentDB instance.
- ///
- public static Task InvokeAsync(GetDocumentdbInstanceArgs? args = null, InvokeOptions? options = null)
- => global::Pulumi.Deployment.Instance.InvokeAsync("scaleway:index/getDocumentdbInstance:getDocumentdbInstance", args ?? new GetDocumentdbInstanceArgs(), options.WithDefaults());
-
- ///
- /// Gets information about an DocumentDB instance.
- ///
- public static Output Invoke(GetDocumentdbInstanceInvokeArgs? args = null, InvokeOptions? options = null)
- => global::Pulumi.Deployment.Instance.Invoke("scaleway:index/getDocumentdbInstance:getDocumentdbInstance", args ?? new GetDocumentdbInstanceInvokeArgs(), options.WithDefaults());
- }
-
-
- public sealed class GetDocumentdbInstanceArgs : global::Pulumi.InvokeArgs
- {
- ///
- /// The DocumentDB instance ID.
- /// Only one of `name` and `instance_id` should be specified.
- ///
- [Input("instanceId")]
- public string? InstanceId { get; set; }
-
- ///
- /// The name of the DocumentDB instance.
- /// Only one of `name` and `instance_id` should be specified.
- ///
- [Input("name")]
- public string? Name { get; set; }
-
- ///
- /// The ID of the project the DocumentDB instance is associated with.
- ///
- [Input("projectId")]
- public string? ProjectId { get; set; }
-
- ///
- /// `region`) The region in which the DocumentDB instance exists.
- ///
- [Input("region")]
- public string? Region { get; set; }
-
- public GetDocumentdbInstanceArgs()
- {
- }
- public static new GetDocumentdbInstanceArgs Empty => new GetDocumentdbInstanceArgs();
- }
-
- public sealed class GetDocumentdbInstanceInvokeArgs : global::Pulumi.InvokeArgs
- {
- ///
- /// The DocumentDB instance ID.
- /// Only one of `name` and `instance_id` should be specified.
- ///
- [Input("instanceId")]
- public Input? InstanceId { get; set; }
-
- ///
- /// The name of the DocumentDB instance.
- /// Only one of `name` and `instance_id` should be specified.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// The ID of the project the DocumentDB instance is associated with.
- ///
- [Input("projectId")]
- public Input? ProjectId { get; set; }
-
- ///
- /// `region`) The region in which the DocumentDB instance exists.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- public GetDocumentdbInstanceInvokeArgs()
- {
- }
- public static new GetDocumentdbInstanceInvokeArgs Empty => new GetDocumentdbInstanceInvokeArgs();
- }
-
-
- [OutputType]
- public sealed class GetDocumentdbInstanceResult
- {
- public readonly string Engine;
- ///
- /// The provider-assigned unique ID for this managed resource.
- ///
- public readonly string Id;
- public readonly string? InstanceId;
- public readonly bool IsHaCluster;
- public readonly string? Name;
- public readonly string NodeType;
- public readonly string Password;
- public readonly string? ProjectId;
- public readonly string? Region;
- public readonly ImmutableArray Tags;
- public readonly bool TelemetryEnabled;
- public readonly string UserName;
- public readonly int VolumeSizeInGb;
- public readonly string VolumeType;
-
- [OutputConstructor]
- private GetDocumentdbInstanceResult(
- string engine,
-
- string id,
-
- string? instanceId,
-
- bool isHaCluster,
-
- string? name,
-
- string nodeType,
-
- string password,
-
- string? projectId,
-
- string? region,
-
- ImmutableArray tags,
-
- bool telemetryEnabled,
-
- string userName,
-
- int volumeSizeInGb,
-
- string volumeType)
- {
- Engine = engine;
- Id = id;
- InstanceId = instanceId;
- IsHaCluster = isHaCluster;
- Name = name;
- NodeType = nodeType;
- Password = password;
- ProjectId = projectId;
- Region = region;
- Tags = tags;
- TelemetryEnabled = telemetryEnabled;
- UserName = userName;
- VolumeSizeInGb = volumeSizeInGb;
- VolumeType = volumeType;
- }
- }
-}
diff --git a/sdk/dotnet/GetDocumentdbLoadBalancerEndpoint.cs b/sdk/dotnet/GetDocumentdbLoadBalancerEndpoint.cs
deleted file mode 100644
index 32000379..00000000
--- a/sdk/dotnet/GetDocumentdbLoadBalancerEndpoint.cs
+++ /dev/null
@@ -1,153 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway
-{
- public static class GetDocumentdbLoadBalancerEndpoint
- {
- ///
- /// Gets information about an DocumentDB load balancer endpoint.
- ///
- public static Task InvokeAsync(GetDocumentdbLoadBalancerEndpointArgs? args = null, InvokeOptions? options = null)
- => global::Pulumi.Deployment.Instance.InvokeAsync("scaleway:index/getDocumentdbLoadBalancerEndpoint:getDocumentdbLoadBalancerEndpoint", args ?? new GetDocumentdbLoadBalancerEndpointArgs(), options.WithDefaults());
-
- ///
- /// Gets information about an DocumentDB load balancer endpoint.
- ///
- public static Output Invoke(GetDocumentdbLoadBalancerEndpointInvokeArgs? args = null, InvokeOptions? options = null)
- => global::Pulumi.Deployment.Instance.Invoke("scaleway:index/getDocumentdbLoadBalancerEndpoint:getDocumentdbLoadBalancerEndpoint", args ?? new GetDocumentdbLoadBalancerEndpointInvokeArgs(), options.WithDefaults());
- }
-
-
- public sealed class GetDocumentdbLoadBalancerEndpointArgs : global::Pulumi.InvokeArgs
- {
- ///
- /// The DocumentDB Instance on which the endpoint is attached. Only one of `instance_name` and `instance_id` should be specified.
- ///
- [Input("instanceId")]
- public string? InstanceId { get; set; }
-
- ///
- /// The DocumentDB Instance Name on which the endpoint is attached. Only one of `instance_name` and `instance_id` should be specified.
- ///
- [Input("instanceName")]
- public string? InstanceName { get; set; }
-
- ///
- /// The ID of the project the DocumentDB endpoint is associated with.
- ///
- [Input("projectId")]
- public string? ProjectId { get; set; }
-
- ///
- /// `region`) The region in which the DocumentDB endpoint exists.
- ///
- [Input("region")]
- public string? Region { get; set; }
-
- public GetDocumentdbLoadBalancerEndpointArgs()
- {
- }
- public static new GetDocumentdbLoadBalancerEndpointArgs Empty => new GetDocumentdbLoadBalancerEndpointArgs();
- }
-
- public sealed class GetDocumentdbLoadBalancerEndpointInvokeArgs : global::Pulumi.InvokeArgs
- {
- ///
- /// The DocumentDB Instance on which the endpoint is attached. Only one of `instance_name` and `instance_id` should be specified.
- ///
- [Input("instanceId")]
- public Input? InstanceId { get; set; }
-
- ///
- /// The DocumentDB Instance Name on which the endpoint is attached. Only one of `instance_name` and `instance_id` should be specified.
- ///
- [Input("instanceName")]
- public Input? InstanceName { get; set; }
-
- ///
- /// The ID of the project the DocumentDB endpoint is associated with.
- ///
- [Input("projectId")]
- public Input? ProjectId { get; set; }
-
- ///
- /// `region`) The region in which the DocumentDB endpoint exists.
- ///
- [Input("region")]
- public Input? Region { get; set; }
-
- public GetDocumentdbLoadBalancerEndpointInvokeArgs()
- {
- }
- public static new GetDocumentdbLoadBalancerEndpointInvokeArgs Empty => new GetDocumentdbLoadBalancerEndpointInvokeArgs();
- }
-
-
- [OutputType]
- public sealed class GetDocumentdbLoadBalancerEndpointResult
- {
- ///
- /// The hostname of your endpoint.
- ///
- public readonly string Hostname;
- ///
- /// The provider-assigned unique ID for this managed resource.
- ///
- public readonly string Id;
- public readonly string InstanceId;
- public readonly string InstanceName;
- ///
- /// The IP of your load balancer service.
- ///
- public readonly string Ip;
- ///
- /// The name of your load balancer service.
- ///
- public readonly string Name;
- ///
- /// The port of your load balancer service.
- ///
- public readonly int Port;
- public readonly string ProjectId;
- public readonly string Region;
-
- [OutputConstructor]
- private GetDocumentdbLoadBalancerEndpointResult(
- string hostname,
-
- string id,
-
- string instanceId,
-
- string instanceName,
-
- string ip,
-
- string name,
-
- int port,
-
- string projectId,
-
- string region)
- {
- Hostname = hostname;
- Id = id;
- InstanceId = instanceId;
- InstanceName = instanceName;
- Ip = ip;
- Name = name;
- Port = port;
- ProjectId = projectId;
- Region = region;
- }
- }
-}
diff --git a/sdk/dotnet/GetInstancePrivateNic.cs b/sdk/dotnet/GetInstancePrivateNic.cs
index 6cd30312..b99bd7c4 100644
--- a/sdk/dotnet/GetInstancePrivateNic.cs
+++ b/sdk/dotnet/GetInstancePrivateNic.cs
@@ -197,6 +197,7 @@ public sealed class GetInstancePrivateNicResult
///
public readonly string Id;
public readonly ImmutableArray IpIds;
+ public readonly ImmutableArray IpamIpIds;
public readonly string MacAddress;
public readonly string? PrivateNetworkId;
public readonly string? PrivateNicId;
@@ -210,6 +211,8 @@ private GetInstancePrivateNicResult(
ImmutableArray ipIds,
+ ImmutableArray ipamIpIds,
+
string macAddress,
string? privateNetworkId,
@@ -224,6 +227,7 @@ private GetInstancePrivateNicResult(
{
Id = id;
IpIds = ipIds;
+ IpamIpIds = ipamIpIds;
MacAddress = macAddress;
PrivateNetworkId = privateNetworkId;
PrivateNicId = privateNicId;
diff --git a/sdk/dotnet/GetRegistryImageTag.cs b/sdk/dotnet/GetRegistryImageTag.cs
new file mode 100644
index 00000000..4ffed3d8
--- /dev/null
+++ b/sdk/dotnet/GetRegistryImageTag.cs
@@ -0,0 +1,176 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+using Pulumi;
+
+namespace Pulumiverse.Scaleway
+{
+ public static class GetRegistryImageTag
+ {
+ ///
+ /// Gets information about a specific tag of a Container Registry image.
+ ///
+ public static Task InvokeAsync(GetRegistryImageTagArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("scaleway:index/getRegistryImageTag:getRegistryImageTag", args ?? new GetRegistryImageTagArgs(), options.WithDefaults());
+
+ ///
+ /// Gets information about a specific tag of a Container Registry image.
+ ///
+ public static Output Invoke(GetRegistryImageTagInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("scaleway:index/getRegistryImageTag:getRegistryImageTag", args ?? new GetRegistryImageTagInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetRegistryImageTagArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The ID of the registry image.
+ ///
+ [Input("imageId", required: true)]
+ public string ImageId { get; set; } = null!;
+
+ ///
+ /// The name of the registry image tag.
+ ///
+ [Input("name")]
+ public string? Name { get; set; }
+
+ ///
+ /// The ID of the project the image tag is associated with.
+ ///
+ [Input("projectId")]
+ public string? ProjectId { get; set; }
+
+ ///
+ /// The region in which the registry image tag exists.
+ ///
+ [Input("region")]
+ public string? Region { get; set; }
+
+ ///
+ /// The ID of the registry image tag.
+ ///
+ [Input("tagId")]
+ public string? TagId { get; set; }
+
+ public GetRegistryImageTagArgs()
+ {
+ }
+ public static new GetRegistryImageTagArgs Empty => new GetRegistryImageTagArgs();
+ }
+
+ public sealed class GetRegistryImageTagInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The ID of the registry image.
+ ///
+ [Input("imageId", required: true)]
+ public Input ImageId { get; set; } = null!;
+
+ ///
+ /// The name of the registry image tag.
+ ///
+ [Input("name")]
+ public Input? Name { get; set; }
+
+ ///
+ /// The ID of the project the image tag is associated with.
+ ///
+ [Input("projectId")]
+ public Input? ProjectId { get; set; }
+
+ ///
+ /// The region in which the registry image tag exists.
+ ///
+ [Input("region")]
+ public Input? Region { get; set; }
+
+ ///
+ /// The ID of the registry image tag.
+ ///
+ [Input("tagId")]
+ public Input? TagId { get; set; }
+
+ public GetRegistryImageTagInvokeArgs()
+ {
+ }
+ public static new GetRegistryImageTagInvokeArgs Empty => new GetRegistryImageTagInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetRegistryImageTagResult
+ {
+ ///
+ /// The date and time when the registry image tag was created.
+ ///
+ public readonly string CreatedAt;
+ ///
+ /// Hash of the tag content. Several tags of the same image may have the same digest.
+ ///
+ public readonly string Digest;
+ ///
+ /// The provider-assigned unique ID for this managed resource.
+ ///
+ public readonly string Id;
+ public readonly string ImageId;
+ public readonly string? Name;
+ ///
+ /// The organization ID the image tag is associated with.
+ ///
+ public readonly string OrganizationId;
+ public readonly string ProjectId;
+ public readonly string Region;
+ ///
+ /// The status of the registry image tag.
+ ///
+ public readonly string Status;
+ public readonly string? TagId;
+ ///
+ /// The date and time of the last update to the registry image tag.
+ ///
+ public readonly string UpdatedAt;
+
+ [OutputConstructor]
+ private GetRegistryImageTagResult(
+ string createdAt,
+
+ string digest,
+
+ string id,
+
+ string imageId,
+
+ string? name,
+
+ string organizationId,
+
+ string projectId,
+
+ string region,
+
+ string status,
+
+ string? tagId,
+
+ string updatedAt)
+ {
+ CreatedAt = createdAt;
+ Digest = digest;
+ Id = id;
+ ImageId = imageId;
+ Name = name;
+ OrganizationId = organizationId;
+ ProjectId = projectId;
+ Region = region;
+ Status = status;
+ TagId = tagId;
+ UpdatedAt = updatedAt;
+ }
+ }
+}
diff --git a/sdk/dotnet/Inputs/DocumentdbPrivateNetworkEndpointPrivateNetworkArgs.cs b/sdk/dotnet/Inputs/DocumentdbPrivateNetworkEndpointPrivateNetworkArgs.cs
deleted file mode 100644
index 8bb194f0..00000000
--- a/sdk/dotnet/Inputs/DocumentdbPrivateNetworkEndpointPrivateNetworkArgs.cs
+++ /dev/null
@@ -1,63 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway.Inputs
-{
-
- public sealed class DocumentdbPrivateNetworkEndpointPrivateNetworkArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// The hostname of your endpoint.
- ///
- [Input("hostname")]
- public Input? Hostname { get; set; }
-
- ///
- /// The private network ID.
- ///
- [Input("id", required: true)]
- public Input Id { get; set; } = null!;
-
- ///
- /// The IP of your private network service.
- ///
- [Input("ip")]
- public Input? Ip { get; set; }
-
- ///
- /// The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM) service if not set.
- ///
- [Input("ipNet")]
- public Input? IpNet { get; set; }
-
- ///
- /// The name of your private service.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// The port of your private service.
- ///
- [Input("port")]
- public Input? Port { get; set; }
-
- ///
- /// The zone of your endpoint.
- ///
- [Input("zone")]
- public Input? Zone { get; set; }
-
- public DocumentdbPrivateNetworkEndpointPrivateNetworkArgs()
- {
- }
- public static new DocumentdbPrivateNetworkEndpointPrivateNetworkArgs Empty => new DocumentdbPrivateNetworkEndpointPrivateNetworkArgs();
- }
-}
diff --git a/sdk/dotnet/Inputs/DocumentdbPrivateNetworkEndpointPrivateNetworkGetArgs.cs b/sdk/dotnet/Inputs/DocumentdbPrivateNetworkEndpointPrivateNetworkGetArgs.cs
deleted file mode 100644
index 05add152..00000000
--- a/sdk/dotnet/Inputs/DocumentdbPrivateNetworkEndpointPrivateNetworkGetArgs.cs
+++ /dev/null
@@ -1,63 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway.Inputs
-{
-
- public sealed class DocumentdbPrivateNetworkEndpointPrivateNetworkGetArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// The hostname of your endpoint.
- ///
- [Input("hostname")]
- public Input? Hostname { get; set; }
-
- ///
- /// The private network ID.
- ///
- [Input("id", required: true)]
- public Input Id { get; set; } = null!;
-
- ///
- /// The IP of your private network service.
- ///
- [Input("ip")]
- public Input? Ip { get; set; }
-
- ///
- /// The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM) service if not set.
- ///
- [Input("ipNet")]
- public Input? IpNet { get; set; }
-
- ///
- /// The name of your private service.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// The port of your private service.
- ///
- [Input("port")]
- public Input? Port { get; set; }
-
- ///
- /// The zone of your endpoint.
- ///
- [Input("zone")]
- public Input? Zone { get; set; }
-
- public DocumentdbPrivateNetworkEndpointPrivateNetworkGetArgs()
- {
- }
- public static new DocumentdbPrivateNetworkEndpointPrivateNetworkGetArgs Empty => new DocumentdbPrivateNetworkEndpointPrivateNetworkGetArgs();
- }
-}
diff --git a/sdk/dotnet/Inputs/DocumentdbReadReplicaDirectAccessArgs.cs b/sdk/dotnet/Inputs/DocumentdbReadReplicaDirectAccessArgs.cs
deleted file mode 100644
index c418a7cf..00000000
--- a/sdk/dotnet/Inputs/DocumentdbReadReplicaDirectAccessArgs.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway.Inputs
-{
-
- public sealed class DocumentdbReadReplicaDirectAccessArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// The ID of the endpoint of the read replica.
- ///
- [Input("endpointId")]
- public Input? EndpointId { get; set; }
-
- ///
- /// Hostname of the endpoint. Only one of ip and hostname may be set.
- ///
- [Input("hostname")]
- public Input? Hostname { get; set; }
-
- ///
- /// IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
- ///
- [Input("ip")]
- public Input? Ip { get; set; }
-
- ///
- /// Name of the endpoint.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// TCP port of the endpoint.
- ///
- [Input("port")]
- public Input? Port { get; set; }
-
- public DocumentdbReadReplicaDirectAccessArgs()
- {
- }
- public static new DocumentdbReadReplicaDirectAccessArgs Empty => new DocumentdbReadReplicaDirectAccessArgs();
- }
-}
diff --git a/sdk/dotnet/Inputs/DocumentdbReadReplicaDirectAccessGetArgs.cs b/sdk/dotnet/Inputs/DocumentdbReadReplicaDirectAccessGetArgs.cs
deleted file mode 100644
index cfe198e6..00000000
--- a/sdk/dotnet/Inputs/DocumentdbReadReplicaDirectAccessGetArgs.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway.Inputs
-{
-
- public sealed class DocumentdbReadReplicaDirectAccessGetArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// The ID of the endpoint of the read replica.
- ///
- [Input("endpointId")]
- public Input? EndpointId { get; set; }
-
- ///
- /// Hostname of the endpoint. Only one of ip and hostname may be set.
- ///
- [Input("hostname")]
- public Input? Hostname { get; set; }
-
- ///
- /// IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
- ///
- [Input("ip")]
- public Input? Ip { get; set; }
-
- ///
- /// Name of the endpoint.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// TCP port of the endpoint.
- ///
- [Input("port")]
- public Input? Port { get; set; }
-
- public DocumentdbReadReplicaDirectAccessGetArgs()
- {
- }
- public static new DocumentdbReadReplicaDirectAccessGetArgs Empty => new DocumentdbReadReplicaDirectAccessGetArgs();
- }
-}
diff --git a/sdk/dotnet/Inputs/DocumentdbReadReplicaPrivateNetworkArgs.cs b/sdk/dotnet/Inputs/DocumentdbReadReplicaPrivateNetworkArgs.cs
deleted file mode 100644
index f58e4a20..00000000
--- a/sdk/dotnet/Inputs/DocumentdbReadReplicaPrivateNetworkArgs.cs
+++ /dev/null
@@ -1,71 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway.Inputs
-{
-
- public sealed class DocumentdbReadReplicaPrivateNetworkArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// The ID of the endpoint of the read replica.
- ///
- [Input("endpointId")]
- public Input? EndpointId { get; set; }
-
- ///
- /// Hostname of the endpoint. Only one of ip and hostname may be set.
- ///
- [Input("hostname")]
- public Input? Hostname { get; set; }
-
- ///
- /// IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
- ///
- [Input("ip")]
- public Input? Ip { get; set; }
-
- ///
- /// Name of the endpoint.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// TCP port of the endpoint.
- ///
- [Input("port")]
- public Input? Port { get; set; }
-
- ///
- /// UUID of the private network to be connected to the read replica.
- ///
- [Input("privateNetworkId", required: true)]
- public Input PrivateNetworkId { get; set; } = null!;
-
- ///
- /// The IP network address within the private subnet. This must be an IPv4 address with a
- /// CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM)
- /// service if not set.
- ///
- [Input("serviceIp")]
- public Input? ServiceIp { get; set; }
-
- ///
- /// Private network zone
- ///
- [Input("zone")]
- public Input? Zone { get; set; }
-
- public DocumentdbReadReplicaPrivateNetworkArgs()
- {
- }
- public static new DocumentdbReadReplicaPrivateNetworkArgs Empty => new DocumentdbReadReplicaPrivateNetworkArgs();
- }
-}
diff --git a/sdk/dotnet/Inputs/DocumentdbReadReplicaPrivateNetworkGetArgs.cs b/sdk/dotnet/Inputs/DocumentdbReadReplicaPrivateNetworkGetArgs.cs
deleted file mode 100644
index fe151267..00000000
--- a/sdk/dotnet/Inputs/DocumentdbReadReplicaPrivateNetworkGetArgs.cs
+++ /dev/null
@@ -1,71 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway.Inputs
-{
-
- public sealed class DocumentdbReadReplicaPrivateNetworkGetArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// The ID of the endpoint of the read replica.
- ///
- [Input("endpointId")]
- public Input? EndpointId { get; set; }
-
- ///
- /// Hostname of the endpoint. Only one of ip and hostname may be set.
- ///
- [Input("hostname")]
- public Input? Hostname { get; set; }
-
- ///
- /// IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
- ///
- [Input("ip")]
- public Input? Ip { get; set; }
-
- ///
- /// Name of the endpoint.
- ///
- [Input("name")]
- public Input? Name { get; set; }
-
- ///
- /// TCP port of the endpoint.
- ///
- [Input("port")]
- public Input? Port { get; set; }
-
- ///
- /// UUID of the private network to be connected to the read replica.
- ///
- [Input("privateNetworkId", required: true)]
- public Input PrivateNetworkId { get; set; } = null!;
-
- ///
- /// The IP network address within the private subnet. This must be an IPv4 address with a
- /// CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM)
- /// service if not set.
- ///
- [Input("serviceIp")]
- public Input? ServiceIp { get; set; }
-
- ///
- /// Private network zone
- ///
- [Input("zone")]
- public Input? Zone { get; set; }
-
- public DocumentdbReadReplicaPrivateNetworkGetArgs()
- {
- }
- public static new DocumentdbReadReplicaPrivateNetworkGetArgs Empty => new DocumentdbReadReplicaPrivateNetworkGetArgs();
- }
-}
diff --git a/sdk/dotnet/InstancePrivateNic.cs b/sdk/dotnet/InstancePrivateNic.cs
index aa719ce1..ae221994 100644
--- a/sdk/dotnet/InstancePrivateNic.cs
+++ b/sdk/dotnet/InstancePrivateNic.cs
@@ -48,7 +48,7 @@ namespace Pulumiverse.Scaleway
/// var pn01 = new Scaleway.VpcPrivateNetwork("pn01", new()
/// {
/// Name = "private_network_instance",
- /// Zone = "fr-par-2",
+ /// Region = "fr-par",
/// });
///
/// var @base = new Scaleway.InstanceServer("base", new()
@@ -68,6 +68,62 @@ namespace Pulumiverse.Scaleway
/// });
/// ```
///
+ /// ### With IPAM IP IDs
+ ///
+ /// ```csharp
+ /// using System.Collections.Generic;
+ /// using System.Linq;
+ /// using Pulumi;
+ /// using Scaleway = Pulumiverse.Scaleway;
+ ///
+ /// return await Deployment.RunAsync(() =>
+ /// {
+ /// var vpc01 = new Scaleway.Vpc("vpc01", new()
+ /// {
+ /// Name = "vpc_instance",
+ /// });
+ ///
+ /// var pn01 = new Scaleway.VpcPrivateNetwork("pn01", new()
+ /// {
+ /// Name = "private_network_instance",
+ /// Ipv4Subnet = new Scaleway.Inputs.VpcPrivateNetworkIpv4SubnetArgs
+ /// {
+ /// Subnet = "172.16.64.0/22",
+ /// },
+ /// VpcId = vpc01.Id,
+ /// });
+ ///
+ /// var ip01 = new Scaleway.IpamIp("ip01", new()
+ /// {
+ /// Address = "172.16.64.7",
+ /// Sources = new[]
+ /// {
+ /// new Scaleway.Inputs.IpamIpSourceArgs
+ /// {
+ /// PrivateNetworkId = pn01.Id,
+ /// },
+ /// },
+ /// });
+ ///
+ /// var server01 = new Scaleway.InstanceServer("server01", new()
+ /// {
+ /// Image = "ubuntu_focal",
+ /// Type = "PLAY2-MICRO",
+ /// });
+ ///
+ /// var pnic01 = new Scaleway.InstancePrivateNic("pnic01", new()
+ /// {
+ /// PrivateNetworkId = pn01.Id,
+ /// ServerId = server01.Id,
+ /// IpamIpIds = new[]
+ /// {
+ /// ip01.Id,
+ /// },
+ /// });
+ ///
+ /// });
+ /// ```
+ ///
/// ## Import
///
/// Private NICs can be imported using the `{zone}/{server_id}/{private_nic_id}`, e.g.
@@ -87,6 +143,12 @@ public partial class InstancePrivateNic : global::Pulumi.CustomResource
[Output("ipIds")]
public Output> IpIds { get; private set; } = null!;
+ ///
+ /// IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
+ ///
+ [Output("ipamIpIds")]
+ public Output> IpamIpIds { get; private set; } = null!;
+
///
/// The MAC address of the private NIC.
///
@@ -176,6 +238,18 @@ public InputList IpIds
set => _ipIds = value;
}
+ [Input("ipamIpIds")]
+ private InputList? _ipamIpIds;
+
+ ///
+ /// IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
+ ///
+ public InputList IpamIpIds
+ {
+ get => _ipamIpIds ?? (_ipamIpIds = new InputList());
+ set => _ipamIpIds = value;
+ }
+
///
/// The ID of the private network attached to.
///
@@ -226,6 +300,18 @@ public InputList IpIds
set => _ipIds = value;
}
+ [Input("ipamIpIds")]
+ private InputList? _ipamIpIds;
+
+ ///
+ /// IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
+ ///
+ public InputList IpamIpIds
+ {
+ get => _ipamIpIds ?? (_ipamIpIds = new InputList());
+ set => _ipamIpIds = value;
+ }
+
///
/// The MAC address of the private NIC.
///
diff --git a/sdk/dotnet/Outputs/DocumentdbPrivateNetworkEndpointPrivateNetwork.cs b/sdk/dotnet/Outputs/DocumentdbPrivateNetworkEndpointPrivateNetwork.cs
deleted file mode 100644
index 5571ab10..00000000
--- a/sdk/dotnet/Outputs/DocumentdbPrivateNetworkEndpointPrivateNetwork.cs
+++ /dev/null
@@ -1,71 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway.Outputs
-{
-
- [OutputType]
- public sealed class DocumentdbPrivateNetworkEndpointPrivateNetwork
- {
- ///
- /// The hostname of your endpoint.
- ///
- public readonly string? Hostname;
- ///
- /// The private network ID.
- ///
- public readonly string Id;
- ///
- /// The IP of your private network service.
- ///
- public readonly string? Ip;
- ///
- /// The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM) service if not set.
- ///
- public readonly string? IpNet;
- ///
- /// The name of your private service.
- ///
- public readonly string? Name;
- ///
- /// The port of your private service.
- ///
- public readonly int? Port;
- ///
- /// The zone of your endpoint.
- ///
- public readonly string? Zone;
-
- [OutputConstructor]
- private DocumentdbPrivateNetworkEndpointPrivateNetwork(
- string? hostname,
-
- string id,
-
- string? ip,
-
- string? ipNet,
-
- string? name,
-
- int? port,
-
- string? zone)
- {
- Hostname = hostname;
- Id = id;
- Ip = ip;
- IpNet = ipNet;
- Name = name;
- Port = port;
- Zone = zone;
- }
- }
-}
diff --git a/sdk/dotnet/Outputs/DocumentdbReadReplicaDirectAccess.cs b/sdk/dotnet/Outputs/DocumentdbReadReplicaDirectAccess.cs
deleted file mode 100644
index 909eaa5e..00000000
--- a/sdk/dotnet/Outputs/DocumentdbReadReplicaDirectAccess.cs
+++ /dev/null
@@ -1,57 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway.Outputs
-{
-
- [OutputType]
- public sealed class DocumentdbReadReplicaDirectAccess
- {
- ///
- /// The ID of the endpoint of the read replica.
- ///
- public readonly string? EndpointId;
- ///
- /// Hostname of the endpoint. Only one of ip and hostname may be set.
- ///
- public readonly string? Hostname;
- ///
- /// IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
- ///
- public readonly string? Ip;
- ///
- /// Name of the endpoint.
- ///
- public readonly string? Name;
- ///
- /// TCP port of the endpoint.
- ///
- public readonly int? Port;
-
- [OutputConstructor]
- private DocumentdbReadReplicaDirectAccess(
- string? endpointId,
-
- string? hostname,
-
- string? ip,
-
- string? name,
-
- int? port)
- {
- EndpointId = endpointId;
- Hostname = hostname;
- Ip = ip;
- Name = name;
- Port = port;
- }
- }
-}
diff --git a/sdk/dotnet/Outputs/DocumentdbReadReplicaPrivateNetwork.cs b/sdk/dotnet/Outputs/DocumentdbReadReplicaPrivateNetwork.cs
deleted file mode 100644
index 10143420..00000000
--- a/sdk/dotnet/Outputs/DocumentdbReadReplicaPrivateNetwork.cs
+++ /dev/null
@@ -1,80 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-using Pulumi;
-
-namespace Pulumiverse.Scaleway.Outputs
-{
-
- [OutputType]
- public sealed class DocumentdbReadReplicaPrivateNetwork
- {
- ///
- /// The ID of the endpoint of the read replica.
- ///
- public readonly string? EndpointId;
- ///
- /// Hostname of the endpoint. Only one of ip and hostname may be set.
- ///
- public readonly string? Hostname;
- ///
- /// IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
- ///
- public readonly string? Ip;
- ///
- /// Name of the endpoint.
- ///
- public readonly string? Name;
- ///
- /// TCP port of the endpoint.
- ///
- public readonly int? Port;
- ///
- /// UUID of the private network to be connected to the read replica.
- ///
- public readonly string PrivateNetworkId;
- ///
- /// The IP network address within the private subnet. This must be an IPv4 address with a
- /// CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM)
- /// service if not set.
- ///
- public readonly string? ServiceIp;
- ///
- /// Private network zone
- ///
- public readonly string? Zone;
-
- [OutputConstructor]
- private DocumentdbReadReplicaPrivateNetwork(
- string? endpointId,
-
- string? hostname,
-
- string? ip,
-
- string? name,
-
- int? port,
-
- string privateNetworkId,
-
- string? serviceIp,
-
- string? zone)
- {
- EndpointId = endpointId;
- Hostname = hostname;
- Ip = ip;
- Name = name;
- Port = port;
- PrivateNetworkId = privateNetworkId;
- ServiceIp = serviceIp;
- Zone = zone;
- }
- }
-}
diff --git a/sdk/go/scaleway/cockpitAlertManager.go b/sdk/go/scaleway/cockpitAlertManager.go
index 737e171f..2528d269 100644
--- a/sdk/go/scaleway/cockpitAlertManager.go
+++ b/sdk/go/scaleway/cockpitAlertManager.go
@@ -17,6 +17,53 @@ import (
//
// ## Example Usage
//
+// ### Enable the alert manager and configure managed alerts
+//
+// The following commands allow you to:
+//
+// - enable the alert manager in a Project named `tfTestProject`
+// - enable [managed alerts](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#managed-alerts)
+// - set up [contact points](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#contact-points) to receive alert notifications
+//
+// ```go
+// package main
+//
+// import (
+//
+// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
+// "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
+//
+// )
+//
+// func main() {
+// pulumi.Run(func(ctx *pulumi.Context) error {
+// project, err := scaleway.NewAccountProject(ctx, "project", &scaleway.AccountProjectArgs{
+// Name: pulumi.String("tf_test_project"),
+// })
+// if err != nil {
+// return err
+// }
+// _, err = scaleway.NewCockpitAlertManager(ctx, "alert_manager", &scaleway.CockpitAlertManagerArgs{
+// ProjectId: project.ID(),
+// EnableManagedAlerts: pulumi.Bool(true),
+// ContactPoints: scaleway.CockpitAlertManagerContactPointArray{
+// &scaleway.CockpitAlertManagerContactPointArgs{
+// Email: pulumi.String("alert1@example.com"),
+// },
+// &scaleway.CockpitAlertManagerContactPointArgs{
+// Email: pulumi.String("alert2@example.com"),
+// },
+// },
+// })
+// if err != nil {
+// return err
+// }
+// return nil
+// })
+// }
+//
+// ```
+//
// ## Import
//
// This section explains how to import alert managers using the ID of the Project associated with Cockpit.
diff --git a/sdk/go/scaleway/documentdbDatabase.go b/sdk/go/scaleway/documentdbDatabase.go
deleted file mode 100644
index 568afe3e..00000000
--- a/sdk/go/scaleway/documentdbDatabase.go
+++ /dev/null
@@ -1,359 +0,0 @@
-// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
-// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
-
-package scaleway
-
-import (
- "context"
- "reflect"
-
- "errors"
- "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
- "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/internal"
-)
-
-// Creates and manages Scaleway DocumentDB database.
-//
-// ## Example Usage
-//
-// ### Basic
-//
-// ```go
-// package main
-//
-// import (
-//
-// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
-// "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
-//
-// )
-//
-// func main() {
-// pulumi.Run(func(ctx *pulumi.Context) error {
-// instance, err := scaleway.NewDocumentdbInstance(ctx, "instance", &scaleway.DocumentdbInstanceArgs{
-// Name: pulumi.String("test-document_db-basic"),
-// NodeType: pulumi.String("docdb-play2-pico"),
-// Engine: pulumi.String("FerretDB-1"),
-// UserName: pulumi.String("my_initial_user"),
-// Password: pulumi.String("thiZ_is_v&ry_s3cret"),
-// VolumeSizeInGb: pulumi.Int(20),
-// })
-// if err != nil {
-// return err
-// }
-// _, err = scaleway.NewDocumentdbDatabase(ctx, "main", &scaleway.DocumentdbDatabaseArgs{
-// InstanceId: instance.ID(),
-// Name: pulumi.String("my-new-database"),
-// })
-// if err != nil {
-// return err
-// }
-// return nil
-// })
-// }
-//
-// ```
-//
-// ## Import
-//
-// DocumentDB Database can be imported using the `{region}/{id}/{DBNAME}`, e.g.
-//
-// bash
-//
-// ```sh
-// $ pulumi import scaleway:index/documentdbDatabase:DocumentdbDatabase mydb fr-par/11111111-1111-1111-1111-111111111111/mydb
-// ```
-type DocumentdbDatabase struct {
- pulumi.CustomResourceState
-
- // UUID of the documentdb instance.
- //
- // > **Important:** Updates to `instanceId` will recreate the Database.
- InstanceId pulumi.StringOutput `pulumi:"instanceId"`
- // Whether the database is managed or not.
- Managed pulumi.BoolOutput `pulumi:"managed"`
- // Name of the database (e.g. `my-new-database`).
- Name pulumi.StringOutput `pulumi:"name"`
- // The name of the owner of the database.
- Owner pulumi.StringOutput `pulumi:"owner"`
- // The projectId you want to attach the resource to
- ProjectId pulumi.StringOutput `pulumi:"projectId"`
- // `region`) The region in which the resource exists.
- Region pulumi.StringOutput `pulumi:"region"`
- // Size in gigabytes of the database.
- Size pulumi.StringOutput `pulumi:"size"`
-}
-
-// NewDocumentdbDatabase registers a new resource with the given unique name, arguments, and options.
-func NewDocumentdbDatabase(ctx *pulumi.Context,
- name string, args *DocumentdbDatabaseArgs, opts ...pulumi.ResourceOption) (*DocumentdbDatabase, error) {
- if args == nil {
- return nil, errors.New("missing one or more required arguments")
- }
-
- if args.InstanceId == nil {
- return nil, errors.New("invalid value for required argument 'InstanceId'")
- }
- opts = internal.PkgResourceDefaultOpts(opts)
- var resource DocumentdbDatabase
- err := ctx.RegisterResource("scaleway:index/documentdbDatabase:DocumentdbDatabase", name, args, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// GetDocumentdbDatabase gets an existing DocumentdbDatabase resource's state with the given name, ID, and optional
-// state properties that are used to uniquely qualify the lookup (nil if not required).
-func GetDocumentdbDatabase(ctx *pulumi.Context,
- name string, id pulumi.IDInput, state *DocumentdbDatabaseState, opts ...pulumi.ResourceOption) (*DocumentdbDatabase, error) {
- var resource DocumentdbDatabase
- err := ctx.ReadResource("scaleway:index/documentdbDatabase:DocumentdbDatabase", name, id, state, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// Input properties used for looking up and filtering DocumentdbDatabase resources.
-type documentdbDatabaseState struct {
- // UUID of the documentdb instance.
- //
- // > **Important:** Updates to `instanceId` will recreate the Database.
- InstanceId *string `pulumi:"instanceId"`
- // Whether the database is managed or not.
- Managed *bool `pulumi:"managed"`
- // Name of the database (e.g. `my-new-database`).
- Name *string `pulumi:"name"`
- // The name of the owner of the database.
- Owner *string `pulumi:"owner"`
- // The projectId you want to attach the resource to
- ProjectId *string `pulumi:"projectId"`
- // `region`) The region in which the resource exists.
- Region *string `pulumi:"region"`
- // Size in gigabytes of the database.
- Size *string `pulumi:"size"`
-}
-
-type DocumentdbDatabaseState struct {
- // UUID of the documentdb instance.
- //
- // > **Important:** Updates to `instanceId` will recreate the Database.
- InstanceId pulumi.StringPtrInput
- // Whether the database is managed or not.
- Managed pulumi.BoolPtrInput
- // Name of the database (e.g. `my-new-database`).
- Name pulumi.StringPtrInput
- // The name of the owner of the database.
- Owner pulumi.StringPtrInput
- // The projectId you want to attach the resource to
- ProjectId pulumi.StringPtrInput
- // `region`) The region in which the resource exists.
- Region pulumi.StringPtrInput
- // Size in gigabytes of the database.
- Size pulumi.StringPtrInput
-}
-
-func (DocumentdbDatabaseState) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbDatabaseState)(nil)).Elem()
-}
-
-type documentdbDatabaseArgs struct {
- // UUID of the documentdb instance.
- //
- // > **Important:** Updates to `instanceId` will recreate the Database.
- InstanceId string `pulumi:"instanceId"`
- // Name of the database (e.g. `my-new-database`).
- Name *string `pulumi:"name"`
- // The projectId you want to attach the resource to
- ProjectId *string `pulumi:"projectId"`
- // `region`) The region in which the resource exists.
- Region *string `pulumi:"region"`
-}
-
-// The set of arguments for constructing a DocumentdbDatabase resource.
-type DocumentdbDatabaseArgs struct {
- // UUID of the documentdb instance.
- //
- // > **Important:** Updates to `instanceId` will recreate the Database.
- InstanceId pulumi.StringInput
- // Name of the database (e.g. `my-new-database`).
- Name pulumi.StringPtrInput
- // The projectId you want to attach the resource to
- ProjectId pulumi.StringPtrInput
- // `region`) The region in which the resource exists.
- Region pulumi.StringPtrInput
-}
-
-func (DocumentdbDatabaseArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbDatabaseArgs)(nil)).Elem()
-}
-
-type DocumentdbDatabaseInput interface {
- pulumi.Input
-
- ToDocumentdbDatabaseOutput() DocumentdbDatabaseOutput
- ToDocumentdbDatabaseOutputWithContext(ctx context.Context) DocumentdbDatabaseOutput
-}
-
-func (*DocumentdbDatabase) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbDatabase)(nil)).Elem()
-}
-
-func (i *DocumentdbDatabase) ToDocumentdbDatabaseOutput() DocumentdbDatabaseOutput {
- return i.ToDocumentdbDatabaseOutputWithContext(context.Background())
-}
-
-func (i *DocumentdbDatabase) ToDocumentdbDatabaseOutputWithContext(ctx context.Context) DocumentdbDatabaseOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbDatabaseOutput)
-}
-
-// DocumentdbDatabaseArrayInput is an input type that accepts DocumentdbDatabaseArray and DocumentdbDatabaseArrayOutput values.
-// You can construct a concrete instance of `DocumentdbDatabaseArrayInput` via:
-//
-// DocumentdbDatabaseArray{ DocumentdbDatabaseArgs{...} }
-type DocumentdbDatabaseArrayInput interface {
- pulumi.Input
-
- ToDocumentdbDatabaseArrayOutput() DocumentdbDatabaseArrayOutput
- ToDocumentdbDatabaseArrayOutputWithContext(context.Context) DocumentdbDatabaseArrayOutput
-}
-
-type DocumentdbDatabaseArray []DocumentdbDatabaseInput
-
-func (DocumentdbDatabaseArray) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbDatabase)(nil)).Elem()
-}
-
-func (i DocumentdbDatabaseArray) ToDocumentdbDatabaseArrayOutput() DocumentdbDatabaseArrayOutput {
- return i.ToDocumentdbDatabaseArrayOutputWithContext(context.Background())
-}
-
-func (i DocumentdbDatabaseArray) ToDocumentdbDatabaseArrayOutputWithContext(ctx context.Context) DocumentdbDatabaseArrayOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbDatabaseArrayOutput)
-}
-
-// DocumentdbDatabaseMapInput is an input type that accepts DocumentdbDatabaseMap and DocumentdbDatabaseMapOutput values.
-// You can construct a concrete instance of `DocumentdbDatabaseMapInput` via:
-//
-// DocumentdbDatabaseMap{ "key": DocumentdbDatabaseArgs{...} }
-type DocumentdbDatabaseMapInput interface {
- pulumi.Input
-
- ToDocumentdbDatabaseMapOutput() DocumentdbDatabaseMapOutput
- ToDocumentdbDatabaseMapOutputWithContext(context.Context) DocumentdbDatabaseMapOutput
-}
-
-type DocumentdbDatabaseMap map[string]DocumentdbDatabaseInput
-
-func (DocumentdbDatabaseMap) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbDatabase)(nil)).Elem()
-}
-
-func (i DocumentdbDatabaseMap) ToDocumentdbDatabaseMapOutput() DocumentdbDatabaseMapOutput {
- return i.ToDocumentdbDatabaseMapOutputWithContext(context.Background())
-}
-
-func (i DocumentdbDatabaseMap) ToDocumentdbDatabaseMapOutputWithContext(ctx context.Context) DocumentdbDatabaseMapOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbDatabaseMapOutput)
-}
-
-type DocumentdbDatabaseOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbDatabaseOutput) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbDatabase)(nil)).Elem()
-}
-
-func (o DocumentdbDatabaseOutput) ToDocumentdbDatabaseOutput() DocumentdbDatabaseOutput {
- return o
-}
-
-func (o DocumentdbDatabaseOutput) ToDocumentdbDatabaseOutputWithContext(ctx context.Context) DocumentdbDatabaseOutput {
- return o
-}
-
-// UUID of the documentdb instance.
-//
-// > **Important:** Updates to `instanceId` will recreate the Database.
-func (o DocumentdbDatabaseOutput) InstanceId() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbDatabase) pulumi.StringOutput { return v.InstanceId }).(pulumi.StringOutput)
-}
-
-// Whether the database is managed or not.
-func (o DocumentdbDatabaseOutput) Managed() pulumi.BoolOutput {
- return o.ApplyT(func(v *DocumentdbDatabase) pulumi.BoolOutput { return v.Managed }).(pulumi.BoolOutput)
-}
-
-// Name of the database (e.g. `my-new-database`).
-func (o DocumentdbDatabaseOutput) Name() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbDatabase) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
-}
-
-// The name of the owner of the database.
-func (o DocumentdbDatabaseOutput) Owner() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbDatabase) pulumi.StringOutput { return v.Owner }).(pulumi.StringOutput)
-}
-
-// The projectId you want to attach the resource to
-func (o DocumentdbDatabaseOutput) ProjectId() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbDatabase) pulumi.StringOutput { return v.ProjectId }).(pulumi.StringOutput)
-}
-
-// `region`) The region in which the resource exists.
-func (o DocumentdbDatabaseOutput) Region() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbDatabase) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput)
-}
-
-// Size in gigabytes of the database.
-func (o DocumentdbDatabaseOutput) Size() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbDatabase) pulumi.StringOutput { return v.Size }).(pulumi.StringOutput)
-}
-
-type DocumentdbDatabaseArrayOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbDatabaseArrayOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbDatabase)(nil)).Elem()
-}
-
-func (o DocumentdbDatabaseArrayOutput) ToDocumentdbDatabaseArrayOutput() DocumentdbDatabaseArrayOutput {
- return o
-}
-
-func (o DocumentdbDatabaseArrayOutput) ToDocumentdbDatabaseArrayOutputWithContext(ctx context.Context) DocumentdbDatabaseArrayOutput {
- return o
-}
-
-func (o DocumentdbDatabaseArrayOutput) Index(i pulumi.IntInput) DocumentdbDatabaseOutput {
- return pulumi.All(o, i).ApplyT(func(vs []interface{}) *DocumentdbDatabase {
- return vs[0].([]*DocumentdbDatabase)[vs[1].(int)]
- }).(DocumentdbDatabaseOutput)
-}
-
-type DocumentdbDatabaseMapOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbDatabaseMapOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbDatabase)(nil)).Elem()
-}
-
-func (o DocumentdbDatabaseMapOutput) ToDocumentdbDatabaseMapOutput() DocumentdbDatabaseMapOutput {
- return o
-}
-
-func (o DocumentdbDatabaseMapOutput) ToDocumentdbDatabaseMapOutputWithContext(ctx context.Context) DocumentdbDatabaseMapOutput {
- return o
-}
-
-func (o DocumentdbDatabaseMapOutput) MapIndex(k pulumi.StringInput) DocumentdbDatabaseOutput {
- return pulumi.All(o, k).ApplyT(func(vs []interface{}) *DocumentdbDatabase {
- return vs[0].(map[string]*DocumentdbDatabase)[vs[1].(string)]
- }).(DocumentdbDatabaseOutput)
-}
-
-func init() {
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbDatabaseInput)(nil)).Elem(), &DocumentdbDatabase{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbDatabaseArrayInput)(nil)).Elem(), DocumentdbDatabaseArray{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbDatabaseMapInput)(nil)).Elem(), DocumentdbDatabaseMap{})
- pulumi.RegisterOutputType(DocumentdbDatabaseOutput{})
- pulumi.RegisterOutputType(DocumentdbDatabaseArrayOutput{})
- pulumi.RegisterOutputType(DocumentdbDatabaseMapOutput{})
-}
diff --git a/sdk/go/scaleway/documentdbInstance.go b/sdk/go/scaleway/documentdbInstance.go
deleted file mode 100644
index b170a478..00000000
--- a/sdk/go/scaleway/documentdbInstance.go
+++ /dev/null
@@ -1,508 +0,0 @@
-// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
-// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
-
-package scaleway
-
-import (
- "context"
- "reflect"
-
- "errors"
- "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
- "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/internal"
-)
-
-// Creates and manages Scaleway Database Instances.
-//
-// ## Example Usage
-//
-// ### Example Basic
-//
-// ```go
-// package main
-//
-// import (
-//
-// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
-// "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
-//
-// )
-//
-// func main() {
-// pulumi.Run(func(ctx *pulumi.Context) error {
-// _, err := scaleway.NewDocumentdbInstance(ctx, "main", &scaleway.DocumentdbInstanceArgs{
-// Name: pulumi.String("test-documentdb-instance-basic"),
-// NodeType: pulumi.String("docdb-play2-pico"),
-// Engine: pulumi.String("FerretDB-1"),
-// UserName: pulumi.String("my_initial_user"),
-// Password: pulumi.String("thiZ_is_v&ry_s3cret"),
-// Tags: pulumi.StringArray{
-// pulumi.String("terraform-test"),
-// pulumi.String("scaleway_documentdb_instance"),
-// pulumi.String("minimal"),
-// },
-// VolumeSizeInGb: pulumi.Int(20),
-// })
-// if err != nil {
-// return err
-// }
-// return nil
-// })
-// }
-//
-// ```
-//
-// ## Import
-//
-// Database Instance can be imported using the `{region}/{id}`, e.g.
-//
-// bash
-//
-// ```sh
-// $ pulumi import scaleway:index/documentdbInstance:DocumentdbInstance db fr-par/11111111-1111-1111-1111-111111111111
-// ```
-type DocumentdbInstance struct {
- pulumi.CustomResourceState
-
- // Database Instance's engine version (e.g. `FerretDB-1`).
- //
- // > **Important:** Updates to `engine` will recreate the Database Instance.
- Engine pulumi.StringOutput `pulumi:"engine"`
- // Enable or disable high availability for the database instance.
- IsHaCluster pulumi.BoolPtrOutput `pulumi:"isHaCluster"`
- // The name of the Database Instance.
- Name pulumi.StringOutput `pulumi:"name"`
- // The type of database instance you want to create (e.g. `docdb-play2-pico`).
- //
- // > **Important:** Updates to `nodeType` will upgrade the Database Instance to the desired `nodeType` without any
- // interruption. Keep in mind that you cannot downgrade a Database Instance.
- NodeType pulumi.StringOutput `pulumi:"nodeType"`
- // Password for the first user of the database instance.
- Password pulumi.StringPtrOutput `pulumi:"password"`
- // `projectId`) The ID of the project the Database
- // Instance is associated with.
- ProjectId pulumi.StringOutput `pulumi:"projectId"`
- // `region`) The region
- // in which the Database Instance should be created.
- Region pulumi.StringOutput `pulumi:"region"`
- // The tags associated with the Database Instance.
- Tags pulumi.StringArrayOutput `pulumi:"tags"`
- // Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).
- //
- // > **Important:** Updates to `isHaCluster` will recreate the Database Instance.
- TelemetryEnabled pulumi.BoolPtrOutput `pulumi:"telemetryEnabled"`
- // Identifier for the first user of the database instance.
- //
- // > **Important:** Updates to `userName` will recreate the Database Instance.
- UserName pulumi.StringPtrOutput `pulumi:"userName"`
- // Volume size (in GB) when `volumeType` is set to `bssd`.
- VolumeSizeInGb pulumi.IntOutput `pulumi:"volumeSizeInGb"`
- // Type of volume where data are stored (`bssd` or `lssd`).
- VolumeType pulumi.StringPtrOutput `pulumi:"volumeType"`
-}
-
-// NewDocumentdbInstance registers a new resource with the given unique name, arguments, and options.
-func NewDocumentdbInstance(ctx *pulumi.Context,
- name string, args *DocumentdbInstanceArgs, opts ...pulumi.ResourceOption) (*DocumentdbInstance, error) {
- if args == nil {
- return nil, errors.New("missing one or more required arguments")
- }
-
- if args.Engine == nil {
- return nil, errors.New("invalid value for required argument 'Engine'")
- }
- if args.NodeType == nil {
- return nil, errors.New("invalid value for required argument 'NodeType'")
- }
- if args.Password != nil {
- args.Password = pulumi.ToSecret(args.Password).(pulumi.StringPtrInput)
- }
- secrets := pulumi.AdditionalSecretOutputs([]string{
- "password",
- })
- opts = append(opts, secrets)
- opts = internal.PkgResourceDefaultOpts(opts)
- var resource DocumentdbInstance
- err := ctx.RegisterResource("scaleway:index/documentdbInstance:DocumentdbInstance", name, args, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// GetDocumentdbInstance gets an existing DocumentdbInstance resource's state with the given name, ID, and optional
-// state properties that are used to uniquely qualify the lookup (nil if not required).
-func GetDocumentdbInstance(ctx *pulumi.Context,
- name string, id pulumi.IDInput, state *DocumentdbInstanceState, opts ...pulumi.ResourceOption) (*DocumentdbInstance, error) {
- var resource DocumentdbInstance
- err := ctx.ReadResource("scaleway:index/documentdbInstance:DocumentdbInstance", name, id, state, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// Input properties used for looking up and filtering DocumentdbInstance resources.
-type documentdbInstanceState struct {
- // Database Instance's engine version (e.g. `FerretDB-1`).
- //
- // > **Important:** Updates to `engine` will recreate the Database Instance.
- Engine *string `pulumi:"engine"`
- // Enable or disable high availability for the database instance.
- IsHaCluster *bool `pulumi:"isHaCluster"`
- // The name of the Database Instance.
- Name *string `pulumi:"name"`
- // The type of database instance you want to create (e.g. `docdb-play2-pico`).
- //
- // > **Important:** Updates to `nodeType` will upgrade the Database Instance to the desired `nodeType` without any
- // interruption. Keep in mind that you cannot downgrade a Database Instance.
- NodeType *string `pulumi:"nodeType"`
- // Password for the first user of the database instance.
- Password *string `pulumi:"password"`
- // `projectId`) The ID of the project the Database
- // Instance is associated with.
- ProjectId *string `pulumi:"projectId"`
- // `region`) The region
- // in which the Database Instance should be created.
- Region *string `pulumi:"region"`
- // The tags associated with the Database Instance.
- Tags []string `pulumi:"tags"`
- // Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).
- //
- // > **Important:** Updates to `isHaCluster` will recreate the Database Instance.
- TelemetryEnabled *bool `pulumi:"telemetryEnabled"`
- // Identifier for the first user of the database instance.
- //
- // > **Important:** Updates to `userName` will recreate the Database Instance.
- UserName *string `pulumi:"userName"`
- // Volume size (in GB) when `volumeType` is set to `bssd`.
- VolumeSizeInGb *int `pulumi:"volumeSizeInGb"`
- // Type of volume where data are stored (`bssd` or `lssd`).
- VolumeType *string `pulumi:"volumeType"`
-}
-
-type DocumentdbInstanceState struct {
- // Database Instance's engine version (e.g. `FerretDB-1`).
- //
- // > **Important:** Updates to `engine` will recreate the Database Instance.
- Engine pulumi.StringPtrInput
- // Enable or disable high availability for the database instance.
- IsHaCluster pulumi.BoolPtrInput
- // The name of the Database Instance.
- Name pulumi.StringPtrInput
- // The type of database instance you want to create (e.g. `docdb-play2-pico`).
- //
- // > **Important:** Updates to `nodeType` will upgrade the Database Instance to the desired `nodeType` without any
- // interruption. Keep in mind that you cannot downgrade a Database Instance.
- NodeType pulumi.StringPtrInput
- // Password for the first user of the database instance.
- Password pulumi.StringPtrInput
- // `projectId`) The ID of the project the Database
- // Instance is associated with.
- ProjectId pulumi.StringPtrInput
- // `region`) The region
- // in which the Database Instance should be created.
- Region pulumi.StringPtrInput
- // The tags associated with the Database Instance.
- Tags pulumi.StringArrayInput
- // Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).
- //
- // > **Important:** Updates to `isHaCluster` will recreate the Database Instance.
- TelemetryEnabled pulumi.BoolPtrInput
- // Identifier for the first user of the database instance.
- //
- // > **Important:** Updates to `userName` will recreate the Database Instance.
- UserName pulumi.StringPtrInput
- // Volume size (in GB) when `volumeType` is set to `bssd`.
- VolumeSizeInGb pulumi.IntPtrInput
- // Type of volume where data are stored (`bssd` or `lssd`).
- VolumeType pulumi.StringPtrInput
-}
-
-func (DocumentdbInstanceState) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbInstanceState)(nil)).Elem()
-}
-
-type documentdbInstanceArgs struct {
- // Database Instance's engine version (e.g. `FerretDB-1`).
- //
- // > **Important:** Updates to `engine` will recreate the Database Instance.
- Engine string `pulumi:"engine"`
- // Enable or disable high availability for the database instance.
- IsHaCluster *bool `pulumi:"isHaCluster"`
- // The name of the Database Instance.
- Name *string `pulumi:"name"`
- // The type of database instance you want to create (e.g. `docdb-play2-pico`).
- //
- // > **Important:** Updates to `nodeType` will upgrade the Database Instance to the desired `nodeType` without any
- // interruption. Keep in mind that you cannot downgrade a Database Instance.
- NodeType string `pulumi:"nodeType"`
- // Password for the first user of the database instance.
- Password *string `pulumi:"password"`
- // `projectId`) The ID of the project the Database
- // Instance is associated with.
- ProjectId *string `pulumi:"projectId"`
- // `region`) The region
- // in which the Database Instance should be created.
- Region *string `pulumi:"region"`
- // The tags associated with the Database Instance.
- Tags []string `pulumi:"tags"`
- // Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).
- //
- // > **Important:** Updates to `isHaCluster` will recreate the Database Instance.
- TelemetryEnabled *bool `pulumi:"telemetryEnabled"`
- // Identifier for the first user of the database instance.
- //
- // > **Important:** Updates to `userName` will recreate the Database Instance.
- UserName *string `pulumi:"userName"`
- // Volume size (in GB) when `volumeType` is set to `bssd`.
- VolumeSizeInGb *int `pulumi:"volumeSizeInGb"`
- // Type of volume where data are stored (`bssd` or `lssd`).
- VolumeType *string `pulumi:"volumeType"`
-}
-
-// The set of arguments for constructing a DocumentdbInstance resource.
-type DocumentdbInstanceArgs struct {
- // Database Instance's engine version (e.g. `FerretDB-1`).
- //
- // > **Important:** Updates to `engine` will recreate the Database Instance.
- Engine pulumi.StringInput
- // Enable or disable high availability for the database instance.
- IsHaCluster pulumi.BoolPtrInput
- // The name of the Database Instance.
- Name pulumi.StringPtrInput
- // The type of database instance you want to create (e.g. `docdb-play2-pico`).
- //
- // > **Important:** Updates to `nodeType` will upgrade the Database Instance to the desired `nodeType` without any
- // interruption. Keep in mind that you cannot downgrade a Database Instance.
- NodeType pulumi.StringInput
- // Password for the first user of the database instance.
- Password pulumi.StringPtrInput
- // `projectId`) The ID of the project the Database
- // Instance is associated with.
- ProjectId pulumi.StringPtrInput
- // `region`) The region
- // in which the Database Instance should be created.
- Region pulumi.StringPtrInput
- // The tags associated with the Database Instance.
- Tags pulumi.StringArrayInput
- // Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).
- //
- // > **Important:** Updates to `isHaCluster` will recreate the Database Instance.
- TelemetryEnabled pulumi.BoolPtrInput
- // Identifier for the first user of the database instance.
- //
- // > **Important:** Updates to `userName` will recreate the Database Instance.
- UserName pulumi.StringPtrInput
- // Volume size (in GB) when `volumeType` is set to `bssd`.
- VolumeSizeInGb pulumi.IntPtrInput
- // Type of volume where data are stored (`bssd` or `lssd`).
- VolumeType pulumi.StringPtrInput
-}
-
-func (DocumentdbInstanceArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbInstanceArgs)(nil)).Elem()
-}
-
-type DocumentdbInstanceInput interface {
- pulumi.Input
-
- ToDocumentdbInstanceOutput() DocumentdbInstanceOutput
- ToDocumentdbInstanceOutputWithContext(ctx context.Context) DocumentdbInstanceOutput
-}
-
-func (*DocumentdbInstance) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbInstance)(nil)).Elem()
-}
-
-func (i *DocumentdbInstance) ToDocumentdbInstanceOutput() DocumentdbInstanceOutput {
- return i.ToDocumentdbInstanceOutputWithContext(context.Background())
-}
-
-func (i *DocumentdbInstance) ToDocumentdbInstanceOutputWithContext(ctx context.Context) DocumentdbInstanceOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbInstanceOutput)
-}
-
-// DocumentdbInstanceArrayInput is an input type that accepts DocumentdbInstanceArray and DocumentdbInstanceArrayOutput values.
-// You can construct a concrete instance of `DocumentdbInstanceArrayInput` via:
-//
-// DocumentdbInstanceArray{ DocumentdbInstanceArgs{...} }
-type DocumentdbInstanceArrayInput interface {
- pulumi.Input
-
- ToDocumentdbInstanceArrayOutput() DocumentdbInstanceArrayOutput
- ToDocumentdbInstanceArrayOutputWithContext(context.Context) DocumentdbInstanceArrayOutput
-}
-
-type DocumentdbInstanceArray []DocumentdbInstanceInput
-
-func (DocumentdbInstanceArray) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbInstance)(nil)).Elem()
-}
-
-func (i DocumentdbInstanceArray) ToDocumentdbInstanceArrayOutput() DocumentdbInstanceArrayOutput {
- return i.ToDocumentdbInstanceArrayOutputWithContext(context.Background())
-}
-
-func (i DocumentdbInstanceArray) ToDocumentdbInstanceArrayOutputWithContext(ctx context.Context) DocumentdbInstanceArrayOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbInstanceArrayOutput)
-}
-
-// DocumentdbInstanceMapInput is an input type that accepts DocumentdbInstanceMap and DocumentdbInstanceMapOutput values.
-// You can construct a concrete instance of `DocumentdbInstanceMapInput` via:
-//
-// DocumentdbInstanceMap{ "key": DocumentdbInstanceArgs{...} }
-type DocumentdbInstanceMapInput interface {
- pulumi.Input
-
- ToDocumentdbInstanceMapOutput() DocumentdbInstanceMapOutput
- ToDocumentdbInstanceMapOutputWithContext(context.Context) DocumentdbInstanceMapOutput
-}
-
-type DocumentdbInstanceMap map[string]DocumentdbInstanceInput
-
-func (DocumentdbInstanceMap) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbInstance)(nil)).Elem()
-}
-
-func (i DocumentdbInstanceMap) ToDocumentdbInstanceMapOutput() DocumentdbInstanceMapOutput {
- return i.ToDocumentdbInstanceMapOutputWithContext(context.Background())
-}
-
-func (i DocumentdbInstanceMap) ToDocumentdbInstanceMapOutputWithContext(ctx context.Context) DocumentdbInstanceMapOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbInstanceMapOutput)
-}
-
-type DocumentdbInstanceOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbInstanceOutput) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbInstance)(nil)).Elem()
-}
-
-func (o DocumentdbInstanceOutput) ToDocumentdbInstanceOutput() DocumentdbInstanceOutput {
- return o
-}
-
-func (o DocumentdbInstanceOutput) ToDocumentdbInstanceOutputWithContext(ctx context.Context) DocumentdbInstanceOutput {
- return o
-}
-
-// Database Instance's engine version (e.g. `FerretDB-1`).
-//
-// > **Important:** Updates to `engine` will recreate the Database Instance.
-func (o DocumentdbInstanceOutput) Engine() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.StringOutput { return v.Engine }).(pulumi.StringOutput)
-}
-
-// Enable or disable high availability for the database instance.
-func (o DocumentdbInstanceOutput) IsHaCluster() pulumi.BoolPtrOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.BoolPtrOutput { return v.IsHaCluster }).(pulumi.BoolPtrOutput)
-}
-
-// The name of the Database Instance.
-func (o DocumentdbInstanceOutput) Name() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
-}
-
-// The type of database instance you want to create (e.g. `docdb-play2-pico`).
-//
-// > **Important:** Updates to `nodeType` will upgrade the Database Instance to the desired `nodeType` without any
-// interruption. Keep in mind that you cannot downgrade a Database Instance.
-func (o DocumentdbInstanceOutput) NodeType() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.StringOutput { return v.NodeType }).(pulumi.StringOutput)
-}
-
-// Password for the first user of the database instance.
-func (o DocumentdbInstanceOutput) Password() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.StringPtrOutput { return v.Password }).(pulumi.StringPtrOutput)
-}
-
-// `projectId`) The ID of the project the Database
-// Instance is associated with.
-func (o DocumentdbInstanceOutput) ProjectId() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.StringOutput { return v.ProjectId }).(pulumi.StringOutput)
-}
-
-// `region`) The region
-// in which the Database Instance should be created.
-func (o DocumentdbInstanceOutput) Region() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput)
-}
-
-// The tags associated with the Database Instance.
-func (o DocumentdbInstanceOutput) Tags() pulumi.StringArrayOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.StringArrayOutput { return v.Tags }).(pulumi.StringArrayOutput)
-}
-
-// Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).
-//
-// > **Important:** Updates to `isHaCluster` will recreate the Database Instance.
-func (o DocumentdbInstanceOutput) TelemetryEnabled() pulumi.BoolPtrOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.BoolPtrOutput { return v.TelemetryEnabled }).(pulumi.BoolPtrOutput)
-}
-
-// Identifier for the first user of the database instance.
-//
-// > **Important:** Updates to `userName` will recreate the Database Instance.
-func (o DocumentdbInstanceOutput) UserName() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.StringPtrOutput { return v.UserName }).(pulumi.StringPtrOutput)
-}
-
-// Volume size (in GB) when `volumeType` is set to `bssd`.
-func (o DocumentdbInstanceOutput) VolumeSizeInGb() pulumi.IntOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.IntOutput { return v.VolumeSizeInGb }).(pulumi.IntOutput)
-}
-
-// Type of volume where data are stored (`bssd` or `lssd`).
-func (o DocumentdbInstanceOutput) VolumeType() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbInstance) pulumi.StringPtrOutput { return v.VolumeType }).(pulumi.StringPtrOutput)
-}
-
-type DocumentdbInstanceArrayOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbInstanceArrayOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbInstance)(nil)).Elem()
-}
-
-func (o DocumentdbInstanceArrayOutput) ToDocumentdbInstanceArrayOutput() DocumentdbInstanceArrayOutput {
- return o
-}
-
-func (o DocumentdbInstanceArrayOutput) ToDocumentdbInstanceArrayOutputWithContext(ctx context.Context) DocumentdbInstanceArrayOutput {
- return o
-}
-
-func (o DocumentdbInstanceArrayOutput) Index(i pulumi.IntInput) DocumentdbInstanceOutput {
- return pulumi.All(o, i).ApplyT(func(vs []interface{}) *DocumentdbInstance {
- return vs[0].([]*DocumentdbInstance)[vs[1].(int)]
- }).(DocumentdbInstanceOutput)
-}
-
-type DocumentdbInstanceMapOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbInstanceMapOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbInstance)(nil)).Elem()
-}
-
-func (o DocumentdbInstanceMapOutput) ToDocumentdbInstanceMapOutput() DocumentdbInstanceMapOutput {
- return o
-}
-
-func (o DocumentdbInstanceMapOutput) ToDocumentdbInstanceMapOutputWithContext(ctx context.Context) DocumentdbInstanceMapOutput {
- return o
-}
-
-func (o DocumentdbInstanceMapOutput) MapIndex(k pulumi.StringInput) DocumentdbInstanceOutput {
- return pulumi.All(o, k).ApplyT(func(vs []interface{}) *DocumentdbInstance {
- return vs[0].(map[string]*DocumentdbInstance)[vs[1].(string)]
- }).(DocumentdbInstanceOutput)
-}
-
-func init() {
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbInstanceInput)(nil)).Elem(), &DocumentdbInstance{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbInstanceArrayInput)(nil)).Elem(), DocumentdbInstanceArray{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbInstanceMapInput)(nil)).Elem(), DocumentdbInstanceMap{})
- pulumi.RegisterOutputType(DocumentdbInstanceOutput{})
- pulumi.RegisterOutputType(DocumentdbInstanceArrayOutput{})
- pulumi.RegisterOutputType(DocumentdbInstanceMapOutput{})
-}
diff --git a/sdk/go/scaleway/documentdbPrivateNetworkEndpoint.go b/sdk/go/scaleway/documentdbPrivateNetworkEndpoint.go
deleted file mode 100644
index 94de1803..00000000
--- a/sdk/go/scaleway/documentdbPrivateNetworkEndpoint.go
+++ /dev/null
@@ -1,336 +0,0 @@
-// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
-// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
-
-package scaleway
-
-import (
- "context"
- "reflect"
-
- "errors"
- "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
- "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/internal"
-)
-
-// Creates and manages Scaleway Database Private Network Endpoint.
-//
-// ## Example Usage
-//
-// ### Example Basic
-//
-// ```go
-// package main
-//
-// import (
-//
-// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
-// "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
-//
-// )
-//
-// func main() {
-// pulumi.Run(func(ctx *pulumi.Context) error {
-// pn, err := scaleway.NewVpcPrivateNetwork(ctx, "pn", &scaleway.VpcPrivateNetworkArgs{
-// Name: pulumi.String("my_private_network"),
-// })
-// if err != nil {
-// return err
-// }
-// instance, err := scaleway.NewDocumentdbInstance(ctx, "instance", &scaleway.DocumentdbInstanceArgs{
-// Name: pulumi.String("test-document_db-basic"),
-// NodeType: pulumi.String("docdb-play2-pico"),
-// Engine: pulumi.String("FerretDB-1"),
-// UserName: pulumi.String("my_initial_user"),
-// Password: pulumi.String("thiZ_is_v&ry_s3cret"),
-// VolumeSizeInGb: pulumi.Int(20),
-// })
-// if err != nil {
-// return err
-// }
-// _, err = scaleway.NewDocumentdbPrivateNetworkEndpoint(ctx, "main", &scaleway.DocumentdbPrivateNetworkEndpointArgs{
-// InstanceId: instance.ID(),
-// PrivateNetwork: &scaleway.DocumentdbPrivateNetworkEndpointPrivateNetworkArgs{
-// IpNet: pulumi.String("172.16.32.3/22"),
-// Id: pn.ID(),
-// },
-// }, pulumi.DependsOn([]pulumi.Resource{
-// pn,
-// }))
-// if err != nil {
-// return err
-// }
-// return nil
-// })
-// }
-//
-// ```
-//
-// ## Import
-//
-// Database Instance Endpoint can be imported using the `{region}/{endpoint_id}`, e.g.
-//
-// bash
-//
-// ```sh
-// $ pulumi import scaleway:index/documentdbPrivateNetworkEndpoint:DocumentdbPrivateNetworkEndpoint end fr-par/11111111-1111-1111-1111-111111111111
-// ```
-type DocumentdbPrivateNetworkEndpoint struct {
- pulumi.CustomResourceState
-
- // UUID of the documentdb instance.
- InstanceId pulumi.StringOutput `pulumi:"instanceId"`
- // The private network specs details. This is a list with maximum one element and supports the following attributes:
- PrivateNetwork DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput `pulumi:"privateNetwork"`
- // The region of the endpoint.
- //
- // > **NOTE:** Please calculate your host IP.
- // using cirhost. Otherwise, lets IPAM service
- // handle the host IP on the network.
- Region pulumi.StringOutput `pulumi:"region"`
-}
-
-// NewDocumentdbPrivateNetworkEndpoint registers a new resource with the given unique name, arguments, and options.
-func NewDocumentdbPrivateNetworkEndpoint(ctx *pulumi.Context,
- name string, args *DocumentdbPrivateNetworkEndpointArgs, opts ...pulumi.ResourceOption) (*DocumentdbPrivateNetworkEndpoint, error) {
- if args == nil {
- return nil, errors.New("missing one or more required arguments")
- }
-
- if args.InstanceId == nil {
- return nil, errors.New("invalid value for required argument 'InstanceId'")
- }
- opts = internal.PkgResourceDefaultOpts(opts)
- var resource DocumentdbPrivateNetworkEndpoint
- err := ctx.RegisterResource("scaleway:index/documentdbPrivateNetworkEndpoint:DocumentdbPrivateNetworkEndpoint", name, args, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// GetDocumentdbPrivateNetworkEndpoint gets an existing DocumentdbPrivateNetworkEndpoint resource's state with the given name, ID, and optional
-// state properties that are used to uniquely qualify the lookup (nil if not required).
-func GetDocumentdbPrivateNetworkEndpoint(ctx *pulumi.Context,
- name string, id pulumi.IDInput, state *DocumentdbPrivateNetworkEndpointState, opts ...pulumi.ResourceOption) (*DocumentdbPrivateNetworkEndpoint, error) {
- var resource DocumentdbPrivateNetworkEndpoint
- err := ctx.ReadResource("scaleway:index/documentdbPrivateNetworkEndpoint:DocumentdbPrivateNetworkEndpoint", name, id, state, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// Input properties used for looking up and filtering DocumentdbPrivateNetworkEndpoint resources.
-type documentdbPrivateNetworkEndpointState struct {
- // UUID of the documentdb instance.
- InstanceId *string `pulumi:"instanceId"`
- // The private network specs details. This is a list with maximum one element and supports the following attributes:
- PrivateNetwork *DocumentdbPrivateNetworkEndpointPrivateNetwork `pulumi:"privateNetwork"`
- // The region of the endpoint.
- //
- // > **NOTE:** Please calculate your host IP.
- // using cirhost. Otherwise, lets IPAM service
- // handle the host IP on the network.
- Region *string `pulumi:"region"`
-}
-
-type DocumentdbPrivateNetworkEndpointState struct {
- // UUID of the documentdb instance.
- InstanceId pulumi.StringPtrInput
- // The private network specs details. This is a list with maximum one element and supports the following attributes:
- PrivateNetwork DocumentdbPrivateNetworkEndpointPrivateNetworkPtrInput
- // The region of the endpoint.
- //
- // > **NOTE:** Please calculate your host IP.
- // using cirhost. Otherwise, lets IPAM service
- // handle the host IP on the network.
- Region pulumi.StringPtrInput
-}
-
-func (DocumentdbPrivateNetworkEndpointState) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbPrivateNetworkEndpointState)(nil)).Elem()
-}
-
-type documentdbPrivateNetworkEndpointArgs struct {
- // UUID of the documentdb instance.
- InstanceId string `pulumi:"instanceId"`
- // The private network specs details. This is a list with maximum one element and supports the following attributes:
- PrivateNetwork *DocumentdbPrivateNetworkEndpointPrivateNetwork `pulumi:"privateNetwork"`
- // The region of the endpoint.
- //
- // > **NOTE:** Please calculate your host IP.
- // using cirhost. Otherwise, lets IPAM service
- // handle the host IP on the network.
- Region *string `pulumi:"region"`
-}
-
-// The set of arguments for constructing a DocumentdbPrivateNetworkEndpoint resource.
-type DocumentdbPrivateNetworkEndpointArgs struct {
- // UUID of the documentdb instance.
- InstanceId pulumi.StringInput
- // The private network specs details. This is a list with maximum one element and supports the following attributes:
- PrivateNetwork DocumentdbPrivateNetworkEndpointPrivateNetworkPtrInput
- // The region of the endpoint.
- //
- // > **NOTE:** Please calculate your host IP.
- // using cirhost. Otherwise, lets IPAM service
- // handle the host IP on the network.
- Region pulumi.StringPtrInput
-}
-
-func (DocumentdbPrivateNetworkEndpointArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbPrivateNetworkEndpointArgs)(nil)).Elem()
-}
-
-type DocumentdbPrivateNetworkEndpointInput interface {
- pulumi.Input
-
- ToDocumentdbPrivateNetworkEndpointOutput() DocumentdbPrivateNetworkEndpointOutput
- ToDocumentdbPrivateNetworkEndpointOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointOutput
-}
-
-func (*DocumentdbPrivateNetworkEndpoint) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbPrivateNetworkEndpoint)(nil)).Elem()
-}
-
-func (i *DocumentdbPrivateNetworkEndpoint) ToDocumentdbPrivateNetworkEndpointOutput() DocumentdbPrivateNetworkEndpointOutput {
- return i.ToDocumentdbPrivateNetworkEndpointOutputWithContext(context.Background())
-}
-
-func (i *DocumentdbPrivateNetworkEndpoint) ToDocumentdbPrivateNetworkEndpointOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbPrivateNetworkEndpointOutput)
-}
-
-// DocumentdbPrivateNetworkEndpointArrayInput is an input type that accepts DocumentdbPrivateNetworkEndpointArray and DocumentdbPrivateNetworkEndpointArrayOutput values.
-// You can construct a concrete instance of `DocumentdbPrivateNetworkEndpointArrayInput` via:
-//
-// DocumentdbPrivateNetworkEndpointArray{ DocumentdbPrivateNetworkEndpointArgs{...} }
-type DocumentdbPrivateNetworkEndpointArrayInput interface {
- pulumi.Input
-
- ToDocumentdbPrivateNetworkEndpointArrayOutput() DocumentdbPrivateNetworkEndpointArrayOutput
- ToDocumentdbPrivateNetworkEndpointArrayOutputWithContext(context.Context) DocumentdbPrivateNetworkEndpointArrayOutput
-}
-
-type DocumentdbPrivateNetworkEndpointArray []DocumentdbPrivateNetworkEndpointInput
-
-func (DocumentdbPrivateNetworkEndpointArray) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbPrivateNetworkEndpoint)(nil)).Elem()
-}
-
-func (i DocumentdbPrivateNetworkEndpointArray) ToDocumentdbPrivateNetworkEndpointArrayOutput() DocumentdbPrivateNetworkEndpointArrayOutput {
- return i.ToDocumentdbPrivateNetworkEndpointArrayOutputWithContext(context.Background())
-}
-
-func (i DocumentdbPrivateNetworkEndpointArray) ToDocumentdbPrivateNetworkEndpointArrayOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointArrayOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbPrivateNetworkEndpointArrayOutput)
-}
-
-// DocumentdbPrivateNetworkEndpointMapInput is an input type that accepts DocumentdbPrivateNetworkEndpointMap and DocumentdbPrivateNetworkEndpointMapOutput values.
-// You can construct a concrete instance of `DocumentdbPrivateNetworkEndpointMapInput` via:
-//
-// DocumentdbPrivateNetworkEndpointMap{ "key": DocumentdbPrivateNetworkEndpointArgs{...} }
-type DocumentdbPrivateNetworkEndpointMapInput interface {
- pulumi.Input
-
- ToDocumentdbPrivateNetworkEndpointMapOutput() DocumentdbPrivateNetworkEndpointMapOutput
- ToDocumentdbPrivateNetworkEndpointMapOutputWithContext(context.Context) DocumentdbPrivateNetworkEndpointMapOutput
-}
-
-type DocumentdbPrivateNetworkEndpointMap map[string]DocumentdbPrivateNetworkEndpointInput
-
-func (DocumentdbPrivateNetworkEndpointMap) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbPrivateNetworkEndpoint)(nil)).Elem()
-}
-
-func (i DocumentdbPrivateNetworkEndpointMap) ToDocumentdbPrivateNetworkEndpointMapOutput() DocumentdbPrivateNetworkEndpointMapOutput {
- return i.ToDocumentdbPrivateNetworkEndpointMapOutputWithContext(context.Background())
-}
-
-func (i DocumentdbPrivateNetworkEndpointMap) ToDocumentdbPrivateNetworkEndpointMapOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointMapOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbPrivateNetworkEndpointMapOutput)
-}
-
-type DocumentdbPrivateNetworkEndpointOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbPrivateNetworkEndpointOutput) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbPrivateNetworkEndpoint)(nil)).Elem()
-}
-
-func (o DocumentdbPrivateNetworkEndpointOutput) ToDocumentdbPrivateNetworkEndpointOutput() DocumentdbPrivateNetworkEndpointOutput {
- return o
-}
-
-func (o DocumentdbPrivateNetworkEndpointOutput) ToDocumentdbPrivateNetworkEndpointOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointOutput {
- return o
-}
-
-// UUID of the documentdb instance.
-func (o DocumentdbPrivateNetworkEndpointOutput) InstanceId() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpoint) pulumi.StringOutput { return v.InstanceId }).(pulumi.StringOutput)
-}
-
-// The private network specs details. This is a list with maximum one element and supports the following attributes:
-func (o DocumentdbPrivateNetworkEndpointOutput) PrivateNetwork() DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpoint) DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput {
- return v.PrivateNetwork
- }).(DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput)
-}
-
-// The region of the endpoint.
-//
-// > **NOTE:** Please calculate your host IP.
-// using cirhost. Otherwise, lets IPAM service
-// handle the host IP on the network.
-func (o DocumentdbPrivateNetworkEndpointOutput) Region() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpoint) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput)
-}
-
-type DocumentdbPrivateNetworkEndpointArrayOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbPrivateNetworkEndpointArrayOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbPrivateNetworkEndpoint)(nil)).Elem()
-}
-
-func (o DocumentdbPrivateNetworkEndpointArrayOutput) ToDocumentdbPrivateNetworkEndpointArrayOutput() DocumentdbPrivateNetworkEndpointArrayOutput {
- return o
-}
-
-func (o DocumentdbPrivateNetworkEndpointArrayOutput) ToDocumentdbPrivateNetworkEndpointArrayOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointArrayOutput {
- return o
-}
-
-func (o DocumentdbPrivateNetworkEndpointArrayOutput) Index(i pulumi.IntInput) DocumentdbPrivateNetworkEndpointOutput {
- return pulumi.All(o, i).ApplyT(func(vs []interface{}) *DocumentdbPrivateNetworkEndpoint {
- return vs[0].([]*DocumentdbPrivateNetworkEndpoint)[vs[1].(int)]
- }).(DocumentdbPrivateNetworkEndpointOutput)
-}
-
-type DocumentdbPrivateNetworkEndpointMapOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbPrivateNetworkEndpointMapOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbPrivateNetworkEndpoint)(nil)).Elem()
-}
-
-func (o DocumentdbPrivateNetworkEndpointMapOutput) ToDocumentdbPrivateNetworkEndpointMapOutput() DocumentdbPrivateNetworkEndpointMapOutput {
- return o
-}
-
-func (o DocumentdbPrivateNetworkEndpointMapOutput) ToDocumentdbPrivateNetworkEndpointMapOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointMapOutput {
- return o
-}
-
-func (o DocumentdbPrivateNetworkEndpointMapOutput) MapIndex(k pulumi.StringInput) DocumentdbPrivateNetworkEndpointOutput {
- return pulumi.All(o, k).ApplyT(func(vs []interface{}) *DocumentdbPrivateNetworkEndpoint {
- return vs[0].(map[string]*DocumentdbPrivateNetworkEndpoint)[vs[1].(string)]
- }).(DocumentdbPrivateNetworkEndpointOutput)
-}
-
-func init() {
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbPrivateNetworkEndpointInput)(nil)).Elem(), &DocumentdbPrivateNetworkEndpoint{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbPrivateNetworkEndpointArrayInput)(nil)).Elem(), DocumentdbPrivateNetworkEndpointArray{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbPrivateNetworkEndpointMapInput)(nil)).Elem(), DocumentdbPrivateNetworkEndpointMap{})
- pulumi.RegisterOutputType(DocumentdbPrivateNetworkEndpointOutput{})
- pulumi.RegisterOutputType(DocumentdbPrivateNetworkEndpointArrayOutput{})
- pulumi.RegisterOutputType(DocumentdbPrivateNetworkEndpointMapOutput{})
-}
diff --git a/sdk/go/scaleway/documentdbPrivilege.go b/sdk/go/scaleway/documentdbPrivilege.go
deleted file mode 100644
index 7a5e1802..00000000
--- a/sdk/go/scaleway/documentdbPrivilege.go
+++ /dev/null
@@ -1,338 +0,0 @@
-// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
-// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
-
-package scaleway
-
-import (
- "context"
- "reflect"
-
- "errors"
- "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
- "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/internal"
-)
-
-// Create and manage Scaleway DocumentDB database privilege.
-//
-// ## Example Usage
-//
-// ```go
-// package main
-//
-// import (
-//
-// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
-// "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
-//
-// )
-//
-// func main() {
-// pulumi.Run(func(ctx *pulumi.Context) error {
-// instance, err := scaleway.NewDocumentdbInstance(ctx, "instance", &scaleway.DocumentdbInstanceArgs{
-// Name: pulumi.String("test-document_db-basic"),
-// NodeType: pulumi.String("docdb-play2-pico"),
-// Engine: pulumi.String("FerretDB-1"),
-// UserName: pulumi.String("my_initial_user"),
-// Password: pulumi.String("thiZ_is_v&ry_s3cret"),
-// VolumeSizeInGb: pulumi.Int(20),
-// })
-// if err != nil {
-// return err
-// }
-// _, err = scaleway.NewDocumentdbPrivilege(ctx, "main", &scaleway.DocumentdbPrivilegeArgs{
-// InstanceId: instance.ID(),
-// UserName: pulumi.String("my-db-user"),
-// DatabaseName: pulumi.String("my-db-name"),
-// Permission: pulumi.String("all"),
-// })
-// if err != nil {
-// return err
-// }
-// return nil
-// })
-// }
-//
-// ```
-//
-// ## Import
-//
-// The user privileges can be imported using the `{region}/{instance_id}/{database_name}/{user_name}`, e.g.
-//
-// bash
-//
-// ```sh
-// $ pulumi import scaleway:index/documentdbPrivilege:DocumentdbPrivilege o fr-par/11111111-1111-1111-1111-111111111111/database_name/foo
-// ```
-type DocumentdbPrivilege struct {
- pulumi.CustomResourceState
-
- // Name of the database (e.g. `my-db-name`).
- DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
- // UUID of the rdb instance.
- InstanceId pulumi.StringOutput `pulumi:"instanceId"`
- // Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.
- Permission pulumi.StringOutput `pulumi:"permission"`
- // `region`) The region in which the resource exists.
- Region pulumi.StringOutput `pulumi:"region"`
- // Name of the user (e.g. `my-db-user`).
- UserName pulumi.StringOutput `pulumi:"userName"`
-}
-
-// NewDocumentdbPrivilege registers a new resource with the given unique name, arguments, and options.
-func NewDocumentdbPrivilege(ctx *pulumi.Context,
- name string, args *DocumentdbPrivilegeArgs, opts ...pulumi.ResourceOption) (*DocumentdbPrivilege, error) {
- if args == nil {
- return nil, errors.New("missing one or more required arguments")
- }
-
- if args.DatabaseName == nil {
- return nil, errors.New("invalid value for required argument 'DatabaseName'")
- }
- if args.InstanceId == nil {
- return nil, errors.New("invalid value for required argument 'InstanceId'")
- }
- if args.Permission == nil {
- return nil, errors.New("invalid value for required argument 'Permission'")
- }
- if args.UserName == nil {
- return nil, errors.New("invalid value for required argument 'UserName'")
- }
- opts = internal.PkgResourceDefaultOpts(opts)
- var resource DocumentdbPrivilege
- err := ctx.RegisterResource("scaleway:index/documentdbPrivilege:DocumentdbPrivilege", name, args, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// GetDocumentdbPrivilege gets an existing DocumentdbPrivilege resource's state with the given name, ID, and optional
-// state properties that are used to uniquely qualify the lookup (nil if not required).
-func GetDocumentdbPrivilege(ctx *pulumi.Context,
- name string, id pulumi.IDInput, state *DocumentdbPrivilegeState, opts ...pulumi.ResourceOption) (*DocumentdbPrivilege, error) {
- var resource DocumentdbPrivilege
- err := ctx.ReadResource("scaleway:index/documentdbPrivilege:DocumentdbPrivilege", name, id, state, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// Input properties used for looking up and filtering DocumentdbPrivilege resources.
-type documentdbPrivilegeState struct {
- // Name of the database (e.g. `my-db-name`).
- DatabaseName *string `pulumi:"databaseName"`
- // UUID of the rdb instance.
- InstanceId *string `pulumi:"instanceId"`
- // Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.
- Permission *string `pulumi:"permission"`
- // `region`) The region in which the resource exists.
- Region *string `pulumi:"region"`
- // Name of the user (e.g. `my-db-user`).
- UserName *string `pulumi:"userName"`
-}
-
-type DocumentdbPrivilegeState struct {
- // Name of the database (e.g. `my-db-name`).
- DatabaseName pulumi.StringPtrInput
- // UUID of the rdb instance.
- InstanceId pulumi.StringPtrInput
- // Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.
- Permission pulumi.StringPtrInput
- // `region`) The region in which the resource exists.
- Region pulumi.StringPtrInput
- // Name of the user (e.g. `my-db-user`).
- UserName pulumi.StringPtrInput
-}
-
-func (DocumentdbPrivilegeState) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbPrivilegeState)(nil)).Elem()
-}
-
-type documentdbPrivilegeArgs struct {
- // Name of the database (e.g. `my-db-name`).
- DatabaseName string `pulumi:"databaseName"`
- // UUID of the rdb instance.
- InstanceId string `pulumi:"instanceId"`
- // Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.
- Permission string `pulumi:"permission"`
- // `region`) The region in which the resource exists.
- Region *string `pulumi:"region"`
- // Name of the user (e.g. `my-db-user`).
- UserName string `pulumi:"userName"`
-}
-
-// The set of arguments for constructing a DocumentdbPrivilege resource.
-type DocumentdbPrivilegeArgs struct {
- // Name of the database (e.g. `my-db-name`).
- DatabaseName pulumi.StringInput
- // UUID of the rdb instance.
- InstanceId pulumi.StringInput
- // Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.
- Permission pulumi.StringInput
- // `region`) The region in which the resource exists.
- Region pulumi.StringPtrInput
- // Name of the user (e.g. `my-db-user`).
- UserName pulumi.StringInput
-}
-
-func (DocumentdbPrivilegeArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbPrivilegeArgs)(nil)).Elem()
-}
-
-type DocumentdbPrivilegeInput interface {
- pulumi.Input
-
- ToDocumentdbPrivilegeOutput() DocumentdbPrivilegeOutput
- ToDocumentdbPrivilegeOutputWithContext(ctx context.Context) DocumentdbPrivilegeOutput
-}
-
-func (*DocumentdbPrivilege) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbPrivilege)(nil)).Elem()
-}
-
-func (i *DocumentdbPrivilege) ToDocumentdbPrivilegeOutput() DocumentdbPrivilegeOutput {
- return i.ToDocumentdbPrivilegeOutputWithContext(context.Background())
-}
-
-func (i *DocumentdbPrivilege) ToDocumentdbPrivilegeOutputWithContext(ctx context.Context) DocumentdbPrivilegeOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbPrivilegeOutput)
-}
-
-// DocumentdbPrivilegeArrayInput is an input type that accepts DocumentdbPrivilegeArray and DocumentdbPrivilegeArrayOutput values.
-// You can construct a concrete instance of `DocumentdbPrivilegeArrayInput` via:
-//
-// DocumentdbPrivilegeArray{ DocumentdbPrivilegeArgs{...} }
-type DocumentdbPrivilegeArrayInput interface {
- pulumi.Input
-
- ToDocumentdbPrivilegeArrayOutput() DocumentdbPrivilegeArrayOutput
- ToDocumentdbPrivilegeArrayOutputWithContext(context.Context) DocumentdbPrivilegeArrayOutput
-}
-
-type DocumentdbPrivilegeArray []DocumentdbPrivilegeInput
-
-func (DocumentdbPrivilegeArray) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbPrivilege)(nil)).Elem()
-}
-
-func (i DocumentdbPrivilegeArray) ToDocumentdbPrivilegeArrayOutput() DocumentdbPrivilegeArrayOutput {
- return i.ToDocumentdbPrivilegeArrayOutputWithContext(context.Background())
-}
-
-func (i DocumentdbPrivilegeArray) ToDocumentdbPrivilegeArrayOutputWithContext(ctx context.Context) DocumentdbPrivilegeArrayOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbPrivilegeArrayOutput)
-}
-
-// DocumentdbPrivilegeMapInput is an input type that accepts DocumentdbPrivilegeMap and DocumentdbPrivilegeMapOutput values.
-// You can construct a concrete instance of `DocumentdbPrivilegeMapInput` via:
-//
-// DocumentdbPrivilegeMap{ "key": DocumentdbPrivilegeArgs{...} }
-type DocumentdbPrivilegeMapInput interface {
- pulumi.Input
-
- ToDocumentdbPrivilegeMapOutput() DocumentdbPrivilegeMapOutput
- ToDocumentdbPrivilegeMapOutputWithContext(context.Context) DocumentdbPrivilegeMapOutput
-}
-
-type DocumentdbPrivilegeMap map[string]DocumentdbPrivilegeInput
-
-func (DocumentdbPrivilegeMap) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbPrivilege)(nil)).Elem()
-}
-
-func (i DocumentdbPrivilegeMap) ToDocumentdbPrivilegeMapOutput() DocumentdbPrivilegeMapOutput {
- return i.ToDocumentdbPrivilegeMapOutputWithContext(context.Background())
-}
-
-func (i DocumentdbPrivilegeMap) ToDocumentdbPrivilegeMapOutputWithContext(ctx context.Context) DocumentdbPrivilegeMapOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbPrivilegeMapOutput)
-}
-
-type DocumentdbPrivilegeOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbPrivilegeOutput) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbPrivilege)(nil)).Elem()
-}
-
-func (o DocumentdbPrivilegeOutput) ToDocumentdbPrivilegeOutput() DocumentdbPrivilegeOutput {
- return o
-}
-
-func (o DocumentdbPrivilegeOutput) ToDocumentdbPrivilegeOutputWithContext(ctx context.Context) DocumentdbPrivilegeOutput {
- return o
-}
-
-// Name of the database (e.g. `my-db-name`).
-func (o DocumentdbPrivilegeOutput) DatabaseName() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbPrivilege) pulumi.StringOutput { return v.DatabaseName }).(pulumi.StringOutput)
-}
-
-// UUID of the rdb instance.
-func (o DocumentdbPrivilegeOutput) InstanceId() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbPrivilege) pulumi.StringOutput { return v.InstanceId }).(pulumi.StringOutput)
-}
-
-// Permission to set. Valid values are `readonly`, `readwrite`, `all`, `custom` and `none`.
-func (o DocumentdbPrivilegeOutput) Permission() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbPrivilege) pulumi.StringOutput { return v.Permission }).(pulumi.StringOutput)
-}
-
-// `region`) The region in which the resource exists.
-func (o DocumentdbPrivilegeOutput) Region() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbPrivilege) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput)
-}
-
-// Name of the user (e.g. `my-db-user`).
-func (o DocumentdbPrivilegeOutput) UserName() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbPrivilege) pulumi.StringOutput { return v.UserName }).(pulumi.StringOutput)
-}
-
-type DocumentdbPrivilegeArrayOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbPrivilegeArrayOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbPrivilege)(nil)).Elem()
-}
-
-func (o DocumentdbPrivilegeArrayOutput) ToDocumentdbPrivilegeArrayOutput() DocumentdbPrivilegeArrayOutput {
- return o
-}
-
-func (o DocumentdbPrivilegeArrayOutput) ToDocumentdbPrivilegeArrayOutputWithContext(ctx context.Context) DocumentdbPrivilegeArrayOutput {
- return o
-}
-
-func (o DocumentdbPrivilegeArrayOutput) Index(i pulumi.IntInput) DocumentdbPrivilegeOutput {
- return pulumi.All(o, i).ApplyT(func(vs []interface{}) *DocumentdbPrivilege {
- return vs[0].([]*DocumentdbPrivilege)[vs[1].(int)]
- }).(DocumentdbPrivilegeOutput)
-}
-
-type DocumentdbPrivilegeMapOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbPrivilegeMapOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbPrivilege)(nil)).Elem()
-}
-
-func (o DocumentdbPrivilegeMapOutput) ToDocumentdbPrivilegeMapOutput() DocumentdbPrivilegeMapOutput {
- return o
-}
-
-func (o DocumentdbPrivilegeMapOutput) ToDocumentdbPrivilegeMapOutputWithContext(ctx context.Context) DocumentdbPrivilegeMapOutput {
- return o
-}
-
-func (o DocumentdbPrivilegeMapOutput) MapIndex(k pulumi.StringInput) DocumentdbPrivilegeOutput {
- return pulumi.All(o, k).ApplyT(func(vs []interface{}) *DocumentdbPrivilege {
- return vs[0].(map[string]*DocumentdbPrivilege)[vs[1].(string)]
- }).(DocumentdbPrivilegeOutput)
-}
-
-func init() {
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbPrivilegeInput)(nil)).Elem(), &DocumentdbPrivilege{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbPrivilegeArrayInput)(nil)).Elem(), DocumentdbPrivilegeArray{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbPrivilegeMapInput)(nil)).Elem(), DocumentdbPrivilegeMap{})
- pulumi.RegisterOutputType(DocumentdbPrivilegeOutput{})
- pulumi.RegisterOutputType(DocumentdbPrivilegeArrayOutput{})
- pulumi.RegisterOutputType(DocumentdbPrivilegeMapOutput{})
-}
diff --git a/sdk/go/scaleway/documentdbReadReplica.go b/sdk/go/scaleway/documentdbReadReplica.go
deleted file mode 100644
index 6dc987a6..00000000
--- a/sdk/go/scaleway/documentdbReadReplica.go
+++ /dev/null
@@ -1,366 +0,0 @@
-// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
-// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
-
-package scaleway
-
-import (
- "context"
- "reflect"
-
- "errors"
- "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
- "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/internal"
-)
-
-// Creates and manages Scaleway DocumentDB Database read replicas.
-//
-// ## Example Usage
-//
-// ### Basic
-//
-// ```go
-// package main
-//
-// import (
-//
-// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
-// "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
-//
-// )
-//
-// func main() {
-// pulumi.Run(func(ctx *pulumi.Context) error {
-// _, err := scaleway.NewDocumentdbReadReplica(ctx, "replica", &scaleway.DocumentdbReadReplicaArgs{
-// InstanceId: pulumi.String("11111111-1111-1111-1111-111111111111"),
-// DirectAccess: &scaleway.DocumentdbReadReplicaDirectAccessArgs{},
-// })
-// if err != nil {
-// return err
-// }
-// return nil
-// })
-// }
-//
-// ```
-//
-// ### Private network
-//
-// ```go
-// package main
-//
-// import (
-//
-// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
-// "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
-//
-// )
-//
-// func main() {
-// pulumi.Run(func(ctx *pulumi.Context) error {
-// pn, err := scaleway.NewVpcPrivateNetwork(ctx, "pn", nil)
-// if err != nil {
-// return err
-// }
-// instance, err := scaleway.NewDocumentdbInstance(ctx, "instance", &scaleway.DocumentdbInstanceArgs{
-// Name: pulumi.String("document_db-read-replica-basic"),
-// NodeType: pulumi.String("docdb-play2-pico"),
-// Engine: pulumi.String("FerretDB-1"),
-// UserName: pulumi.String("my_initial_user"),
-// Password: pulumi.String("thiZ_is_v&ry_s3cret"),
-// VolumeSizeInGb: pulumi.Int(20),
-// })
-// if err != nil {
-// return err
-// }
-// _, err = scaleway.NewDocumentdbReadReplica(ctx, "replica", &scaleway.DocumentdbReadReplicaArgs{
-// InstanceId: instance.ID(),
-// PrivateNetwork: &scaleway.DocumentdbReadReplicaPrivateNetworkArgs{
-// PrivateNetworkId: pn.ID(),
-// ServiceIp: pulumi.String("192.168.1.254/24"),
-// },
-// })
-// if err != nil {
-// return err
-// }
-// return nil
-// })
-// }
-//
-// ```
-//
-// ## Import
-//
-// Database Read replica can be imported using the `{region}/{id}`, e.g.
-//
-// bash
-//
-// ```sh
-// $ pulumi import scaleway:index/documentdbReadReplica:DocumentdbReadReplica rr fr-par/11111111-1111-1111-1111-111111111111
-// ```
-type DocumentdbReadReplica struct {
- pulumi.CustomResourceState
-
- // Creates a direct access endpoint to documentdb replica.
- DirectAccess DocumentdbReadReplicaDirectAccessPtrOutput `pulumi:"directAccess"`
- // UUID of the documentdb instance.
- //
- // > **Important:** The replica musts contains at least one of `directAccess` or `privateNetwork`. It can contain both.
- InstanceId pulumi.StringOutput `pulumi:"instanceId"`
- // Create an endpoint in a private network.
- PrivateNetwork DocumentdbReadReplicaPrivateNetworkPtrOutput `pulumi:"privateNetwork"`
- // `region`) The region
- // in which the Database read replica should be created.
- Region pulumi.StringOutput `pulumi:"region"`
-}
-
-// NewDocumentdbReadReplica registers a new resource with the given unique name, arguments, and options.
-func NewDocumentdbReadReplica(ctx *pulumi.Context,
- name string, args *DocumentdbReadReplicaArgs, opts ...pulumi.ResourceOption) (*DocumentdbReadReplica, error) {
- if args == nil {
- return nil, errors.New("missing one or more required arguments")
- }
-
- if args.InstanceId == nil {
- return nil, errors.New("invalid value for required argument 'InstanceId'")
- }
- opts = internal.PkgResourceDefaultOpts(opts)
- var resource DocumentdbReadReplica
- err := ctx.RegisterResource("scaleway:index/documentdbReadReplica:DocumentdbReadReplica", name, args, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// GetDocumentdbReadReplica gets an existing DocumentdbReadReplica resource's state with the given name, ID, and optional
-// state properties that are used to uniquely qualify the lookup (nil if not required).
-func GetDocumentdbReadReplica(ctx *pulumi.Context,
- name string, id pulumi.IDInput, state *DocumentdbReadReplicaState, opts ...pulumi.ResourceOption) (*DocumentdbReadReplica, error) {
- var resource DocumentdbReadReplica
- err := ctx.ReadResource("scaleway:index/documentdbReadReplica:DocumentdbReadReplica", name, id, state, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// Input properties used for looking up and filtering DocumentdbReadReplica resources.
-type documentdbReadReplicaState struct {
- // Creates a direct access endpoint to documentdb replica.
- DirectAccess *DocumentdbReadReplicaDirectAccess `pulumi:"directAccess"`
- // UUID of the documentdb instance.
- //
- // > **Important:** The replica musts contains at least one of `directAccess` or `privateNetwork`. It can contain both.
- InstanceId *string `pulumi:"instanceId"`
- // Create an endpoint in a private network.
- PrivateNetwork *DocumentdbReadReplicaPrivateNetwork `pulumi:"privateNetwork"`
- // `region`) The region
- // in which the Database read replica should be created.
- Region *string `pulumi:"region"`
-}
-
-type DocumentdbReadReplicaState struct {
- // Creates a direct access endpoint to documentdb replica.
- DirectAccess DocumentdbReadReplicaDirectAccessPtrInput
- // UUID of the documentdb instance.
- //
- // > **Important:** The replica musts contains at least one of `directAccess` or `privateNetwork`. It can contain both.
- InstanceId pulumi.StringPtrInput
- // Create an endpoint in a private network.
- PrivateNetwork DocumentdbReadReplicaPrivateNetworkPtrInput
- // `region`) The region
- // in which the Database read replica should be created.
- Region pulumi.StringPtrInput
-}
-
-func (DocumentdbReadReplicaState) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbReadReplicaState)(nil)).Elem()
-}
-
-type documentdbReadReplicaArgs struct {
- // Creates a direct access endpoint to documentdb replica.
- DirectAccess *DocumentdbReadReplicaDirectAccess `pulumi:"directAccess"`
- // UUID of the documentdb instance.
- //
- // > **Important:** The replica musts contains at least one of `directAccess` or `privateNetwork`. It can contain both.
- InstanceId string `pulumi:"instanceId"`
- // Create an endpoint in a private network.
- PrivateNetwork *DocumentdbReadReplicaPrivateNetwork `pulumi:"privateNetwork"`
- // `region`) The region
- // in which the Database read replica should be created.
- Region *string `pulumi:"region"`
-}
-
-// The set of arguments for constructing a DocumentdbReadReplica resource.
-type DocumentdbReadReplicaArgs struct {
- // Creates a direct access endpoint to documentdb replica.
- DirectAccess DocumentdbReadReplicaDirectAccessPtrInput
- // UUID of the documentdb instance.
- //
- // > **Important:** The replica musts contains at least one of `directAccess` or `privateNetwork`. It can contain both.
- InstanceId pulumi.StringInput
- // Create an endpoint in a private network.
- PrivateNetwork DocumentdbReadReplicaPrivateNetworkPtrInput
- // `region`) The region
- // in which the Database read replica should be created.
- Region pulumi.StringPtrInput
-}
-
-func (DocumentdbReadReplicaArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbReadReplicaArgs)(nil)).Elem()
-}
-
-type DocumentdbReadReplicaInput interface {
- pulumi.Input
-
- ToDocumentdbReadReplicaOutput() DocumentdbReadReplicaOutput
- ToDocumentdbReadReplicaOutputWithContext(ctx context.Context) DocumentdbReadReplicaOutput
-}
-
-func (*DocumentdbReadReplica) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbReadReplica)(nil)).Elem()
-}
-
-func (i *DocumentdbReadReplica) ToDocumentdbReadReplicaOutput() DocumentdbReadReplicaOutput {
- return i.ToDocumentdbReadReplicaOutputWithContext(context.Background())
-}
-
-func (i *DocumentdbReadReplica) ToDocumentdbReadReplicaOutputWithContext(ctx context.Context) DocumentdbReadReplicaOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbReadReplicaOutput)
-}
-
-// DocumentdbReadReplicaArrayInput is an input type that accepts DocumentdbReadReplicaArray and DocumentdbReadReplicaArrayOutput values.
-// You can construct a concrete instance of `DocumentdbReadReplicaArrayInput` via:
-//
-// DocumentdbReadReplicaArray{ DocumentdbReadReplicaArgs{...} }
-type DocumentdbReadReplicaArrayInput interface {
- pulumi.Input
-
- ToDocumentdbReadReplicaArrayOutput() DocumentdbReadReplicaArrayOutput
- ToDocumentdbReadReplicaArrayOutputWithContext(context.Context) DocumentdbReadReplicaArrayOutput
-}
-
-type DocumentdbReadReplicaArray []DocumentdbReadReplicaInput
-
-func (DocumentdbReadReplicaArray) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbReadReplica)(nil)).Elem()
-}
-
-func (i DocumentdbReadReplicaArray) ToDocumentdbReadReplicaArrayOutput() DocumentdbReadReplicaArrayOutput {
- return i.ToDocumentdbReadReplicaArrayOutputWithContext(context.Background())
-}
-
-func (i DocumentdbReadReplicaArray) ToDocumentdbReadReplicaArrayOutputWithContext(ctx context.Context) DocumentdbReadReplicaArrayOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbReadReplicaArrayOutput)
-}
-
-// DocumentdbReadReplicaMapInput is an input type that accepts DocumentdbReadReplicaMap and DocumentdbReadReplicaMapOutput values.
-// You can construct a concrete instance of `DocumentdbReadReplicaMapInput` via:
-//
-// DocumentdbReadReplicaMap{ "key": DocumentdbReadReplicaArgs{...} }
-type DocumentdbReadReplicaMapInput interface {
- pulumi.Input
-
- ToDocumentdbReadReplicaMapOutput() DocumentdbReadReplicaMapOutput
- ToDocumentdbReadReplicaMapOutputWithContext(context.Context) DocumentdbReadReplicaMapOutput
-}
-
-type DocumentdbReadReplicaMap map[string]DocumentdbReadReplicaInput
-
-func (DocumentdbReadReplicaMap) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbReadReplica)(nil)).Elem()
-}
-
-func (i DocumentdbReadReplicaMap) ToDocumentdbReadReplicaMapOutput() DocumentdbReadReplicaMapOutput {
- return i.ToDocumentdbReadReplicaMapOutputWithContext(context.Background())
-}
-
-func (i DocumentdbReadReplicaMap) ToDocumentdbReadReplicaMapOutputWithContext(ctx context.Context) DocumentdbReadReplicaMapOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbReadReplicaMapOutput)
-}
-
-type DocumentdbReadReplicaOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbReadReplicaOutput) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbReadReplica)(nil)).Elem()
-}
-
-func (o DocumentdbReadReplicaOutput) ToDocumentdbReadReplicaOutput() DocumentdbReadReplicaOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaOutput) ToDocumentdbReadReplicaOutputWithContext(ctx context.Context) DocumentdbReadReplicaOutput {
- return o
-}
-
-// Creates a direct access endpoint to documentdb replica.
-func (o DocumentdbReadReplicaOutput) DirectAccess() DocumentdbReadReplicaDirectAccessPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplica) DocumentdbReadReplicaDirectAccessPtrOutput { return v.DirectAccess }).(DocumentdbReadReplicaDirectAccessPtrOutput)
-}
-
-// UUID of the documentdb instance.
-//
-// > **Important:** The replica musts contains at least one of `directAccess` or `privateNetwork`. It can contain both.
-func (o DocumentdbReadReplicaOutput) InstanceId() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbReadReplica) pulumi.StringOutput { return v.InstanceId }).(pulumi.StringOutput)
-}
-
-// Create an endpoint in a private network.
-func (o DocumentdbReadReplicaOutput) PrivateNetwork() DocumentdbReadReplicaPrivateNetworkPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplica) DocumentdbReadReplicaPrivateNetworkPtrOutput { return v.PrivateNetwork }).(DocumentdbReadReplicaPrivateNetworkPtrOutput)
-}
-
-// `region`) The region
-// in which the Database read replica should be created.
-func (o DocumentdbReadReplicaOutput) Region() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbReadReplica) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput)
-}
-
-type DocumentdbReadReplicaArrayOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbReadReplicaArrayOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbReadReplica)(nil)).Elem()
-}
-
-func (o DocumentdbReadReplicaArrayOutput) ToDocumentdbReadReplicaArrayOutput() DocumentdbReadReplicaArrayOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaArrayOutput) ToDocumentdbReadReplicaArrayOutputWithContext(ctx context.Context) DocumentdbReadReplicaArrayOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaArrayOutput) Index(i pulumi.IntInput) DocumentdbReadReplicaOutput {
- return pulumi.All(o, i).ApplyT(func(vs []interface{}) *DocumentdbReadReplica {
- return vs[0].([]*DocumentdbReadReplica)[vs[1].(int)]
- }).(DocumentdbReadReplicaOutput)
-}
-
-type DocumentdbReadReplicaMapOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbReadReplicaMapOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbReadReplica)(nil)).Elem()
-}
-
-func (o DocumentdbReadReplicaMapOutput) ToDocumentdbReadReplicaMapOutput() DocumentdbReadReplicaMapOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaMapOutput) ToDocumentdbReadReplicaMapOutputWithContext(ctx context.Context) DocumentdbReadReplicaMapOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaMapOutput) MapIndex(k pulumi.StringInput) DocumentdbReadReplicaOutput {
- return pulumi.All(o, k).ApplyT(func(vs []interface{}) *DocumentdbReadReplica {
- return vs[0].(map[string]*DocumentdbReadReplica)[vs[1].(string)]
- }).(DocumentdbReadReplicaOutput)
-}
-
-func init() {
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbReadReplicaInput)(nil)).Elem(), &DocumentdbReadReplica{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbReadReplicaArrayInput)(nil)).Elem(), DocumentdbReadReplicaArray{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbReadReplicaMapInput)(nil)).Elem(), DocumentdbReadReplicaMap{})
- pulumi.RegisterOutputType(DocumentdbReadReplicaOutput{})
- pulumi.RegisterOutputType(DocumentdbReadReplicaArrayOutput{})
- pulumi.RegisterOutputType(DocumentdbReadReplicaMapOutput{})
-}
diff --git a/sdk/go/scaleway/documentdbUser.go b/sdk/go/scaleway/documentdbUser.go
deleted file mode 100644
index b942c3c6..00000000
--- a/sdk/go/scaleway/documentdbUser.go
+++ /dev/null
@@ -1,373 +0,0 @@
-// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
-// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
-
-package scaleway
-
-import (
- "context"
- "reflect"
-
- "errors"
- "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
- "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/internal"
-)
-
-// Creates and manages Scaleway Database DocumentDB Users.
-//
-// ## Example Usage
-//
-// ### Basic
-//
-// ```go
-// package main
-//
-// import (
-//
-// "github.com/pulumi/pulumi-random/sdk/v4/go/random"
-// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
-// "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
-//
-// )
-//
-// func main() {
-// pulumi.Run(func(ctx *pulumi.Context) error {
-// instance, err := scaleway.NewDocumentdbInstance(ctx, "instance", &scaleway.DocumentdbInstanceArgs{
-// Name: pulumi.String("test-document_db-basic"),
-// NodeType: pulumi.String("docdb-play2-pico"),
-// Engine: pulumi.String("FerretDB-1"),
-// UserName: pulumi.String("my_initial_user"),
-// Password: pulumi.String("thiZ_is_v&ry_s3cret"),
-// VolumeSizeInGb: pulumi.Int(20),
-// })
-// if err != nil {
-// return err
-// }
-// dbPassword, err := random.NewRandomPassword(ctx, "db_password", &random.RandomPasswordArgs{
-// Length: pulumi.Int(16),
-// Special: pulumi.Bool(true),
-// })
-// if err != nil {
-// return err
-// }
-// _, err = scaleway.NewDocumentdbUser(ctx, "db_admin", &scaleway.DocumentdbUserArgs{
-// InstanceId: instance.ID(),
-// Name: pulumi.String("devtools"),
-// Password: dbPassword.Result,
-// IsAdmin: pulumi.Bool(true),
-// })
-// if err != nil {
-// return err
-// }
-// return nil
-// })
-// }
-//
-// ```
-//
-// ## Import
-//
-// Database User can be imported using `{region}/{instance_id}/{user_name}`, e.g.
-//
-// bash
-//
-// ```sh
-// $ pulumi import scaleway:index/documentdbUser:DocumentdbUser admin fr-par/11111111-1111-1111-1111-111111111111/admin
-// ```
-type DocumentdbUser struct {
- pulumi.CustomResourceState
-
- // UUID of the documentDB instance.
- //
- // > **Important:** Updates to `instanceId` will recreate the Database User.
- InstanceId pulumi.StringOutput `pulumi:"instanceId"`
- // Grant admin permissions to the Database User.
- IsAdmin pulumi.BoolPtrOutput `pulumi:"isAdmin"`
- // Database Username.
- //
- // > **Important:** Updates to `name` will recreate the Database User.
- Name pulumi.StringOutput `pulumi:"name"`
- // Database User password.
- Password pulumi.StringOutput `pulumi:"password"`
- // The Scaleway region this resource resides in.
- Region pulumi.StringOutput `pulumi:"region"`
-}
-
-// NewDocumentdbUser registers a new resource with the given unique name, arguments, and options.
-func NewDocumentdbUser(ctx *pulumi.Context,
- name string, args *DocumentdbUserArgs, opts ...pulumi.ResourceOption) (*DocumentdbUser, error) {
- if args == nil {
- return nil, errors.New("missing one or more required arguments")
- }
-
- if args.InstanceId == nil {
- return nil, errors.New("invalid value for required argument 'InstanceId'")
- }
- if args.Password == nil {
- return nil, errors.New("invalid value for required argument 'Password'")
- }
- if args.Password != nil {
- args.Password = pulumi.ToSecret(args.Password).(pulumi.StringInput)
- }
- secrets := pulumi.AdditionalSecretOutputs([]string{
- "password",
- })
- opts = append(opts, secrets)
- opts = internal.PkgResourceDefaultOpts(opts)
- var resource DocumentdbUser
- err := ctx.RegisterResource("scaleway:index/documentdbUser:DocumentdbUser", name, args, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// GetDocumentdbUser gets an existing DocumentdbUser resource's state with the given name, ID, and optional
-// state properties that are used to uniquely qualify the lookup (nil if not required).
-func GetDocumentdbUser(ctx *pulumi.Context,
- name string, id pulumi.IDInput, state *DocumentdbUserState, opts ...pulumi.ResourceOption) (*DocumentdbUser, error) {
- var resource DocumentdbUser
- err := ctx.ReadResource("scaleway:index/documentdbUser:DocumentdbUser", name, id, state, &resource, opts...)
- if err != nil {
- return nil, err
- }
- return &resource, nil
-}
-
-// Input properties used for looking up and filtering DocumentdbUser resources.
-type documentdbUserState struct {
- // UUID of the documentDB instance.
- //
- // > **Important:** Updates to `instanceId` will recreate the Database User.
- InstanceId *string `pulumi:"instanceId"`
- // Grant admin permissions to the Database User.
- IsAdmin *bool `pulumi:"isAdmin"`
- // Database Username.
- //
- // > **Important:** Updates to `name` will recreate the Database User.
- Name *string `pulumi:"name"`
- // Database User password.
- Password *string `pulumi:"password"`
- // The Scaleway region this resource resides in.
- Region *string `pulumi:"region"`
-}
-
-type DocumentdbUserState struct {
- // UUID of the documentDB instance.
- //
- // > **Important:** Updates to `instanceId` will recreate the Database User.
- InstanceId pulumi.StringPtrInput
- // Grant admin permissions to the Database User.
- IsAdmin pulumi.BoolPtrInput
- // Database Username.
- //
- // > **Important:** Updates to `name` will recreate the Database User.
- Name pulumi.StringPtrInput
- // Database User password.
- Password pulumi.StringPtrInput
- // The Scaleway region this resource resides in.
- Region pulumi.StringPtrInput
-}
-
-func (DocumentdbUserState) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbUserState)(nil)).Elem()
-}
-
-type documentdbUserArgs struct {
- // UUID of the documentDB instance.
- //
- // > **Important:** Updates to `instanceId` will recreate the Database User.
- InstanceId string `pulumi:"instanceId"`
- // Grant admin permissions to the Database User.
- IsAdmin *bool `pulumi:"isAdmin"`
- // Database Username.
- //
- // > **Important:** Updates to `name` will recreate the Database User.
- Name *string `pulumi:"name"`
- // Database User password.
- Password string `pulumi:"password"`
- // The Scaleway region this resource resides in.
- Region *string `pulumi:"region"`
-}
-
-// The set of arguments for constructing a DocumentdbUser resource.
-type DocumentdbUserArgs struct {
- // UUID of the documentDB instance.
- //
- // > **Important:** Updates to `instanceId` will recreate the Database User.
- InstanceId pulumi.StringInput
- // Grant admin permissions to the Database User.
- IsAdmin pulumi.BoolPtrInput
- // Database Username.
- //
- // > **Important:** Updates to `name` will recreate the Database User.
- Name pulumi.StringPtrInput
- // Database User password.
- Password pulumi.StringInput
- // The Scaleway region this resource resides in.
- Region pulumi.StringPtrInput
-}
-
-func (DocumentdbUserArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*documentdbUserArgs)(nil)).Elem()
-}
-
-type DocumentdbUserInput interface {
- pulumi.Input
-
- ToDocumentdbUserOutput() DocumentdbUserOutput
- ToDocumentdbUserOutputWithContext(ctx context.Context) DocumentdbUserOutput
-}
-
-func (*DocumentdbUser) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbUser)(nil)).Elem()
-}
-
-func (i *DocumentdbUser) ToDocumentdbUserOutput() DocumentdbUserOutput {
- return i.ToDocumentdbUserOutputWithContext(context.Background())
-}
-
-func (i *DocumentdbUser) ToDocumentdbUserOutputWithContext(ctx context.Context) DocumentdbUserOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbUserOutput)
-}
-
-// DocumentdbUserArrayInput is an input type that accepts DocumentdbUserArray and DocumentdbUserArrayOutput values.
-// You can construct a concrete instance of `DocumentdbUserArrayInput` via:
-//
-// DocumentdbUserArray{ DocumentdbUserArgs{...} }
-type DocumentdbUserArrayInput interface {
- pulumi.Input
-
- ToDocumentdbUserArrayOutput() DocumentdbUserArrayOutput
- ToDocumentdbUserArrayOutputWithContext(context.Context) DocumentdbUserArrayOutput
-}
-
-type DocumentdbUserArray []DocumentdbUserInput
-
-func (DocumentdbUserArray) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbUser)(nil)).Elem()
-}
-
-func (i DocumentdbUserArray) ToDocumentdbUserArrayOutput() DocumentdbUserArrayOutput {
- return i.ToDocumentdbUserArrayOutputWithContext(context.Background())
-}
-
-func (i DocumentdbUserArray) ToDocumentdbUserArrayOutputWithContext(ctx context.Context) DocumentdbUserArrayOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbUserArrayOutput)
-}
-
-// DocumentdbUserMapInput is an input type that accepts DocumentdbUserMap and DocumentdbUserMapOutput values.
-// You can construct a concrete instance of `DocumentdbUserMapInput` via:
-//
-// DocumentdbUserMap{ "key": DocumentdbUserArgs{...} }
-type DocumentdbUserMapInput interface {
- pulumi.Input
-
- ToDocumentdbUserMapOutput() DocumentdbUserMapOutput
- ToDocumentdbUserMapOutputWithContext(context.Context) DocumentdbUserMapOutput
-}
-
-type DocumentdbUserMap map[string]DocumentdbUserInput
-
-func (DocumentdbUserMap) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbUser)(nil)).Elem()
-}
-
-func (i DocumentdbUserMap) ToDocumentdbUserMapOutput() DocumentdbUserMapOutput {
- return i.ToDocumentdbUserMapOutputWithContext(context.Background())
-}
-
-func (i DocumentdbUserMap) ToDocumentdbUserMapOutputWithContext(ctx context.Context) DocumentdbUserMapOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbUserMapOutput)
-}
-
-type DocumentdbUserOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbUserOutput) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbUser)(nil)).Elem()
-}
-
-func (o DocumentdbUserOutput) ToDocumentdbUserOutput() DocumentdbUserOutput {
- return o
-}
-
-func (o DocumentdbUserOutput) ToDocumentdbUserOutputWithContext(ctx context.Context) DocumentdbUserOutput {
- return o
-}
-
-// UUID of the documentDB instance.
-//
-// > **Important:** Updates to `instanceId` will recreate the Database User.
-func (o DocumentdbUserOutput) InstanceId() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbUser) pulumi.StringOutput { return v.InstanceId }).(pulumi.StringOutput)
-}
-
-// Grant admin permissions to the Database User.
-func (o DocumentdbUserOutput) IsAdmin() pulumi.BoolPtrOutput {
- return o.ApplyT(func(v *DocumentdbUser) pulumi.BoolPtrOutput { return v.IsAdmin }).(pulumi.BoolPtrOutput)
-}
-
-// Database Username.
-//
-// > **Important:** Updates to `name` will recreate the Database User.
-func (o DocumentdbUserOutput) Name() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbUser) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
-}
-
-// Database User password.
-func (o DocumentdbUserOutput) Password() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbUser) pulumi.StringOutput { return v.Password }).(pulumi.StringOutput)
-}
-
-// The Scaleway region this resource resides in.
-func (o DocumentdbUserOutput) Region() pulumi.StringOutput {
- return o.ApplyT(func(v *DocumentdbUser) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput)
-}
-
-type DocumentdbUserArrayOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbUserArrayOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*[]*DocumentdbUser)(nil)).Elem()
-}
-
-func (o DocumentdbUserArrayOutput) ToDocumentdbUserArrayOutput() DocumentdbUserArrayOutput {
- return o
-}
-
-func (o DocumentdbUserArrayOutput) ToDocumentdbUserArrayOutputWithContext(ctx context.Context) DocumentdbUserArrayOutput {
- return o
-}
-
-func (o DocumentdbUserArrayOutput) Index(i pulumi.IntInput) DocumentdbUserOutput {
- return pulumi.All(o, i).ApplyT(func(vs []interface{}) *DocumentdbUser {
- return vs[0].([]*DocumentdbUser)[vs[1].(int)]
- }).(DocumentdbUserOutput)
-}
-
-type DocumentdbUserMapOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbUserMapOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*map[string]*DocumentdbUser)(nil)).Elem()
-}
-
-func (o DocumentdbUserMapOutput) ToDocumentdbUserMapOutput() DocumentdbUserMapOutput {
- return o
-}
-
-func (o DocumentdbUserMapOutput) ToDocumentdbUserMapOutputWithContext(ctx context.Context) DocumentdbUserMapOutput {
- return o
-}
-
-func (o DocumentdbUserMapOutput) MapIndex(k pulumi.StringInput) DocumentdbUserOutput {
- return pulumi.All(o, k).ApplyT(func(vs []interface{}) *DocumentdbUser {
- return vs[0].(map[string]*DocumentdbUser)[vs[1].(string)]
- }).(DocumentdbUserOutput)
-}
-
-func init() {
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbUserInput)(nil)).Elem(), &DocumentdbUser{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbUserArrayInput)(nil)).Elem(), DocumentdbUserArray{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbUserMapInput)(nil)).Elem(), DocumentdbUserMap{})
- pulumi.RegisterOutputType(DocumentdbUserOutput{})
- pulumi.RegisterOutputType(DocumentdbUserArrayOutput{})
- pulumi.RegisterOutputType(DocumentdbUserMapOutput{})
-}
diff --git a/sdk/go/scaleway/getDocumentdbDatabase.go b/sdk/go/scaleway/getDocumentdbDatabase.go
deleted file mode 100644
index e22e5b83..00000000
--- a/sdk/go/scaleway/getDocumentdbDatabase.go
+++ /dev/null
@@ -1,163 +0,0 @@
-// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
-// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
-
-package scaleway
-
-import (
- "context"
- "reflect"
-
- "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
- "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/internal"
-)
-
-// Gets information about DocumentDB database.
-//
-// ## Example Usage
-//
-// ```go
-// package main
-//
-// import (
-//
-// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
-// "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
-//
-// )
-//
-// func main() {
-// pulumi.Run(func(ctx *pulumi.Context) error {
-// // Get the database foobar hosted on instance id 11111111-1111-1111-1111-111111111111
-// _, err := scaleway.LookupDocumentdbDatabase(ctx, &scaleway.LookupDocumentdbDatabaseArgs{
-// InstanceId: "11111111-1111-1111-1111-111111111111",
-// Name: pulumi.StringRef("foobar"),
-// }, nil)
-// if err != nil {
-// return err
-// }
-// return nil
-// })
-// }
-//
-// ```
-func LookupDocumentdbDatabase(ctx *pulumi.Context, args *LookupDocumentdbDatabaseArgs, opts ...pulumi.InvokeOption) (*LookupDocumentdbDatabaseResult, error) {
- opts = internal.PkgInvokeDefaultOpts(opts)
- var rv LookupDocumentdbDatabaseResult
- err := ctx.Invoke("scaleway:index/getDocumentdbDatabase:getDocumentdbDatabase", args, &rv, opts...)
- if err != nil {
- return nil, err
- }
- return &rv, nil
-}
-
-// A collection of arguments for invoking getDocumentdbDatabase.
-type LookupDocumentdbDatabaseArgs struct {
- // The DocumentDB instance ID.
- InstanceId string `pulumi:"instanceId"`
- // The name of the DocumentDB instance.
- Name *string `pulumi:"name"`
- Region *string `pulumi:"region"`
-}
-
-// A collection of values returned by getDocumentdbDatabase.
-type LookupDocumentdbDatabaseResult struct {
- // The provider-assigned unique ID for this managed resource.
- Id string `pulumi:"id"`
- InstanceId string `pulumi:"instanceId"`
- // Whether the database is managed or not.
- Managed bool `pulumi:"managed"`
- Name *string `pulumi:"name"`
- // The name of the owner of the database.
- Owner string `pulumi:"owner"`
- ProjectId string `pulumi:"projectId"`
- Region *string `pulumi:"region"`
- // Size of the database (in bytes).
- Size string `pulumi:"size"`
-}
-
-func LookupDocumentdbDatabaseOutput(ctx *pulumi.Context, args LookupDocumentdbDatabaseOutputArgs, opts ...pulumi.InvokeOption) LookupDocumentdbDatabaseResultOutput {
- return pulumi.ToOutputWithContext(context.Background(), args).
- ApplyT(func(v interface{}) (LookupDocumentdbDatabaseResultOutput, error) {
- args := v.(LookupDocumentdbDatabaseArgs)
- opts = internal.PkgInvokeDefaultOpts(opts)
- var rv LookupDocumentdbDatabaseResult
- secret, err := ctx.InvokePackageRaw("scaleway:index/getDocumentdbDatabase:getDocumentdbDatabase", args, &rv, "", opts...)
- if err != nil {
- return LookupDocumentdbDatabaseResultOutput{}, err
- }
-
- output := pulumi.ToOutput(rv).(LookupDocumentdbDatabaseResultOutput)
- if secret {
- return pulumi.ToSecret(output).(LookupDocumentdbDatabaseResultOutput), nil
- }
- return output, nil
- }).(LookupDocumentdbDatabaseResultOutput)
-}
-
-// A collection of arguments for invoking getDocumentdbDatabase.
-type LookupDocumentdbDatabaseOutputArgs struct {
- // The DocumentDB instance ID.
- InstanceId pulumi.StringInput `pulumi:"instanceId"`
- // The name of the DocumentDB instance.
- Name pulumi.StringPtrInput `pulumi:"name"`
- Region pulumi.StringPtrInput `pulumi:"region"`
-}
-
-func (LookupDocumentdbDatabaseOutputArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*LookupDocumentdbDatabaseArgs)(nil)).Elem()
-}
-
-// A collection of values returned by getDocumentdbDatabase.
-type LookupDocumentdbDatabaseResultOutput struct{ *pulumi.OutputState }
-
-func (LookupDocumentdbDatabaseResultOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*LookupDocumentdbDatabaseResult)(nil)).Elem()
-}
-
-func (o LookupDocumentdbDatabaseResultOutput) ToLookupDocumentdbDatabaseResultOutput() LookupDocumentdbDatabaseResultOutput {
- return o
-}
-
-func (o LookupDocumentdbDatabaseResultOutput) ToLookupDocumentdbDatabaseResultOutputWithContext(ctx context.Context) LookupDocumentdbDatabaseResultOutput {
- return o
-}
-
-// The provider-assigned unique ID for this managed resource.
-func (o LookupDocumentdbDatabaseResultOutput) Id() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbDatabaseResult) string { return v.Id }).(pulumi.StringOutput)
-}
-
-func (o LookupDocumentdbDatabaseResultOutput) InstanceId() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbDatabaseResult) string { return v.InstanceId }).(pulumi.StringOutput)
-}
-
-// Whether the database is managed or not.
-func (o LookupDocumentdbDatabaseResultOutput) Managed() pulumi.BoolOutput {
- return o.ApplyT(func(v LookupDocumentdbDatabaseResult) bool { return v.Managed }).(pulumi.BoolOutput)
-}
-
-func (o LookupDocumentdbDatabaseResultOutput) Name() pulumi.StringPtrOutput {
- return o.ApplyT(func(v LookupDocumentdbDatabaseResult) *string { return v.Name }).(pulumi.StringPtrOutput)
-}
-
-// The name of the owner of the database.
-func (o LookupDocumentdbDatabaseResultOutput) Owner() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbDatabaseResult) string { return v.Owner }).(pulumi.StringOutput)
-}
-
-func (o LookupDocumentdbDatabaseResultOutput) ProjectId() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbDatabaseResult) string { return v.ProjectId }).(pulumi.StringOutput)
-}
-
-func (o LookupDocumentdbDatabaseResultOutput) Region() pulumi.StringPtrOutput {
- return o.ApplyT(func(v LookupDocumentdbDatabaseResult) *string { return v.Region }).(pulumi.StringPtrOutput)
-}
-
-// Size of the database (in bytes).
-func (o LookupDocumentdbDatabaseResultOutput) Size() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbDatabaseResult) string { return v.Size }).(pulumi.StringOutput)
-}
-
-func init() {
- pulumi.RegisterOutputType(LookupDocumentdbDatabaseResultOutput{})
-}
diff --git a/sdk/go/scaleway/getDocumentdbInstance.go b/sdk/go/scaleway/getDocumentdbInstance.go
deleted file mode 100644
index 2ee21f06..00000000
--- a/sdk/go/scaleway/getDocumentdbInstance.go
+++ /dev/null
@@ -1,169 +0,0 @@
-// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
-// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
-
-package scaleway
-
-import (
- "context"
- "reflect"
-
- "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
- "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/internal"
-)
-
-// Gets information about an DocumentDB instance.
-func LookupDocumentdbInstance(ctx *pulumi.Context, args *LookupDocumentdbInstanceArgs, opts ...pulumi.InvokeOption) (*LookupDocumentdbInstanceResult, error) {
- opts = internal.PkgInvokeDefaultOpts(opts)
- var rv LookupDocumentdbInstanceResult
- err := ctx.Invoke("scaleway:index/getDocumentdbInstance:getDocumentdbInstance", args, &rv, opts...)
- if err != nil {
- return nil, err
- }
- return &rv, nil
-}
-
-// A collection of arguments for invoking getDocumentdbInstance.
-type LookupDocumentdbInstanceArgs struct {
- // The DocumentDB instance ID.
- // Only one of `name` and `instanceId` should be specified.
- InstanceId *string `pulumi:"instanceId"`
- // The name of the DocumentDB instance.
- // Only one of `name` and `instanceId` should be specified.
- Name *string `pulumi:"name"`
- // The ID of the project the DocumentDB instance is associated with.
- ProjectId *string `pulumi:"projectId"`
- // `region`) The region in which the DocumentDB instance exists.
- Region *string `pulumi:"region"`
-}
-
-// A collection of values returned by getDocumentdbInstance.
-type LookupDocumentdbInstanceResult struct {
- Engine string `pulumi:"engine"`
- // The provider-assigned unique ID for this managed resource.
- Id string `pulumi:"id"`
- InstanceId *string `pulumi:"instanceId"`
- IsHaCluster bool `pulumi:"isHaCluster"`
- Name *string `pulumi:"name"`
- NodeType string `pulumi:"nodeType"`
- Password string `pulumi:"password"`
- ProjectId *string `pulumi:"projectId"`
- Region *string `pulumi:"region"`
- Tags []string `pulumi:"tags"`
- TelemetryEnabled bool `pulumi:"telemetryEnabled"`
- UserName string `pulumi:"userName"`
- VolumeSizeInGb int `pulumi:"volumeSizeInGb"`
- VolumeType string `pulumi:"volumeType"`
-}
-
-func LookupDocumentdbInstanceOutput(ctx *pulumi.Context, args LookupDocumentdbInstanceOutputArgs, opts ...pulumi.InvokeOption) LookupDocumentdbInstanceResultOutput {
- return pulumi.ToOutputWithContext(context.Background(), args).
- ApplyT(func(v interface{}) (LookupDocumentdbInstanceResultOutput, error) {
- args := v.(LookupDocumentdbInstanceArgs)
- opts = internal.PkgInvokeDefaultOpts(opts)
- var rv LookupDocumentdbInstanceResult
- secret, err := ctx.InvokePackageRaw("scaleway:index/getDocumentdbInstance:getDocumentdbInstance", args, &rv, "", opts...)
- if err != nil {
- return LookupDocumentdbInstanceResultOutput{}, err
- }
-
- output := pulumi.ToOutput(rv).(LookupDocumentdbInstanceResultOutput)
- if secret {
- return pulumi.ToSecret(output).(LookupDocumentdbInstanceResultOutput), nil
- }
- return output, nil
- }).(LookupDocumentdbInstanceResultOutput)
-}
-
-// A collection of arguments for invoking getDocumentdbInstance.
-type LookupDocumentdbInstanceOutputArgs struct {
- // The DocumentDB instance ID.
- // Only one of `name` and `instanceId` should be specified.
- InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
- // The name of the DocumentDB instance.
- // Only one of `name` and `instanceId` should be specified.
- Name pulumi.StringPtrInput `pulumi:"name"`
- // The ID of the project the DocumentDB instance is associated with.
- ProjectId pulumi.StringPtrInput `pulumi:"projectId"`
- // `region`) The region in which the DocumentDB instance exists.
- Region pulumi.StringPtrInput `pulumi:"region"`
-}
-
-func (LookupDocumentdbInstanceOutputArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*LookupDocumentdbInstanceArgs)(nil)).Elem()
-}
-
-// A collection of values returned by getDocumentdbInstance.
-type LookupDocumentdbInstanceResultOutput struct{ *pulumi.OutputState }
-
-func (LookupDocumentdbInstanceResultOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*LookupDocumentdbInstanceResult)(nil)).Elem()
-}
-
-func (o LookupDocumentdbInstanceResultOutput) ToLookupDocumentdbInstanceResultOutput() LookupDocumentdbInstanceResultOutput {
- return o
-}
-
-func (o LookupDocumentdbInstanceResultOutput) ToLookupDocumentdbInstanceResultOutputWithContext(ctx context.Context) LookupDocumentdbInstanceResultOutput {
- return o
-}
-
-func (o LookupDocumentdbInstanceResultOutput) Engine() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) string { return v.Engine }).(pulumi.StringOutput)
-}
-
-// The provider-assigned unique ID for this managed resource.
-func (o LookupDocumentdbInstanceResultOutput) Id() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) string { return v.Id }).(pulumi.StringOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) InstanceId() pulumi.StringPtrOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) *string { return v.InstanceId }).(pulumi.StringPtrOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) IsHaCluster() pulumi.BoolOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) bool { return v.IsHaCluster }).(pulumi.BoolOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) Name() pulumi.StringPtrOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) *string { return v.Name }).(pulumi.StringPtrOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) NodeType() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) string { return v.NodeType }).(pulumi.StringOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) Password() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) string { return v.Password }).(pulumi.StringOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) ProjectId() pulumi.StringPtrOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) *string { return v.ProjectId }).(pulumi.StringPtrOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) Region() pulumi.StringPtrOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) *string { return v.Region }).(pulumi.StringPtrOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) Tags() pulumi.StringArrayOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) []string { return v.Tags }).(pulumi.StringArrayOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) TelemetryEnabled() pulumi.BoolOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) bool { return v.TelemetryEnabled }).(pulumi.BoolOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) UserName() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) string { return v.UserName }).(pulumi.StringOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) VolumeSizeInGb() pulumi.IntOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) int { return v.VolumeSizeInGb }).(pulumi.IntOutput)
-}
-
-func (o LookupDocumentdbInstanceResultOutput) VolumeType() pulumi.StringOutput {
- return o.ApplyT(func(v LookupDocumentdbInstanceResult) string { return v.VolumeType }).(pulumi.StringOutput)
-}
-
-func init() {
- pulumi.RegisterOutputType(LookupDocumentdbInstanceResultOutput{})
-}
diff --git a/sdk/go/scaleway/getDocumentdbLoadBalancerEndpoint.go b/sdk/go/scaleway/getDocumentdbLoadBalancerEndpoint.go
deleted file mode 100644
index 77ea3d5c..00000000
--- a/sdk/go/scaleway/getDocumentdbLoadBalancerEndpoint.go
+++ /dev/null
@@ -1,148 +0,0 @@
-// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
-// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
-
-package scaleway
-
-import (
- "context"
- "reflect"
-
- "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
- "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/internal"
-)
-
-// Gets information about an DocumentDB load balancer endpoint.
-func GetDocumentdbLoadBalancerEndpoint(ctx *pulumi.Context, args *GetDocumentdbLoadBalancerEndpointArgs, opts ...pulumi.InvokeOption) (*GetDocumentdbLoadBalancerEndpointResult, error) {
- opts = internal.PkgInvokeDefaultOpts(opts)
- var rv GetDocumentdbLoadBalancerEndpointResult
- err := ctx.Invoke("scaleway:index/getDocumentdbLoadBalancerEndpoint:getDocumentdbLoadBalancerEndpoint", args, &rv, opts...)
- if err != nil {
- return nil, err
- }
- return &rv, nil
-}
-
-// A collection of arguments for invoking getDocumentdbLoadBalancerEndpoint.
-type GetDocumentdbLoadBalancerEndpointArgs struct {
- // The DocumentDB Instance on which the endpoint is attached. Only one of `instanceName` and `instanceId` should be specified.
- InstanceId *string `pulumi:"instanceId"`
- // The DocumentDB Instance Name on which the endpoint is attached. Only one of `instanceName` and `instanceId` should be specified.
- InstanceName *string `pulumi:"instanceName"`
- // The ID of the project the DocumentDB endpoint is associated with.
- ProjectId *string `pulumi:"projectId"`
- // `region`) The region in which the DocumentDB endpoint exists.
- Region *string `pulumi:"region"`
-}
-
-// A collection of values returned by getDocumentdbLoadBalancerEndpoint.
-type GetDocumentdbLoadBalancerEndpointResult struct {
- // The hostname of your endpoint.
- Hostname string `pulumi:"hostname"`
- // The provider-assigned unique ID for this managed resource.
- Id string `pulumi:"id"`
- InstanceId string `pulumi:"instanceId"`
- InstanceName string `pulumi:"instanceName"`
- // The IP of your load balancer service.
- Ip string `pulumi:"ip"`
- // The name of your load balancer service.
- Name string `pulumi:"name"`
- // The port of your load balancer service.
- Port int `pulumi:"port"`
- ProjectId string `pulumi:"projectId"`
- Region string `pulumi:"region"`
-}
-
-func GetDocumentdbLoadBalancerEndpointOutput(ctx *pulumi.Context, args GetDocumentdbLoadBalancerEndpointOutputArgs, opts ...pulumi.InvokeOption) GetDocumentdbLoadBalancerEndpointResultOutput {
- return pulumi.ToOutputWithContext(context.Background(), args).
- ApplyT(func(v interface{}) (GetDocumentdbLoadBalancerEndpointResultOutput, error) {
- args := v.(GetDocumentdbLoadBalancerEndpointArgs)
- opts = internal.PkgInvokeDefaultOpts(opts)
- var rv GetDocumentdbLoadBalancerEndpointResult
- secret, err := ctx.InvokePackageRaw("scaleway:index/getDocumentdbLoadBalancerEndpoint:getDocumentdbLoadBalancerEndpoint", args, &rv, "", opts...)
- if err != nil {
- return GetDocumentdbLoadBalancerEndpointResultOutput{}, err
- }
-
- output := pulumi.ToOutput(rv).(GetDocumentdbLoadBalancerEndpointResultOutput)
- if secret {
- return pulumi.ToSecret(output).(GetDocumentdbLoadBalancerEndpointResultOutput), nil
- }
- return output, nil
- }).(GetDocumentdbLoadBalancerEndpointResultOutput)
-}
-
-// A collection of arguments for invoking getDocumentdbLoadBalancerEndpoint.
-type GetDocumentdbLoadBalancerEndpointOutputArgs struct {
- // The DocumentDB Instance on which the endpoint is attached. Only one of `instanceName` and `instanceId` should be specified.
- InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
- // The DocumentDB Instance Name on which the endpoint is attached. Only one of `instanceName` and `instanceId` should be specified.
- InstanceName pulumi.StringPtrInput `pulumi:"instanceName"`
- // The ID of the project the DocumentDB endpoint is associated with.
- ProjectId pulumi.StringPtrInput `pulumi:"projectId"`
- // `region`) The region in which the DocumentDB endpoint exists.
- Region pulumi.StringPtrInput `pulumi:"region"`
-}
-
-func (GetDocumentdbLoadBalancerEndpointOutputArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*GetDocumentdbLoadBalancerEndpointArgs)(nil)).Elem()
-}
-
-// A collection of values returned by getDocumentdbLoadBalancerEndpoint.
-type GetDocumentdbLoadBalancerEndpointResultOutput struct{ *pulumi.OutputState }
-
-func (GetDocumentdbLoadBalancerEndpointResultOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*GetDocumentdbLoadBalancerEndpointResult)(nil)).Elem()
-}
-
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) ToGetDocumentdbLoadBalancerEndpointResultOutput() GetDocumentdbLoadBalancerEndpointResultOutput {
- return o
-}
-
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) ToGetDocumentdbLoadBalancerEndpointResultOutputWithContext(ctx context.Context) GetDocumentdbLoadBalancerEndpointResultOutput {
- return o
-}
-
-// The hostname of your endpoint.
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) Hostname() pulumi.StringOutput {
- return o.ApplyT(func(v GetDocumentdbLoadBalancerEndpointResult) string { return v.Hostname }).(pulumi.StringOutput)
-}
-
-// The provider-assigned unique ID for this managed resource.
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) Id() pulumi.StringOutput {
- return o.ApplyT(func(v GetDocumentdbLoadBalancerEndpointResult) string { return v.Id }).(pulumi.StringOutput)
-}
-
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) InstanceId() pulumi.StringOutput {
- return o.ApplyT(func(v GetDocumentdbLoadBalancerEndpointResult) string { return v.InstanceId }).(pulumi.StringOutput)
-}
-
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) InstanceName() pulumi.StringOutput {
- return o.ApplyT(func(v GetDocumentdbLoadBalancerEndpointResult) string { return v.InstanceName }).(pulumi.StringOutput)
-}
-
-// The IP of your load balancer service.
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) Ip() pulumi.StringOutput {
- return o.ApplyT(func(v GetDocumentdbLoadBalancerEndpointResult) string { return v.Ip }).(pulumi.StringOutput)
-}
-
-// The name of your load balancer service.
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) Name() pulumi.StringOutput {
- return o.ApplyT(func(v GetDocumentdbLoadBalancerEndpointResult) string { return v.Name }).(pulumi.StringOutput)
-}
-
-// The port of your load balancer service.
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) Port() pulumi.IntOutput {
- return o.ApplyT(func(v GetDocumentdbLoadBalancerEndpointResult) int { return v.Port }).(pulumi.IntOutput)
-}
-
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) ProjectId() pulumi.StringOutput {
- return o.ApplyT(func(v GetDocumentdbLoadBalancerEndpointResult) string { return v.ProjectId }).(pulumi.StringOutput)
-}
-
-func (o GetDocumentdbLoadBalancerEndpointResultOutput) Region() pulumi.StringOutput {
- return o.ApplyT(func(v GetDocumentdbLoadBalancerEndpointResult) string { return v.Region }).(pulumi.StringOutput)
-}
-
-func init() {
- pulumi.RegisterOutputType(GetDocumentdbLoadBalancerEndpointResultOutput{})
-}
diff --git a/sdk/go/scaleway/getInstancePrivateNic.go b/sdk/go/scaleway/getInstancePrivateNic.go
index 9c0f1957..349eb2e8 100644
--- a/sdk/go/scaleway/getInstancePrivateNic.go
+++ b/sdk/go/scaleway/getInstancePrivateNic.go
@@ -87,6 +87,7 @@ type LookupInstancePrivateNicResult struct {
// The provider-assigned unique ID for this managed resource.
Id string `pulumi:"id"`
IpIds []string `pulumi:"ipIds"`
+ IpamIpIds []string `pulumi:"ipamIpIds"`
MacAddress string `pulumi:"macAddress"`
PrivateNetworkId *string `pulumi:"privateNetworkId"`
PrivateNicId *string `pulumi:"privateNicId"`
@@ -159,6 +160,10 @@ func (o LookupInstancePrivateNicResultOutput) IpIds() pulumi.StringArrayOutput {
return o.ApplyT(func(v LookupInstancePrivateNicResult) []string { return v.IpIds }).(pulumi.StringArrayOutput)
}
+func (o LookupInstancePrivateNicResultOutput) IpamIpIds() pulumi.StringArrayOutput {
+ return o.ApplyT(func(v LookupInstancePrivateNicResult) []string { return v.IpamIpIds }).(pulumi.StringArrayOutput)
+}
+
func (o LookupInstancePrivateNicResultOutput) MacAddress() pulumi.StringOutput {
return o.ApplyT(func(v LookupInstancePrivateNicResult) string { return v.MacAddress }).(pulumi.StringOutput)
}
diff --git a/sdk/go/scaleway/getRegistryImageTag.go b/sdk/go/scaleway/getRegistryImageTag.go
new file mode 100644
index 00000000..f088ff61
--- /dev/null
+++ b/sdk/go/scaleway/getRegistryImageTag.go
@@ -0,0 +1,164 @@
+// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
+// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
+
+package scaleway
+
+import (
+ "context"
+ "reflect"
+
+ "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
+ "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/internal"
+)
+
+// Gets information about a specific tag of a Container Registry image.
+func GetRegistryImageTag(ctx *pulumi.Context, args *GetRegistryImageTagArgs, opts ...pulumi.InvokeOption) (*GetRegistryImageTagResult, error) {
+ opts = internal.PkgInvokeDefaultOpts(opts)
+ var rv GetRegistryImageTagResult
+ err := ctx.Invoke("scaleway:index/getRegistryImageTag:getRegistryImageTag", args, &rv, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return &rv, nil
+}
+
+// A collection of arguments for invoking getRegistryImageTag.
+type GetRegistryImageTagArgs struct {
+ // The ID of the registry image.
+ ImageId string `pulumi:"imageId"`
+ // The name of the registry image tag.
+ Name *string `pulumi:"name"`
+ // The ID of the project the image tag is associated with.
+ ProjectId *string `pulumi:"projectId"`
+ // The region in which the registry image tag exists.
+ Region *string `pulumi:"region"`
+ // The ID of the registry image tag.
+ TagId *string `pulumi:"tagId"`
+}
+
+// A collection of values returned by getRegistryImageTag.
+type GetRegistryImageTagResult struct {
+ // The date and time when the registry image tag was created.
+ CreatedAt string `pulumi:"createdAt"`
+ // Hash of the tag content. Several tags of the same image may have the same digest.
+ Digest string `pulumi:"digest"`
+ // The provider-assigned unique ID for this managed resource.
+ Id string `pulumi:"id"`
+ ImageId string `pulumi:"imageId"`
+ Name *string `pulumi:"name"`
+ // The organization ID the image tag is associated with.
+ OrganizationId string `pulumi:"organizationId"`
+ ProjectId string `pulumi:"projectId"`
+ Region string `pulumi:"region"`
+ // The status of the registry image tag.
+ Status string `pulumi:"status"`
+ TagId *string `pulumi:"tagId"`
+ // The date and time of the last update to the registry image tag.
+ UpdatedAt string `pulumi:"updatedAt"`
+}
+
+func GetRegistryImageTagOutput(ctx *pulumi.Context, args GetRegistryImageTagOutputArgs, opts ...pulumi.InvokeOption) GetRegistryImageTagResultOutput {
+ return pulumi.ToOutputWithContext(context.Background(), args).
+ ApplyT(func(v interface{}) (GetRegistryImageTagResultOutput, error) {
+ args := v.(GetRegistryImageTagArgs)
+ opts = internal.PkgInvokeDefaultOpts(opts)
+ var rv GetRegistryImageTagResult
+ secret, err := ctx.InvokePackageRaw("scaleway:index/getRegistryImageTag:getRegistryImageTag", args, &rv, "", opts...)
+ if err != nil {
+ return GetRegistryImageTagResultOutput{}, err
+ }
+
+ output := pulumi.ToOutput(rv).(GetRegistryImageTagResultOutput)
+ if secret {
+ return pulumi.ToSecret(output).(GetRegistryImageTagResultOutput), nil
+ }
+ return output, nil
+ }).(GetRegistryImageTagResultOutput)
+}
+
+// A collection of arguments for invoking getRegistryImageTag.
+type GetRegistryImageTagOutputArgs struct {
+ // The ID of the registry image.
+ ImageId pulumi.StringInput `pulumi:"imageId"`
+ // The name of the registry image tag.
+ Name pulumi.StringPtrInput `pulumi:"name"`
+ // The ID of the project the image tag is associated with.
+ ProjectId pulumi.StringPtrInput `pulumi:"projectId"`
+ // The region in which the registry image tag exists.
+ Region pulumi.StringPtrInput `pulumi:"region"`
+ // The ID of the registry image tag.
+ TagId pulumi.StringPtrInput `pulumi:"tagId"`
+}
+
+func (GetRegistryImageTagOutputArgs) ElementType() reflect.Type {
+ return reflect.TypeOf((*GetRegistryImageTagArgs)(nil)).Elem()
+}
+
+// A collection of values returned by getRegistryImageTag.
+type GetRegistryImageTagResultOutput struct{ *pulumi.OutputState }
+
+func (GetRegistryImageTagResultOutput) ElementType() reflect.Type {
+ return reflect.TypeOf((*GetRegistryImageTagResult)(nil)).Elem()
+}
+
+func (o GetRegistryImageTagResultOutput) ToGetRegistryImageTagResultOutput() GetRegistryImageTagResultOutput {
+ return o
+}
+
+func (o GetRegistryImageTagResultOutput) ToGetRegistryImageTagResultOutputWithContext(ctx context.Context) GetRegistryImageTagResultOutput {
+ return o
+}
+
+// The date and time when the registry image tag was created.
+func (o GetRegistryImageTagResultOutput) CreatedAt() pulumi.StringOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) string { return v.CreatedAt }).(pulumi.StringOutput)
+}
+
+// Hash of the tag content. Several tags of the same image may have the same digest.
+func (o GetRegistryImageTagResultOutput) Digest() pulumi.StringOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) string { return v.Digest }).(pulumi.StringOutput)
+}
+
+// The provider-assigned unique ID for this managed resource.
+func (o GetRegistryImageTagResultOutput) Id() pulumi.StringOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) string { return v.Id }).(pulumi.StringOutput)
+}
+
+func (o GetRegistryImageTagResultOutput) ImageId() pulumi.StringOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) string { return v.ImageId }).(pulumi.StringOutput)
+}
+
+func (o GetRegistryImageTagResultOutput) Name() pulumi.StringPtrOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) *string { return v.Name }).(pulumi.StringPtrOutput)
+}
+
+// The organization ID the image tag is associated with.
+func (o GetRegistryImageTagResultOutput) OrganizationId() pulumi.StringOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) string { return v.OrganizationId }).(pulumi.StringOutput)
+}
+
+func (o GetRegistryImageTagResultOutput) ProjectId() pulumi.StringOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) string { return v.ProjectId }).(pulumi.StringOutput)
+}
+
+func (o GetRegistryImageTagResultOutput) Region() pulumi.StringOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) string { return v.Region }).(pulumi.StringOutput)
+}
+
+// The status of the registry image tag.
+func (o GetRegistryImageTagResultOutput) Status() pulumi.StringOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) string { return v.Status }).(pulumi.StringOutput)
+}
+
+func (o GetRegistryImageTagResultOutput) TagId() pulumi.StringPtrOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) *string { return v.TagId }).(pulumi.StringPtrOutput)
+}
+
+// The date and time of the last update to the registry image tag.
+func (o GetRegistryImageTagResultOutput) UpdatedAt() pulumi.StringOutput {
+ return o.ApplyT(func(v GetRegistryImageTagResult) string { return v.UpdatedAt }).(pulumi.StringOutput)
+}
+
+func init() {
+ pulumi.RegisterOutputType(GetRegistryImageTagResultOutput{})
+}
diff --git a/sdk/go/scaleway/init.go b/sdk/go/scaleway/init.go
index 73801cf9..838342e3 100644
--- a/sdk/go/scaleway/init.go
+++ b/sdk/go/scaleway/init.go
@@ -69,18 +69,6 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi
r = &DatabaseReadReplica{}
case "scaleway:index/databaseUser:DatabaseUser":
r = &DatabaseUser{}
- case "scaleway:index/documentdbDatabase:DocumentdbDatabase":
- r = &DocumentdbDatabase{}
- case "scaleway:index/documentdbInstance:DocumentdbInstance":
- r = &DocumentdbInstance{}
- case "scaleway:index/documentdbPrivateNetworkEndpoint:DocumentdbPrivateNetworkEndpoint":
- r = &DocumentdbPrivateNetworkEndpoint{}
- case "scaleway:index/documentdbPrivilege:DocumentdbPrivilege":
- r = &DocumentdbPrivilege{}
- case "scaleway:index/documentdbReadReplica:DocumentdbReadReplica":
- r = &DocumentdbReadReplica{}
- case "scaleway:index/documentdbUser:DocumentdbUser":
- r = &DocumentdbUser{}
case "scaleway:index/domainRecord:DomainRecord":
r = &DomainRecord{}
case "scaleway:index/domainZone:DomainZone":
@@ -388,36 +376,6 @@ func init() {
"index/databaseUser",
&module{version},
)
- pulumi.RegisterResourceModule(
- "scaleway",
- "index/documentdbDatabase",
- &module{version},
- )
- pulumi.RegisterResourceModule(
- "scaleway",
- "index/documentdbInstance",
- &module{version},
- )
- pulumi.RegisterResourceModule(
- "scaleway",
- "index/documentdbPrivateNetworkEndpoint",
- &module{version},
- )
- pulumi.RegisterResourceModule(
- "scaleway",
- "index/documentdbPrivilege",
- &module{version},
- )
- pulumi.RegisterResourceModule(
- "scaleway",
- "index/documentdbReadReplica",
- &module{version},
- )
- pulumi.RegisterResourceModule(
- "scaleway",
- "index/documentdbUser",
- &module{version},
- )
pulumi.RegisterResourceModule(
"scaleway",
"index/domainRecord",
diff --git a/sdk/go/scaleway/instancePrivateNic.go b/sdk/go/scaleway/instancePrivateNic.go
index 612bd65f..459956dd 100644
--- a/sdk/go/scaleway/instancePrivateNic.go
+++ b/sdk/go/scaleway/instancePrivateNic.go
@@ -59,8 +59,8 @@ import (
// func main() {
// pulumi.Run(func(ctx *pulumi.Context) error {
// pn01, err := scaleway.NewVpcPrivateNetwork(ctx, "pn01", &scaleway.VpcPrivateNetworkArgs{
-// Name: pulumi.String("private_network_instance"),
-// Zone: pulumi.String("fr-par-2"),
+// Name: pulumi.String("private_network_instance"),
+// Region: pulumi.String("fr-par"),
// })
// if err != nil {
// return err
@@ -87,6 +87,70 @@ import (
//
// ```
//
+// ### With IPAM IP IDs
+//
+// ```go
+// package main
+//
+// import (
+//
+// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
+// "github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
+//
+// )
+//
+// func main() {
+// pulumi.Run(func(ctx *pulumi.Context) error {
+// vpc01, err := scaleway.NewVpc(ctx, "vpc01", &scaleway.VpcArgs{
+// Name: pulumi.String("vpc_instance"),
+// })
+// if err != nil {
+// return err
+// }
+// pn01, err := scaleway.NewVpcPrivateNetwork(ctx, "pn01", &scaleway.VpcPrivateNetworkArgs{
+// Name: pulumi.String("private_network_instance"),
+// Ipv4Subnet: &scaleway.VpcPrivateNetworkIpv4SubnetArgs{
+// Subnet: pulumi.String("172.16.64.0/22"),
+// },
+// VpcId: vpc01.ID(),
+// })
+// if err != nil {
+// return err
+// }
+// ip01, err := scaleway.NewIpamIp(ctx, "ip01", &scaleway.IpamIpArgs{
+// Address: pulumi.String("172.16.64.7"),
+// Sources: scaleway.IpamIpSourceArray{
+// &scaleway.IpamIpSourceArgs{
+// PrivateNetworkId: pn01.ID(),
+// },
+// },
+// })
+// if err != nil {
+// return err
+// }
+// server01, err := scaleway.NewInstanceServer(ctx, "server01", &scaleway.InstanceServerArgs{
+// Image: pulumi.String("ubuntu_focal"),
+// Type: pulumi.String("PLAY2-MICRO"),
+// })
+// if err != nil {
+// return err
+// }
+// _, err = scaleway.NewInstancePrivateNic(ctx, "pnic01", &scaleway.InstancePrivateNicArgs{
+// PrivateNetworkId: pn01.ID(),
+// ServerId: server01.ID(),
+// IpamIpIds: pulumi.StringArray{
+// ip01.ID(),
+// },
+// })
+// if err != nil {
+// return err
+// }
+// return nil
+// })
+// }
+//
+// ```
+//
// ## Import
//
// Private NICs can be imported using the `{zone}/{server_id}/{private_nic_id}`, e.g.
@@ -101,6 +165,8 @@ type InstancePrivateNic struct {
// IPAM ip list, should be for internal use only
IpIds pulumi.StringArrayOutput `pulumi:"ipIds"`
+ // IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
+ IpamIpIds pulumi.StringArrayOutput `pulumi:"ipamIpIds"`
// The MAC address of the private NIC.
MacAddress pulumi.StringOutput `pulumi:"macAddress"`
// The ID of the private network attached to.
@@ -151,6 +217,8 @@ func GetInstancePrivateNic(ctx *pulumi.Context,
type instancePrivateNicState struct {
// IPAM ip list, should be for internal use only
IpIds []string `pulumi:"ipIds"`
+ // IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
+ IpamIpIds []string `pulumi:"ipamIpIds"`
// The MAC address of the private NIC.
MacAddress *string `pulumi:"macAddress"`
// The ID of the private network attached to.
@@ -166,6 +234,8 @@ type instancePrivateNicState struct {
type InstancePrivateNicState struct {
// IPAM ip list, should be for internal use only
IpIds pulumi.StringArrayInput
+ // IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
+ IpamIpIds pulumi.StringArrayInput
// The MAC address of the private NIC.
MacAddress pulumi.StringPtrInput
// The ID of the private network attached to.
@@ -185,6 +255,8 @@ func (InstancePrivateNicState) ElementType() reflect.Type {
type instancePrivateNicArgs struct {
// IPAM ip list, should be for internal use only
IpIds []string `pulumi:"ipIds"`
+ // IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
+ IpamIpIds []string `pulumi:"ipamIpIds"`
// The ID of the private network attached to.
PrivateNetworkId string `pulumi:"privateNetworkId"`
// The ID of the server associated with.
@@ -199,6 +271,8 @@ type instancePrivateNicArgs struct {
type InstancePrivateNicArgs struct {
// IPAM ip list, should be for internal use only
IpIds pulumi.StringArrayInput
+ // IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
+ IpamIpIds pulumi.StringArrayInput
// The ID of the private network attached to.
PrivateNetworkId pulumi.StringInput
// The ID of the server associated with.
@@ -301,6 +375,11 @@ func (o InstancePrivateNicOutput) IpIds() pulumi.StringArrayOutput {
return o.ApplyT(func(v *InstancePrivateNic) pulumi.StringArrayOutput { return v.IpIds }).(pulumi.StringArrayOutput)
}
+// IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
+func (o InstancePrivateNicOutput) IpamIpIds() pulumi.StringArrayOutput {
+ return o.ApplyT(func(v *InstancePrivateNic) pulumi.StringArrayOutput { return v.IpamIpIds }).(pulumi.StringArrayOutput)
+}
+
// The MAC address of the private NIC.
func (o InstancePrivateNicOutput) MacAddress() pulumi.StringOutput {
return o.ApplyT(func(v *InstancePrivateNic) pulumi.StringOutput { return v.MacAddress }).(pulumi.StringOutput)
diff --git a/sdk/go/scaleway/pulumiTypes.go b/sdk/go/scaleway/pulumiTypes.go
index afbe0475..7d0e0ce4 100644
--- a/sdk/go/scaleway/pulumiTypes.go
+++ b/sdk/go/scaleway/pulumiTypes.go
@@ -2963,748 +2963,6 @@ func (o DatabaseReadReplicaPrivateNetworkPtrOutput) Zone() pulumi.StringPtrOutpu
}).(pulumi.StringPtrOutput)
}
-type DocumentdbPrivateNetworkEndpointPrivateNetwork struct {
- // The hostname of your endpoint.
- Hostname *string `pulumi:"hostname"`
- // The private network ID.
- Id string `pulumi:"id"`
- // The IP of your private network service.
- Ip *string `pulumi:"ip"`
- // The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM) service if not set.
- IpNet *string `pulumi:"ipNet"`
- // The name of your private service.
- Name *string `pulumi:"name"`
- // The port of your private service.
- Port *int `pulumi:"port"`
- // The zone of your endpoint.
- Zone *string `pulumi:"zone"`
-}
-
-// DocumentdbPrivateNetworkEndpointPrivateNetworkInput is an input type that accepts DocumentdbPrivateNetworkEndpointPrivateNetworkArgs and DocumentdbPrivateNetworkEndpointPrivateNetworkOutput values.
-// You can construct a concrete instance of `DocumentdbPrivateNetworkEndpointPrivateNetworkInput` via:
-//
-// DocumentdbPrivateNetworkEndpointPrivateNetworkArgs{...}
-type DocumentdbPrivateNetworkEndpointPrivateNetworkInput interface {
- pulumi.Input
-
- ToDocumentdbPrivateNetworkEndpointPrivateNetworkOutput() DocumentdbPrivateNetworkEndpointPrivateNetworkOutput
- ToDocumentdbPrivateNetworkEndpointPrivateNetworkOutputWithContext(context.Context) DocumentdbPrivateNetworkEndpointPrivateNetworkOutput
-}
-
-type DocumentdbPrivateNetworkEndpointPrivateNetworkArgs struct {
- // The hostname of your endpoint.
- Hostname pulumi.StringPtrInput `pulumi:"hostname"`
- // The private network ID.
- Id pulumi.StringInput `pulumi:"id"`
- // The IP of your private network service.
- Ip pulumi.StringPtrInput `pulumi:"ip"`
- // The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM) service if not set.
- IpNet pulumi.StringPtrInput `pulumi:"ipNet"`
- // The name of your private service.
- Name pulumi.StringPtrInput `pulumi:"name"`
- // The port of your private service.
- Port pulumi.IntPtrInput `pulumi:"port"`
- // The zone of your endpoint.
- Zone pulumi.StringPtrInput `pulumi:"zone"`
-}
-
-func (DocumentdbPrivateNetworkEndpointPrivateNetworkArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*DocumentdbPrivateNetworkEndpointPrivateNetwork)(nil)).Elem()
-}
-
-func (i DocumentdbPrivateNetworkEndpointPrivateNetworkArgs) ToDocumentdbPrivateNetworkEndpointPrivateNetworkOutput() DocumentdbPrivateNetworkEndpointPrivateNetworkOutput {
- return i.ToDocumentdbPrivateNetworkEndpointPrivateNetworkOutputWithContext(context.Background())
-}
-
-func (i DocumentdbPrivateNetworkEndpointPrivateNetworkArgs) ToDocumentdbPrivateNetworkEndpointPrivateNetworkOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointPrivateNetworkOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbPrivateNetworkEndpointPrivateNetworkOutput)
-}
-
-func (i DocumentdbPrivateNetworkEndpointPrivateNetworkArgs) ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput() DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput {
- return i.ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutputWithContext(context.Background())
-}
-
-func (i DocumentdbPrivateNetworkEndpointPrivateNetworkArgs) ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbPrivateNetworkEndpointPrivateNetworkOutput).ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutputWithContext(ctx)
-}
-
-// DocumentdbPrivateNetworkEndpointPrivateNetworkPtrInput is an input type that accepts DocumentdbPrivateNetworkEndpointPrivateNetworkArgs, DocumentdbPrivateNetworkEndpointPrivateNetworkPtr and DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput values.
-// You can construct a concrete instance of `DocumentdbPrivateNetworkEndpointPrivateNetworkPtrInput` via:
-//
-// DocumentdbPrivateNetworkEndpointPrivateNetworkArgs{...}
-//
-// or:
-//
-// nil
-type DocumentdbPrivateNetworkEndpointPrivateNetworkPtrInput interface {
- pulumi.Input
-
- ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput() DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput
- ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutputWithContext(context.Context) DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput
-}
-
-type documentdbPrivateNetworkEndpointPrivateNetworkPtrType DocumentdbPrivateNetworkEndpointPrivateNetworkArgs
-
-func DocumentdbPrivateNetworkEndpointPrivateNetworkPtr(v *DocumentdbPrivateNetworkEndpointPrivateNetworkArgs) DocumentdbPrivateNetworkEndpointPrivateNetworkPtrInput {
- return (*documentdbPrivateNetworkEndpointPrivateNetworkPtrType)(v)
-}
-
-func (*documentdbPrivateNetworkEndpointPrivateNetworkPtrType) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbPrivateNetworkEndpointPrivateNetwork)(nil)).Elem()
-}
-
-func (i *documentdbPrivateNetworkEndpointPrivateNetworkPtrType) ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput() DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput {
- return i.ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutputWithContext(context.Background())
-}
-
-func (i *documentdbPrivateNetworkEndpointPrivateNetworkPtrType) ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput)
-}
-
-type DocumentdbPrivateNetworkEndpointPrivateNetworkOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*DocumentdbPrivateNetworkEndpointPrivateNetwork)(nil)).Elem()
-}
-
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) ToDocumentdbPrivateNetworkEndpointPrivateNetworkOutput() DocumentdbPrivateNetworkEndpointPrivateNetworkOutput {
- return o
-}
-
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) ToDocumentdbPrivateNetworkEndpointPrivateNetworkOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointPrivateNetworkOutput {
- return o
-}
-
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput() DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput {
- return o.ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutputWithContext(context.Background())
-}
-
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput {
- return o.ApplyTWithContext(ctx, func(_ context.Context, v DocumentdbPrivateNetworkEndpointPrivateNetwork) *DocumentdbPrivateNetworkEndpointPrivateNetwork {
- return &v
- }).(DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput)
-}
-
-// The hostname of your endpoint.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) Hostname() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbPrivateNetworkEndpointPrivateNetwork) *string { return v.Hostname }).(pulumi.StringPtrOutput)
-}
-
-// The private network ID.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) Id() pulumi.StringOutput {
- return o.ApplyT(func(v DocumentdbPrivateNetworkEndpointPrivateNetwork) string { return v.Id }).(pulumi.StringOutput)
-}
-
-// The IP of your private network service.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) Ip() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbPrivateNetworkEndpointPrivateNetwork) *string { return v.Ip }).(pulumi.StringPtrOutput)
-}
-
-// The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM) service if not set.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) IpNet() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbPrivateNetworkEndpointPrivateNetwork) *string { return v.IpNet }).(pulumi.StringPtrOutput)
-}
-
-// The name of your private service.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) Name() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbPrivateNetworkEndpointPrivateNetwork) *string { return v.Name }).(pulumi.StringPtrOutput)
-}
-
-// The port of your private service.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) Port() pulumi.IntPtrOutput {
- return o.ApplyT(func(v DocumentdbPrivateNetworkEndpointPrivateNetwork) *int { return v.Port }).(pulumi.IntPtrOutput)
-}
-
-// The zone of your endpoint.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkOutput) Zone() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbPrivateNetworkEndpointPrivateNetwork) *string { return v.Zone }).(pulumi.StringPtrOutput)
-}
-
-type DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbPrivateNetworkEndpointPrivateNetwork)(nil)).Elem()
-}
-
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput() DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput {
- return o
-}
-
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) ToDocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutputWithContext(ctx context.Context) DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput {
- return o
-}
-
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) Elem() DocumentdbPrivateNetworkEndpointPrivateNetworkOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpointPrivateNetwork) DocumentdbPrivateNetworkEndpointPrivateNetwork {
- if v != nil {
- return *v
- }
- var ret DocumentdbPrivateNetworkEndpointPrivateNetwork
- return ret
- }).(DocumentdbPrivateNetworkEndpointPrivateNetworkOutput)
-}
-
-// The hostname of your endpoint.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) Hostname() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpointPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.Hostname
- }).(pulumi.StringPtrOutput)
-}
-
-// The private network ID.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) Id() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpointPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return &v.Id
- }).(pulumi.StringPtrOutput)
-}
-
-// The IP of your private network service.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) Ip() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpointPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.Ip
- }).(pulumi.StringPtrOutput)
-}
-
-// The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM) service if not set.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) IpNet() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpointPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.IpNet
- }).(pulumi.StringPtrOutput)
-}
-
-// The name of your private service.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) Name() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpointPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.Name
- }).(pulumi.StringPtrOutput)
-}
-
-// The port of your private service.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) Port() pulumi.IntPtrOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpointPrivateNetwork) *int {
- if v == nil {
- return nil
- }
- return v.Port
- }).(pulumi.IntPtrOutput)
-}
-
-// The zone of your endpoint.
-func (o DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput) Zone() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbPrivateNetworkEndpointPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.Zone
- }).(pulumi.StringPtrOutput)
-}
-
-type DocumentdbReadReplicaDirectAccess struct {
- // The ID of the endpoint of the read replica.
- EndpointId *string `pulumi:"endpointId"`
- // Hostname of the endpoint. Only one of ip and hostname may be set.
- Hostname *string `pulumi:"hostname"`
- // IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
- Ip *string `pulumi:"ip"`
- // Name of the endpoint.
- Name *string `pulumi:"name"`
- // TCP port of the endpoint.
- Port *int `pulumi:"port"`
-}
-
-// DocumentdbReadReplicaDirectAccessInput is an input type that accepts DocumentdbReadReplicaDirectAccessArgs and DocumentdbReadReplicaDirectAccessOutput values.
-// You can construct a concrete instance of `DocumentdbReadReplicaDirectAccessInput` via:
-//
-// DocumentdbReadReplicaDirectAccessArgs{...}
-type DocumentdbReadReplicaDirectAccessInput interface {
- pulumi.Input
-
- ToDocumentdbReadReplicaDirectAccessOutput() DocumentdbReadReplicaDirectAccessOutput
- ToDocumentdbReadReplicaDirectAccessOutputWithContext(context.Context) DocumentdbReadReplicaDirectAccessOutput
-}
-
-type DocumentdbReadReplicaDirectAccessArgs struct {
- // The ID of the endpoint of the read replica.
- EndpointId pulumi.StringPtrInput `pulumi:"endpointId"`
- // Hostname of the endpoint. Only one of ip and hostname may be set.
- Hostname pulumi.StringPtrInput `pulumi:"hostname"`
- // IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
- Ip pulumi.StringPtrInput `pulumi:"ip"`
- // Name of the endpoint.
- Name pulumi.StringPtrInput `pulumi:"name"`
- // TCP port of the endpoint.
- Port pulumi.IntPtrInput `pulumi:"port"`
-}
-
-func (DocumentdbReadReplicaDirectAccessArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*DocumentdbReadReplicaDirectAccess)(nil)).Elem()
-}
-
-func (i DocumentdbReadReplicaDirectAccessArgs) ToDocumentdbReadReplicaDirectAccessOutput() DocumentdbReadReplicaDirectAccessOutput {
- return i.ToDocumentdbReadReplicaDirectAccessOutputWithContext(context.Background())
-}
-
-func (i DocumentdbReadReplicaDirectAccessArgs) ToDocumentdbReadReplicaDirectAccessOutputWithContext(ctx context.Context) DocumentdbReadReplicaDirectAccessOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbReadReplicaDirectAccessOutput)
-}
-
-func (i DocumentdbReadReplicaDirectAccessArgs) ToDocumentdbReadReplicaDirectAccessPtrOutput() DocumentdbReadReplicaDirectAccessPtrOutput {
- return i.ToDocumentdbReadReplicaDirectAccessPtrOutputWithContext(context.Background())
-}
-
-func (i DocumentdbReadReplicaDirectAccessArgs) ToDocumentdbReadReplicaDirectAccessPtrOutputWithContext(ctx context.Context) DocumentdbReadReplicaDirectAccessPtrOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbReadReplicaDirectAccessOutput).ToDocumentdbReadReplicaDirectAccessPtrOutputWithContext(ctx)
-}
-
-// DocumentdbReadReplicaDirectAccessPtrInput is an input type that accepts DocumentdbReadReplicaDirectAccessArgs, DocumentdbReadReplicaDirectAccessPtr and DocumentdbReadReplicaDirectAccessPtrOutput values.
-// You can construct a concrete instance of `DocumentdbReadReplicaDirectAccessPtrInput` via:
-//
-// DocumentdbReadReplicaDirectAccessArgs{...}
-//
-// or:
-//
-// nil
-type DocumentdbReadReplicaDirectAccessPtrInput interface {
- pulumi.Input
-
- ToDocumentdbReadReplicaDirectAccessPtrOutput() DocumentdbReadReplicaDirectAccessPtrOutput
- ToDocumentdbReadReplicaDirectAccessPtrOutputWithContext(context.Context) DocumentdbReadReplicaDirectAccessPtrOutput
-}
-
-type documentdbReadReplicaDirectAccessPtrType DocumentdbReadReplicaDirectAccessArgs
-
-func DocumentdbReadReplicaDirectAccessPtr(v *DocumentdbReadReplicaDirectAccessArgs) DocumentdbReadReplicaDirectAccessPtrInput {
- return (*documentdbReadReplicaDirectAccessPtrType)(v)
-}
-
-func (*documentdbReadReplicaDirectAccessPtrType) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbReadReplicaDirectAccess)(nil)).Elem()
-}
-
-func (i *documentdbReadReplicaDirectAccessPtrType) ToDocumentdbReadReplicaDirectAccessPtrOutput() DocumentdbReadReplicaDirectAccessPtrOutput {
- return i.ToDocumentdbReadReplicaDirectAccessPtrOutputWithContext(context.Background())
-}
-
-func (i *documentdbReadReplicaDirectAccessPtrType) ToDocumentdbReadReplicaDirectAccessPtrOutputWithContext(ctx context.Context) DocumentdbReadReplicaDirectAccessPtrOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbReadReplicaDirectAccessPtrOutput)
-}
-
-type DocumentdbReadReplicaDirectAccessOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbReadReplicaDirectAccessOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*DocumentdbReadReplicaDirectAccess)(nil)).Elem()
-}
-
-func (o DocumentdbReadReplicaDirectAccessOutput) ToDocumentdbReadReplicaDirectAccessOutput() DocumentdbReadReplicaDirectAccessOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaDirectAccessOutput) ToDocumentdbReadReplicaDirectAccessOutputWithContext(ctx context.Context) DocumentdbReadReplicaDirectAccessOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaDirectAccessOutput) ToDocumentdbReadReplicaDirectAccessPtrOutput() DocumentdbReadReplicaDirectAccessPtrOutput {
- return o.ToDocumentdbReadReplicaDirectAccessPtrOutputWithContext(context.Background())
-}
-
-func (o DocumentdbReadReplicaDirectAccessOutput) ToDocumentdbReadReplicaDirectAccessPtrOutputWithContext(ctx context.Context) DocumentdbReadReplicaDirectAccessPtrOutput {
- return o.ApplyTWithContext(ctx, func(_ context.Context, v DocumentdbReadReplicaDirectAccess) *DocumentdbReadReplicaDirectAccess {
- return &v
- }).(DocumentdbReadReplicaDirectAccessPtrOutput)
-}
-
-// The ID of the endpoint of the read replica.
-func (o DocumentdbReadReplicaDirectAccessOutput) EndpointId() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaDirectAccess) *string { return v.EndpointId }).(pulumi.StringPtrOutput)
-}
-
-// Hostname of the endpoint. Only one of ip and hostname may be set.
-func (o DocumentdbReadReplicaDirectAccessOutput) Hostname() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaDirectAccess) *string { return v.Hostname }).(pulumi.StringPtrOutput)
-}
-
-// IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
-func (o DocumentdbReadReplicaDirectAccessOutput) Ip() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaDirectAccess) *string { return v.Ip }).(pulumi.StringPtrOutput)
-}
-
-// Name of the endpoint.
-func (o DocumentdbReadReplicaDirectAccessOutput) Name() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaDirectAccess) *string { return v.Name }).(pulumi.StringPtrOutput)
-}
-
-// TCP port of the endpoint.
-func (o DocumentdbReadReplicaDirectAccessOutput) Port() pulumi.IntPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaDirectAccess) *int { return v.Port }).(pulumi.IntPtrOutput)
-}
-
-type DocumentdbReadReplicaDirectAccessPtrOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbReadReplicaDirectAccessPtrOutput) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbReadReplicaDirectAccess)(nil)).Elem()
-}
-
-func (o DocumentdbReadReplicaDirectAccessPtrOutput) ToDocumentdbReadReplicaDirectAccessPtrOutput() DocumentdbReadReplicaDirectAccessPtrOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaDirectAccessPtrOutput) ToDocumentdbReadReplicaDirectAccessPtrOutputWithContext(ctx context.Context) DocumentdbReadReplicaDirectAccessPtrOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaDirectAccessPtrOutput) Elem() DocumentdbReadReplicaDirectAccessOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaDirectAccess) DocumentdbReadReplicaDirectAccess {
- if v != nil {
- return *v
- }
- var ret DocumentdbReadReplicaDirectAccess
- return ret
- }).(DocumentdbReadReplicaDirectAccessOutput)
-}
-
-// The ID of the endpoint of the read replica.
-func (o DocumentdbReadReplicaDirectAccessPtrOutput) EndpointId() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaDirectAccess) *string {
- if v == nil {
- return nil
- }
- return v.EndpointId
- }).(pulumi.StringPtrOutput)
-}
-
-// Hostname of the endpoint. Only one of ip and hostname may be set.
-func (o DocumentdbReadReplicaDirectAccessPtrOutput) Hostname() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaDirectAccess) *string {
- if v == nil {
- return nil
- }
- return v.Hostname
- }).(pulumi.StringPtrOutput)
-}
-
-// IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
-func (o DocumentdbReadReplicaDirectAccessPtrOutput) Ip() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaDirectAccess) *string {
- if v == nil {
- return nil
- }
- return v.Ip
- }).(pulumi.StringPtrOutput)
-}
-
-// Name of the endpoint.
-func (o DocumentdbReadReplicaDirectAccessPtrOutput) Name() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaDirectAccess) *string {
- if v == nil {
- return nil
- }
- return v.Name
- }).(pulumi.StringPtrOutput)
-}
-
-// TCP port of the endpoint.
-func (o DocumentdbReadReplicaDirectAccessPtrOutput) Port() pulumi.IntPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaDirectAccess) *int {
- if v == nil {
- return nil
- }
- return v.Port
- }).(pulumi.IntPtrOutput)
-}
-
-type DocumentdbReadReplicaPrivateNetwork struct {
- // The ID of the endpoint of the read replica.
- EndpointId *string `pulumi:"endpointId"`
- // Hostname of the endpoint. Only one of ip and hostname may be set.
- Hostname *string `pulumi:"hostname"`
- // IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
- Ip *string `pulumi:"ip"`
- // Name of the endpoint.
- Name *string `pulumi:"name"`
- // TCP port of the endpoint.
- Port *int `pulumi:"port"`
- // UUID of the private network to be connected to the read replica.
- PrivateNetworkId string `pulumi:"privateNetworkId"`
- // The IP network address within the private subnet. This must be an IPv4 address with a
- // CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM)
- // service if not set.
- ServiceIp *string `pulumi:"serviceIp"`
- // Private network zone
- Zone *string `pulumi:"zone"`
-}
-
-// DocumentdbReadReplicaPrivateNetworkInput is an input type that accepts DocumentdbReadReplicaPrivateNetworkArgs and DocumentdbReadReplicaPrivateNetworkOutput values.
-// You can construct a concrete instance of `DocumentdbReadReplicaPrivateNetworkInput` via:
-//
-// DocumentdbReadReplicaPrivateNetworkArgs{...}
-type DocumentdbReadReplicaPrivateNetworkInput interface {
- pulumi.Input
-
- ToDocumentdbReadReplicaPrivateNetworkOutput() DocumentdbReadReplicaPrivateNetworkOutput
- ToDocumentdbReadReplicaPrivateNetworkOutputWithContext(context.Context) DocumentdbReadReplicaPrivateNetworkOutput
-}
-
-type DocumentdbReadReplicaPrivateNetworkArgs struct {
- // The ID of the endpoint of the read replica.
- EndpointId pulumi.StringPtrInput `pulumi:"endpointId"`
- // Hostname of the endpoint. Only one of ip and hostname may be set.
- Hostname pulumi.StringPtrInput `pulumi:"hostname"`
- // IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
- Ip pulumi.StringPtrInput `pulumi:"ip"`
- // Name of the endpoint.
- Name pulumi.StringPtrInput `pulumi:"name"`
- // TCP port of the endpoint.
- Port pulumi.IntPtrInput `pulumi:"port"`
- // UUID of the private network to be connected to the read replica.
- PrivateNetworkId pulumi.StringInput `pulumi:"privateNetworkId"`
- // The IP network address within the private subnet. This must be an IPv4 address with a
- // CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM)
- // service if not set.
- ServiceIp pulumi.StringPtrInput `pulumi:"serviceIp"`
- // Private network zone
- Zone pulumi.StringPtrInput `pulumi:"zone"`
-}
-
-func (DocumentdbReadReplicaPrivateNetworkArgs) ElementType() reflect.Type {
- return reflect.TypeOf((*DocumentdbReadReplicaPrivateNetwork)(nil)).Elem()
-}
-
-func (i DocumentdbReadReplicaPrivateNetworkArgs) ToDocumentdbReadReplicaPrivateNetworkOutput() DocumentdbReadReplicaPrivateNetworkOutput {
- return i.ToDocumentdbReadReplicaPrivateNetworkOutputWithContext(context.Background())
-}
-
-func (i DocumentdbReadReplicaPrivateNetworkArgs) ToDocumentdbReadReplicaPrivateNetworkOutputWithContext(ctx context.Context) DocumentdbReadReplicaPrivateNetworkOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbReadReplicaPrivateNetworkOutput)
-}
-
-func (i DocumentdbReadReplicaPrivateNetworkArgs) ToDocumentdbReadReplicaPrivateNetworkPtrOutput() DocumentdbReadReplicaPrivateNetworkPtrOutput {
- return i.ToDocumentdbReadReplicaPrivateNetworkPtrOutputWithContext(context.Background())
-}
-
-func (i DocumentdbReadReplicaPrivateNetworkArgs) ToDocumentdbReadReplicaPrivateNetworkPtrOutputWithContext(ctx context.Context) DocumentdbReadReplicaPrivateNetworkPtrOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbReadReplicaPrivateNetworkOutput).ToDocumentdbReadReplicaPrivateNetworkPtrOutputWithContext(ctx)
-}
-
-// DocumentdbReadReplicaPrivateNetworkPtrInput is an input type that accepts DocumentdbReadReplicaPrivateNetworkArgs, DocumentdbReadReplicaPrivateNetworkPtr and DocumentdbReadReplicaPrivateNetworkPtrOutput values.
-// You can construct a concrete instance of `DocumentdbReadReplicaPrivateNetworkPtrInput` via:
-//
-// DocumentdbReadReplicaPrivateNetworkArgs{...}
-//
-// or:
-//
-// nil
-type DocumentdbReadReplicaPrivateNetworkPtrInput interface {
- pulumi.Input
-
- ToDocumentdbReadReplicaPrivateNetworkPtrOutput() DocumentdbReadReplicaPrivateNetworkPtrOutput
- ToDocumentdbReadReplicaPrivateNetworkPtrOutputWithContext(context.Context) DocumentdbReadReplicaPrivateNetworkPtrOutput
-}
-
-type documentdbReadReplicaPrivateNetworkPtrType DocumentdbReadReplicaPrivateNetworkArgs
-
-func DocumentdbReadReplicaPrivateNetworkPtr(v *DocumentdbReadReplicaPrivateNetworkArgs) DocumentdbReadReplicaPrivateNetworkPtrInput {
- return (*documentdbReadReplicaPrivateNetworkPtrType)(v)
-}
-
-func (*documentdbReadReplicaPrivateNetworkPtrType) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbReadReplicaPrivateNetwork)(nil)).Elem()
-}
-
-func (i *documentdbReadReplicaPrivateNetworkPtrType) ToDocumentdbReadReplicaPrivateNetworkPtrOutput() DocumentdbReadReplicaPrivateNetworkPtrOutput {
- return i.ToDocumentdbReadReplicaPrivateNetworkPtrOutputWithContext(context.Background())
-}
-
-func (i *documentdbReadReplicaPrivateNetworkPtrType) ToDocumentdbReadReplicaPrivateNetworkPtrOutputWithContext(ctx context.Context) DocumentdbReadReplicaPrivateNetworkPtrOutput {
- return pulumi.ToOutputWithContext(ctx, i).(DocumentdbReadReplicaPrivateNetworkPtrOutput)
-}
-
-type DocumentdbReadReplicaPrivateNetworkOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbReadReplicaPrivateNetworkOutput) ElementType() reflect.Type {
- return reflect.TypeOf((*DocumentdbReadReplicaPrivateNetwork)(nil)).Elem()
-}
-
-func (o DocumentdbReadReplicaPrivateNetworkOutput) ToDocumentdbReadReplicaPrivateNetworkOutput() DocumentdbReadReplicaPrivateNetworkOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaPrivateNetworkOutput) ToDocumentdbReadReplicaPrivateNetworkOutputWithContext(ctx context.Context) DocumentdbReadReplicaPrivateNetworkOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaPrivateNetworkOutput) ToDocumentdbReadReplicaPrivateNetworkPtrOutput() DocumentdbReadReplicaPrivateNetworkPtrOutput {
- return o.ToDocumentdbReadReplicaPrivateNetworkPtrOutputWithContext(context.Background())
-}
-
-func (o DocumentdbReadReplicaPrivateNetworkOutput) ToDocumentdbReadReplicaPrivateNetworkPtrOutputWithContext(ctx context.Context) DocumentdbReadReplicaPrivateNetworkPtrOutput {
- return o.ApplyTWithContext(ctx, func(_ context.Context, v DocumentdbReadReplicaPrivateNetwork) *DocumentdbReadReplicaPrivateNetwork {
- return &v
- }).(DocumentdbReadReplicaPrivateNetworkPtrOutput)
-}
-
-// The ID of the endpoint of the read replica.
-func (o DocumentdbReadReplicaPrivateNetworkOutput) EndpointId() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaPrivateNetwork) *string { return v.EndpointId }).(pulumi.StringPtrOutput)
-}
-
-// Hostname of the endpoint. Only one of ip and hostname may be set.
-func (o DocumentdbReadReplicaPrivateNetworkOutput) Hostname() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaPrivateNetwork) *string { return v.Hostname }).(pulumi.StringPtrOutput)
-}
-
-// IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
-func (o DocumentdbReadReplicaPrivateNetworkOutput) Ip() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaPrivateNetwork) *string { return v.Ip }).(pulumi.StringPtrOutput)
-}
-
-// Name of the endpoint.
-func (o DocumentdbReadReplicaPrivateNetworkOutput) Name() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaPrivateNetwork) *string { return v.Name }).(pulumi.StringPtrOutput)
-}
-
-// TCP port of the endpoint.
-func (o DocumentdbReadReplicaPrivateNetworkOutput) Port() pulumi.IntPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaPrivateNetwork) *int { return v.Port }).(pulumi.IntPtrOutput)
-}
-
-// UUID of the private network to be connected to the read replica.
-func (o DocumentdbReadReplicaPrivateNetworkOutput) PrivateNetworkId() pulumi.StringOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaPrivateNetwork) string { return v.PrivateNetworkId }).(pulumi.StringOutput)
-}
-
-// The IP network address within the private subnet. This must be an IPv4 address with a
-// CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM)
-// service if not set.
-func (o DocumentdbReadReplicaPrivateNetworkOutput) ServiceIp() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaPrivateNetwork) *string { return v.ServiceIp }).(pulumi.StringPtrOutput)
-}
-
-// Private network zone
-func (o DocumentdbReadReplicaPrivateNetworkOutput) Zone() pulumi.StringPtrOutput {
- return o.ApplyT(func(v DocumentdbReadReplicaPrivateNetwork) *string { return v.Zone }).(pulumi.StringPtrOutput)
-}
-
-type DocumentdbReadReplicaPrivateNetworkPtrOutput struct{ *pulumi.OutputState }
-
-func (DocumentdbReadReplicaPrivateNetworkPtrOutput) ElementType() reflect.Type {
- return reflect.TypeOf((**DocumentdbReadReplicaPrivateNetwork)(nil)).Elem()
-}
-
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) ToDocumentdbReadReplicaPrivateNetworkPtrOutput() DocumentdbReadReplicaPrivateNetworkPtrOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) ToDocumentdbReadReplicaPrivateNetworkPtrOutputWithContext(ctx context.Context) DocumentdbReadReplicaPrivateNetworkPtrOutput {
- return o
-}
-
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) Elem() DocumentdbReadReplicaPrivateNetworkOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaPrivateNetwork) DocumentdbReadReplicaPrivateNetwork {
- if v != nil {
- return *v
- }
- var ret DocumentdbReadReplicaPrivateNetwork
- return ret
- }).(DocumentdbReadReplicaPrivateNetworkOutput)
-}
-
-// The ID of the endpoint of the read replica.
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) EndpointId() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.EndpointId
- }).(pulumi.StringPtrOutput)
-}
-
-// Hostname of the endpoint. Only one of ip and hostname may be set.
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) Hostname() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.Hostname
- }).(pulumi.StringPtrOutput)
-}
-
-// IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) Ip() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.Ip
- }).(pulumi.StringPtrOutput)
-}
-
-// Name of the endpoint.
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) Name() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.Name
- }).(pulumi.StringPtrOutput)
-}
-
-// TCP port of the endpoint.
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) Port() pulumi.IntPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaPrivateNetwork) *int {
- if v == nil {
- return nil
- }
- return v.Port
- }).(pulumi.IntPtrOutput)
-}
-
-// UUID of the private network to be connected to the read replica.
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) PrivateNetworkId() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return &v.PrivateNetworkId
- }).(pulumi.StringPtrOutput)
-}
-
-// The IP network address within the private subnet. This must be an IPv4 address with a
-// CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM)
-// service if not set.
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) ServiceIp() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.ServiceIp
- }).(pulumi.StringPtrOutput)
-}
-
-// Private network zone
-func (o DocumentdbReadReplicaPrivateNetworkPtrOutput) Zone() pulumi.StringPtrOutput {
- return o.ApplyT(func(v *DocumentdbReadReplicaPrivateNetwork) *string {
- if v == nil {
- return nil
- }
- return v.Zone
- }).(pulumi.StringPtrOutput)
-}
-
type DomainRecordGeoIp struct {
// The list of matches
Matches []DomainRecordGeoIpMatch `pulumi:"matches"`
@@ -26506,12 +25764,6 @@ func init() {
pulumi.RegisterInputType(reflect.TypeOf((*DatabaseReadReplicaDirectAccessPtrInput)(nil)).Elem(), DatabaseReadReplicaDirectAccessArgs{})
pulumi.RegisterInputType(reflect.TypeOf((*DatabaseReadReplicaPrivateNetworkInput)(nil)).Elem(), DatabaseReadReplicaPrivateNetworkArgs{})
pulumi.RegisterInputType(reflect.TypeOf((*DatabaseReadReplicaPrivateNetworkPtrInput)(nil)).Elem(), DatabaseReadReplicaPrivateNetworkArgs{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbPrivateNetworkEndpointPrivateNetworkInput)(nil)).Elem(), DocumentdbPrivateNetworkEndpointPrivateNetworkArgs{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbPrivateNetworkEndpointPrivateNetworkPtrInput)(nil)).Elem(), DocumentdbPrivateNetworkEndpointPrivateNetworkArgs{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbReadReplicaDirectAccessInput)(nil)).Elem(), DocumentdbReadReplicaDirectAccessArgs{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbReadReplicaDirectAccessPtrInput)(nil)).Elem(), DocumentdbReadReplicaDirectAccessArgs{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbReadReplicaPrivateNetworkInput)(nil)).Elem(), DocumentdbReadReplicaPrivateNetworkArgs{})
- pulumi.RegisterInputType(reflect.TypeOf((*DocumentdbReadReplicaPrivateNetworkPtrInput)(nil)).Elem(), DocumentdbReadReplicaPrivateNetworkArgs{})
pulumi.RegisterInputType(reflect.TypeOf((*DomainRecordGeoIpInput)(nil)).Elem(), DomainRecordGeoIpArgs{})
pulumi.RegisterInputType(reflect.TypeOf((*DomainRecordGeoIpPtrInput)(nil)).Elem(), DomainRecordGeoIpArgs{})
pulumi.RegisterInputType(reflect.TypeOf((*DomainRecordGeoIpMatchInput)(nil)).Elem(), DomainRecordGeoIpMatchArgs{})
@@ -26861,12 +26113,6 @@ func init() {
pulumi.RegisterOutputType(DatabaseReadReplicaDirectAccessPtrOutput{})
pulumi.RegisterOutputType(DatabaseReadReplicaPrivateNetworkOutput{})
pulumi.RegisterOutputType(DatabaseReadReplicaPrivateNetworkPtrOutput{})
- pulumi.RegisterOutputType(DocumentdbPrivateNetworkEndpointPrivateNetworkOutput{})
- pulumi.RegisterOutputType(DocumentdbPrivateNetworkEndpointPrivateNetworkPtrOutput{})
- pulumi.RegisterOutputType(DocumentdbReadReplicaDirectAccessOutput{})
- pulumi.RegisterOutputType(DocumentdbReadReplicaDirectAccessPtrOutput{})
- pulumi.RegisterOutputType(DocumentdbReadReplicaPrivateNetworkOutput{})
- pulumi.RegisterOutputType(DocumentdbReadReplicaPrivateNetworkPtrOutput{})
pulumi.RegisterOutputType(DomainRecordGeoIpOutput{})
pulumi.RegisterOutputType(DomainRecordGeoIpPtrOutput{})
pulumi.RegisterOutputType(DomainRecordGeoIpMatchOutput{})
diff --git a/sdk/nodejs/cockpitAlertManager.ts b/sdk/nodejs/cockpitAlertManager.ts
index b9b18507..8919ee69 100644
--- a/sdk/nodejs/cockpitAlertManager.ts
+++ b/sdk/nodejs/cockpitAlertManager.ts
@@ -13,6 +13,33 @@ import * as utilities from "./utilities";
*
* ## Example Usage
*
+ * ### Enable the alert manager and configure managed alerts
+ *
+ * The following commands allow you to:
+ *
+ * - enable the alert manager in a Project named `tfTestProject`
+ * - enable [managed alerts](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#managed-alerts)
+ * - set up [contact points](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#contact-points) to receive alert notifications
+ *
+ * ```typescript
+ * import * as pulumi from "@pulumi/pulumi";
+ * import * as scaleway from "@pulumiverse/scaleway";
+ *
+ * const project = new scaleway.AccountProject("project", {name: "tf_test_project"});
+ * const alertManager = new scaleway.CockpitAlertManager("alert_manager", {
+ * projectId: project.id,
+ * enableManagedAlerts: true,
+ * contactPoints: [
+ * {
+ * email: "alert1@example.com",
+ * },
+ * {
+ * email: "alert2@example.com",
+ * },
+ * ],
+ * });
+ * ```
+ *
* ## Import
*
* This section explains how to import alert managers using the ID of the Project associated with Cockpit.
diff --git a/sdk/nodejs/documentdbDatabase.ts b/sdk/nodejs/documentdbDatabase.ts
deleted file mode 100644
index d0f132f0..00000000
--- a/sdk/nodejs/documentdbDatabase.ts
+++ /dev/null
@@ -1,197 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-import * as pulumi from "@pulumi/pulumi";
-import * as utilities from "./utilities";
-
-/**
- * Creates and manages Scaleway DocumentDB database.
- *
- * ## Example Usage
- *
- * ### Basic
- *
- * ```typescript
- * import * as pulumi from "@pulumi/pulumi";
- * import * as scaleway from "@pulumiverse/scaleway";
- *
- * const instance = new scaleway.DocumentdbInstance("instance", {
- * name: "test-document_db-basic",
- * nodeType: "docdb-play2-pico",
- * engine: "FerretDB-1",
- * userName: "my_initial_user",
- * password: "thiZ_is_v&ry_s3cret",
- * volumeSizeInGb: 20,
- * });
- * const main = new scaleway.DocumentdbDatabase("main", {
- * instanceId: instance.id,
- * name: "my-new-database",
- * });
- * ```
- *
- * ## Import
- *
- * DocumentDB Database can be imported using the `{region}/{id}/{DBNAME}`, e.g.
- *
- * bash
- *
- * ```sh
- * $ pulumi import scaleway:index/documentdbDatabase:DocumentdbDatabase mydb fr-par/11111111-1111-1111-1111-111111111111/mydb
- * ```
- */
-export class DocumentdbDatabase extends pulumi.CustomResource {
- /**
- * Get an existing DocumentdbDatabase resource's state with the given name, ID, and optional extra
- * properties used to qualify the lookup.
- *
- * @param name The _unique_ name of the resulting resource.
- * @param id The _unique_ provider ID of the resource to lookup.
- * @param state Any extra arguments used during the lookup.
- * @param opts Optional settings to control the behavior of the CustomResource.
- */
- public static get(name: string, id: pulumi.Input, state?: DocumentdbDatabaseState, opts?: pulumi.CustomResourceOptions): DocumentdbDatabase {
- return new DocumentdbDatabase(name, state, { ...opts, id: id });
- }
-
- /** @internal */
- public static readonly __pulumiType = 'scaleway:index/documentdbDatabase:DocumentdbDatabase';
-
- /**
- * Returns true if the given object is an instance of DocumentdbDatabase. This is designed to work even
- * when multiple copies of the Pulumi SDK have been loaded into the same process.
- */
- public static isInstance(obj: any): obj is DocumentdbDatabase {
- if (obj === undefined || obj === null) {
- return false;
- }
- return obj['__pulumiType'] === DocumentdbDatabase.__pulumiType;
- }
-
- /**
- * UUID of the documentdb instance.
- *
- * > **Important:** Updates to `instanceId` will recreate the Database.
- */
- public readonly instanceId!: pulumi.Output;
- /**
- * Whether the database is managed or not.
- */
- public /*out*/ readonly managed!: pulumi.Output;
- /**
- * Name of the database (e.g. `my-new-database`).
- */
- public readonly name!: pulumi.Output;
- /**
- * The name of the owner of the database.
- */
- public /*out*/ readonly owner!: pulumi.Output;
- /**
- * The projectId you want to attach the resource to
- */
- public readonly projectId!: pulumi.Output;
- /**
- * `region`) The region in which the resource exists.
- */
- public readonly region!: pulumi.Output;
- /**
- * Size in gigabytes of the database.
- */
- public /*out*/ readonly size!: pulumi.Output;
-
- /**
- * Create a DocumentdbDatabase resource with the given unique name, arguments, and options.
- *
- * @param name The _unique_ name of the resource.
- * @param args The arguments to use to populate this resource's properties.
- * @param opts A bag of options that control this resource's behavior.
- */
- constructor(name: string, args: DocumentdbDatabaseArgs, opts?: pulumi.CustomResourceOptions)
- constructor(name: string, argsOrState?: DocumentdbDatabaseArgs | DocumentdbDatabaseState, opts?: pulumi.CustomResourceOptions) {
- let resourceInputs: pulumi.Inputs = {};
- opts = opts || {};
- if (opts.id) {
- const state = argsOrState as DocumentdbDatabaseState | undefined;
- resourceInputs["instanceId"] = state ? state.instanceId : undefined;
- resourceInputs["managed"] = state ? state.managed : undefined;
- resourceInputs["name"] = state ? state.name : undefined;
- resourceInputs["owner"] = state ? state.owner : undefined;
- resourceInputs["projectId"] = state ? state.projectId : undefined;
- resourceInputs["region"] = state ? state.region : undefined;
- resourceInputs["size"] = state ? state.size : undefined;
- } else {
- const args = argsOrState as DocumentdbDatabaseArgs | undefined;
- if ((!args || args.instanceId === undefined) && !opts.urn) {
- throw new Error("Missing required property 'instanceId'");
- }
- resourceInputs["instanceId"] = args ? args.instanceId : undefined;
- resourceInputs["name"] = args ? args.name : undefined;
- resourceInputs["projectId"] = args ? args.projectId : undefined;
- resourceInputs["region"] = args ? args.region : undefined;
- resourceInputs["managed"] = undefined /*out*/;
- resourceInputs["owner"] = undefined /*out*/;
- resourceInputs["size"] = undefined /*out*/;
- }
- opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
- super(DocumentdbDatabase.__pulumiType, name, resourceInputs, opts);
- }
-}
-
-/**
- * Input properties used for looking up and filtering DocumentdbDatabase resources.
- */
-export interface DocumentdbDatabaseState {
- /**
- * UUID of the documentdb instance.
- *
- * > **Important:** Updates to `instanceId` will recreate the Database.
- */
- instanceId?: pulumi.Input;
- /**
- * Whether the database is managed or not.
- */
- managed?: pulumi.Input;
- /**
- * Name of the database (e.g. `my-new-database`).
- */
- name?: pulumi.Input;
- /**
- * The name of the owner of the database.
- */
- owner?: pulumi.Input;
- /**
- * The projectId you want to attach the resource to
- */
- projectId?: pulumi.Input;
- /**
- * `region`) The region in which the resource exists.
- */
- region?: pulumi.Input;
- /**
- * Size in gigabytes of the database.
- */
- size?: pulumi.Input;
-}
-
-/**
- * The set of arguments for constructing a DocumentdbDatabase resource.
- */
-export interface DocumentdbDatabaseArgs {
- /**
- * UUID of the documentdb instance.
- *
- * > **Important:** Updates to `instanceId` will recreate the Database.
- */
- instanceId: pulumi.Input;
- /**
- * Name of the database (e.g. `my-new-database`).
- */
- name?: pulumi.Input;
- /**
- * The projectId you want to attach the resource to
- */
- projectId?: pulumi.Input;
- /**
- * `region`) The region in which the resource exists.
- */
- region?: pulumi.Input;
-}
diff --git a/sdk/nodejs/documentdbInstance.ts b/sdk/nodejs/documentdbInstance.ts
deleted file mode 100644
index bd3c3b94..00000000
--- a/sdk/nodejs/documentdbInstance.ts
+++ /dev/null
@@ -1,312 +0,0 @@
-// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-import * as pulumi from "@pulumi/pulumi";
-import * as utilities from "./utilities";
-
-/**
- * Creates and manages Scaleway Database Instances.
- *
- * ## Example Usage
- *
- * ### Example Basic
- *
- * ```typescript
- * import * as pulumi from "@pulumi/pulumi";
- * import * as scaleway from "@pulumiverse/scaleway";
- *
- * const main = new scaleway.DocumentdbInstance("main", {
- * name: "test-documentdb-instance-basic",
- * nodeType: "docdb-play2-pico",
- * engine: "FerretDB-1",
- * userName: "my_initial_user",
- * password: "thiZ_is_v&ry_s3cret",
- * tags: [
- * "terraform-test",
- * "scaleway_documentdb_instance",
- * "minimal",
- * ],
- * volumeSizeInGb: 20,
- * });
- * ```
- *
- * ## Import
- *
- * Database Instance can be imported using the `{region}/{id}`, e.g.
- *
- * bash
- *
- * ```sh
- * $ pulumi import scaleway:index/documentdbInstance:DocumentdbInstance db fr-par/11111111-1111-1111-1111-111111111111
- * ```
- */
-export class DocumentdbInstance extends pulumi.CustomResource {
- /**
- * Get an existing DocumentdbInstance resource's state with the given name, ID, and optional extra
- * properties used to qualify the lookup.
- *
- * @param name The _unique_ name of the resulting resource.
- * @param id The _unique_ provider ID of the resource to lookup.
- * @param state Any extra arguments used during the lookup.
- * @param opts Optional settings to control the behavior of the CustomResource.
- */
- public static get(name: string, id: pulumi.Input, state?: DocumentdbInstanceState, opts?: pulumi.CustomResourceOptions): DocumentdbInstance {
- return new DocumentdbInstance(name, state, { ...opts, id: id });
- }
-
- /** @internal */
- public static readonly __pulumiType = 'scaleway:index/documentdbInstance:DocumentdbInstance';
-
- /**
- * Returns true if the given object is an instance of DocumentdbInstance. This is designed to work even
- * when multiple copies of the Pulumi SDK have been loaded into the same process.
- */
- public static isInstance(obj: any): obj is DocumentdbInstance {
- if (obj === undefined || obj === null) {
- return false;
- }
- return obj['__pulumiType'] === DocumentdbInstance.__pulumiType;
- }
-
- /**
- * Database Instance's engine version (e.g. `FerretDB-1`).
- *
- * > **Important:** Updates to `engine` will recreate the Database Instance.
- */
- public readonly engine!: pulumi.Output;
- /**
- * Enable or disable high availability for the database instance.
- */
- public readonly isHaCluster!: pulumi.Output;
- /**
- * The name of the Database Instance.
- */
- public readonly name!: pulumi.Output;
- /**
- * The type of database instance you want to create (e.g. `docdb-play2-pico`).
- *
- * > **Important:** Updates to `nodeType` will upgrade the Database Instance to the desired `nodeType` without any
- * interruption. Keep in mind that you cannot downgrade a Database Instance.
- */
- public readonly nodeType!: pulumi.Output;
- /**
- * Password for the first user of the database instance.
- */
- public readonly password!: pulumi.Output;
- /**
- * `projectId`) The ID of the project the Database
- * Instance is associated with.
- */
- public readonly projectId!: pulumi.Output;
- /**
- * `region`) The region
- * in which the Database Instance should be created.
- */
- public readonly region!: pulumi.Output;
- /**
- * The tags associated with the Database Instance.
- */
- public readonly tags!: pulumi.Output;
- /**
- * Enable telemetry to collects basic anonymous usage data and sends them to FerretDB telemetry service. More about the telemetry [here](https://docs.ferretdb.io/telemetry/#configure-telemetry).
- *
- * > **Important:** Updates to `isHaCluster` will recreate the Database Instance.
- */
- public readonly telemetryEnabled!: pulumi.Output;
- /**
- * Identifier for the first user of the database instance.
- *
- * > **Important:** Updates to `userName` will recreate the Database Instance.
- */
- public readonly userName!: pulumi.Output;
- /**
- * Volume size (in GB) when `volumeType` is set to `bssd`.
- */
- public readonly volumeSizeInGb!: pulumi.Output;
- /**
- * Type of volume where data are stored (`bssd` or `lssd`).
- */
- public readonly volumeType!: pulumi.Output;
-
- /**
- * Create a DocumentdbInstance resource with the given unique name, arguments, and options.
- *
- * @param name The _unique_ name of the resource.
- * @param args The arguments to use to populate this resource's properties.
- * @param opts A bag of options that control this resource's behavior.
- */
- constructor(name: string, args: DocumentdbInstanceArgs, opts?: pulumi.CustomResourceOptions)
- constructor(name: string, argsOrState?: DocumentdbInstanceArgs | DocumentdbInstanceState, opts?: pulumi.CustomResourceOptions) {
- let resourceInputs: pulumi.Inputs = {};
- opts = opts || {};
- if (opts.id) {
- const state = argsOrState as DocumentdbInstanceState | undefined;
- resourceInputs["engine"] = state ? state.engine : undefined;
- resourceInputs["isHaCluster"] = state ? state.isHaCluster : undefined;
- resourceInputs["name"] = state ? state.name : undefined;
- resourceInputs["nodeType"] = state ? state.nodeType : undefined;
- resourceInputs["password"] = state ? state.password : undefined;
- resourceInputs["projectId"] = state ? state.projectId : undefined;
- resourceInputs["region"] = state ? state.region : undefined;
- resourceInputs["tags"] = state ? state.tags : undefined;
- resourceInputs["telemetryEnabled"] = state ? state.telemetryEnabled : undefined;
- resourceInputs["userName"] = state ? state.userName : undefined;
- resourceInputs["volumeSizeInGb"] = state ? state.volumeSizeInGb : undefined;
- resourceInputs["volumeType"] = state ? state.volumeType : undefined;
- } else {
- const args = argsOrState as DocumentdbInstanceArgs | undefined;
- if ((!args || args.engine === undefined) && !opts.urn) {
- throw new Error("Missing required property 'engine'");
- }
- if ((!args || args.nodeType === undefined) && !opts.urn) {
- throw new Error("Missing required property 'nodeType'");
- }
- resourceInputs["engine"] = args ? args.engine : undefined;
- resourceInputs["isHaCluster"] = args ? args.isHaCluster : undefined;
- resourceInputs["name"] = args ? args.name : undefined;
- resourceInputs["nodeType"] = args ? args.nodeType : undefined;
- resourceInputs["password"] = args?.password ? pulumi.secret(args.password) : undefined;
- resourceInputs["projectId"] = args ? args.projectId : undefined;
- resourceInputs["region"] = args ? args.region : undefined;
- resourceInputs["tags"] = args ? args.tags : undefined;
- resourceInputs["telemetryEnabled"] = args ? args.telemetryEnabled : undefined;
- resourceInputs["userName"] = args ? args.userName : undefined;
- resourceInputs["volumeSizeInGb"] = args ? args.volumeSizeInGb : undefined;
- resourceInputs["volumeType"] = args ? args.volumeType : undefined;
- }
- opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
- const secretOpts = { additionalSecretOutputs: ["password"] };
- opts = pulumi.mergeOptions(opts, secretOpts);
- super(DocumentdbInstance.__pulumiType, name, resourceInputs, opts);
- }
-}
-
-/**
- * Input properties used for looking up and filtering DocumentdbInstance resources.
- */
-export interface DocumentdbInstanceState {
- /**
- * Database Instance's engine version (e.g. `FerretDB-1`).
- *
- * > **Important:** Updates to `engine` will recreate the Database Instance.
- */
- engine?: pulumi.Input;
- /**
- * Enable or disable high availability for the database instance.
- */
- isHaCluster?: pulumi.Input