diff --git a/.pulumi-java-gen.version b/.pulumi-java-gen.version index 7092c7c4..92e0c743 100644 --- a/.pulumi-java-gen.version +++ b/.pulumi-java-gen.version @@ -1 +1 @@ -0.15.0 \ No newline at end of file +0.16.1 \ No newline at end of file diff --git a/provider/cmd/pulumi-resource-digitalocean/bridge-metadata.json b/provider/cmd/pulumi-resource-digitalocean/bridge-metadata.json index 540e8651..852797f1 100644 --- a/provider/cmd/pulumi-resource-digitalocean/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-digitalocean/bridge-metadata.json @@ -81,6 +81,16 @@ "logtail": { "maxItemsOne": true }, + "open_search": { + "maxItemsOne": true, + "elem": { + "fields": { + "basic_auth": { + "maxItemsOne": true + } + } + } + }, "papertrail": { "maxItemsOne": true } @@ -181,6 +191,16 @@ "logtail": { "maxItemsOne": true }, + "open_search": { + "maxItemsOne": true, + "elem": { + "fields": { + "basic_auth": { + "maxItemsOne": true + } + } + } + }, "papertrail": { "maxItemsOne": true } @@ -271,6 +291,16 @@ "logtail": { "maxItemsOne": true }, + "open_search": { + "maxItemsOne": true, + "elem": { + "fields": { + "basic_auth": { + "maxItemsOne": true + } + } + } + }, "papertrail": { "maxItemsOne": true } @@ -363,6 +393,16 @@ "logtail": { "maxItemsOne": true }, + "open_search": { + "maxItemsOne": true, + "elem": { + "fields": { + "basic_auth": { + "maxItemsOne": true + } + } + } + }, "papertrail": { "maxItemsOne": true } @@ -990,6 +1030,16 @@ "logtail": { "maxItemsOne": true }, + "open_search": { + "maxItemsOne": true, + "elem": { + "fields": { + "basic_auth": { + "maxItemsOne": true + } + } + } + }, "papertrail": { "maxItemsOne": true } @@ -1090,6 +1140,16 @@ "logtail": { "maxItemsOne": true }, + "open_search": { + "maxItemsOne": true, + "elem": { + "fields": { + "basic_auth": { + "maxItemsOne": true + } + } + } + }, "papertrail": { "maxItemsOne": true } @@ -1180,6 +1240,16 @@ "logtail": { "maxItemsOne": true }, + "open_search": { + "maxItemsOne": true, + "elem": { + "fields": { + "basic_auth": { + "maxItemsOne": true + } + } + } + }, "papertrail": { "maxItemsOne": true } @@ -1272,6 +1342,16 @@ "logtail": { "maxItemsOne": true }, + "open_search": { + "maxItemsOne": true, + "elem": { + "fields": { + "basic_auth": { + "maxItemsOne": true + } + } + } + }, "papertrail": { "maxItemsOne": true } @@ -1904,7 +1984,15 @@ } } }, - "auto-settings": {}, + "auto-settings": { + "resources": { + "digitalocean_database_postgresql_config": { + "maxItemsOneOverrides": { + "timescaledb": false + } + } + } + }, "renames": { "resources": { "digitalocean:index/app:App": "digitalocean_app", diff --git a/provider/cmd/pulumi-resource-digitalocean/schema.json b/provider/cmd/pulumi-resource-digitalocean/schema.json index 0dc0611e..6dc1c4d6 100644 --- a/provider/cmd/pulumi-resource-digitalocean/schema.json +++ b/provider/cmd/pulumi-resource-digitalocean/schema.json @@ -145,7 +145,7 @@ "items": { "$ref": "#/types/digitalocean:index/AppSpecAlert:AppSpecAlert" }, - "description": "Describes an alert policy for the app.\n" + "description": "Describes an alert policy for the component.\n" }, "databases": { "type": "array", @@ -179,7 +179,7 @@ "items": { "$ref": "#/types/digitalocean:index/AppSpecEnv:AppSpecEnv" }, - "description": "Describes an app-wide environment variable made available to all components.\n" + "description": "Describes an environment variable made available to an app competent.\n" }, "features": { "type": "array", @@ -206,7 +206,7 @@ }, "name": { "type": "string", - "description": "The name of the app. Must be unique across all apps in the same account.\n" + "description": "The name of the component.\n" }, "region": { "type": "string", @@ -255,7 +255,7 @@ }, "rule": { "type": "string", - "description": "The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`.\n" + "description": "The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`.\n" } }, "type": "object", @@ -390,7 +390,7 @@ }, "git": { "$ref": "#/types/digitalocean:index/AppSpecFunctionGit:AppSpecFunctionGit", - "description": "A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set.\n" + "description": "A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set.\n" }, "github": { "$ref": "#/types/digitalocean:index/AppSpecFunctionGithub:AppSpecFunctionGithub", @@ -614,6 +614,10 @@ "type": "string", "description": "Name of the log destination. Minimum length: 2. Maximum length: 42.\n" }, + "openSearch": { + "$ref": "#/types/digitalocean:index/AppSpecFunctionLogDestinationOpenSearch:AppSpecFunctionLogDestinationOpenSearch", + "description": "OpenSearch configuration.\n" + }, "papertrail": { "$ref": "#/types/digitalocean:index/AppSpecFunctionLogDestinationPapertrail:AppSpecFunctionLogDestinationPapertrail", "description": "Papertrail configuration.\n" @@ -644,7 +648,7 @@ "properties": { "token": { "type": "string", - "description": "Logtail token.\n\nA `database` can contain:\n" + "description": "Logtail token.\n" } }, "type": "object", @@ -652,6 +656,44 @@ "token" ] }, + "digitalocean:index/AppSpecFunctionLogDestinationOpenSearch:AppSpecFunctionLogDestinationOpenSearch": { + "properties": { + "basicAuth": { + "$ref": "#/types/digitalocean:index/AppSpecFunctionLogDestinationOpenSearchBasicAuth:AppSpecFunctionLogDestinationOpenSearchBasicAuth", + "description": "Basic authentication details.\n" + }, + "clusterName": { + "type": "string", + "description": "The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.\n" + }, + "endpoint": { + "type": "string", + "description": "OpenSearch endpoint.\n" + }, + "indexName": { + "type": "string", + "description": "OpenSearch index name.\n" + } + }, + "type": "object", + "required": [ + "basicAuth" + ] + }, + "digitalocean:index/AppSpecFunctionLogDestinationOpenSearchBasicAuth:AppSpecFunctionLogDestinationOpenSearchBasicAuth": { + "properties": { + "password": { + "type": "string", + "description": "Password for basic authentication.\n", + "secret": true + }, + "user": { + "type": "string", + "description": "user for basic authentication.\n" + } + }, + "type": "object" + }, "digitalocean:index/AppSpecFunctionLogDestinationPapertrail:AppSpecFunctionLogDestinationPapertrail": { "properties": { "endpoint": { @@ -756,21 +798,21 @@ "properties": { "allowCredentials": { "type": "boolean", - "description": "Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header.\n" + "description": "Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header.\n" }, "allowHeaders": { "type": "array", "items": { "type": "string" }, - "description": "The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header.\n" + "description": "The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header.\n" }, "allowMethods": { "type": "array", "items": { "type": "string" }, - "description": "The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header.\n" + "description": "The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header.\n" }, "allowOrigins": { "$ref": "#/types/digitalocean:index/AppSpecIngressRuleCorsAllowOrigins:AppSpecIngressRuleCorsAllowOrigins", @@ -781,7 +823,7 @@ "items": { "type": "string" }, - "description": "The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header.\n" + "description": "The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header.\n" }, "maxAge": { "type": "string", @@ -895,7 +937,7 @@ }, "git": { "$ref": "#/types/digitalocean:index/AppSpecJobGit:AppSpecJobGit", - "description": "A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set.\n" + "description": "A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set.\n" }, "github": { "$ref": "#/types/digitalocean:index/AppSpecJobGithub:AppSpecJobGithub", @@ -1122,6 +1164,10 @@ "type": "string", "description": "Name of the log destination. Minimum length: 2. Maximum length: 42.\n" }, + "openSearch": { + "$ref": "#/types/digitalocean:index/AppSpecJobLogDestinationOpenSearch:AppSpecJobLogDestinationOpenSearch", + "description": "OpenSearch configuration.\n" + }, "papertrail": { "$ref": "#/types/digitalocean:index/AppSpecJobLogDestinationPapertrail:AppSpecJobLogDestinationPapertrail", "description": "Papertrail configuration.\n" @@ -1152,7 +1198,7 @@ "properties": { "token": { "type": "string", - "description": "Logtail token.\n\nA `database` can contain:\n" + "description": "Logtail token.\n" } }, "type": "object", @@ -1160,6 +1206,44 @@ "token" ] }, + "digitalocean:index/AppSpecJobLogDestinationOpenSearch:AppSpecJobLogDestinationOpenSearch": { + "properties": { + "basicAuth": { + "$ref": "#/types/digitalocean:index/AppSpecJobLogDestinationOpenSearchBasicAuth:AppSpecJobLogDestinationOpenSearchBasicAuth", + "description": "Basic authentication details.\n" + }, + "clusterName": { + "type": "string", + "description": "The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.\n" + }, + "endpoint": { + "type": "string", + "description": "OpenSearch endpoint.\n" + }, + "indexName": { + "type": "string", + "description": "OpenSearch index name.\n" + } + }, + "type": "object", + "required": [ + "basicAuth" + ] + }, + "digitalocean:index/AppSpecJobLogDestinationOpenSearchBasicAuth:AppSpecJobLogDestinationOpenSearchBasicAuth": { + "properties": { + "password": { + "type": "string", + "description": "Password for basic authentication.\n", + "secret": true + }, + "user": { + "type": "string", + "description": "user for basic authentication.\n" + } + }, + "type": "object" + }, "digitalocean:index/AppSpecJobLogDestinationPapertrail:AppSpecJobLogDestinationPapertrail": { "properties": { "endpoint": { @@ -1211,7 +1295,7 @@ }, "git": { "$ref": "#/types/digitalocean:index/AppSpecServiceGit:AppSpecServiceGit", - "description": "A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set.\n" + "description": "A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set.\n" }, "github": { "$ref": "#/types/digitalocean:index/AppSpecServiceGithub:AppSpecServiceGithub", @@ -1600,6 +1684,10 @@ "type": "string", "description": "Name of the log destination. Minimum length: 2. Maximum length: 42.\n" }, + "openSearch": { + "$ref": "#/types/digitalocean:index/AppSpecServiceLogDestinationOpenSearch:AppSpecServiceLogDestinationOpenSearch", + "description": "OpenSearch configuration.\n" + }, "papertrail": { "$ref": "#/types/digitalocean:index/AppSpecServiceLogDestinationPapertrail:AppSpecServiceLogDestinationPapertrail", "description": "Papertrail configuration.\n" @@ -1630,7 +1718,7 @@ "properties": { "token": { "type": "string", - "description": "Logtail token.\n\nA `database` can contain:\n" + "description": "Logtail token.\n" } }, "type": "object", @@ -1638,6 +1726,44 @@ "token" ] }, + "digitalocean:index/AppSpecServiceLogDestinationOpenSearch:AppSpecServiceLogDestinationOpenSearch": { + "properties": { + "basicAuth": { + "$ref": "#/types/digitalocean:index/AppSpecServiceLogDestinationOpenSearchBasicAuth:AppSpecServiceLogDestinationOpenSearchBasicAuth", + "description": "Basic authentication details.\n" + }, + "clusterName": { + "type": "string", + "description": "The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.\n" + }, + "endpoint": { + "type": "string", + "description": "OpenSearch endpoint.\n" + }, + "indexName": { + "type": "string", + "description": "OpenSearch index name.\n" + } + }, + "type": "object", + "required": [ + "basicAuth" + ] + }, + "digitalocean:index/AppSpecServiceLogDestinationOpenSearchBasicAuth:AppSpecServiceLogDestinationOpenSearchBasicAuth": { + "properties": { + "password": { + "type": "string", + "description": "Password for basic authentication.\n", + "secret": true + }, + "user": { + "type": "string", + "description": "user for basic authentication.\n" + } + }, + "type": "object" + }, "digitalocean:index/AppSpecServiceLogDestinationPapertrail:AppSpecServiceLogDestinationPapertrail": { "properties": { "endpoint": { @@ -1699,7 +1825,7 @@ }, "git": { "$ref": "#/types/digitalocean:index/AppSpecStaticSiteGit:AppSpecStaticSiteGit", - "description": "A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set.\n" + "description": "A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set.\n" }, "github": { "$ref": "#/types/digitalocean:index/AppSpecStaticSiteGithub:AppSpecStaticSiteGithub", @@ -1922,7 +2048,7 @@ }, "git": { "$ref": "#/types/digitalocean:index/AppSpecWorkerGit:AppSpecWorkerGit", - "description": "A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set.\n" + "description": "A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set.\n" }, "github": { "$ref": "#/types/digitalocean:index/AppSpecWorkerGithub:AppSpecWorkerGithub", @@ -2145,6 +2271,10 @@ "type": "string", "description": "Name of the log destination. Minimum length: 2. Maximum length: 42.\n" }, + "openSearch": { + "$ref": "#/types/digitalocean:index/AppSpecWorkerLogDestinationOpenSearch:AppSpecWorkerLogDestinationOpenSearch", + "description": "OpenSearch configuration.\n" + }, "papertrail": { "$ref": "#/types/digitalocean:index/AppSpecWorkerLogDestinationPapertrail:AppSpecWorkerLogDestinationPapertrail", "description": "Papertrail configuration.\n" @@ -2175,7 +2305,7 @@ "properties": { "token": { "type": "string", - "description": "Logtail token.\n\nA `database` can contain:\n" + "description": "Logtail token.\n" } }, "type": "object", @@ -2183,6 +2313,44 @@ "token" ] }, + "digitalocean:index/AppSpecWorkerLogDestinationOpenSearch:AppSpecWorkerLogDestinationOpenSearch": { + "properties": { + "basicAuth": { + "$ref": "#/types/digitalocean:index/AppSpecWorkerLogDestinationOpenSearchBasicAuth:AppSpecWorkerLogDestinationOpenSearchBasicAuth", + "description": "Basic authentication details.\n" + }, + "clusterName": { + "type": "string", + "description": "The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.\n" + }, + "endpoint": { + "type": "string", + "description": "OpenSearch endpoint.\n" + }, + "indexName": { + "type": "string", + "description": "OpenSearch index name.\n" + } + }, + "type": "object", + "required": [ + "basicAuth" + ] + }, + "digitalocean:index/AppSpecWorkerLogDestinationOpenSearchBasicAuth:AppSpecWorkerLogDestinationOpenSearchBasicAuth": { + "properties": { + "password": { + "type": "string", + "description": "Password for basic authentication.\n", + "secret": true + }, + "user": { + "type": "string", + "description": "user for basic authentication.\n" + } + }, + "type": "object" + }, "digitalocean:index/AppSpecWorkerLogDestinationPapertrail:AppSpecWorkerLogDestinationPapertrail": { "properties": { "endpoint": { @@ -2439,9 +2607,8 @@ }, "digitalocean:index/DatabasePostgresqlConfigTimescaledb:DatabasePostgresqlConfigTimescaledb": { "properties": { - "timescaledb": { - "type": "integer", - "description": "TimescaleDB extension configuration values\n" + "maxBackgroundWorkers": { + "type": "integer" } }, "type": "object" @@ -3823,6 +3990,10 @@ "type": "string", "description": "The name of the component.\n" }, + "openSearch": { + "$ref": "#/types/digitalocean:index/getAppSpecFunctionLogDestinationOpenSearch:getAppSpecFunctionLogDestinationOpenSearch", + "description": "OpenSearch configuration.\n" + }, "papertrail": { "$ref": "#/types/digitalocean:index/getAppSpecFunctionLogDestinationPapertrail:getAppSpecFunctionLogDestinationPapertrail", "description": "Papertrail configuration.\n" @@ -3846,7 +4017,7 @@ }, "endpoint": { "type": "string", - "description": "Datadog HTTP log intake endpoint.\n" + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" } }, "type": "object", @@ -3876,11 +4047,54 @@ } } }, + "digitalocean:index/getAppSpecFunctionLogDestinationOpenSearch:getAppSpecFunctionLogDestinationOpenSearch": { + "properties": { + "basicAuth": { + "$ref": "#/types/digitalocean:index/getAppSpecFunctionLogDestinationOpenSearchBasicAuth:getAppSpecFunctionLogDestinationOpenSearchBasicAuth", + "description": "OpenSearch basic auth\n" + }, + "clusterName": { + "type": "string", + "description": "The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.\n" + }, + "endpoint": { + "type": "string", + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" + }, + "indexName": { + "type": "string", + "description": "The index name to use for the logs. If not set, the default index name is \\\"logs\\\".\n" + } + }, + "type": "object", + "required": [ + "basicAuth" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "digitalocean:index/getAppSpecFunctionLogDestinationOpenSearchBasicAuth:getAppSpecFunctionLogDestinationOpenSearchBasicAuth": { + "properties": { + "password": { + "type": "string", + "description": "Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster.\n", + "secret": true + }, + "user": { + "type": "string", + "description": "Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set.\n" + } + }, + "type": "object" + }, "digitalocean:index/getAppSpecFunctionLogDestinationPapertrail:getAppSpecFunctionLogDestinationPapertrail": { "properties": { "endpoint": { "type": "string", - "description": "Datadog HTTP log intake endpoint.\n" + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" } }, "type": "object", @@ -4355,6 +4569,10 @@ "type": "string", "description": "The name of the component.\n" }, + "openSearch": { + "$ref": "#/types/digitalocean:index/getAppSpecJobLogDestinationOpenSearch:getAppSpecJobLogDestinationOpenSearch", + "description": "OpenSearch configuration.\n" + }, "papertrail": { "$ref": "#/types/digitalocean:index/getAppSpecJobLogDestinationPapertrail:getAppSpecJobLogDestinationPapertrail", "description": "Papertrail configuration.\n" @@ -4378,7 +4596,7 @@ }, "endpoint": { "type": "string", - "description": "Datadog HTTP log intake endpoint.\n" + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" } }, "type": "object", @@ -4408,11 +4626,54 @@ } } }, + "digitalocean:index/getAppSpecJobLogDestinationOpenSearch:getAppSpecJobLogDestinationOpenSearch": { + "properties": { + "basicAuth": { + "$ref": "#/types/digitalocean:index/getAppSpecJobLogDestinationOpenSearchBasicAuth:getAppSpecJobLogDestinationOpenSearchBasicAuth", + "description": "OpenSearch basic auth\n" + }, + "clusterName": { + "type": "string", + "description": "The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.\n" + }, + "endpoint": { + "type": "string", + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" + }, + "indexName": { + "type": "string", + "description": "The index name to use for the logs. If not set, the default index name is \\\"logs\\\".\n" + } + }, + "type": "object", + "required": [ + "basicAuth" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "digitalocean:index/getAppSpecJobLogDestinationOpenSearchBasicAuth:getAppSpecJobLogDestinationOpenSearchBasicAuth": { + "properties": { + "password": { + "type": "string", + "description": "Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster.\n", + "secret": true + }, + "user": { + "type": "string", + "description": "Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set.\n" + } + }, + "type": "object" + }, "digitalocean:index/getAppSpecJobLogDestinationPapertrail:getAppSpecJobLogDestinationPapertrail": { "properties": { "endpoint": { "type": "string", - "description": "Datadog HTTP log intake endpoint.\n" + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" } }, "type": "object", @@ -4863,6 +5124,10 @@ "type": "string", "description": "The name of the component.\n" }, + "openSearch": { + "$ref": "#/types/digitalocean:index/getAppSpecServiceLogDestinationOpenSearch:getAppSpecServiceLogDestinationOpenSearch", + "description": "OpenSearch configuration.\n" + }, "papertrail": { "$ref": "#/types/digitalocean:index/getAppSpecServiceLogDestinationPapertrail:getAppSpecServiceLogDestinationPapertrail", "description": "Papertrail configuration.\n" @@ -4886,7 +5151,7 @@ }, "endpoint": { "type": "string", - "description": "Datadog HTTP log intake endpoint.\n" + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" } }, "type": "object", @@ -4916,11 +5181,54 @@ } } }, + "digitalocean:index/getAppSpecServiceLogDestinationOpenSearch:getAppSpecServiceLogDestinationOpenSearch": { + "properties": { + "basicAuth": { + "$ref": "#/types/digitalocean:index/getAppSpecServiceLogDestinationOpenSearchBasicAuth:getAppSpecServiceLogDestinationOpenSearchBasicAuth", + "description": "OpenSearch basic auth\n" + }, + "clusterName": { + "type": "string", + "description": "The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.\n" + }, + "endpoint": { + "type": "string", + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" + }, + "indexName": { + "type": "string", + "description": "The index name to use for the logs. If not set, the default index name is \\\"logs\\\".\n" + } + }, + "type": "object", + "required": [ + "basicAuth" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "digitalocean:index/getAppSpecServiceLogDestinationOpenSearchBasicAuth:getAppSpecServiceLogDestinationOpenSearchBasicAuth": { + "properties": { + "password": { + "type": "string", + "description": "Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster.\n", + "secret": true + }, + "user": { + "type": "string", + "description": "Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set.\n" + } + }, + "type": "object" + }, "digitalocean:index/getAppSpecServiceLogDestinationPapertrail:getAppSpecServiceLogDestinationPapertrail": { "properties": { "endpoint": { "type": "string", - "description": "Datadog HTTP log intake endpoint.\n" + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" } }, "type": "object", @@ -5434,6 +5742,10 @@ "type": "string", "description": "The name of the component.\n" }, + "openSearch": { + "$ref": "#/types/digitalocean:index/getAppSpecWorkerLogDestinationOpenSearch:getAppSpecWorkerLogDestinationOpenSearch", + "description": "OpenSearch configuration.\n" + }, "papertrail": { "$ref": "#/types/digitalocean:index/getAppSpecWorkerLogDestinationPapertrail:getAppSpecWorkerLogDestinationPapertrail", "description": "Papertrail configuration.\n" @@ -5457,7 +5769,7 @@ }, "endpoint": { "type": "string", - "description": "Datadog HTTP log intake endpoint.\n" + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" } }, "type": "object", @@ -5487,11 +5799,54 @@ } } }, + "digitalocean:index/getAppSpecWorkerLogDestinationOpenSearch:getAppSpecWorkerLogDestinationOpenSearch": { + "properties": { + "basicAuth": { + "$ref": "#/types/digitalocean:index/getAppSpecWorkerLogDestinationOpenSearchBasicAuth:getAppSpecWorkerLogDestinationOpenSearchBasicAuth", + "description": "OpenSearch basic auth\n" + }, + "clusterName": { + "type": "string", + "description": "The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.\n" + }, + "endpoint": { + "type": "string", + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" + }, + "indexName": { + "type": "string", + "description": "The index name to use for the logs. If not set, the default index name is \\\"logs\\\".\n" + } + }, + "type": "object", + "required": [ + "basicAuth" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "digitalocean:index/getAppSpecWorkerLogDestinationOpenSearchBasicAuth:getAppSpecWorkerLogDestinationOpenSearchBasicAuth": { + "properties": { + "password": { + "type": "string", + "description": "Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster.\n", + "secret": true + }, + "user": { + "type": "string", + "description": "Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set.\n" + } + }, + "type": "object" + }, "digitalocean:index/getAppSpecWorkerLogDestinationPapertrail:getAppSpecWorkerLogDestinationPapertrail": { "properties": { "endpoint": { "type": "string", - "description": "Datadog HTTP log intake endpoint.\n" + "description": "OpenSearch API Endpoint. Only HTTPS is supported. Format: https://\u003chost\u003e:\u003cport\u003e.\n" } }, "type": "object", @@ -7860,7 +8215,7 @@ }, "resources": { "digitalocean:index/app:App": { - "description": "Provides a DigitalOcean App resource.\n\n## Example Usage\n\nTo create an app, provide a [DigitalOcean app spec](https://docs.digitalocean.com/products/app-platform/reference/app-spec/) specifying the app's components.\n\n### Basic Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst golang_sample = new digitalocean.App(\"golang-sample\", {spec: {\n name: \"golang-sample\",\n region: \"ams\",\n services: [{\n name: \"go-service\",\n environmentSlug: \"go\",\n instanceCount: 1,\n instanceSizeSlug: \"professional-xs\",\n git: {\n repoCloneUrl: \"https://github.com/digitalocean/sample-golang.git\",\n branch: \"main\",\n },\n }],\n}});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\ngolang_sample = digitalocean.App(\"golang-sample\", spec={\n \"name\": \"golang-sample\",\n \"region\": \"ams\",\n \"services\": [{\n \"name\": \"go-service\",\n \"environment_slug\": \"go\",\n \"instance_count\": 1,\n \"instance_size_slug\": \"professional-xs\",\n \"git\": {\n \"repo_clone_url\": \"https://github.com/digitalocean/sample-golang.git\",\n \"branch\": \"main\",\n },\n }],\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var golang_sample = new DigitalOcean.App(\"golang-sample\", new()\n {\n Spec = new DigitalOcean.Inputs.AppSpecArgs\n {\n Name = \"golang-sample\",\n Region = \"ams\",\n Services = new[]\n {\n new DigitalOcean.Inputs.AppSpecServiceArgs\n {\n Name = \"go-service\",\n EnvironmentSlug = \"go\",\n InstanceCount = 1,\n InstanceSizeSlug = \"professional-xs\",\n Git = new DigitalOcean.Inputs.AppSpecServiceGitArgs\n {\n RepoCloneUrl = \"https://github.com/digitalocean/sample-golang.git\",\n Branch = \"main\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewApp(ctx, \"golang-sample\", \u0026digitalocean.AppArgs{\n\t\t\tSpec: \u0026digitalocean.AppSpecArgs{\n\t\t\t\tName: pulumi.String(\"golang-sample\"),\n\t\t\t\tRegion: pulumi.String(\"ams\"),\n\t\t\t\tServices: digitalocean.AppSpecServiceArray{\n\t\t\t\t\t\u0026digitalocean.AppSpecServiceArgs{\n\t\t\t\t\t\tName: pulumi.String(\"go-service\"),\n\t\t\t\t\t\tEnvironmentSlug: pulumi.String(\"go\"),\n\t\t\t\t\t\tInstanceCount: pulumi.Int(1),\n\t\t\t\t\t\tInstanceSizeSlug: pulumi.String(\"professional-xs\"),\n\t\t\t\t\t\tGit: \u0026digitalocean.AppSpecServiceGitArgs{\n\t\t\t\t\t\t\tRepoCloneUrl: pulumi.String(\"https://github.com/digitalocean/sample-golang.git\"),\n\t\t\t\t\t\t\tBranch: pulumi.String(\"main\"),\n\t\t\t\t\t\t},\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\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.digitalocean.App;\nimport com.pulumi.digitalocean.AppArgs;\nimport com.pulumi.digitalocean.inputs.AppSpecArgs;\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 golang_sample = new App(\"golang-sample\", AppArgs.builder()\n .spec(AppSpecArgs.builder()\n .name(\"golang-sample\")\n .region(\"ams\")\n .services(AppSpecServiceArgs.builder()\n .name(\"go-service\")\n .environmentSlug(\"go\")\n .instanceCount(1)\n .instanceSizeSlug(\"professional-xs\")\n .git(AppSpecServiceGitArgs.builder()\n .repoCloneUrl(\"https://github.com/digitalocean/sample-golang.git\")\n .branch(\"main\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n golang-sample:\n type: digitalocean:App\n properties:\n spec:\n name: golang-sample\n region: ams\n services:\n - name: go-service\n environmentSlug: go\n instanceCount: 1\n instanceSizeSlug: professional-xs\n git:\n repoCloneUrl: https://github.com/digitalocean/sample-golang.git\n branch: main\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Static Site Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst static_site_example = new digitalocean.App(\"static-site-example\", {spec: {\n name: \"static-site-example\",\n region: \"ams\",\n staticSites: [{\n name: \"sample-jekyll\",\n buildCommand: \"bundle exec jekyll build -d ./public\",\n outputDir: \"/public\",\n git: {\n repoCloneUrl: \"https://github.com/digitalocean/sample-jekyll.git\",\n branch: \"main\",\n },\n }],\n}});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nstatic_site_example = digitalocean.App(\"static-site-example\", spec={\n \"name\": \"static-site-example\",\n \"region\": \"ams\",\n \"static_sites\": [{\n \"name\": \"sample-jekyll\",\n \"build_command\": \"bundle exec jekyll build -d ./public\",\n \"output_dir\": \"/public\",\n \"git\": {\n \"repo_clone_url\": \"https://github.com/digitalocean/sample-jekyll.git\",\n \"branch\": \"main\",\n },\n }],\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var static_site_example = new DigitalOcean.App(\"static-site-example\", new()\n {\n Spec = new DigitalOcean.Inputs.AppSpecArgs\n {\n Name = \"static-site-example\",\n Region = \"ams\",\n StaticSites = new[]\n {\n new DigitalOcean.Inputs.AppSpecStaticSiteArgs\n {\n Name = \"sample-jekyll\",\n BuildCommand = \"bundle exec jekyll build -d ./public\",\n OutputDir = \"/public\",\n Git = new DigitalOcean.Inputs.AppSpecStaticSiteGitArgs\n {\n RepoCloneUrl = \"https://github.com/digitalocean/sample-jekyll.git\",\n Branch = \"main\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewApp(ctx, \"static-site-example\", \u0026digitalocean.AppArgs{\n\t\t\tSpec: \u0026digitalocean.AppSpecArgs{\n\t\t\t\tName: pulumi.String(\"static-site-example\"),\n\t\t\t\tRegion: pulumi.String(\"ams\"),\n\t\t\t\tStaticSites: digitalocean.AppSpecStaticSiteArray{\n\t\t\t\t\t\u0026digitalocean.AppSpecStaticSiteArgs{\n\t\t\t\t\t\tName: pulumi.String(\"sample-jekyll\"),\n\t\t\t\t\t\tBuildCommand: pulumi.String(\"bundle exec jekyll build -d ./public\"),\n\t\t\t\t\t\tOutputDir: pulumi.String(\"/public\"),\n\t\t\t\t\t\tGit: \u0026digitalocean.AppSpecStaticSiteGitArgs{\n\t\t\t\t\t\t\tRepoCloneUrl: pulumi.String(\"https://github.com/digitalocean/sample-jekyll.git\"),\n\t\t\t\t\t\t\tBranch: pulumi.String(\"main\"),\n\t\t\t\t\t\t},\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\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.digitalocean.App;\nimport com.pulumi.digitalocean.AppArgs;\nimport com.pulumi.digitalocean.inputs.AppSpecArgs;\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 static_site_example = new App(\"static-site-example\", AppArgs.builder()\n .spec(AppSpecArgs.builder()\n .name(\"static-site-example\")\n .region(\"ams\")\n .staticSites(AppSpecStaticSiteArgs.builder()\n .name(\"sample-jekyll\")\n .buildCommand(\"bundle exec jekyll build -d ./public\")\n .outputDir(\"/public\")\n .git(AppSpecStaticSiteGitArgs.builder()\n .repoCloneUrl(\"https://github.com/digitalocean/sample-jekyll.git\")\n .branch(\"main\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n static-site-example:\n type: digitalocean:App\n properties:\n spec:\n name: static-site-example\n region: ams\n staticSites:\n - name: sample-jekyll\n buildCommand: bundle exec jekyll build -d ./public\n outputDir: /public\n git:\n repoCloneUrl: https://github.com/digitalocean/sample-jekyll.git\n branch: main\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Multiple Components Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.digitalocean.App;\nimport com.pulumi.digitalocean.AppArgs;\nimport com.pulumi.digitalocean.inputs.AppSpecArgs;\nimport com.pulumi.digitalocean.inputs.AppSpecIngressArgs;\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 mono_repo_example = new App(\"mono-repo-example\", AppArgs.builder()\n .spec(AppSpecArgs.builder()\n .name(\"mono-repo-example\")\n .region(\"ams\")\n .domains(Map.of(\"name\", \"foo.example.com\"))\n .alerts(AppSpecAlertArgs.builder()\n .rule(\"DEPLOYMENT_FAILED\")\n .build())\n .services(AppSpecServiceArgs.builder()\n .name(\"api\")\n .environmentSlug(\"go\")\n .instanceCount(2)\n .instanceSizeSlug(\"professional-xs\")\n .github(AppSpecServiceGithubArgs.builder()\n .branch(\"main\")\n .deployOnPush(true)\n .repo(\"username/repo\")\n .build())\n .sourceDir(\"api/\")\n .httpPort(3000)\n .alerts(AppSpecServiceAlertArgs.builder()\n .value(75)\n .operator(\"GREATER_THAN\")\n .window(\"TEN_MINUTES\")\n .rule(\"CPU_UTILIZATION\")\n .build())\n .logDestinations(AppSpecServiceLogDestinationArgs.builder()\n .name(\"MyLogs\")\n .papertrail(AppSpecServiceLogDestinationPapertrailArgs.builder()\n .endpoint(\"syslog+tls://example.com:12345\")\n .build())\n .build())\n .runCommand(\"bin/api\")\n .build())\n .staticSites(AppSpecStaticSiteArgs.builder()\n .name(\"web\")\n .buildCommand(\"npm run build\")\n .github(AppSpecStaticSiteGithubArgs.builder()\n .branch(\"main\")\n .deployOnPush(true)\n .repo(\"username/repo\")\n .build())\n .build())\n .databases(AppSpecDatabaseArgs.builder()\n .name(\"starter-db\")\n .engine(\"PG\")\n .production(false)\n .build())\n .ingress(AppSpecIngressArgs.builder()\n .rules( \n AppSpecIngressRuleArgs.builder()\n .component(AppSpecIngressRuleComponentArgs.builder()\n .name(\"api\")\n .build())\n .match(AppSpecIngressRuleMatchArgs.builder()\n .path(AppSpecIngressRuleMatchPathArgs.builder()\n .prefix(\"/api\")\n .build())\n .build())\n .build(),\n AppSpecIngressRuleArgs.builder()\n .component(AppSpecIngressRuleComponentArgs.builder()\n .name(\"web\")\n .build())\n .match(AppSpecIngressRuleMatchArgs.builder()\n .path(AppSpecIngressRuleMatchPathArgs.builder()\n .prefix(\"/\")\n .build())\n .build())\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mono-repo-example:\n type: digitalocean:App\n properties:\n spec:\n name: mono-repo-example\n region: ams\n domains:\n - name: foo.example.com\n alerts:\n - rule: DEPLOYMENT_FAILED\n services:\n - name: api\n environmentSlug: go\n instanceCount: 2\n instanceSizeSlug: professional-xs\n github:\n branch: main\n deployOnPush: true\n repo: username/repo\n sourceDir: api/\n httpPort: 3000\n alerts:\n - value: 75\n operator: GREATER_THAN\n window: TEN_MINUTES\n rule: CPU_UTILIZATION\n logDestinations:\n - name: MyLogs\n papertrail:\n endpoint: syslog+tls://example.com:12345\n runCommand: bin/api\n staticSites:\n - name: web\n buildCommand: npm run build\n github:\n branch: main\n deployOnPush: true\n repo: username/repo\n databases:\n - name: starter-db\n engine: PG\n production: false\n ingress:\n rules:\n - component:\n name: api\n match:\n path:\n prefix: /api\n - component:\n name: web\n match:\n path:\n prefix: /\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAn app can be imported using its `id`, e.g.\n\n```sh\n$ pulumi import digitalocean:index/app:App myapp fb06ad00-351f-45c8-b5eb-13523c438661\n```\n\n", + "description": "Provides a DigitalOcean App resource.\n\n## Example Usage\n\nTo create an app, provide a [DigitalOcean app spec](https://docs.digitalocean.com/products/app-platform/reference/app-spec/) specifying the app's components.\n\n### Basic Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst golang_sample = new digitalocean.App(\"golang-sample\", {spec: {\n name: \"golang-sample\",\n region: \"ams\",\n services: [{\n name: \"go-service\",\n instanceCount: 1,\n instanceSizeSlug: \"apps-s-1vcpu-1gb\",\n git: {\n repoCloneUrl: \"https://github.com/digitalocean/sample-golang.git\",\n branch: \"main\",\n },\n }],\n}});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\ngolang_sample = digitalocean.App(\"golang-sample\", spec={\n \"name\": \"golang-sample\",\n \"region\": \"ams\",\n \"services\": [{\n \"name\": \"go-service\",\n \"instance_count\": 1,\n \"instance_size_slug\": \"apps-s-1vcpu-1gb\",\n \"git\": {\n \"repo_clone_url\": \"https://github.com/digitalocean/sample-golang.git\",\n \"branch\": \"main\",\n },\n }],\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var golang_sample = new DigitalOcean.App(\"golang-sample\", new()\n {\n Spec = new DigitalOcean.Inputs.AppSpecArgs\n {\n Name = \"golang-sample\",\n Region = \"ams\",\n Services = new[]\n {\n new DigitalOcean.Inputs.AppSpecServiceArgs\n {\n Name = \"go-service\",\n InstanceCount = 1,\n InstanceSizeSlug = \"apps-s-1vcpu-1gb\",\n Git = new DigitalOcean.Inputs.AppSpecServiceGitArgs\n {\n RepoCloneUrl = \"https://github.com/digitalocean/sample-golang.git\",\n Branch = \"main\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewApp(ctx, \"golang-sample\", \u0026digitalocean.AppArgs{\n\t\t\tSpec: \u0026digitalocean.AppSpecArgs{\n\t\t\t\tName: pulumi.String(\"golang-sample\"),\n\t\t\t\tRegion: pulumi.String(\"ams\"),\n\t\t\t\tServices: digitalocean.AppSpecServiceArray{\n\t\t\t\t\t\u0026digitalocean.AppSpecServiceArgs{\n\t\t\t\t\t\tName: pulumi.String(\"go-service\"),\n\t\t\t\t\t\tInstanceCount: pulumi.Int(1),\n\t\t\t\t\t\tInstanceSizeSlug: pulumi.String(\"apps-s-1vcpu-1gb\"),\n\t\t\t\t\t\tGit: \u0026digitalocean.AppSpecServiceGitArgs{\n\t\t\t\t\t\t\tRepoCloneUrl: pulumi.String(\"https://github.com/digitalocean/sample-golang.git\"),\n\t\t\t\t\t\t\tBranch: pulumi.String(\"main\"),\n\t\t\t\t\t\t},\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\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.digitalocean.App;\nimport com.pulumi.digitalocean.AppArgs;\nimport com.pulumi.digitalocean.inputs.AppSpecArgs;\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 golang_sample = new App(\"golang-sample\", AppArgs.builder()\n .spec(AppSpecArgs.builder()\n .name(\"golang-sample\")\n .region(\"ams\")\n .services(AppSpecServiceArgs.builder()\n .name(\"go-service\")\n .instanceCount(1)\n .instanceSizeSlug(\"apps-s-1vcpu-1gb\")\n .git(AppSpecServiceGitArgs.builder()\n .repoCloneUrl(\"https://github.com/digitalocean/sample-golang.git\")\n .branch(\"main\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n golang-sample:\n type: digitalocean:App\n properties:\n spec:\n name: golang-sample\n region: ams\n services:\n - name: go-service\n instanceCount: 1\n instanceSizeSlug: apps-s-1vcpu-1gb\n git:\n repoCloneUrl: https://github.com/digitalocean/sample-golang.git\n branch: main\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Static Site Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst static_site_example = new digitalocean.App(\"static-site-example\", {spec: {\n name: \"static-site-example\",\n region: \"ams\",\n staticSites: [{\n name: \"sample-jekyll\",\n buildCommand: \"bundle exec jekyll build -d ./public\",\n outputDir: \"/public\",\n git: {\n repoCloneUrl: \"https://github.com/digitalocean/sample-jekyll.git\",\n branch: \"main\",\n },\n }],\n}});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nstatic_site_example = digitalocean.App(\"static-site-example\", spec={\n \"name\": \"static-site-example\",\n \"region\": \"ams\",\n \"static_sites\": [{\n \"name\": \"sample-jekyll\",\n \"build_command\": \"bundle exec jekyll build -d ./public\",\n \"output_dir\": \"/public\",\n \"git\": {\n \"repo_clone_url\": \"https://github.com/digitalocean/sample-jekyll.git\",\n \"branch\": \"main\",\n },\n }],\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var static_site_example = new DigitalOcean.App(\"static-site-example\", new()\n {\n Spec = new DigitalOcean.Inputs.AppSpecArgs\n {\n Name = \"static-site-example\",\n Region = \"ams\",\n StaticSites = new[]\n {\n new DigitalOcean.Inputs.AppSpecStaticSiteArgs\n {\n Name = \"sample-jekyll\",\n BuildCommand = \"bundle exec jekyll build -d ./public\",\n OutputDir = \"/public\",\n Git = new DigitalOcean.Inputs.AppSpecStaticSiteGitArgs\n {\n RepoCloneUrl = \"https://github.com/digitalocean/sample-jekyll.git\",\n Branch = \"main\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewApp(ctx, \"static-site-example\", \u0026digitalocean.AppArgs{\n\t\t\tSpec: \u0026digitalocean.AppSpecArgs{\n\t\t\t\tName: pulumi.String(\"static-site-example\"),\n\t\t\t\tRegion: pulumi.String(\"ams\"),\n\t\t\t\tStaticSites: digitalocean.AppSpecStaticSiteArray{\n\t\t\t\t\t\u0026digitalocean.AppSpecStaticSiteArgs{\n\t\t\t\t\t\tName: pulumi.String(\"sample-jekyll\"),\n\t\t\t\t\t\tBuildCommand: pulumi.String(\"bundle exec jekyll build -d ./public\"),\n\t\t\t\t\t\tOutputDir: pulumi.String(\"/public\"),\n\t\t\t\t\t\tGit: \u0026digitalocean.AppSpecStaticSiteGitArgs{\n\t\t\t\t\t\t\tRepoCloneUrl: pulumi.String(\"https://github.com/digitalocean/sample-jekyll.git\"),\n\t\t\t\t\t\t\tBranch: pulumi.String(\"main\"),\n\t\t\t\t\t\t},\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\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.digitalocean.App;\nimport com.pulumi.digitalocean.AppArgs;\nimport com.pulumi.digitalocean.inputs.AppSpecArgs;\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 static_site_example = new App(\"static-site-example\", AppArgs.builder()\n .spec(AppSpecArgs.builder()\n .name(\"static-site-example\")\n .region(\"ams\")\n .staticSites(AppSpecStaticSiteArgs.builder()\n .name(\"sample-jekyll\")\n .buildCommand(\"bundle exec jekyll build -d ./public\")\n .outputDir(\"/public\")\n .git(AppSpecStaticSiteGitArgs.builder()\n .repoCloneUrl(\"https://github.com/digitalocean/sample-jekyll.git\")\n .branch(\"main\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n static-site-example:\n type: digitalocean:App\n properties:\n spec:\n name: static-site-example\n region: ams\n staticSites:\n - name: sample-jekyll\n buildCommand: bundle exec jekyll build -d ./public\n outputDir: /public\n git:\n repoCloneUrl: https://github.com/digitalocean/sample-jekyll.git\n branch: main\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Multiple Components Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.digitalocean.App;\nimport com.pulumi.digitalocean.AppArgs;\nimport com.pulumi.digitalocean.inputs.AppSpecArgs;\nimport com.pulumi.digitalocean.inputs.AppSpecIngressArgs;\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 mono_repo_example = new App(\"mono-repo-example\", AppArgs.builder()\n .spec(AppSpecArgs.builder()\n .name(\"mono-repo-example\")\n .region(\"ams\")\n .domains(Map.of(\"name\", \"foo.example.com\"))\n .alerts(AppSpecAlertArgs.builder()\n .rule(\"DEPLOYMENT_FAILED\")\n .build())\n .services(AppSpecServiceArgs.builder()\n .name(\"go-api\")\n .instanceCount(2)\n .instanceSizeSlug(\"apps-s-1vcpu-1gb\")\n .github(AppSpecServiceGithubArgs.builder()\n .branch(\"main\")\n .deployOnPush(true)\n .repo(\"username/repo\")\n .build())\n .sourceDir(\"api/\")\n .httpPort(3000)\n .alerts(AppSpecServiceAlertArgs.builder()\n .value(75)\n .operator(\"GREATER_THAN\")\n .window(\"TEN_MINUTES\")\n .rule(\"CPU_UTILIZATION\")\n .build())\n .logDestinations(AppSpecServiceLogDestinationArgs.builder()\n .name(\"MyLogs\")\n .papertrail(AppSpecServiceLogDestinationPapertrailArgs.builder()\n .endpoint(\"syslog+tls://example.com:12345\")\n .build())\n .build())\n .runCommand(\"bin/api\")\n .build())\n .staticSites(AppSpecStaticSiteArgs.builder()\n .name(\"web\")\n .buildCommand(\"npm run build\")\n .github(AppSpecStaticSiteGithubArgs.builder()\n .branch(\"main\")\n .deployOnPush(true)\n .repo(\"username/repo\")\n .build())\n .build())\n .databases(AppSpecDatabaseArgs.builder()\n .name(\"starter-db\")\n .engine(\"PG\")\n .production(false)\n .build())\n .ingress(AppSpecIngressArgs.builder()\n .rules( \n AppSpecIngressRuleArgs.builder()\n .component(AppSpecIngressRuleComponentArgs.builder()\n .name(\"api\")\n .build())\n .match(AppSpecIngressRuleMatchArgs.builder()\n .path(AppSpecIngressRuleMatchPathArgs.builder()\n .prefix(\"/api\")\n .build())\n .build())\n .build(),\n AppSpecIngressRuleArgs.builder()\n .component(AppSpecIngressRuleComponentArgs.builder()\n .name(\"web\")\n .build())\n .match(AppSpecIngressRuleMatchArgs.builder()\n .path(AppSpecIngressRuleMatchPathArgs.builder()\n .prefix(\"/\")\n .build())\n .build())\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mono-repo-example:\n type: digitalocean:App\n properties:\n spec:\n name: mono-repo-example\n region: ams\n domains:\n - name: foo.example.com\n alerts:\n - rule: DEPLOYMENT_FAILED\n services:\n - name: go-api\n instanceCount: 2\n instanceSizeSlug: apps-s-1vcpu-1gb\n github:\n branch: main\n deployOnPush: true\n repo: username/repo\n sourceDir: api/\n httpPort: 3000\n alerts:\n - value: 75\n operator: GREATER_THAN\n window: TEN_MINUTES\n rule: CPU_UTILIZATION\n logDestinations:\n - name: MyLogs\n papertrail:\n endpoint: syslog+tls://example.com:12345\n runCommand: bin/api\n staticSites:\n - name: web\n buildCommand: npm run build\n github:\n branch: main\n deployOnPush: true\n repo: username/repo\n databases:\n - name: starter-db\n engine: PG\n production: false\n ingress:\n rules:\n - component:\n name: api\n match:\n path:\n prefix: /api\n - component:\n name: web\n match:\n path:\n prefix: /\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Log Destination Example with Opensearch\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst golang_sample = new digitalocean.App(\"golang-sample\", {spec: {\n name: \"golang-sample\",\n region: \"ams\",\n services: [{\n name: \"go-service\",\n instanceCount: 1,\n instanceSizeSlug: \"apps-s-1vcpu-1gb\",\n git: {\n repoCloneUrl: \"https://github.com/digitalocean/sample-golang.git\",\n branch: \"main\",\n },\n logDestinations: [{\n name: \"MyLogs\",\n openSearch: {\n endpoint: \"https://something:1234\",\n basicAuth: {\n user: \"user\",\n password: \"hi\",\n },\n },\n }],\n }],\n}});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\ngolang_sample = digitalocean.App(\"golang-sample\", spec={\n \"name\": \"golang-sample\",\n \"region\": \"ams\",\n \"services\": [{\n \"name\": \"go-service\",\n \"instance_count\": 1,\n \"instance_size_slug\": \"apps-s-1vcpu-1gb\",\n \"git\": {\n \"repo_clone_url\": \"https://github.com/digitalocean/sample-golang.git\",\n \"branch\": \"main\",\n },\n \"log_destinations\": [{\n \"name\": \"MyLogs\",\n \"open_search\": {\n \"endpoint\": \"https://something:1234\",\n \"basic_auth\": {\n \"user\": \"user\",\n \"password\": \"hi\",\n },\n },\n }],\n }],\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var golang_sample = new DigitalOcean.App(\"golang-sample\", new()\n {\n Spec = new DigitalOcean.Inputs.AppSpecArgs\n {\n Name = \"golang-sample\",\n Region = \"ams\",\n Services = new[]\n {\n new DigitalOcean.Inputs.AppSpecServiceArgs\n {\n Name = \"go-service\",\n InstanceCount = 1,\n InstanceSizeSlug = \"apps-s-1vcpu-1gb\",\n Git = new DigitalOcean.Inputs.AppSpecServiceGitArgs\n {\n RepoCloneUrl = \"https://github.com/digitalocean/sample-golang.git\",\n Branch = \"main\",\n },\n LogDestinations = new[]\n {\n new DigitalOcean.Inputs.AppSpecServiceLogDestinationArgs\n {\n Name = \"MyLogs\",\n OpenSearch = new DigitalOcean.Inputs.AppSpecServiceLogDestinationOpenSearchArgs\n {\n Endpoint = \"https://something:1234\",\n BasicAuth = new DigitalOcean.Inputs.AppSpecServiceLogDestinationOpenSearchBasicAuthArgs\n {\n User = \"user\",\n Password = \"hi\",\n },\n },\n },\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewApp(ctx, \"golang-sample\", \u0026digitalocean.AppArgs{\n\t\t\tSpec: \u0026digitalocean.AppSpecArgs{\n\t\t\t\tName: pulumi.String(\"golang-sample\"),\n\t\t\t\tRegion: pulumi.String(\"ams\"),\n\t\t\t\tServices: digitalocean.AppSpecServiceArray{\n\t\t\t\t\t\u0026digitalocean.AppSpecServiceArgs{\n\t\t\t\t\t\tName: pulumi.String(\"go-service\"),\n\t\t\t\t\t\tInstanceCount: pulumi.Int(1),\n\t\t\t\t\t\tInstanceSizeSlug: pulumi.String(\"apps-s-1vcpu-1gb\"),\n\t\t\t\t\t\tGit: \u0026digitalocean.AppSpecServiceGitArgs{\n\t\t\t\t\t\t\tRepoCloneUrl: pulumi.String(\"https://github.com/digitalocean/sample-golang.git\"),\n\t\t\t\t\t\t\tBranch: pulumi.String(\"main\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tLogDestinations: digitalocean.AppSpecServiceLogDestinationArray{\n\t\t\t\t\t\t\t\u0026digitalocean.AppSpecServiceLogDestinationArgs{\n\t\t\t\t\t\t\t\tName: pulumi.String(\"MyLogs\"),\n\t\t\t\t\t\t\t\tOpenSearch: \u0026digitalocean.AppSpecServiceLogDestinationOpenSearchArgs{\n\t\t\t\t\t\t\t\t\tEndpoint: pulumi.String(\"https://something:1234\"),\n\t\t\t\t\t\t\t\t\tBasicAuth: \u0026digitalocean.AppSpecServiceLogDestinationOpenSearchBasicAuthArgs{\n\t\t\t\t\t\t\t\t\t\tUser: pulumi.String(\"user\"),\n\t\t\t\t\t\t\t\t\t\tPassword: pulumi.String(\"hi\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\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\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.digitalocean.App;\nimport com.pulumi.digitalocean.AppArgs;\nimport com.pulumi.digitalocean.inputs.AppSpecArgs;\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 golang_sample = new App(\"golang-sample\", AppArgs.builder()\n .spec(AppSpecArgs.builder()\n .name(\"golang-sample\")\n .region(\"ams\")\n .services(AppSpecServiceArgs.builder()\n .name(\"go-service\")\n .instanceCount(1)\n .instanceSizeSlug(\"apps-s-1vcpu-1gb\")\n .git(AppSpecServiceGitArgs.builder()\n .repoCloneUrl(\"https://github.com/digitalocean/sample-golang.git\")\n .branch(\"main\")\n .build())\n .logDestinations(AppSpecServiceLogDestinationArgs.builder()\n .name(\"MyLogs\")\n .openSearch(AppSpecServiceLogDestinationOpenSearchArgs.builder()\n .endpoint(\"https://something:1234\")\n .basicAuth(AppSpecServiceLogDestinationOpenSearchBasicAuthArgs.builder()\n .user(\"user\")\n .password(\"hi\")\n .build())\n .build())\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n golang-sample:\n type: digitalocean:App\n properties:\n spec:\n name: golang-sample\n region: ams\n services:\n - name: go-service\n instanceCount: 1\n instanceSizeSlug: apps-s-1vcpu-1gb\n git:\n repoCloneUrl: https://github.com/digitalocean/sample-golang.git\n branch: main\n logDestinations:\n - name: MyLogs\n openSearch:\n endpoint: https://something:1234\n basicAuth:\n user: user\n password: hi\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAn app can be imported using its `id`, e.g.\n\n```sh\n$ pulumi import digitalocean:index/app:App myapp fb06ad00-351f-45c8-b5eb-13523c438661\n```\n\n", "properties": { "activeDeploymentId": { "type": "string", @@ -7885,6 +8240,10 @@ "type": "string", "description": "The default URL to access the app.\n" }, + "liveDomain": { + "type": "string", + "description": "The live domain of the app.\n" + }, "liveUrl": { "type": "string", "description": "The live URL of the app.\n" @@ -7907,6 +8266,7 @@ "createdAt", "dedicatedIps", "defaultIngress", + "liveDomain", "liveUrl", "projectId", "updatedAt", @@ -7956,6 +8316,10 @@ "type": "string", "description": "The default URL to access the app.\n" }, + "liveDomain": { + "type": "string", + "description": "The live domain of the app.\n" + }, "liveUrl": { "type": "string", "description": "The live URL of the app.\n" @@ -8607,7 +8971,7 @@ } }, "digitalocean:index/databaseCluster:DatabaseCluster": { - "description": "Provides a DigitalOcean database cluster resource.\n\n## Example Usage\n\n### Create a new PostgreSQL database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst postgres_example = new digitalocean.DatabaseCluster(\"postgres-example\", {\n name: \"example-postgres-cluster\",\n engine: \"pg\",\n version: \"15\",\n size: digitalocean.DatabaseSlug.DB_1VPCU1GB,\n region: digitalocean.Region.NYC1,\n nodeCount: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\npostgres_example = digitalocean.DatabaseCluster(\"postgres-example\",\n name=\"example-postgres-cluster\",\n engine=\"pg\",\n version=\"15\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,\n region=digitalocean.Region.NYC1,\n node_count=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var postgres_example = new DigitalOcean.DatabaseCluster(\"postgres-example\", new()\n {\n Name = \"example-postgres-cluster\",\n Engine = \"pg\",\n Version = \"15\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU1GB,\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"postgres-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-postgres-cluster\"),\n\t\t\tEngine: pulumi.String(\"pg\"),\n\t\t\tVersion: pulumi.String(\"15\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU1GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(1),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 postgres_example = new DatabaseCluster(\"postgres-example\", DatabaseClusterArgs.builder()\n .name(\"example-postgres-cluster\")\n .engine(\"pg\")\n .version(\"15\")\n .size(\"db-s-1vcpu-1gb\")\n .region(\"nyc1\")\n .nodeCount(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n postgres-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-postgres-cluster\n engine: pg\n version: '15'\n size: db-s-1vcpu-1gb\n region: nyc1\n nodeCount: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create a new MySQL database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst mysql_example = new digitalocean.DatabaseCluster(\"mysql-example\", {\n name: \"example-mysql-cluster\",\n engine: \"mysql\",\n version: \"8\",\n size: digitalocean.DatabaseSlug.DB_1VPCU1GB,\n region: digitalocean.Region.NYC1,\n nodeCount: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nmysql_example = digitalocean.DatabaseCluster(\"mysql-example\",\n name=\"example-mysql-cluster\",\n engine=\"mysql\",\n version=\"8\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,\n region=digitalocean.Region.NYC1,\n node_count=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mysql_example = new DigitalOcean.DatabaseCluster(\"mysql-example\", new()\n {\n Name = \"example-mysql-cluster\",\n Engine = \"mysql\",\n Version = \"8\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU1GB,\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"mysql-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-mysql-cluster\"),\n\t\t\tEngine: pulumi.String(\"mysql\"),\n\t\t\tVersion: pulumi.String(\"8\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU1GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(1),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 mysql_example = new DatabaseCluster(\"mysql-example\", DatabaseClusterArgs.builder()\n .name(\"example-mysql-cluster\")\n .engine(\"mysql\")\n .version(\"8\")\n .size(\"db-s-1vcpu-1gb\")\n .region(\"nyc1\")\n .nodeCount(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mysql-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-mysql-cluster\n engine: mysql\n version: '8'\n size: db-s-1vcpu-1gb\n region: nyc1\n nodeCount: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create a new Redis database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst redis_example = new digitalocean.DatabaseCluster(\"redis-example\", {\n name: \"example-redis-cluster\",\n engine: \"redis\",\n version: \"7\",\n size: digitalocean.DatabaseSlug.DB_1VPCU1GB,\n region: digitalocean.Region.NYC1,\n nodeCount: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nredis_example = digitalocean.DatabaseCluster(\"redis-example\",\n name=\"example-redis-cluster\",\n engine=\"redis\",\n version=\"7\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,\n region=digitalocean.Region.NYC1,\n node_count=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var redis_example = new DigitalOcean.DatabaseCluster(\"redis-example\", new()\n {\n Name = \"example-redis-cluster\",\n Engine = \"redis\",\n Version = \"7\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU1GB,\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"redis-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-redis-cluster\"),\n\t\t\tEngine: pulumi.String(\"redis\"),\n\t\t\tVersion: pulumi.String(\"7\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU1GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(1),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 redis_example = new DatabaseCluster(\"redis-example\", DatabaseClusterArgs.builder()\n .name(\"example-redis-cluster\")\n .engine(\"redis\")\n .version(\"7\")\n .size(\"db-s-1vcpu-1gb\")\n .region(\"nyc1\")\n .nodeCount(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n redis-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-redis-cluster\n engine: redis\n version: '7'\n size: db-s-1vcpu-1gb\n region: nyc1\n nodeCount: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create a new Kafka database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst kafka_example = new digitalocean.DatabaseCluster(\"kafka-example\", {\n name: \"example-kafka-cluster\",\n engine: \"kafka\",\n version: \"3.5\",\n size: \"db-s-2vcpu-2gb\",\n region: digitalocean.Region.NYC1,\n nodeCount: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nkafka_example = digitalocean.DatabaseCluster(\"kafka-example\",\n name=\"example-kafka-cluster\",\n engine=\"kafka\",\n version=\"3.5\",\n size=\"db-s-2vcpu-2gb\",\n region=digitalocean.Region.NYC1,\n node_count=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kafka_example = new DigitalOcean.DatabaseCluster(\"kafka-example\", new()\n {\n Name = \"example-kafka-cluster\",\n Engine = \"kafka\",\n Version = \"3.5\",\n Size = \"db-s-2vcpu-2gb\",\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 3,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"kafka-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-kafka-cluster\"),\n\t\t\tEngine: pulumi.String(\"kafka\"),\n\t\t\tVersion: pulumi.String(\"3.5\"),\n\t\t\tSize: pulumi.String(\"db-s-2vcpu-2gb\"),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(3),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 kafka_example = new DatabaseCluster(\"kafka-example\", DatabaseClusterArgs.builder()\n .name(\"example-kafka-cluster\")\n .engine(\"kafka\")\n .version(\"3.5\")\n .size(\"db-s-2vcpu-2gb\")\n .region(\"nyc1\")\n .nodeCount(3)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kafka-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-kafka-cluster\n engine: kafka\n version: '3.5'\n size: db-s-2vcpu-2gb\n region: nyc1\n nodeCount: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create a new MongoDB database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst mongodb_example = new digitalocean.DatabaseCluster(\"mongodb-example\", {\n name: \"example-mongo-cluster\",\n engine: \"mongodb\",\n version: \"6\",\n size: digitalocean.DatabaseSlug.DB_1VPCU1GB,\n region: digitalocean.Region.NYC3,\n nodeCount: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nmongodb_example = digitalocean.DatabaseCluster(\"mongodb-example\",\n name=\"example-mongo-cluster\",\n engine=\"mongodb\",\n version=\"6\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,\n region=digitalocean.Region.NYC3,\n node_count=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mongodb_example = new DigitalOcean.DatabaseCluster(\"mongodb-example\", new()\n {\n Name = \"example-mongo-cluster\",\n Engine = \"mongodb\",\n Version = \"6\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU1GB,\n Region = DigitalOcean.Region.NYC3,\n NodeCount = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"mongodb-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-mongo-cluster\"),\n\t\t\tEngine: pulumi.String(\"mongodb\"),\n\t\t\tVersion: pulumi.String(\"6\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU1GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC3),\n\t\t\tNodeCount: pulumi.Int(1),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 mongodb_example = new DatabaseCluster(\"mongodb-example\", DatabaseClusterArgs.builder()\n .name(\"example-mongo-cluster\")\n .engine(\"mongodb\")\n .version(\"6\")\n .size(\"db-s-1vcpu-1gb\")\n .region(\"nyc3\")\n .nodeCount(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mongodb-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-mongo-cluster\n engine: mongodb\n version: '6'\n size: db-s-1vcpu-1gb\n region: nyc3\n nodeCount: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Create a new database cluster based on a backup of an existing cluster.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst doby = new digitalocean.DatabaseCluster(\"doby\", {\n name: \"dobydb\",\n engine: \"pg\",\n version: \"15\",\n size: digitalocean.DatabaseSlug.DB_1VPCU2GB,\n region: digitalocean.Region.NYC1,\n nodeCount: 1,\n tags: [\"production\"],\n});\nconst dobyBackup = new digitalocean.DatabaseCluster(\"doby_backup\", {\n name: \"dobydupe\",\n engine: \"pg\",\n version: \"15\",\n size: digitalocean.DatabaseSlug.DB_1VPCU2GB,\n region: digitalocean.Region.NYC1,\n nodeCount: 1,\n tags: [\"production\"],\n backupRestore: {\n databaseName: \"dobydb\",\n },\n}, {\n dependsOn: [doby],\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\ndoby = digitalocean.DatabaseCluster(\"doby\",\n name=\"dobydb\",\n engine=\"pg\",\n version=\"15\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,\n region=digitalocean.Region.NYC1,\n node_count=1,\n tags=[\"production\"])\ndoby_backup = digitalocean.DatabaseCluster(\"doby_backup\",\n name=\"dobydupe\",\n engine=\"pg\",\n version=\"15\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,\n region=digitalocean.Region.NYC1,\n node_count=1,\n tags=[\"production\"],\n backup_restore={\n \"database_name\": \"dobydb\",\n },\n opts = pulumi.ResourceOptions(depends_on=[doby]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var doby = new DigitalOcean.DatabaseCluster(\"doby\", new()\n {\n Name = \"dobydb\",\n Engine = \"pg\",\n Version = \"15\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU2GB,\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 1,\n Tags = new[]\n {\n \"production\",\n },\n });\n\n var dobyBackup = new DigitalOcean.DatabaseCluster(\"doby_backup\", new()\n {\n Name = \"dobydupe\",\n Engine = \"pg\",\n Version = \"15\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU2GB,\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 1,\n Tags = new[]\n {\n \"production\",\n },\n BackupRestore = new DigitalOcean.Inputs.DatabaseClusterBackupRestoreArgs\n {\n DatabaseName = \"dobydb\",\n },\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n doby,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdoby, err := digitalocean.NewDatabaseCluster(ctx, \"doby\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"dobydb\"),\n\t\t\tEngine: pulumi.String(\"pg\"),\n\t\t\tVersion: pulumi.String(\"15\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU2GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(1),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"production\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = digitalocean.NewDatabaseCluster(ctx, \"doby_backup\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"dobydupe\"),\n\t\t\tEngine: pulumi.String(\"pg\"),\n\t\t\tVersion: pulumi.String(\"15\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU2GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(1),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"production\"),\n\t\t\t},\n\t\t\tBackupRestore: \u0026digitalocean.DatabaseClusterBackupRestoreArgs{\n\t\t\t\tDatabaseName: pulumi.String(\"dobydb\"),\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tdoby,\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\nimport com.pulumi.digitalocean.inputs.DatabaseClusterBackupRestoreArgs;\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 doby = new DatabaseCluster(\"doby\", DatabaseClusterArgs.builder()\n .name(\"dobydb\")\n .engine(\"pg\")\n .version(\"15\")\n .size(\"db-s-1vcpu-2gb\")\n .region(\"nyc1\")\n .nodeCount(1)\n .tags(\"production\")\n .build());\n\n var dobyBackup = new DatabaseCluster(\"dobyBackup\", DatabaseClusterArgs.builder()\n .name(\"dobydupe\")\n .engine(\"pg\")\n .version(\"15\")\n .size(\"db-s-1vcpu-2gb\")\n .region(\"nyc1\")\n .nodeCount(1)\n .tags(\"production\")\n .backupRestore(DatabaseClusterBackupRestoreArgs.builder()\n .databaseName(\"dobydb\")\n .build())\n .build(), CustomResourceOptions.builder()\n .dependsOn(doby)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n doby:\n type: digitalocean:DatabaseCluster\n properties:\n name: dobydb\n engine: pg\n version: '15'\n size: db-s-1vcpu-2gb\n region: nyc1\n nodeCount: 1\n tags:\n - production\n dobyBackup:\n type: digitalocean:DatabaseCluster\n name: doby_backup\n properties:\n name: dobydupe\n engine: pg\n version: '15'\n size: db-s-1vcpu-2gb\n region: nyc1\n nodeCount: 1\n tags:\n - production\n backupRestore:\n databaseName: dobydb\n options:\n dependson:\n - ${doby}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatabase clusters can be imported using the `id` returned from DigitalOcean, e.g.\n\n```sh\n$ pulumi import digitalocean:index/databaseCluster:DatabaseCluster mycluster 245bcfd0-7f31-4ce6-a2bc-475a116cca97\n```\n\n", + "description": "Provides a DigitalOcean database cluster resource.\n\n## Example Usage\n\n### Create a new PostgreSQL database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst postgres_example = new digitalocean.DatabaseCluster(\"postgres-example\", {\n name: \"example-postgres-cluster\",\n engine: \"pg\",\n version: \"15\",\n size: digitalocean.DatabaseSlug.DB_1VPCU1GB,\n region: digitalocean.Region.NYC1,\n nodeCount: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\npostgres_example = digitalocean.DatabaseCluster(\"postgres-example\",\n name=\"example-postgres-cluster\",\n engine=\"pg\",\n version=\"15\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,\n region=digitalocean.Region.NYC1,\n node_count=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var postgres_example = new DigitalOcean.DatabaseCluster(\"postgres-example\", new()\n {\n Name = \"example-postgres-cluster\",\n Engine = \"pg\",\n Version = \"15\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU1GB,\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"postgres-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-postgres-cluster\"),\n\t\t\tEngine: pulumi.String(\"pg\"),\n\t\t\tVersion: pulumi.String(\"15\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU1GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(1),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 postgres_example = new DatabaseCluster(\"postgres-example\", DatabaseClusterArgs.builder()\n .name(\"example-postgres-cluster\")\n .engine(\"pg\")\n .version(\"15\")\n .size(\"db-s-1vcpu-1gb\")\n .region(\"nyc1\")\n .nodeCount(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n postgres-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-postgres-cluster\n engine: pg\n version: '15'\n size: db-s-1vcpu-1gb\n region: nyc1\n nodeCount: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create a new MySQL database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst mysql_example = new digitalocean.DatabaseCluster(\"mysql-example\", {\n name: \"example-mysql-cluster\",\n engine: \"mysql\",\n version: \"8\",\n size: digitalocean.DatabaseSlug.DB_1VPCU1GB,\n region: digitalocean.Region.NYC1,\n nodeCount: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nmysql_example = digitalocean.DatabaseCluster(\"mysql-example\",\n name=\"example-mysql-cluster\",\n engine=\"mysql\",\n version=\"8\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,\n region=digitalocean.Region.NYC1,\n node_count=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mysql_example = new DigitalOcean.DatabaseCluster(\"mysql-example\", new()\n {\n Name = \"example-mysql-cluster\",\n Engine = \"mysql\",\n Version = \"8\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU1GB,\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"mysql-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-mysql-cluster\"),\n\t\t\tEngine: pulumi.String(\"mysql\"),\n\t\t\tVersion: pulumi.String(\"8\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU1GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(1),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 mysql_example = new DatabaseCluster(\"mysql-example\", DatabaseClusterArgs.builder()\n .name(\"example-mysql-cluster\")\n .engine(\"mysql\")\n .version(\"8\")\n .size(\"db-s-1vcpu-1gb\")\n .region(\"nyc1\")\n .nodeCount(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mysql-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-mysql-cluster\n engine: mysql\n version: '8'\n size: db-s-1vcpu-1gb\n region: nyc1\n nodeCount: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create a new Redis database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst redis_example = new digitalocean.DatabaseCluster(\"redis-example\", {\n name: \"example-redis-cluster\",\n engine: \"redis\",\n version: \"7\",\n size: digitalocean.DatabaseSlug.DB_1VPCU1GB,\n region: digitalocean.Region.NYC1,\n nodeCount: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nredis_example = digitalocean.DatabaseCluster(\"redis-example\",\n name=\"example-redis-cluster\",\n engine=\"redis\",\n version=\"7\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,\n region=digitalocean.Region.NYC1,\n node_count=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var redis_example = new DigitalOcean.DatabaseCluster(\"redis-example\", new()\n {\n Name = \"example-redis-cluster\",\n Engine = \"redis\",\n Version = \"7\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU1GB,\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"redis-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-redis-cluster\"),\n\t\t\tEngine: pulumi.String(\"redis\"),\n\t\t\tVersion: pulumi.String(\"7\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU1GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(1),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 redis_example = new DatabaseCluster(\"redis-example\", DatabaseClusterArgs.builder()\n .name(\"example-redis-cluster\")\n .engine(\"redis\")\n .version(\"7\")\n .size(\"db-s-1vcpu-1gb\")\n .region(\"nyc1\")\n .nodeCount(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n redis-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-redis-cluster\n engine: redis\n version: '7'\n size: db-s-1vcpu-1gb\n region: nyc1\n nodeCount: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create a new Kafka database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst kafka_example = new digitalocean.DatabaseCluster(\"kafka-example\", {\n name: \"example-kafka-cluster\",\n engine: \"kafka\",\n version: \"3.5\",\n size: \"db-s-2vcpu-2gb\",\n region: digitalocean.Region.NYC1,\n nodeCount: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nkafka_example = digitalocean.DatabaseCluster(\"kafka-example\",\n name=\"example-kafka-cluster\",\n engine=\"kafka\",\n version=\"3.5\",\n size=\"db-s-2vcpu-2gb\",\n region=digitalocean.Region.NYC1,\n node_count=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kafka_example = new DigitalOcean.DatabaseCluster(\"kafka-example\", new()\n {\n Name = \"example-kafka-cluster\",\n Engine = \"kafka\",\n Version = \"3.5\",\n Size = \"db-s-2vcpu-2gb\",\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 3,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"kafka-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-kafka-cluster\"),\n\t\t\tEngine: pulumi.String(\"kafka\"),\n\t\t\tVersion: pulumi.String(\"3.5\"),\n\t\t\tSize: pulumi.String(\"db-s-2vcpu-2gb\"),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(3),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 kafka_example = new DatabaseCluster(\"kafka-example\", DatabaseClusterArgs.builder()\n .name(\"example-kafka-cluster\")\n .engine(\"kafka\")\n .version(\"3.5\")\n .size(\"db-s-2vcpu-2gb\")\n .region(\"nyc1\")\n .nodeCount(3)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kafka-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-kafka-cluster\n engine: kafka\n version: '3.5'\n size: db-s-2vcpu-2gb\n region: nyc1\n nodeCount: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create a new MongoDB database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst mongodb_example = new digitalocean.DatabaseCluster(\"mongodb-example\", {\n name: \"example-mongo-cluster\",\n engine: \"mongodb\",\n version: \"6\",\n size: digitalocean.DatabaseSlug.DB_1VPCU1GB,\n region: digitalocean.Region.NYC3,\n nodeCount: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nmongodb_example = digitalocean.DatabaseCluster(\"mongodb-example\",\n name=\"example-mongo-cluster\",\n engine=\"mongodb\",\n version=\"6\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,\n region=digitalocean.Region.NYC3,\n node_count=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mongodb_example = new DigitalOcean.DatabaseCluster(\"mongodb-example\", new()\n {\n Name = \"example-mongo-cluster\",\n Engine = \"mongodb\",\n Version = \"6\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU1GB,\n Region = DigitalOcean.Region.NYC3,\n NodeCount = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"mongodb-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-mongo-cluster\"),\n\t\t\tEngine: pulumi.String(\"mongodb\"),\n\t\t\tVersion: pulumi.String(\"6\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU1GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC3),\n\t\t\tNodeCount: pulumi.Int(1),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 mongodb_example = new DatabaseCluster(\"mongodb-example\", DatabaseClusterArgs.builder()\n .name(\"example-mongo-cluster\")\n .engine(\"mongodb\")\n .version(\"6\")\n .size(\"db-s-1vcpu-1gb\")\n .region(\"nyc3\")\n .nodeCount(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mongodb-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-mongo-cluster\n engine: mongodb\n version: '6'\n size: db-s-1vcpu-1gb\n region: nyc3\n nodeCount: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create a new OpenSearch database cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst opensearch_example = new digitalocean.DatabaseCluster(\"opensearch-example\", {\n name: \"example-opensearch-cluster\",\n engine: \"opensearch\",\n version: \"2\",\n size: digitalocean.DatabaseSlug.DB_1VPCU2GB,\n region: digitalocean.Region.NYC3,\n nodeCount: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\nopensearch_example = digitalocean.DatabaseCluster(\"opensearch-example\",\n name=\"example-opensearch-cluster\",\n engine=\"opensearch\",\n version=\"2\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,\n region=digitalocean.Region.NYC3,\n node_count=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var opensearch_example = new DigitalOcean.DatabaseCluster(\"opensearch-example\", new()\n {\n Name = \"example-opensearch-cluster\",\n Engine = \"opensearch\",\n Version = \"2\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU2GB,\n Region = DigitalOcean.Region.NYC3,\n NodeCount = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := digitalocean.NewDatabaseCluster(ctx, \"opensearch-example\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"example-opensearch-cluster\"),\n\t\t\tEngine: pulumi.String(\"opensearch\"),\n\t\t\tVersion: pulumi.String(\"2\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU2GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC3),\n\t\t\tNodeCount: pulumi.Int(1),\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\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 opensearch_example = new DatabaseCluster(\"opensearch-example\", DatabaseClusterArgs.builder()\n .name(\"example-opensearch-cluster\")\n .engine(\"opensearch\")\n .version(\"2\")\n .size(\"db-s-1vcpu-2gb\")\n .region(\"nyc3\")\n .nodeCount(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n opensearch-example:\n type: digitalocean:DatabaseCluster\n properties:\n name: example-opensearch-cluster\n engine: opensearch\n version: '2'\n size: db-s-1vcpu-2gb\n region: nyc3\n nodeCount: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Create a new database cluster based on a backup of an existing cluster.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as digitalocean from \"@pulumi/digitalocean\";\n\nconst doby = new digitalocean.DatabaseCluster(\"doby\", {\n name: \"dobydb\",\n engine: \"pg\",\n version: \"15\",\n size: digitalocean.DatabaseSlug.DB_1VPCU2GB,\n region: digitalocean.Region.NYC1,\n nodeCount: 1,\n tags: [\"production\"],\n});\nconst dobyBackup = new digitalocean.DatabaseCluster(\"doby_backup\", {\n name: \"dobydupe\",\n engine: \"pg\",\n version: \"15\",\n size: digitalocean.DatabaseSlug.DB_1VPCU2GB,\n region: digitalocean.Region.NYC1,\n nodeCount: 1,\n tags: [\"production\"],\n backupRestore: {\n databaseName: \"dobydb\",\n },\n}, {\n dependsOn: [doby],\n});\n```\n```python\nimport pulumi\nimport pulumi_digitalocean as digitalocean\n\ndoby = digitalocean.DatabaseCluster(\"doby\",\n name=\"dobydb\",\n engine=\"pg\",\n version=\"15\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,\n region=digitalocean.Region.NYC1,\n node_count=1,\n tags=[\"production\"])\ndoby_backup = digitalocean.DatabaseCluster(\"doby_backup\",\n name=\"dobydupe\",\n engine=\"pg\",\n version=\"15\",\n size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,\n region=digitalocean.Region.NYC1,\n node_count=1,\n tags=[\"production\"],\n backup_restore={\n \"database_name\": \"dobydb\",\n },\n opts = pulumi.ResourceOptions(depends_on=[doby]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing DigitalOcean = Pulumi.DigitalOcean;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var doby = new DigitalOcean.DatabaseCluster(\"doby\", new()\n {\n Name = \"dobydb\",\n Engine = \"pg\",\n Version = \"15\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU2GB,\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 1,\n Tags = new[]\n {\n \"production\",\n },\n });\n\n var dobyBackup = new DigitalOcean.DatabaseCluster(\"doby_backup\", new()\n {\n Name = \"dobydupe\",\n Engine = \"pg\",\n Version = \"15\",\n Size = DigitalOcean.DatabaseSlug.DB_1VPCU2GB,\n Region = DigitalOcean.Region.NYC1,\n NodeCount = 1,\n Tags = new[]\n {\n \"production\",\n },\n BackupRestore = new DigitalOcean.Inputs.DatabaseClusterBackupRestoreArgs\n {\n DatabaseName = \"dobydb\",\n },\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n doby,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdoby, err := digitalocean.NewDatabaseCluster(ctx, \"doby\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"dobydb\"),\n\t\t\tEngine: pulumi.String(\"pg\"),\n\t\t\tVersion: pulumi.String(\"15\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU2GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(1),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"production\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = digitalocean.NewDatabaseCluster(ctx, \"doby_backup\", \u0026digitalocean.DatabaseClusterArgs{\n\t\t\tName: pulumi.String(\"dobydupe\"),\n\t\t\tEngine: pulumi.String(\"pg\"),\n\t\t\tVersion: pulumi.String(\"15\"),\n\t\t\tSize: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU2GB),\n\t\t\tRegion: pulumi.String(digitalocean.RegionNYC1),\n\t\t\tNodeCount: pulumi.Int(1),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"production\"),\n\t\t\t},\n\t\t\tBackupRestore: \u0026digitalocean.DatabaseClusterBackupRestoreArgs{\n\t\t\t\tDatabaseName: pulumi.String(\"dobydb\"),\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tdoby,\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.digitalocean.DatabaseCluster;\nimport com.pulumi.digitalocean.DatabaseClusterArgs;\nimport com.pulumi.digitalocean.inputs.DatabaseClusterBackupRestoreArgs;\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 doby = new DatabaseCluster(\"doby\", DatabaseClusterArgs.builder()\n .name(\"dobydb\")\n .engine(\"pg\")\n .version(\"15\")\n .size(\"db-s-1vcpu-2gb\")\n .region(\"nyc1\")\n .nodeCount(1)\n .tags(\"production\")\n .build());\n\n var dobyBackup = new DatabaseCluster(\"dobyBackup\", DatabaseClusterArgs.builder()\n .name(\"dobydupe\")\n .engine(\"pg\")\n .version(\"15\")\n .size(\"db-s-1vcpu-2gb\")\n .region(\"nyc1\")\n .nodeCount(1)\n .tags(\"production\")\n .backupRestore(DatabaseClusterBackupRestoreArgs.builder()\n .databaseName(\"dobydb\")\n .build())\n .build(), CustomResourceOptions.builder()\n .dependsOn(doby)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n doby:\n type: digitalocean:DatabaseCluster\n properties:\n name: dobydb\n engine: pg\n version: '15'\n size: db-s-1vcpu-2gb\n region: nyc1\n nodeCount: 1\n tags:\n - production\n dobyBackup:\n type: digitalocean:DatabaseCluster\n name: doby_backup\n properties:\n name: dobydupe\n engine: pg\n version: '15'\n size: db-s-1vcpu-2gb\n region: nyc1\n nodeCount: 1\n tags:\n - production\n backupRestore:\n databaseName: dobydb\n options:\n dependson:\n - ${doby}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatabase clusters can be imported using the `id` returned from DigitalOcean, e.g.\n\n```sh\n$ pulumi import digitalocean:index/databaseCluster:DatabaseCluster mycluster 245bcfd0-7f31-4ce6-a2bc-475a116cca97\n```\n\n", "properties": { "backupRestore": { "$ref": "#/types/digitalocean:index/DatabaseClusterBackupRestore:DatabaseClusterBackupRestore" @@ -14959,6 +15323,10 @@ "description": "The provider-assigned unique ID for this managed resource.\n", "type": "string" }, + "liveDomain": { + "description": "The live domain of the app.\n", + "type": "string" + }, "liveUrl": { "description": "The live URL of the app.\n", "type": "string" @@ -14989,6 +15357,7 @@ "createdAt", "dedicatedIps", "defaultIngress", + "liveDomain", "liveUrl", "projectId", "specs", diff --git a/sdk/dotnet/App.cs b/sdk/dotnet/App.cs index b725ca72..1940dace 100644 --- a/sdk/dotnet/App.cs +++ b/sdk/dotnet/App.cs @@ -37,9 +37,8 @@ namespace Pulumi.DigitalOcean /// new DigitalOcean.Inputs.AppSpecServiceArgs /// { /// Name = "go-service", - /// EnvironmentSlug = "go", /// InstanceCount = 1, - /// InstanceSizeSlug = "professional-xs", + /// InstanceSizeSlug = "apps-s-1vcpu-1gb", /// Git = new DigitalOcean.Inputs.AppSpecServiceGitArgs /// { /// RepoCloneUrl = "https://github.com/digitalocean/sample-golang.git", @@ -89,6 +88,57 @@ namespace Pulumi.DigitalOcean /// }); /// ``` /// + /// ### Log Destination Example with Opensearch + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using DigitalOcean = Pulumi.DigitalOcean; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var golang_sample = new DigitalOcean.App("golang-sample", new() + /// { + /// Spec = new DigitalOcean.Inputs.AppSpecArgs + /// { + /// Name = "golang-sample", + /// Region = "ams", + /// Services = new[] + /// { + /// new DigitalOcean.Inputs.AppSpecServiceArgs + /// { + /// Name = "go-service", + /// InstanceCount = 1, + /// InstanceSizeSlug = "apps-s-1vcpu-1gb", + /// Git = new DigitalOcean.Inputs.AppSpecServiceGitArgs + /// { + /// RepoCloneUrl = "https://github.com/digitalocean/sample-golang.git", + /// Branch = "main", + /// }, + /// LogDestinations = new[] + /// { + /// new DigitalOcean.Inputs.AppSpecServiceLogDestinationArgs + /// { + /// Name = "MyLogs", + /// OpenSearch = new DigitalOcean.Inputs.AppSpecServiceLogDestinationOpenSearchArgs + /// { + /// Endpoint = "https://something:1234", + /// BasicAuth = new DigitalOcean.Inputs.AppSpecServiceLogDestinationOpenSearchBasicAuthArgs + /// { + /// User = "user", + /// Password = "hi", + /// }, + /// }, + /// }, + /// }, + /// }, + /// }, + /// }, + /// }); + /// + /// }); + /// ``` + /// /// ## Import /// /// An app can be imported using its `id`, e.g. @@ -130,6 +180,12 @@ public partial class App : global::Pulumi.CustomResource [Output("defaultIngress")] public Output DefaultIngress { get; private set; } = null!; + /// + /// The live domain of the app. + /// + [Output("liveDomain")] + public Output LiveDomain { get; private set; } = null!; + /// /// The live URL of the app. /// @@ -276,6 +332,12 @@ public InputList DedicatedIps [Input("defaultIngress")] public Input? DefaultIngress { get; set; } + /// + /// The live domain of the app. + /// + [Input("liveDomain")] + public Input? LiveDomain { get; set; } + /// /// The live URL of the app. /// diff --git a/sdk/dotnet/DatabaseCluster.cs b/sdk/dotnet/DatabaseCluster.cs index 389bce0e..c764133c 100644 --- a/sdk/dotnet/DatabaseCluster.cs +++ b/sdk/dotnet/DatabaseCluster.cs @@ -124,6 +124,28 @@ namespace Pulumi.DigitalOcean /// }); /// ``` /// + /// ### Create a new OpenSearch database cluster + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using DigitalOcean = Pulumi.DigitalOcean; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var opensearch_example = new DigitalOcean.DatabaseCluster("opensearch-example", new() + /// { + /// Name = "example-opensearch-cluster", + /// Engine = "opensearch", + /// Version = "2", + /// Size = DigitalOcean.DatabaseSlug.DB_1VPCU2GB, + /// Region = DigitalOcean.Region.NYC3, + /// NodeCount = 1, + /// }); + /// + /// }); + /// ``` + /// /// ## Create a new database cluster based on a backup of an existing cluster. /// /// ```csharp diff --git a/sdk/dotnet/GetApp.cs b/sdk/dotnet/GetApp.cs index 9e40e5fa..fdd3153f 100644 --- a/sdk/dotnet/GetApp.cs +++ b/sdk/dotnet/GetApp.cs @@ -151,6 +151,10 @@ public sealed class GetAppResult /// public readonly string Id; /// + /// The live domain of the app. + /// + public readonly string LiveDomain; + /// /// The live URL of the app. /// public readonly string LiveUrl; @@ -185,6 +189,8 @@ private GetAppResult( string id, + string liveDomain, + string liveUrl, string projectId, @@ -201,6 +207,7 @@ private GetAppResult( DedicatedIps = dedicatedIps; DefaultIngress = defaultIngress; Id = id; + LiveDomain = liveDomain; LiveUrl = liveUrl; ProjectId = projectId; Specs = specs; diff --git a/sdk/dotnet/Inputs/AppSpecAlertArgs.cs b/sdk/dotnet/Inputs/AppSpecAlertArgs.cs index c236cc94..025b63c9 100644 --- a/sdk/dotnet/Inputs/AppSpecAlertArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecAlertArgs.cs @@ -19,7 +19,7 @@ public sealed class AppSpecAlertArgs : global::Pulumi.ResourceArgs public Input? Disabled { get; set; } /// - /// The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + /// The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. /// [Input("rule", required: true)] public Input Rule { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecAlertGetArgs.cs b/sdk/dotnet/Inputs/AppSpecAlertGetArgs.cs index fe1b7567..f839dd8d 100644 --- a/sdk/dotnet/Inputs/AppSpecAlertGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecAlertGetArgs.cs @@ -19,7 +19,7 @@ public sealed class AppSpecAlertGetArgs : global::Pulumi.ResourceArgs public Input? Disabled { get; set; } /// - /// The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + /// The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. /// [Input("rule", required: true)] public Input Rule { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecArgs.cs b/sdk/dotnet/Inputs/AppSpecArgs.cs index e13103a2..54994621 100644 --- a/sdk/dotnet/Inputs/AppSpecArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecArgs.cs @@ -16,7 +16,7 @@ public sealed class AppSpecArgs : global::Pulumi.ResourceArgs private InputList? _alerts; /// - /// Describes an alert policy for the app. + /// Describes an alert policy for the component. /// public InputList Alerts { @@ -69,7 +69,7 @@ public InputList Egresses private InputList? _envs; /// - /// Describes an app-wide environment variable made available to all components. + /// Describes an environment variable made available to an app competent. /// public InputList Envs { @@ -112,7 +112,7 @@ public InputList Jobs } /// - /// The name of the app. Must be unique across all apps in the same account. + /// The name of the component. /// [Input("name", required: true)] public Input Name { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecFunctionArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionArgs.cs index 83cfe22f..62ac066e 100644 --- a/sdk/dotnet/Inputs/AppSpecFunctionArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecFunctionArgs.cs @@ -43,7 +43,7 @@ public InputList Envs } /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// [Input("git")] public Input? Git { get; set; } diff --git a/sdk/dotnet/Inputs/AppSpecFunctionGetArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionGetArgs.cs index 6d1d17fa..fbf0d280 100644 --- a/sdk/dotnet/Inputs/AppSpecFunctionGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecFunctionGetArgs.cs @@ -43,7 +43,7 @@ public InputList Envs } /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// [Input("git")] public Input? Git { get; set; } diff --git a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationArgs.cs index a6bacdfb..abdd096d 100644 --- a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationArgs.cs @@ -30,6 +30,12 @@ public sealed class AppSpecFunctionLogDestinationArgs : global::Pulumi.ResourceA [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// OpenSearch configuration. + /// + [Input("openSearch")] + public Input? OpenSearch { get; set; } + /// /// Papertrail configuration. /// diff --git a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationGetArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationGetArgs.cs index 60aacb22..b985dad7 100644 --- a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationGetArgs.cs @@ -30,6 +30,12 @@ public sealed class AppSpecFunctionLogDestinationGetArgs : global::Pulumi.Resour [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// OpenSearch configuration. + /// + [Input("openSearch")] + public Input? OpenSearch { get; set; } + /// /// Papertrail configuration. /// diff --git a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationLogtailArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationLogtailArgs.cs index 0dbbf777..1dd18958 100644 --- a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationLogtailArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationLogtailArgs.cs @@ -14,8 +14,6 @@ public sealed class AppSpecFunctionLogDestinationLogtailArgs : global::Pulumi.Re { /// /// Logtail token. - /// - /// A `database` can contain: /// [Input("token", required: true)] public Input Token { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationLogtailGetArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationLogtailGetArgs.cs index e597d9a6..dd0386ae 100644 --- a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationLogtailGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationLogtailGetArgs.cs @@ -14,8 +14,6 @@ public sealed class AppSpecFunctionLogDestinationLogtailGetArgs : global::Pulumi { /// /// Logtail token. - /// - /// A `database` can contain: /// [Input("token", required: true)] public Input Token { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchArgs.cs new file mode 100644 index 00000000..21c66631 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchArgs.cs @@ -0,0 +1,44 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecFunctionLogDestinationOpenSearchArgs : global::Pulumi.ResourceArgs + { + /// + /// Basic authentication details. + /// + [Input("basicAuth", required: true)] + public Input BasicAuth { get; set; } = null!; + + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + [Input("clusterName")] + public Input? ClusterName { get; set; } + + /// + /// OpenSearch endpoint. + /// + [Input("endpoint")] + public Input? Endpoint { get; set; } + + /// + /// OpenSearch index name. + /// + [Input("indexName")] + public Input? IndexName { get; set; } + + public AppSpecFunctionLogDestinationOpenSearchArgs() + { + } + public static new AppSpecFunctionLogDestinationOpenSearchArgs Empty => new AppSpecFunctionLogDestinationOpenSearchArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs.cs new file mode 100644 index 00000000..fe2b7beb --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs.cs @@ -0,0 +1,42 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs : global::Pulumi.ResourceArgs + { + [Input("password")] + private Input? _password; + + /// + /// Password for basic authentication. + /// + public Input? Password + { + get => _password; + set + { + var emptySecret = Output.CreateSecret(0); + _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// user for basic authentication. + /// + [Input("user")] + public Input? User { get; set; } + + public AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs() + { + } + public static new AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs Empty => new AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchBasicAuthGetArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchBasicAuthGetArgs.cs new file mode 100644 index 00000000..fe19b42f --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchBasicAuthGetArgs.cs @@ -0,0 +1,42 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecFunctionLogDestinationOpenSearchBasicAuthGetArgs : global::Pulumi.ResourceArgs + { + [Input("password")] + private Input? _password; + + /// + /// Password for basic authentication. + /// + public Input? Password + { + get => _password; + set + { + var emptySecret = Output.CreateSecret(0); + _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// user for basic authentication. + /// + [Input("user")] + public Input? User { get; set; } + + public AppSpecFunctionLogDestinationOpenSearchBasicAuthGetArgs() + { + } + public static new AppSpecFunctionLogDestinationOpenSearchBasicAuthGetArgs Empty => new AppSpecFunctionLogDestinationOpenSearchBasicAuthGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchGetArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchGetArgs.cs new file mode 100644 index 00000000..85479b96 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecFunctionLogDestinationOpenSearchGetArgs.cs @@ -0,0 +1,44 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecFunctionLogDestinationOpenSearchGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Basic authentication details. + /// + [Input("basicAuth", required: true)] + public Input BasicAuth { get; set; } = null!; + + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + [Input("clusterName")] + public Input? ClusterName { get; set; } + + /// + /// OpenSearch endpoint. + /// + [Input("endpoint")] + public Input? Endpoint { get; set; } + + /// + /// OpenSearch index name. + /// + [Input("indexName")] + public Input? IndexName { get; set; } + + public AppSpecFunctionLogDestinationOpenSearchGetArgs() + { + } + public static new AppSpecFunctionLogDestinationOpenSearchGetArgs Empty => new AppSpecFunctionLogDestinationOpenSearchGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecGetArgs.cs b/sdk/dotnet/Inputs/AppSpecGetArgs.cs index d9663765..4a55d809 100644 --- a/sdk/dotnet/Inputs/AppSpecGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecGetArgs.cs @@ -16,7 +16,7 @@ public sealed class AppSpecGetArgs : global::Pulumi.ResourceArgs private InputList? _alerts; /// - /// Describes an alert policy for the app. + /// Describes an alert policy for the component. /// public InputList Alerts { @@ -69,7 +69,7 @@ public InputList Egresses private InputList? _envs; /// - /// Describes an app-wide environment variable made available to all components. + /// Describes an environment variable made available to an app competent. /// public InputList Envs { @@ -112,7 +112,7 @@ public InputList Jobs } /// - /// The name of the app. Must be unique across all apps in the same account. + /// The name of the component. /// [Input("name", required: true)] public Input Name { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecIngressRuleCorsArgs.cs b/sdk/dotnet/Inputs/AppSpecIngressRuleCorsArgs.cs index 0d45f7d6..86a676a9 100644 --- a/sdk/dotnet/Inputs/AppSpecIngressRuleCorsArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecIngressRuleCorsArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.DigitalOcean.Inputs public sealed class AppSpecIngressRuleCorsArgs : global::Pulumi.ResourceArgs { /// - /// Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + /// Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. /// [Input("allowCredentials")] public Input? AllowCredentials { get; set; } @@ -22,7 +22,7 @@ public sealed class AppSpecIngressRuleCorsArgs : global::Pulumi.ResourceArgs private InputList? _allowHeaders; /// - /// The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + /// The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. /// public InputList AllowHeaders { @@ -34,7 +34,7 @@ public InputList AllowHeaders private InputList? _allowMethods; /// - /// The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + /// The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. /// public InputList AllowMethods { @@ -52,7 +52,7 @@ public InputList AllowMethods private InputList? _exposeHeaders; /// - /// The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + /// The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. /// public InputList ExposeHeaders { diff --git a/sdk/dotnet/Inputs/AppSpecIngressRuleCorsGetArgs.cs b/sdk/dotnet/Inputs/AppSpecIngressRuleCorsGetArgs.cs index 61e4683a..497e2249 100644 --- a/sdk/dotnet/Inputs/AppSpecIngressRuleCorsGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecIngressRuleCorsGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.DigitalOcean.Inputs public sealed class AppSpecIngressRuleCorsGetArgs : global::Pulumi.ResourceArgs { /// - /// Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + /// Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. /// [Input("allowCredentials")] public Input? AllowCredentials { get; set; } @@ -22,7 +22,7 @@ public sealed class AppSpecIngressRuleCorsGetArgs : global::Pulumi.ResourceArgs private InputList? _allowHeaders; /// - /// The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + /// The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. /// public InputList AllowHeaders { @@ -34,7 +34,7 @@ public InputList AllowHeaders private InputList? _allowMethods; /// - /// The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + /// The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. /// public InputList AllowMethods { @@ -52,7 +52,7 @@ public InputList AllowMethods private InputList? _exposeHeaders; /// - /// The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + /// The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. /// public InputList ExposeHeaders { diff --git a/sdk/dotnet/Inputs/AppSpecJobArgs.cs b/sdk/dotnet/Inputs/AppSpecJobArgs.cs index 4ec79f6f..50c92b00 100644 --- a/sdk/dotnet/Inputs/AppSpecJobArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecJobArgs.cs @@ -55,7 +55,7 @@ public InputList Envs } /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// [Input("git")] public Input? Git { get; set; } diff --git a/sdk/dotnet/Inputs/AppSpecJobGetArgs.cs b/sdk/dotnet/Inputs/AppSpecJobGetArgs.cs index d38f86ae..ab3d57cb 100644 --- a/sdk/dotnet/Inputs/AppSpecJobGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecJobGetArgs.cs @@ -55,7 +55,7 @@ public InputList Envs } /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// [Input("git")] public Input? Git { get; set; } diff --git a/sdk/dotnet/Inputs/AppSpecJobLogDestinationArgs.cs b/sdk/dotnet/Inputs/AppSpecJobLogDestinationArgs.cs index fa1148c2..2ed975e4 100644 --- a/sdk/dotnet/Inputs/AppSpecJobLogDestinationArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecJobLogDestinationArgs.cs @@ -30,6 +30,12 @@ public sealed class AppSpecJobLogDestinationArgs : global::Pulumi.ResourceArgs [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// OpenSearch configuration. + /// + [Input("openSearch")] + public Input? OpenSearch { get; set; } + /// /// Papertrail configuration. /// diff --git a/sdk/dotnet/Inputs/AppSpecJobLogDestinationGetArgs.cs b/sdk/dotnet/Inputs/AppSpecJobLogDestinationGetArgs.cs index 54c87db4..eb815f24 100644 --- a/sdk/dotnet/Inputs/AppSpecJobLogDestinationGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecJobLogDestinationGetArgs.cs @@ -30,6 +30,12 @@ public sealed class AppSpecJobLogDestinationGetArgs : global::Pulumi.ResourceArg [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// OpenSearch configuration. + /// + [Input("openSearch")] + public Input? OpenSearch { get; set; } + /// /// Papertrail configuration. /// diff --git a/sdk/dotnet/Inputs/AppSpecJobLogDestinationLogtailArgs.cs b/sdk/dotnet/Inputs/AppSpecJobLogDestinationLogtailArgs.cs index 55dfc808..b1ed62c3 100644 --- a/sdk/dotnet/Inputs/AppSpecJobLogDestinationLogtailArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecJobLogDestinationLogtailArgs.cs @@ -14,8 +14,6 @@ public sealed class AppSpecJobLogDestinationLogtailArgs : global::Pulumi.Resourc { /// /// Logtail token. - /// - /// A `database` can contain: /// [Input("token", required: true)] public Input Token { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecJobLogDestinationLogtailGetArgs.cs b/sdk/dotnet/Inputs/AppSpecJobLogDestinationLogtailGetArgs.cs index d5317e94..d26b35b1 100644 --- a/sdk/dotnet/Inputs/AppSpecJobLogDestinationLogtailGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecJobLogDestinationLogtailGetArgs.cs @@ -14,8 +14,6 @@ public sealed class AppSpecJobLogDestinationLogtailGetArgs : global::Pulumi.Reso { /// /// Logtail token. - /// - /// A `database` can contain: /// [Input("token", required: true)] public Input Token { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchArgs.cs b/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchArgs.cs new file mode 100644 index 00000000..63d3f1e3 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchArgs.cs @@ -0,0 +1,44 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecJobLogDestinationOpenSearchArgs : global::Pulumi.ResourceArgs + { + /// + /// Basic authentication details. + /// + [Input("basicAuth", required: true)] + public Input BasicAuth { get; set; } = null!; + + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + [Input("clusterName")] + public Input? ClusterName { get; set; } + + /// + /// OpenSearch endpoint. + /// + [Input("endpoint")] + public Input? Endpoint { get; set; } + + /// + /// OpenSearch index name. + /// + [Input("indexName")] + public Input? IndexName { get; set; } + + public AppSpecJobLogDestinationOpenSearchArgs() + { + } + public static new AppSpecJobLogDestinationOpenSearchArgs Empty => new AppSpecJobLogDestinationOpenSearchArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchBasicAuthArgs.cs b/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchBasicAuthArgs.cs new file mode 100644 index 00000000..938c6434 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchBasicAuthArgs.cs @@ -0,0 +1,42 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecJobLogDestinationOpenSearchBasicAuthArgs : global::Pulumi.ResourceArgs + { + [Input("password")] + private Input? _password; + + /// + /// Password for basic authentication. + /// + public Input? Password + { + get => _password; + set + { + var emptySecret = Output.CreateSecret(0); + _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// user for basic authentication. + /// + [Input("user")] + public Input? User { get; set; } + + public AppSpecJobLogDestinationOpenSearchBasicAuthArgs() + { + } + public static new AppSpecJobLogDestinationOpenSearchBasicAuthArgs Empty => new AppSpecJobLogDestinationOpenSearchBasicAuthArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchBasicAuthGetArgs.cs b/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchBasicAuthGetArgs.cs new file mode 100644 index 00000000..f3e1d58f --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchBasicAuthGetArgs.cs @@ -0,0 +1,42 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecJobLogDestinationOpenSearchBasicAuthGetArgs : global::Pulumi.ResourceArgs + { + [Input("password")] + private Input? _password; + + /// + /// Password for basic authentication. + /// + public Input? Password + { + get => _password; + set + { + var emptySecret = Output.CreateSecret(0); + _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// user for basic authentication. + /// + [Input("user")] + public Input? User { get; set; } + + public AppSpecJobLogDestinationOpenSearchBasicAuthGetArgs() + { + } + public static new AppSpecJobLogDestinationOpenSearchBasicAuthGetArgs Empty => new AppSpecJobLogDestinationOpenSearchBasicAuthGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchGetArgs.cs b/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchGetArgs.cs new file mode 100644 index 00000000..1ec0f459 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecJobLogDestinationOpenSearchGetArgs.cs @@ -0,0 +1,44 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecJobLogDestinationOpenSearchGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Basic authentication details. + /// + [Input("basicAuth", required: true)] + public Input BasicAuth { get; set; } = null!; + + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + [Input("clusterName")] + public Input? ClusterName { get; set; } + + /// + /// OpenSearch endpoint. + /// + [Input("endpoint")] + public Input? Endpoint { get; set; } + + /// + /// OpenSearch index name. + /// + [Input("indexName")] + public Input? IndexName { get; set; } + + public AppSpecJobLogDestinationOpenSearchGetArgs() + { + } + public static new AppSpecJobLogDestinationOpenSearchGetArgs Empty => new AppSpecJobLogDestinationOpenSearchGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecServiceArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceArgs.cs index 2f67ef6b..30462dfe 100644 --- a/sdk/dotnet/Inputs/AppSpecServiceArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecServiceArgs.cs @@ -67,7 +67,7 @@ public InputList Envs } /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// [Input("git")] public Input? Git { get; set; } diff --git a/sdk/dotnet/Inputs/AppSpecServiceGetArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceGetArgs.cs index efa8fad3..94377562 100644 --- a/sdk/dotnet/Inputs/AppSpecServiceGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecServiceGetArgs.cs @@ -67,7 +67,7 @@ public InputList Envs } /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// [Input("git")] public Input? Git { get; set; } diff --git a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationArgs.cs index d494682b..407d26ee 100644 --- a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationArgs.cs @@ -30,6 +30,12 @@ public sealed class AppSpecServiceLogDestinationArgs : global::Pulumi.ResourceAr [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// OpenSearch configuration. + /// + [Input("openSearch")] + public Input? OpenSearch { get; set; } + /// /// Papertrail configuration. /// diff --git a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationGetArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationGetArgs.cs index c0503577..692a7370 100644 --- a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationGetArgs.cs @@ -30,6 +30,12 @@ public sealed class AppSpecServiceLogDestinationGetArgs : global::Pulumi.Resourc [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// OpenSearch configuration. + /// + [Input("openSearch")] + public Input? OpenSearch { get; set; } + /// /// Papertrail configuration. /// diff --git a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationLogtailArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationLogtailArgs.cs index d102a701..c67b2fae 100644 --- a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationLogtailArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationLogtailArgs.cs @@ -14,8 +14,6 @@ public sealed class AppSpecServiceLogDestinationLogtailArgs : global::Pulumi.Res { /// /// Logtail token. - /// - /// A `database` can contain: /// [Input("token", required: true)] public Input Token { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationLogtailGetArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationLogtailGetArgs.cs index f95145cb..1397a8fb 100644 --- a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationLogtailGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationLogtailGetArgs.cs @@ -14,8 +14,6 @@ public sealed class AppSpecServiceLogDestinationLogtailGetArgs : global::Pulumi. { /// /// Logtail token. - /// - /// A `database` can contain: /// [Input("token", required: true)] public Input Token { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchArgs.cs new file mode 100644 index 00000000..0b39a433 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchArgs.cs @@ -0,0 +1,44 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecServiceLogDestinationOpenSearchArgs : global::Pulumi.ResourceArgs + { + /// + /// Basic authentication details. + /// + [Input("basicAuth", required: true)] + public Input BasicAuth { get; set; } = null!; + + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + [Input("clusterName")] + public Input? ClusterName { get; set; } + + /// + /// OpenSearch endpoint. + /// + [Input("endpoint")] + public Input? Endpoint { get; set; } + + /// + /// OpenSearch index name. + /// + [Input("indexName")] + public Input? IndexName { get; set; } + + public AppSpecServiceLogDestinationOpenSearchArgs() + { + } + public static new AppSpecServiceLogDestinationOpenSearchArgs Empty => new AppSpecServiceLogDestinationOpenSearchArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchBasicAuthArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchBasicAuthArgs.cs new file mode 100644 index 00000000..819607d6 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchBasicAuthArgs.cs @@ -0,0 +1,42 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecServiceLogDestinationOpenSearchBasicAuthArgs : global::Pulumi.ResourceArgs + { + [Input("password")] + private Input? _password; + + /// + /// Password for basic authentication. + /// + public Input? Password + { + get => _password; + set + { + var emptySecret = Output.CreateSecret(0); + _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// user for basic authentication. + /// + [Input("user")] + public Input? User { get; set; } + + public AppSpecServiceLogDestinationOpenSearchBasicAuthArgs() + { + } + public static new AppSpecServiceLogDestinationOpenSearchBasicAuthArgs Empty => new AppSpecServiceLogDestinationOpenSearchBasicAuthArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchBasicAuthGetArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchBasicAuthGetArgs.cs new file mode 100644 index 00000000..09eeeb30 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchBasicAuthGetArgs.cs @@ -0,0 +1,42 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecServiceLogDestinationOpenSearchBasicAuthGetArgs : global::Pulumi.ResourceArgs + { + [Input("password")] + private Input? _password; + + /// + /// Password for basic authentication. + /// + public Input? Password + { + get => _password; + set + { + var emptySecret = Output.CreateSecret(0); + _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// user for basic authentication. + /// + [Input("user")] + public Input? User { get; set; } + + public AppSpecServiceLogDestinationOpenSearchBasicAuthGetArgs() + { + } + public static new AppSpecServiceLogDestinationOpenSearchBasicAuthGetArgs Empty => new AppSpecServiceLogDestinationOpenSearchBasicAuthGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchGetArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchGetArgs.cs new file mode 100644 index 00000000..0100a47b --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecServiceLogDestinationOpenSearchGetArgs.cs @@ -0,0 +1,44 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecServiceLogDestinationOpenSearchGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Basic authentication details. + /// + [Input("basicAuth", required: true)] + public Input BasicAuth { get; set; } = null!; + + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + [Input("clusterName")] + public Input? ClusterName { get; set; } + + /// + /// OpenSearch endpoint. + /// + [Input("endpoint")] + public Input? Endpoint { get; set; } + + /// + /// OpenSearch index name. + /// + [Input("indexName")] + public Input? IndexName { get; set; } + + public AppSpecServiceLogDestinationOpenSearchGetArgs() + { + } + public static new AppSpecServiceLogDestinationOpenSearchGetArgs Empty => new AppSpecServiceLogDestinationOpenSearchGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecStaticSiteArgs.cs b/sdk/dotnet/Inputs/AppSpecStaticSiteArgs.cs index b938a03b..2f28d162 100644 --- a/sdk/dotnet/Inputs/AppSpecStaticSiteArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecStaticSiteArgs.cs @@ -61,7 +61,7 @@ public InputList Envs public Input? ErrorDocument { get; set; } /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// [Input("git")] public Input? Git { get; set; } diff --git a/sdk/dotnet/Inputs/AppSpecStaticSiteGetArgs.cs b/sdk/dotnet/Inputs/AppSpecStaticSiteGetArgs.cs index 3c59a6b3..ad345333 100644 --- a/sdk/dotnet/Inputs/AppSpecStaticSiteGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecStaticSiteGetArgs.cs @@ -61,7 +61,7 @@ public InputList Envs public Input? ErrorDocument { get; set; } /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// [Input("git")] public Input? Git { get; set; } diff --git a/sdk/dotnet/Inputs/AppSpecWorkerArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerArgs.cs index 831e46db..e3b773ce 100644 --- a/sdk/dotnet/Inputs/AppSpecWorkerArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecWorkerArgs.cs @@ -55,7 +55,7 @@ public InputList Envs } /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// [Input("git")] public Input? Git { get; set; } diff --git a/sdk/dotnet/Inputs/AppSpecWorkerGetArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerGetArgs.cs index a4b2f5f5..89c94720 100644 --- a/sdk/dotnet/Inputs/AppSpecWorkerGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecWorkerGetArgs.cs @@ -55,7 +55,7 @@ public InputList Envs } /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// [Input("git")] public Input? Git { get; set; } diff --git a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationArgs.cs index 1e3f0617..bb239520 100644 --- a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationArgs.cs @@ -30,6 +30,12 @@ public sealed class AppSpecWorkerLogDestinationArgs : global::Pulumi.ResourceArg [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// OpenSearch configuration. + /// + [Input("openSearch")] + public Input? OpenSearch { get; set; } + /// /// Papertrail configuration. /// diff --git a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationGetArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationGetArgs.cs index 0406aebb..e4e00f52 100644 --- a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationGetArgs.cs @@ -30,6 +30,12 @@ public sealed class AppSpecWorkerLogDestinationGetArgs : global::Pulumi.Resource [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// OpenSearch configuration. + /// + [Input("openSearch")] + public Input? OpenSearch { get; set; } + /// /// Papertrail configuration. /// diff --git a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationLogtailArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationLogtailArgs.cs index 3bb236dc..1c749b06 100644 --- a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationLogtailArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationLogtailArgs.cs @@ -14,8 +14,6 @@ public sealed class AppSpecWorkerLogDestinationLogtailArgs : global::Pulumi.Reso { /// /// Logtail token. - /// - /// A `database` can contain: /// [Input("token", required: true)] public Input Token { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationLogtailGetArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationLogtailGetArgs.cs index 76444f3e..8f6eb2f2 100644 --- a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationLogtailGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationLogtailGetArgs.cs @@ -14,8 +14,6 @@ public sealed class AppSpecWorkerLogDestinationLogtailGetArgs : global::Pulumi.R { /// /// Logtail token. - /// - /// A `database` can contain: /// [Input("token", required: true)] public Input Token { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchArgs.cs new file mode 100644 index 00000000..6e6c484d --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchArgs.cs @@ -0,0 +1,44 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecWorkerLogDestinationOpenSearchArgs : global::Pulumi.ResourceArgs + { + /// + /// Basic authentication details. + /// + [Input("basicAuth", required: true)] + public Input BasicAuth { get; set; } = null!; + + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + [Input("clusterName")] + public Input? ClusterName { get; set; } + + /// + /// OpenSearch endpoint. + /// + [Input("endpoint")] + public Input? Endpoint { get; set; } + + /// + /// OpenSearch index name. + /// + [Input("indexName")] + public Input? IndexName { get; set; } + + public AppSpecWorkerLogDestinationOpenSearchArgs() + { + } + public static new AppSpecWorkerLogDestinationOpenSearchArgs Empty => new AppSpecWorkerLogDestinationOpenSearchArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs.cs new file mode 100644 index 00000000..2fbeb57e --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs.cs @@ -0,0 +1,42 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs : global::Pulumi.ResourceArgs + { + [Input("password")] + private Input? _password; + + /// + /// Password for basic authentication. + /// + public Input? Password + { + get => _password; + set + { + var emptySecret = Output.CreateSecret(0); + _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// user for basic authentication. + /// + [Input("user")] + public Input? User { get; set; } + + public AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs() + { + } + public static new AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs Empty => new AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchBasicAuthGetArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchBasicAuthGetArgs.cs new file mode 100644 index 00000000..86ab76d3 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchBasicAuthGetArgs.cs @@ -0,0 +1,42 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecWorkerLogDestinationOpenSearchBasicAuthGetArgs : global::Pulumi.ResourceArgs + { + [Input("password")] + private Input? _password; + + /// + /// Password for basic authentication. + /// + public Input? Password + { + get => _password; + set + { + var emptySecret = Output.CreateSecret(0); + _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// user for basic authentication. + /// + [Input("user")] + public Input? User { get; set; } + + public AppSpecWorkerLogDestinationOpenSearchBasicAuthGetArgs() + { + } + public static new AppSpecWorkerLogDestinationOpenSearchBasicAuthGetArgs Empty => new AppSpecWorkerLogDestinationOpenSearchBasicAuthGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchGetArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchGetArgs.cs new file mode 100644 index 00000000..737440f8 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecWorkerLogDestinationOpenSearchGetArgs.cs @@ -0,0 +1,44 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Inputs +{ + + public sealed class AppSpecWorkerLogDestinationOpenSearchGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Basic authentication details. + /// + [Input("basicAuth", required: true)] + public Input BasicAuth { get; set; } = null!; + + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + [Input("clusterName")] + public Input? ClusterName { get; set; } + + /// + /// OpenSearch endpoint. + /// + [Input("endpoint")] + public Input? Endpoint { get; set; } + + /// + /// OpenSearch index name. + /// + [Input("indexName")] + public Input? IndexName { get; set; } + + public AppSpecWorkerLogDestinationOpenSearchGetArgs() + { + } + public static new AppSpecWorkerLogDestinationOpenSearchGetArgs Empty => new AppSpecWorkerLogDestinationOpenSearchGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DatabasePostgresqlConfigTimescaledbArgs.cs b/sdk/dotnet/Inputs/DatabasePostgresqlConfigTimescaledbArgs.cs index 5bbc76e1..3b7351ab 100644 --- a/sdk/dotnet/Inputs/DatabasePostgresqlConfigTimescaledbArgs.cs +++ b/sdk/dotnet/Inputs/DatabasePostgresqlConfigTimescaledbArgs.cs @@ -12,11 +12,8 @@ namespace Pulumi.DigitalOcean.Inputs public sealed class DatabasePostgresqlConfigTimescaledbArgs : global::Pulumi.ResourceArgs { - /// - /// TimescaleDB extension configuration values - /// - [Input("timescaledb")] - public Input? Timescaledb { get; set; } + [Input("maxBackgroundWorkers")] + public Input? MaxBackgroundWorkers { get; set; } public DatabasePostgresqlConfigTimescaledbArgs() { diff --git a/sdk/dotnet/Inputs/DatabasePostgresqlConfigTimescaledbGetArgs.cs b/sdk/dotnet/Inputs/DatabasePostgresqlConfigTimescaledbGetArgs.cs index becfc8f3..f2ede6f2 100644 --- a/sdk/dotnet/Inputs/DatabasePostgresqlConfigTimescaledbGetArgs.cs +++ b/sdk/dotnet/Inputs/DatabasePostgresqlConfigTimescaledbGetArgs.cs @@ -12,11 +12,8 @@ namespace Pulumi.DigitalOcean.Inputs public sealed class DatabasePostgresqlConfigTimescaledbGetArgs : global::Pulumi.ResourceArgs { - /// - /// TimescaleDB extension configuration values - /// - [Input("timescaledb")] - public Input? Timescaledb { get; set; } + [Input("maxBackgroundWorkers")] + public Input? MaxBackgroundWorkers { get; set; } public DatabasePostgresqlConfigTimescaledbGetArgs() { diff --git a/sdk/dotnet/Outputs/AppSpec.cs b/sdk/dotnet/Outputs/AppSpec.cs index 3c458379..d09e15af 100644 --- a/sdk/dotnet/Outputs/AppSpec.cs +++ b/sdk/dotnet/Outputs/AppSpec.cs @@ -14,7 +14,7 @@ namespace Pulumi.DigitalOcean.Outputs public sealed class AppSpec { /// - /// Describes an alert policy for the app. + /// Describes an alert policy for the component. /// public readonly ImmutableArray Alerts; public readonly ImmutableArray Databases; @@ -28,7 +28,7 @@ public sealed class AppSpec /// public readonly ImmutableArray Egresses; /// - /// Describes an app-wide environment variable made available to all components. + /// Describes an environment variable made available to an app competent. /// public readonly ImmutableArray Envs; /// @@ -42,7 +42,7 @@ public sealed class AppSpec public readonly Outputs.AppSpecIngress? Ingress; public readonly ImmutableArray Jobs; /// - /// The name of the app. Must be unique across all apps in the same account. + /// The name of the component. /// public readonly string Name; /// diff --git a/sdk/dotnet/Outputs/AppSpecAlert.cs b/sdk/dotnet/Outputs/AppSpecAlert.cs index 6cffbe11..98dfd895 100644 --- a/sdk/dotnet/Outputs/AppSpecAlert.cs +++ b/sdk/dotnet/Outputs/AppSpecAlert.cs @@ -18,7 +18,7 @@ public sealed class AppSpecAlert /// public readonly bool? Disabled; /// - /// The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + /// The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. /// public readonly string Rule; diff --git a/sdk/dotnet/Outputs/AppSpecFunction.cs b/sdk/dotnet/Outputs/AppSpecFunction.cs index 8a02642b..876289f6 100644 --- a/sdk/dotnet/Outputs/AppSpecFunction.cs +++ b/sdk/dotnet/Outputs/AppSpecFunction.cs @@ -26,7 +26,7 @@ public sealed class AppSpecFunction /// public readonly ImmutableArray Envs; /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// public readonly Outputs.AppSpecFunctionGit? Git; /// diff --git a/sdk/dotnet/Outputs/AppSpecFunctionLogDestination.cs b/sdk/dotnet/Outputs/AppSpecFunctionLogDestination.cs index e301dcca..f1d0e7c2 100644 --- a/sdk/dotnet/Outputs/AppSpecFunctionLogDestination.cs +++ b/sdk/dotnet/Outputs/AppSpecFunctionLogDestination.cs @@ -26,6 +26,10 @@ public sealed class AppSpecFunctionLogDestination /// public readonly string Name; /// + /// OpenSearch configuration. + /// + public readonly Outputs.AppSpecFunctionLogDestinationOpenSearch? OpenSearch; + /// /// Papertrail configuration. /// public readonly Outputs.AppSpecFunctionLogDestinationPapertrail? Papertrail; @@ -38,11 +42,14 @@ private AppSpecFunctionLogDestination( string name, + Outputs.AppSpecFunctionLogDestinationOpenSearch? openSearch, + Outputs.AppSpecFunctionLogDestinationPapertrail? papertrail) { Datadog = datadog; Logtail = logtail; Name = name; + OpenSearch = openSearch; Papertrail = papertrail; } } diff --git a/sdk/dotnet/Outputs/AppSpecFunctionLogDestinationLogtail.cs b/sdk/dotnet/Outputs/AppSpecFunctionLogDestinationLogtail.cs index acb25f8c..f0f697da 100644 --- a/sdk/dotnet/Outputs/AppSpecFunctionLogDestinationLogtail.cs +++ b/sdk/dotnet/Outputs/AppSpecFunctionLogDestinationLogtail.cs @@ -15,8 +15,6 @@ public sealed class AppSpecFunctionLogDestinationLogtail { /// /// Logtail token. - /// - /// A `database` can contain: /// public readonly string Token; diff --git a/sdk/dotnet/Outputs/AppSpecFunctionLogDestinationOpenSearch.cs b/sdk/dotnet/Outputs/AppSpecFunctionLogDestinationOpenSearch.cs new file mode 100644 index 00000000..187eae2d --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecFunctionLogDestinationOpenSearch.cs @@ -0,0 +1,49 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class AppSpecFunctionLogDestinationOpenSearch + { + /// + /// Basic authentication details. + /// + public readonly Outputs.AppSpecFunctionLogDestinationOpenSearchBasicAuth BasicAuth; + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + public readonly string? ClusterName; + /// + /// OpenSearch endpoint. + /// + public readonly string? Endpoint; + /// + /// OpenSearch index name. + /// + public readonly string? IndexName; + + [OutputConstructor] + private AppSpecFunctionLogDestinationOpenSearch( + Outputs.AppSpecFunctionLogDestinationOpenSearchBasicAuth basicAuth, + + string? clusterName, + + string? endpoint, + + string? indexName) + { + BasicAuth = basicAuth; + ClusterName = clusterName; + Endpoint = endpoint; + IndexName = indexName; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecFunctionLogDestinationOpenSearchBasicAuth.cs b/sdk/dotnet/Outputs/AppSpecFunctionLogDestinationOpenSearchBasicAuth.cs new file mode 100644 index 00000000..94dd3d58 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecFunctionLogDestinationOpenSearchBasicAuth.cs @@ -0,0 +1,35 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class AppSpecFunctionLogDestinationOpenSearchBasicAuth + { + /// + /// Password for basic authentication. + /// + public readonly string? Password; + /// + /// user for basic authentication. + /// + public readonly string? User; + + [OutputConstructor] + private AppSpecFunctionLogDestinationOpenSearchBasicAuth( + string? password, + + string? user) + { + Password = password; + User = user; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecIngressRuleCors.cs b/sdk/dotnet/Outputs/AppSpecIngressRuleCors.cs index 150f82b0..4d08db09 100644 --- a/sdk/dotnet/Outputs/AppSpecIngressRuleCors.cs +++ b/sdk/dotnet/Outputs/AppSpecIngressRuleCors.cs @@ -14,15 +14,15 @@ namespace Pulumi.DigitalOcean.Outputs public sealed class AppSpecIngressRuleCors { /// - /// Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + /// Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. /// public readonly bool? AllowCredentials; /// - /// The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + /// The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. /// public readonly ImmutableArray AllowHeaders; /// - /// The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + /// The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. /// public readonly ImmutableArray AllowMethods; /// @@ -30,7 +30,7 @@ public sealed class AppSpecIngressRuleCors /// public readonly Outputs.AppSpecIngressRuleCorsAllowOrigins? AllowOrigins; /// - /// The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + /// The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. /// public readonly ImmutableArray ExposeHeaders; /// diff --git a/sdk/dotnet/Outputs/AppSpecJob.cs b/sdk/dotnet/Outputs/AppSpecJob.cs index 6a605e55..368fcd14 100644 --- a/sdk/dotnet/Outputs/AppSpecJob.cs +++ b/sdk/dotnet/Outputs/AppSpecJob.cs @@ -34,7 +34,7 @@ public sealed class AppSpecJob /// public readonly ImmutableArray Envs; /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// public readonly Outputs.AppSpecJobGit? Git; /// diff --git a/sdk/dotnet/Outputs/AppSpecJobLogDestination.cs b/sdk/dotnet/Outputs/AppSpecJobLogDestination.cs index 1f09ac98..bb1a1ac3 100644 --- a/sdk/dotnet/Outputs/AppSpecJobLogDestination.cs +++ b/sdk/dotnet/Outputs/AppSpecJobLogDestination.cs @@ -26,6 +26,10 @@ public sealed class AppSpecJobLogDestination /// public readonly string Name; /// + /// OpenSearch configuration. + /// + public readonly Outputs.AppSpecJobLogDestinationOpenSearch? OpenSearch; + /// /// Papertrail configuration. /// public readonly Outputs.AppSpecJobLogDestinationPapertrail? Papertrail; @@ -38,11 +42,14 @@ private AppSpecJobLogDestination( string name, + Outputs.AppSpecJobLogDestinationOpenSearch? openSearch, + Outputs.AppSpecJobLogDestinationPapertrail? papertrail) { Datadog = datadog; Logtail = logtail; Name = name; + OpenSearch = openSearch; Papertrail = papertrail; } } diff --git a/sdk/dotnet/Outputs/AppSpecJobLogDestinationLogtail.cs b/sdk/dotnet/Outputs/AppSpecJobLogDestinationLogtail.cs index 377cb5b7..125ff004 100644 --- a/sdk/dotnet/Outputs/AppSpecJobLogDestinationLogtail.cs +++ b/sdk/dotnet/Outputs/AppSpecJobLogDestinationLogtail.cs @@ -15,8 +15,6 @@ public sealed class AppSpecJobLogDestinationLogtail { /// /// Logtail token. - /// - /// A `database` can contain: /// public readonly string Token; diff --git a/sdk/dotnet/Outputs/AppSpecJobLogDestinationOpenSearch.cs b/sdk/dotnet/Outputs/AppSpecJobLogDestinationOpenSearch.cs new file mode 100644 index 00000000..1e2f1cf0 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecJobLogDestinationOpenSearch.cs @@ -0,0 +1,49 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class AppSpecJobLogDestinationOpenSearch + { + /// + /// Basic authentication details. + /// + public readonly Outputs.AppSpecJobLogDestinationOpenSearchBasicAuth BasicAuth; + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + public readonly string? ClusterName; + /// + /// OpenSearch endpoint. + /// + public readonly string? Endpoint; + /// + /// OpenSearch index name. + /// + public readonly string? IndexName; + + [OutputConstructor] + private AppSpecJobLogDestinationOpenSearch( + Outputs.AppSpecJobLogDestinationOpenSearchBasicAuth basicAuth, + + string? clusterName, + + string? endpoint, + + string? indexName) + { + BasicAuth = basicAuth; + ClusterName = clusterName; + Endpoint = endpoint; + IndexName = indexName; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecJobLogDestinationOpenSearchBasicAuth.cs b/sdk/dotnet/Outputs/AppSpecJobLogDestinationOpenSearchBasicAuth.cs new file mode 100644 index 00000000..763b5a69 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecJobLogDestinationOpenSearchBasicAuth.cs @@ -0,0 +1,35 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class AppSpecJobLogDestinationOpenSearchBasicAuth + { + /// + /// Password for basic authentication. + /// + public readonly string? Password; + /// + /// user for basic authentication. + /// + public readonly string? User; + + [OutputConstructor] + private AppSpecJobLogDestinationOpenSearchBasicAuth( + string? password, + + string? user) + { + Password = password; + User = user; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecService.cs b/sdk/dotnet/Outputs/AppSpecService.cs index fc9e006a..c3848849 100644 --- a/sdk/dotnet/Outputs/AppSpecService.cs +++ b/sdk/dotnet/Outputs/AppSpecService.cs @@ -42,7 +42,7 @@ public sealed class AppSpecService /// public readonly ImmutableArray Envs; /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// public readonly Outputs.AppSpecServiceGit? Git; /// diff --git a/sdk/dotnet/Outputs/AppSpecServiceLogDestination.cs b/sdk/dotnet/Outputs/AppSpecServiceLogDestination.cs index 3843b8fc..77cc5b2b 100644 --- a/sdk/dotnet/Outputs/AppSpecServiceLogDestination.cs +++ b/sdk/dotnet/Outputs/AppSpecServiceLogDestination.cs @@ -26,6 +26,10 @@ public sealed class AppSpecServiceLogDestination /// public readonly string Name; /// + /// OpenSearch configuration. + /// + public readonly Outputs.AppSpecServiceLogDestinationOpenSearch? OpenSearch; + /// /// Papertrail configuration. /// public readonly Outputs.AppSpecServiceLogDestinationPapertrail? Papertrail; @@ -38,11 +42,14 @@ private AppSpecServiceLogDestination( string name, + Outputs.AppSpecServiceLogDestinationOpenSearch? openSearch, + Outputs.AppSpecServiceLogDestinationPapertrail? papertrail) { Datadog = datadog; Logtail = logtail; Name = name; + OpenSearch = openSearch; Papertrail = papertrail; } } diff --git a/sdk/dotnet/Outputs/AppSpecServiceLogDestinationLogtail.cs b/sdk/dotnet/Outputs/AppSpecServiceLogDestinationLogtail.cs index 11456158..8a1c23ab 100644 --- a/sdk/dotnet/Outputs/AppSpecServiceLogDestinationLogtail.cs +++ b/sdk/dotnet/Outputs/AppSpecServiceLogDestinationLogtail.cs @@ -15,8 +15,6 @@ public sealed class AppSpecServiceLogDestinationLogtail { /// /// Logtail token. - /// - /// A `database` can contain: /// public readonly string Token; diff --git a/sdk/dotnet/Outputs/AppSpecServiceLogDestinationOpenSearch.cs b/sdk/dotnet/Outputs/AppSpecServiceLogDestinationOpenSearch.cs new file mode 100644 index 00000000..e24839c3 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecServiceLogDestinationOpenSearch.cs @@ -0,0 +1,49 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class AppSpecServiceLogDestinationOpenSearch + { + /// + /// Basic authentication details. + /// + public readonly Outputs.AppSpecServiceLogDestinationOpenSearchBasicAuth BasicAuth; + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + public readonly string? ClusterName; + /// + /// OpenSearch endpoint. + /// + public readonly string? Endpoint; + /// + /// OpenSearch index name. + /// + public readonly string? IndexName; + + [OutputConstructor] + private AppSpecServiceLogDestinationOpenSearch( + Outputs.AppSpecServiceLogDestinationOpenSearchBasicAuth basicAuth, + + string? clusterName, + + string? endpoint, + + string? indexName) + { + BasicAuth = basicAuth; + ClusterName = clusterName; + Endpoint = endpoint; + IndexName = indexName; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecServiceLogDestinationOpenSearchBasicAuth.cs b/sdk/dotnet/Outputs/AppSpecServiceLogDestinationOpenSearchBasicAuth.cs new file mode 100644 index 00000000..ba83d229 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecServiceLogDestinationOpenSearchBasicAuth.cs @@ -0,0 +1,35 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class AppSpecServiceLogDestinationOpenSearchBasicAuth + { + /// + /// Password for basic authentication. + /// + public readonly string? Password; + /// + /// user for basic authentication. + /// + public readonly string? User; + + [OutputConstructor] + private AppSpecServiceLogDestinationOpenSearchBasicAuth( + string? password, + + string? user) + { + Password = password; + User = user; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecStaticSite.cs b/sdk/dotnet/Outputs/AppSpecStaticSite.cs index 56d0e3b8..92763dc4 100644 --- a/sdk/dotnet/Outputs/AppSpecStaticSite.cs +++ b/sdk/dotnet/Outputs/AppSpecStaticSite.cs @@ -42,7 +42,7 @@ public sealed class AppSpecStaticSite /// public readonly string? ErrorDocument; /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// public readonly Outputs.AppSpecStaticSiteGit? Git; /// diff --git a/sdk/dotnet/Outputs/AppSpecWorker.cs b/sdk/dotnet/Outputs/AppSpecWorker.cs index aef6763f..8df0ae67 100644 --- a/sdk/dotnet/Outputs/AppSpecWorker.cs +++ b/sdk/dotnet/Outputs/AppSpecWorker.cs @@ -34,7 +34,7 @@ public sealed class AppSpecWorker /// public readonly ImmutableArray Envs; /// - /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + /// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. /// public readonly Outputs.AppSpecWorkerGit? Git; /// diff --git a/sdk/dotnet/Outputs/AppSpecWorkerLogDestination.cs b/sdk/dotnet/Outputs/AppSpecWorkerLogDestination.cs index 3c2fede7..1e92639a 100644 --- a/sdk/dotnet/Outputs/AppSpecWorkerLogDestination.cs +++ b/sdk/dotnet/Outputs/AppSpecWorkerLogDestination.cs @@ -26,6 +26,10 @@ public sealed class AppSpecWorkerLogDestination /// public readonly string Name; /// + /// OpenSearch configuration. + /// + public readonly Outputs.AppSpecWorkerLogDestinationOpenSearch? OpenSearch; + /// /// Papertrail configuration. /// public readonly Outputs.AppSpecWorkerLogDestinationPapertrail? Papertrail; @@ -38,11 +42,14 @@ private AppSpecWorkerLogDestination( string name, + Outputs.AppSpecWorkerLogDestinationOpenSearch? openSearch, + Outputs.AppSpecWorkerLogDestinationPapertrail? papertrail) { Datadog = datadog; Logtail = logtail; Name = name; + OpenSearch = openSearch; Papertrail = papertrail; } } diff --git a/sdk/dotnet/Outputs/AppSpecWorkerLogDestinationLogtail.cs b/sdk/dotnet/Outputs/AppSpecWorkerLogDestinationLogtail.cs index 813269f1..bd24539d 100644 --- a/sdk/dotnet/Outputs/AppSpecWorkerLogDestinationLogtail.cs +++ b/sdk/dotnet/Outputs/AppSpecWorkerLogDestinationLogtail.cs @@ -15,8 +15,6 @@ public sealed class AppSpecWorkerLogDestinationLogtail { /// /// Logtail token. - /// - /// A `database` can contain: /// public readonly string Token; diff --git a/sdk/dotnet/Outputs/AppSpecWorkerLogDestinationOpenSearch.cs b/sdk/dotnet/Outputs/AppSpecWorkerLogDestinationOpenSearch.cs new file mode 100644 index 00000000..02c5a573 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecWorkerLogDestinationOpenSearch.cs @@ -0,0 +1,49 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class AppSpecWorkerLogDestinationOpenSearch + { + /// + /// Basic authentication details. + /// + public readonly Outputs.AppSpecWorkerLogDestinationOpenSearchBasicAuth BasicAuth; + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + public readonly string? ClusterName; + /// + /// OpenSearch endpoint. + /// + public readonly string? Endpoint; + /// + /// OpenSearch index name. + /// + public readonly string? IndexName; + + [OutputConstructor] + private AppSpecWorkerLogDestinationOpenSearch( + Outputs.AppSpecWorkerLogDestinationOpenSearchBasicAuth basicAuth, + + string? clusterName, + + string? endpoint, + + string? indexName) + { + BasicAuth = basicAuth; + ClusterName = clusterName; + Endpoint = endpoint; + IndexName = indexName; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecWorkerLogDestinationOpenSearchBasicAuth.cs b/sdk/dotnet/Outputs/AppSpecWorkerLogDestinationOpenSearchBasicAuth.cs new file mode 100644 index 00000000..279570f9 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecWorkerLogDestinationOpenSearchBasicAuth.cs @@ -0,0 +1,35 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class AppSpecWorkerLogDestinationOpenSearchBasicAuth + { + /// + /// Password for basic authentication. + /// + public readonly string? Password; + /// + /// user for basic authentication. + /// + public readonly string? User; + + [OutputConstructor] + private AppSpecWorkerLogDestinationOpenSearchBasicAuth( + string? password, + + string? user) + { + Password = password; + User = user; + } + } +} diff --git a/sdk/dotnet/Outputs/DatabasePostgresqlConfigTimescaledb.cs b/sdk/dotnet/Outputs/DatabasePostgresqlConfigTimescaledb.cs index 8191c71c..ca471042 100644 --- a/sdk/dotnet/Outputs/DatabasePostgresqlConfigTimescaledb.cs +++ b/sdk/dotnet/Outputs/DatabasePostgresqlConfigTimescaledb.cs @@ -13,15 +13,12 @@ namespace Pulumi.DigitalOcean.Outputs [OutputType] public sealed class DatabasePostgresqlConfigTimescaledb { - /// - /// TimescaleDB extension configuration values - /// - public readonly int? Timescaledb; + public readonly int? MaxBackgroundWorkers; [OutputConstructor] - private DatabasePostgresqlConfigTimescaledb(int? timescaledb) + private DatabasePostgresqlConfigTimescaledb(int? maxBackgroundWorkers) { - Timescaledb = timescaledb; + MaxBackgroundWorkers = maxBackgroundWorkers; } } } diff --git a/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationDatadogResult.cs b/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationDatadogResult.cs index 1ce96234..2d52b8ec 100644 --- a/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationDatadogResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationDatadogResult.cs @@ -18,7 +18,7 @@ public sealed class GetAppSpecFunctionLogDestinationDatadogResult /// public readonly string ApiKey; /// - /// Datadog HTTP log intake endpoint. + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. /// public readonly string? Endpoint; diff --git a/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult.cs b/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult.cs new file mode 100644 index 00000000..48381b45 --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult.cs @@ -0,0 +1,35 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult + { + /// + /// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + /// + public readonly string? Password; + /// + /// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + /// + public readonly string? User; + + [OutputConstructor] + private GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult( + string? password, + + string? user) + { + Password = password; + User = user; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationOpenSearchResult.cs b/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationOpenSearchResult.cs new file mode 100644 index 00000000..d67e2428 --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationOpenSearchResult.cs @@ -0,0 +1,49 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class GetAppSpecFunctionLogDestinationOpenSearchResult + { + /// + /// OpenSearch basic auth + /// + public readonly Outputs.GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult BasicAuth; + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + public readonly string? ClusterName; + /// + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + /// + public readonly string? Endpoint; + /// + /// The index name to use for the logs. If not set, the default index name is \"logs\". + /// + public readonly string? IndexName; + + [OutputConstructor] + private GetAppSpecFunctionLogDestinationOpenSearchResult( + Outputs.GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult basicAuth, + + string? clusterName, + + string? endpoint, + + string? indexName) + { + BasicAuth = basicAuth; + ClusterName = clusterName; + Endpoint = endpoint; + IndexName = indexName; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationPapertrailResult.cs b/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationPapertrailResult.cs index d50ca0ae..27992ef7 100644 --- a/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationPapertrailResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationPapertrailResult.cs @@ -14,7 +14,7 @@ namespace Pulumi.DigitalOcean.Outputs public sealed class GetAppSpecFunctionLogDestinationPapertrailResult { /// - /// Datadog HTTP log intake endpoint. + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. /// public readonly string Endpoint; diff --git a/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationResult.cs b/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationResult.cs index 3d6242b5..cac874e6 100644 --- a/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecFunctionLogDestinationResult.cs @@ -26,6 +26,10 @@ public sealed class GetAppSpecFunctionLogDestinationResult /// public readonly string Name; /// + /// OpenSearch configuration. + /// + public readonly Outputs.GetAppSpecFunctionLogDestinationOpenSearchResult? OpenSearch; + /// /// Papertrail configuration. /// public readonly Outputs.GetAppSpecFunctionLogDestinationPapertrailResult? Papertrail; @@ -38,11 +42,14 @@ private GetAppSpecFunctionLogDestinationResult( string name, + Outputs.GetAppSpecFunctionLogDestinationOpenSearchResult? openSearch, + Outputs.GetAppSpecFunctionLogDestinationPapertrailResult? papertrail) { Datadog = datadog; Logtail = logtail; Name = name; + OpenSearch = openSearch; Papertrail = papertrail; } } diff --git a/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationDatadogResult.cs b/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationDatadogResult.cs index f3e18a9c..30c4f735 100644 --- a/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationDatadogResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationDatadogResult.cs @@ -18,7 +18,7 @@ public sealed class GetAppSpecJobLogDestinationDatadogResult /// public readonly string ApiKey; /// - /// Datadog HTTP log intake endpoint. + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. /// public readonly string? Endpoint; diff --git a/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationOpenSearchBasicAuthResult.cs b/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationOpenSearchBasicAuthResult.cs new file mode 100644 index 00000000..695cde4e --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationOpenSearchBasicAuthResult.cs @@ -0,0 +1,35 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class GetAppSpecJobLogDestinationOpenSearchBasicAuthResult + { + /// + /// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + /// + public readonly string? Password; + /// + /// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + /// + public readonly string? User; + + [OutputConstructor] + private GetAppSpecJobLogDestinationOpenSearchBasicAuthResult( + string? password, + + string? user) + { + Password = password; + User = user; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationOpenSearchResult.cs b/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationOpenSearchResult.cs new file mode 100644 index 00000000..36076b53 --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationOpenSearchResult.cs @@ -0,0 +1,49 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class GetAppSpecJobLogDestinationOpenSearchResult + { + /// + /// OpenSearch basic auth + /// + public readonly Outputs.GetAppSpecJobLogDestinationOpenSearchBasicAuthResult BasicAuth; + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + public readonly string? ClusterName; + /// + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + /// + public readonly string? Endpoint; + /// + /// The index name to use for the logs. If not set, the default index name is \"logs\". + /// + public readonly string? IndexName; + + [OutputConstructor] + private GetAppSpecJobLogDestinationOpenSearchResult( + Outputs.GetAppSpecJobLogDestinationOpenSearchBasicAuthResult basicAuth, + + string? clusterName, + + string? endpoint, + + string? indexName) + { + BasicAuth = basicAuth; + ClusterName = clusterName; + Endpoint = endpoint; + IndexName = indexName; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationPapertrailResult.cs b/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationPapertrailResult.cs index c067bbba..7c2b313d 100644 --- a/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationPapertrailResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationPapertrailResult.cs @@ -14,7 +14,7 @@ namespace Pulumi.DigitalOcean.Outputs public sealed class GetAppSpecJobLogDestinationPapertrailResult { /// - /// Datadog HTTP log intake endpoint. + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. /// public readonly string Endpoint; diff --git a/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationResult.cs b/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationResult.cs index 169f7526..4c88632d 100644 --- a/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecJobLogDestinationResult.cs @@ -26,6 +26,10 @@ public sealed class GetAppSpecJobLogDestinationResult /// public readonly string Name; /// + /// OpenSearch configuration. + /// + public readonly Outputs.GetAppSpecJobLogDestinationOpenSearchResult? OpenSearch; + /// /// Papertrail configuration. /// public readonly Outputs.GetAppSpecJobLogDestinationPapertrailResult? Papertrail; @@ -38,11 +42,14 @@ private GetAppSpecJobLogDestinationResult( string name, + Outputs.GetAppSpecJobLogDestinationOpenSearchResult? openSearch, + Outputs.GetAppSpecJobLogDestinationPapertrailResult? papertrail) { Datadog = datadog; Logtail = logtail; Name = name; + OpenSearch = openSearch; Papertrail = papertrail; } } diff --git a/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationDatadogResult.cs b/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationDatadogResult.cs index 0d5144f5..8ab20500 100644 --- a/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationDatadogResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationDatadogResult.cs @@ -18,7 +18,7 @@ public sealed class GetAppSpecServiceLogDestinationDatadogResult /// public readonly string ApiKey; /// - /// Datadog HTTP log intake endpoint. + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. /// public readonly string? Endpoint; diff --git a/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult.cs b/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult.cs new file mode 100644 index 00000000..a7b54650 --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult.cs @@ -0,0 +1,35 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult + { + /// + /// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + /// + public readonly string? Password; + /// + /// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + /// + public readonly string? User; + + [OutputConstructor] + private GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult( + string? password, + + string? user) + { + Password = password; + User = user; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationOpenSearchResult.cs b/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationOpenSearchResult.cs new file mode 100644 index 00000000..63b6c4ec --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationOpenSearchResult.cs @@ -0,0 +1,49 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class GetAppSpecServiceLogDestinationOpenSearchResult + { + /// + /// OpenSearch basic auth + /// + public readonly Outputs.GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult BasicAuth; + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + public readonly string? ClusterName; + /// + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + /// + public readonly string? Endpoint; + /// + /// The index name to use for the logs. If not set, the default index name is \"logs\". + /// + public readonly string? IndexName; + + [OutputConstructor] + private GetAppSpecServiceLogDestinationOpenSearchResult( + Outputs.GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult basicAuth, + + string? clusterName, + + string? endpoint, + + string? indexName) + { + BasicAuth = basicAuth; + ClusterName = clusterName; + Endpoint = endpoint; + IndexName = indexName; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationPapertrailResult.cs b/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationPapertrailResult.cs index 06200b1a..3488595a 100644 --- a/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationPapertrailResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationPapertrailResult.cs @@ -14,7 +14,7 @@ namespace Pulumi.DigitalOcean.Outputs public sealed class GetAppSpecServiceLogDestinationPapertrailResult { /// - /// Datadog HTTP log intake endpoint. + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. /// public readonly string Endpoint; diff --git a/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationResult.cs b/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationResult.cs index 67570ee0..376ba9e0 100644 --- a/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecServiceLogDestinationResult.cs @@ -26,6 +26,10 @@ public sealed class GetAppSpecServiceLogDestinationResult /// public readonly string Name; /// + /// OpenSearch configuration. + /// + public readonly Outputs.GetAppSpecServiceLogDestinationOpenSearchResult? OpenSearch; + /// /// Papertrail configuration. /// public readonly Outputs.GetAppSpecServiceLogDestinationPapertrailResult? Papertrail; @@ -38,11 +42,14 @@ private GetAppSpecServiceLogDestinationResult( string name, + Outputs.GetAppSpecServiceLogDestinationOpenSearchResult? openSearch, + Outputs.GetAppSpecServiceLogDestinationPapertrailResult? papertrail) { Datadog = datadog; Logtail = logtail; Name = name; + OpenSearch = openSearch; Papertrail = papertrail; } } diff --git a/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationDatadogResult.cs b/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationDatadogResult.cs index 6baebb14..8a9f5f6e 100644 --- a/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationDatadogResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationDatadogResult.cs @@ -18,7 +18,7 @@ public sealed class GetAppSpecWorkerLogDestinationDatadogResult /// public readonly string ApiKey; /// - /// Datadog HTTP log intake endpoint. + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. /// public readonly string? Endpoint; diff --git a/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult.cs b/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult.cs new file mode 100644 index 00000000..7ad9d9fb --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult.cs @@ -0,0 +1,35 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult + { + /// + /// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + /// + public readonly string? Password; + /// + /// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + /// + public readonly string? User; + + [OutputConstructor] + private GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult( + string? password, + + string? user) + { + Password = password; + User = user; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationOpenSearchResult.cs b/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationOpenSearchResult.cs new file mode 100644 index 00000000..7f159454 --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationOpenSearchResult.cs @@ -0,0 +1,49 @@ +// *** 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; + +namespace Pulumi.DigitalOcean.Outputs +{ + + [OutputType] + public sealed class GetAppSpecWorkerLogDestinationOpenSearchResult + { + /// + /// OpenSearch basic auth + /// + public readonly Outputs.GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult BasicAuth; + /// + /// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + /// + public readonly string? ClusterName; + /// + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + /// + public readonly string? Endpoint; + /// + /// The index name to use for the logs. If not set, the default index name is \"logs\". + /// + public readonly string? IndexName; + + [OutputConstructor] + private GetAppSpecWorkerLogDestinationOpenSearchResult( + Outputs.GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult basicAuth, + + string? clusterName, + + string? endpoint, + + string? indexName) + { + BasicAuth = basicAuth; + ClusterName = clusterName; + Endpoint = endpoint; + IndexName = indexName; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationPapertrailResult.cs b/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationPapertrailResult.cs index f9e300f2..ae621643 100644 --- a/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationPapertrailResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationPapertrailResult.cs @@ -14,7 +14,7 @@ namespace Pulumi.DigitalOcean.Outputs public sealed class GetAppSpecWorkerLogDestinationPapertrailResult { /// - /// Datadog HTTP log intake endpoint. + /// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. /// public readonly string Endpoint; diff --git a/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationResult.cs b/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationResult.cs index 26a1dc4c..e5369092 100644 --- a/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecWorkerLogDestinationResult.cs @@ -26,6 +26,10 @@ public sealed class GetAppSpecWorkerLogDestinationResult /// public readonly string Name; /// + /// OpenSearch configuration. + /// + public readonly Outputs.GetAppSpecWorkerLogDestinationOpenSearchResult? OpenSearch; + /// /// Papertrail configuration. /// public readonly Outputs.GetAppSpecWorkerLogDestinationPapertrailResult? Papertrail; @@ -38,11 +42,14 @@ private GetAppSpecWorkerLogDestinationResult( string name, + Outputs.GetAppSpecWorkerLogDestinationOpenSearchResult? openSearch, + Outputs.GetAppSpecWorkerLogDestinationPapertrailResult? papertrail) { Datadog = datadog; Logtail = logtail; Name = name; + OpenSearch = openSearch; Papertrail = papertrail; } } diff --git a/sdk/go/digitalocean/app.go b/sdk/go/digitalocean/app.go index 2c16f89e..e41704df 100644 --- a/sdk/go/digitalocean/app.go +++ b/sdk/go/digitalocean/app.go @@ -38,9 +38,8 @@ import ( // Services: digitalocean.AppSpecServiceArray{ // &digitalocean.AppSpecServiceArgs{ // Name: pulumi.String("go-service"), -// EnvironmentSlug: pulumi.String("go"), // InstanceCount: pulumi.Int(1), -// InstanceSizeSlug: pulumi.String("professional-xs"), +// InstanceSizeSlug: pulumi.String("apps-s-1vcpu-1gb"), // Git: &digitalocean.AppSpecServiceGitArgs{ // RepoCloneUrl: pulumi.String("https://github.com/digitalocean/sample-golang.git"), // Branch: pulumi.String("main"), @@ -98,6 +97,57 @@ import ( // // ``` // +// ### Log Destination Example with Opensearch +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := digitalocean.NewApp(ctx, "golang-sample", &digitalocean.AppArgs{ +// Spec: &digitalocean.AppSpecArgs{ +// Name: pulumi.String("golang-sample"), +// Region: pulumi.String("ams"), +// Services: digitalocean.AppSpecServiceArray{ +// &digitalocean.AppSpecServiceArgs{ +// Name: pulumi.String("go-service"), +// InstanceCount: pulumi.Int(1), +// InstanceSizeSlug: pulumi.String("apps-s-1vcpu-1gb"), +// Git: &digitalocean.AppSpecServiceGitArgs{ +// RepoCloneUrl: pulumi.String("https://github.com/digitalocean/sample-golang.git"), +// Branch: pulumi.String("main"), +// }, +// LogDestinations: digitalocean.AppSpecServiceLogDestinationArray{ +// &digitalocean.AppSpecServiceLogDestinationArgs{ +// Name: pulumi.String("MyLogs"), +// OpenSearch: &digitalocean.AppSpecServiceLogDestinationOpenSearchArgs{ +// Endpoint: pulumi.String("https://something:1234"), +// BasicAuth: &digitalocean.AppSpecServiceLogDestinationOpenSearchBasicAuthArgs{ +// User: pulumi.String("user"), +// Password: pulumi.String("hi"), +// }, +// }, +// }, +// }, +// }, +// }, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// // ## Import // // An app can be imported using its `id`, e.g. @@ -118,6 +168,8 @@ type App struct { DedicatedIps AppDedicatedIpArrayOutput `pulumi:"dedicatedIps"` // The default URL to access the app. DefaultIngress pulumi.StringOutput `pulumi:"defaultIngress"` + // The live domain of the app. + LiveDomain pulumi.StringOutput `pulumi:"liveDomain"` // The live URL of the app. LiveUrl pulumi.StringOutput `pulumi:"liveUrl"` // The ID of the project that the app is assigned to. @@ -172,6 +224,8 @@ type appState struct { DedicatedIps []AppDedicatedIp `pulumi:"dedicatedIps"` // The default URL to access the app. DefaultIngress *string `pulumi:"defaultIngress"` + // The live domain of the app. + LiveDomain *string `pulumi:"liveDomain"` // The live URL of the app. LiveUrl *string `pulumi:"liveUrl"` // The ID of the project that the app is assigned to. @@ -197,6 +251,8 @@ type AppState struct { DedicatedIps AppDedicatedIpArrayInput // The default URL to access the app. DefaultIngress pulumi.StringPtrInput + // The live domain of the app. + LiveDomain pulumi.StringPtrInput // The live URL of the app. LiveUrl pulumi.StringPtrInput // The ID of the project that the app is assigned to. @@ -354,6 +410,11 @@ func (o AppOutput) DefaultIngress() pulumi.StringOutput { return o.ApplyT(func(v *App) pulumi.StringOutput { return v.DefaultIngress }).(pulumi.StringOutput) } +// The live domain of the app. +func (o AppOutput) LiveDomain() pulumi.StringOutput { + return o.ApplyT(func(v *App) pulumi.StringOutput { return v.LiveDomain }).(pulumi.StringOutput) +} + // The live URL of the app. func (o AppOutput) LiveUrl() pulumi.StringOutput { return o.ApplyT(func(v *App) pulumi.StringOutput { return v.LiveUrl }).(pulumi.StringOutput) diff --git a/sdk/go/digitalocean/databaseCluster.go b/sdk/go/digitalocean/databaseCluster.go index a07da955..48cc26c0 100644 --- a/sdk/go/digitalocean/databaseCluster.go +++ b/sdk/go/digitalocean/databaseCluster.go @@ -166,6 +166,36 @@ import ( // // ``` // +// ### Create a new OpenSearch database cluster +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := digitalocean.NewDatabaseCluster(ctx, "opensearch-example", &digitalocean.DatabaseClusterArgs{ +// Name: pulumi.String("example-opensearch-cluster"), +// Engine: pulumi.String("opensearch"), +// Version: pulumi.String("2"), +// Size: pulumi.String(digitalocean.DatabaseSlug_DB_1VPCU2GB), +// Region: pulumi.String(digitalocean.RegionNYC3), +// NodeCount: pulumi.Int(1), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// // ## Create a new database cluster based on a backup of an existing cluster. // // ```go diff --git a/sdk/go/digitalocean/getApp.go b/sdk/go/digitalocean/getApp.go index e7a96540..c0e5f34c 100644 --- a/sdk/go/digitalocean/getApp.go +++ b/sdk/go/digitalocean/getApp.go @@ -72,6 +72,8 @@ type LookupAppResult struct { DefaultIngress string `pulumi:"defaultIngress"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` + // The live domain of the app. + LiveDomain string `pulumi:"liveDomain"` // The live URL of the app. LiveUrl string `pulumi:"liveUrl"` // The ID of the project that the app is assigned to. @@ -153,6 +155,11 @@ func (o LookupAppResultOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v LookupAppResult) string { return v.Id }).(pulumi.StringOutput) } +// The live domain of the app. +func (o LookupAppResultOutput) LiveDomain() pulumi.StringOutput { + return o.ApplyT(func(v LookupAppResult) string { return v.LiveDomain }).(pulumi.StringOutput) +} + // The live URL of the app. func (o LookupAppResultOutput) LiveUrl() pulumi.StringOutput { return o.ApplyT(func(v LookupAppResult) string { return v.LiveUrl }).(pulumi.StringOutput) diff --git a/sdk/go/digitalocean/pulumiTypes.go b/sdk/go/digitalocean/pulumiTypes.go index c56a9511..419ef201 100644 --- a/sdk/go/digitalocean/pulumiTypes.go +++ b/sdk/go/digitalocean/pulumiTypes.go @@ -129,7 +129,7 @@ func (o AppDedicatedIpArrayOutput) Index(i pulumi.IntInput) AppDedicatedIpOutput } type AppSpec struct { - // Describes an alert policy for the app. + // Describes an alert policy for the component. Alerts []AppSpecAlert `pulumi:"alerts"` Databases []AppSpecDatabase `pulumi:"databases"` // Describes a domain where the application will be made available. @@ -138,7 +138,7 @@ type AppSpec struct { Domains []string `pulumi:"domains"` // Specification for app egress configurations. Egresses []AppSpecEgress `pulumi:"egresses"` - // Describes an app-wide environment variable made available to all components. + // Describes an environment variable made available to an app competent. Envs []AppSpecEnv `pulumi:"envs"` // A list of the features applied to the app. The default buildpack can be overridden here. List of available buildpacks can be found using the [doctl CLI](https://docs.digitalocean.com/reference/doctl/reference/apps/list-buildpacks/) Features []string `pulumi:"features"` @@ -146,7 +146,7 @@ type AppSpec struct { // Specification for component routing, rewrites, and redirects. Ingress *AppSpecIngress `pulumi:"ingress"` Jobs []AppSpecJob `pulumi:"jobs"` - // The name of the app. Must be unique across all apps in the same account. + // The name of the component. Name string `pulumi:"name"` // The slug for the DigitalOcean data center region hosting the app. Region *string `pulumi:"region"` @@ -167,7 +167,7 @@ type AppSpecInput interface { } type AppSpecArgs struct { - // Describes an alert policy for the app. + // Describes an alert policy for the component. Alerts AppSpecAlertArrayInput `pulumi:"alerts"` Databases AppSpecDatabaseArrayInput `pulumi:"databases"` // Describes a domain where the application will be made available. @@ -176,7 +176,7 @@ type AppSpecArgs struct { Domains pulumi.StringArrayInput `pulumi:"domains"` // Specification for app egress configurations. Egresses AppSpecEgressArrayInput `pulumi:"egresses"` - // Describes an app-wide environment variable made available to all components. + // Describes an environment variable made available to an app competent. Envs AppSpecEnvArrayInput `pulumi:"envs"` // A list of the features applied to the app. The default buildpack can be overridden here. List of available buildpacks can be found using the [doctl CLI](https://docs.digitalocean.com/reference/doctl/reference/apps/list-buildpacks/) Features pulumi.StringArrayInput `pulumi:"features"` @@ -184,7 +184,7 @@ type AppSpecArgs struct { // Specification for component routing, rewrites, and redirects. Ingress AppSpecIngressPtrInput `pulumi:"ingress"` Jobs AppSpecJobArrayInput `pulumi:"jobs"` - // The name of the app. Must be unique across all apps in the same account. + // The name of the component. Name pulumi.StringInput `pulumi:"name"` // The slug for the DigitalOcean data center region hosting the app. Region pulumi.StringPtrInput `pulumi:"region"` @@ -270,7 +270,7 @@ func (o AppSpecOutput) ToAppSpecPtrOutputWithContext(ctx context.Context) AppSpe }).(AppSpecPtrOutput) } -// Describes an alert policy for the app. +// Describes an alert policy for the component. func (o AppSpecOutput) Alerts() AppSpecAlertArrayOutput { return o.ApplyT(func(v AppSpec) []AppSpecAlert { return v.Alerts }).(AppSpecAlertArrayOutput) } @@ -294,7 +294,7 @@ func (o AppSpecOutput) Egresses() AppSpecEgressArrayOutput { return o.ApplyT(func(v AppSpec) []AppSpecEgress { return v.Egresses }).(AppSpecEgressArrayOutput) } -// Describes an app-wide environment variable made available to all components. +// Describes an environment variable made available to an app competent. func (o AppSpecOutput) Envs() AppSpecEnvArrayOutput { return o.ApplyT(func(v AppSpec) []AppSpecEnv { return v.Envs }).(AppSpecEnvArrayOutput) } @@ -317,7 +317,7 @@ func (o AppSpecOutput) Jobs() AppSpecJobArrayOutput { return o.ApplyT(func(v AppSpec) []AppSpecJob { return v.Jobs }).(AppSpecJobArrayOutput) } -// The name of the app. Must be unique across all apps in the same account. +// The name of the component. func (o AppSpecOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v AppSpec) string { return v.Name }).(pulumi.StringOutput) } @@ -363,7 +363,7 @@ func (o AppSpecPtrOutput) Elem() AppSpecOutput { }).(AppSpecOutput) } -// Describes an alert policy for the app. +// Describes an alert policy for the component. func (o AppSpecPtrOutput) Alerts() AppSpecAlertArrayOutput { return o.ApplyT(func(v *AppSpec) []AppSpecAlert { if v == nil { @@ -412,7 +412,7 @@ func (o AppSpecPtrOutput) Egresses() AppSpecEgressArrayOutput { }).(AppSpecEgressArrayOutput) } -// Describes an app-wide environment variable made available to all components. +// Describes an environment variable made available to an app competent. func (o AppSpecPtrOutput) Envs() AppSpecEnvArrayOutput { return o.ApplyT(func(v *AppSpec) []AppSpecEnv { if v == nil { @@ -460,7 +460,7 @@ func (o AppSpecPtrOutput) Jobs() AppSpecJobArrayOutput { }).(AppSpecJobArrayOutput) } -// The name of the app. Must be unique across all apps in the same account. +// The name of the component. func (o AppSpecPtrOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *AppSpec) *string { if v == nil { @@ -510,7 +510,7 @@ func (o AppSpecPtrOutput) Workers() AppSpecWorkerArrayOutput { type AppSpecAlert struct { // Determines whether or not the alert is disabled (default: `false`). Disabled *bool `pulumi:"disabled"` - // The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + // The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. Rule string `pulumi:"rule"` } @@ -528,7 +528,7 @@ type AppSpecAlertInput interface { type AppSpecAlertArgs struct { // Determines whether or not the alert is disabled (default: `false`). Disabled pulumi.BoolPtrInput `pulumi:"disabled"` - // The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + // The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. Rule pulumi.StringInput `pulumi:"rule"` } @@ -588,7 +588,7 @@ func (o AppSpecAlertOutput) Disabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v AppSpecAlert) *bool { return v.Disabled }).(pulumi.BoolPtrOutput) } -// The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. +// The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. func (o AppSpecAlertOutput) Rule() pulumi.StringOutput { return o.ApplyT(func(v AppSpecAlert) string { return v.Rule }).(pulumi.StringOutput) } @@ -1133,7 +1133,7 @@ type AppSpecFunction struct { Cors *AppSpecFunctionCors `pulumi:"cors"` // Describes an environment variable made available to an app competent. Envs []AppSpecFunctionEnv `pulumi:"envs"` - // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. Git *AppSpecFunctionGit `pulumi:"git"` // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. Github *AppSpecFunctionGithub `pulumi:"github"` @@ -1171,7 +1171,7 @@ type AppSpecFunctionArgs struct { Cors AppSpecFunctionCorsPtrInput `pulumi:"cors"` // Describes an environment variable made available to an app competent. Envs AppSpecFunctionEnvArrayInput `pulumi:"envs"` - // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. Git AppSpecFunctionGitPtrInput `pulumi:"git"` // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. Github AppSpecFunctionGithubPtrInput `pulumi:"github"` @@ -1257,7 +1257,7 @@ func (o AppSpecFunctionOutput) Envs() AppSpecFunctionEnvArrayOutput { return o.ApplyT(func(v AppSpecFunction) []AppSpecFunctionEnv { return v.Envs }).(AppSpecFunctionEnvArrayOutput) } -// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. +// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. func (o AppSpecFunctionOutput) Git() AppSpecFunctionGitPtrOutput { return o.ApplyT(func(v AppSpecFunction) *AppSpecFunctionGit { return v.Git }).(AppSpecFunctionGitPtrOutput) } @@ -2499,6 +2499,8 @@ type AppSpecFunctionLogDestination struct { Logtail *AppSpecFunctionLogDestinationLogtail `pulumi:"logtail"` // Name of the log destination. Minimum length: 2. Maximum length: 42. Name string `pulumi:"name"` + // OpenSearch configuration. + OpenSearch *AppSpecFunctionLogDestinationOpenSearch `pulumi:"openSearch"` // Papertrail configuration. Papertrail *AppSpecFunctionLogDestinationPapertrail `pulumi:"papertrail"` } @@ -2521,6 +2523,8 @@ type AppSpecFunctionLogDestinationArgs struct { Logtail AppSpecFunctionLogDestinationLogtailPtrInput `pulumi:"logtail"` // Name of the log destination. Minimum length: 2. Maximum length: 42. Name pulumi.StringInput `pulumi:"name"` + // OpenSearch configuration. + OpenSearch AppSpecFunctionLogDestinationOpenSearchPtrInput `pulumi:"openSearch"` // Papertrail configuration. Papertrail AppSpecFunctionLogDestinationPapertrailPtrInput `pulumi:"papertrail"` } @@ -2591,6 +2595,11 @@ func (o AppSpecFunctionLogDestinationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v AppSpecFunctionLogDestination) string { return v.Name }).(pulumi.StringOutput) } +// OpenSearch configuration. +func (o AppSpecFunctionLogDestinationOutput) OpenSearch() AppSpecFunctionLogDestinationOpenSearchPtrOutput { + return o.ApplyT(func(v AppSpecFunctionLogDestination) *AppSpecFunctionLogDestinationOpenSearch { return v.OpenSearch }).(AppSpecFunctionLogDestinationOpenSearchPtrOutput) +} + // Papertrail configuration. func (o AppSpecFunctionLogDestinationOutput) Papertrail() AppSpecFunctionLogDestinationPapertrailPtrOutput { return o.ApplyT(func(v AppSpecFunctionLogDestination) *AppSpecFunctionLogDestinationPapertrail { return v.Papertrail }).(AppSpecFunctionLogDestinationPapertrailPtrOutput) @@ -2774,8 +2783,6 @@ func (o AppSpecFunctionLogDestinationDatadogPtrOutput) Endpoint() pulumi.StringP type AppSpecFunctionLogDestinationLogtail struct { // Logtail token. - // - // A `database` can contain: Token string `pulumi:"token"` } @@ -2792,8 +2799,6 @@ type AppSpecFunctionLogDestinationLogtailInput interface { type AppSpecFunctionLogDestinationLogtailArgs struct { // Logtail token. - // - // A `database` can contain: Token pulumi.StringInput `pulumi:"token"` } @@ -2875,8 +2880,6 @@ func (o AppSpecFunctionLogDestinationLogtailOutput) ToAppSpecFunctionLogDestinat } // Logtail token. -// -// A `database` can contain: func (o AppSpecFunctionLogDestinationLogtailOutput) Token() pulumi.StringOutput { return o.ApplyT(func(v AppSpecFunctionLogDestinationLogtail) string { return v.Token }).(pulumi.StringOutput) } @@ -2906,8 +2909,6 @@ func (o AppSpecFunctionLogDestinationLogtailPtrOutput) Elem() AppSpecFunctionLog } // Logtail token. -// -// A `database` can contain: func (o AppSpecFunctionLogDestinationLogtailPtrOutput) Token() pulumi.StringPtrOutput { return o.ApplyT(func(v *AppSpecFunctionLogDestinationLogtail) *string { if v == nil { @@ -2917,6 +2918,358 @@ func (o AppSpecFunctionLogDestinationLogtailPtrOutput) Token() pulumi.StringPtrO }).(pulumi.StringPtrOutput) } +type AppSpecFunctionLogDestinationOpenSearch struct { + // Basic authentication details. + BasicAuth AppSpecFunctionLogDestinationOpenSearchBasicAuth `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName *string `pulumi:"clusterName"` + // OpenSearch endpoint. + Endpoint *string `pulumi:"endpoint"` + // OpenSearch index name. + IndexName *string `pulumi:"indexName"` +} + +// AppSpecFunctionLogDestinationOpenSearchInput is an input type that accepts AppSpecFunctionLogDestinationOpenSearchArgs and AppSpecFunctionLogDestinationOpenSearchOutput values. +// You can construct a concrete instance of `AppSpecFunctionLogDestinationOpenSearchInput` via: +// +// AppSpecFunctionLogDestinationOpenSearchArgs{...} +type AppSpecFunctionLogDestinationOpenSearchInput interface { + pulumi.Input + + ToAppSpecFunctionLogDestinationOpenSearchOutput() AppSpecFunctionLogDestinationOpenSearchOutput + ToAppSpecFunctionLogDestinationOpenSearchOutputWithContext(context.Context) AppSpecFunctionLogDestinationOpenSearchOutput +} + +type AppSpecFunctionLogDestinationOpenSearchArgs struct { + // Basic authentication details. + BasicAuth AppSpecFunctionLogDestinationOpenSearchBasicAuthInput `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName pulumi.StringPtrInput `pulumi:"clusterName"` + // OpenSearch endpoint. + Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` + // OpenSearch index name. + IndexName pulumi.StringPtrInput `pulumi:"indexName"` +} + +func (AppSpecFunctionLogDestinationOpenSearchArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecFunctionLogDestinationOpenSearch)(nil)).Elem() +} + +func (i AppSpecFunctionLogDestinationOpenSearchArgs) ToAppSpecFunctionLogDestinationOpenSearchOutput() AppSpecFunctionLogDestinationOpenSearchOutput { + return i.ToAppSpecFunctionLogDestinationOpenSearchOutputWithContext(context.Background()) +} + +func (i AppSpecFunctionLogDestinationOpenSearchArgs) ToAppSpecFunctionLogDestinationOpenSearchOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecFunctionLogDestinationOpenSearchOutput) +} + +func (i AppSpecFunctionLogDestinationOpenSearchArgs) ToAppSpecFunctionLogDestinationOpenSearchPtrOutput() AppSpecFunctionLogDestinationOpenSearchPtrOutput { + return i.ToAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i AppSpecFunctionLogDestinationOpenSearchArgs) ToAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecFunctionLogDestinationOpenSearchOutput).ToAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(ctx) +} + +// AppSpecFunctionLogDestinationOpenSearchPtrInput is an input type that accepts AppSpecFunctionLogDestinationOpenSearchArgs, AppSpecFunctionLogDestinationOpenSearchPtr and AppSpecFunctionLogDestinationOpenSearchPtrOutput values. +// You can construct a concrete instance of `AppSpecFunctionLogDestinationOpenSearchPtrInput` via: +// +// AppSpecFunctionLogDestinationOpenSearchArgs{...} +// +// or: +// +// nil +type AppSpecFunctionLogDestinationOpenSearchPtrInput interface { + pulumi.Input + + ToAppSpecFunctionLogDestinationOpenSearchPtrOutput() AppSpecFunctionLogDestinationOpenSearchPtrOutput + ToAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(context.Context) AppSpecFunctionLogDestinationOpenSearchPtrOutput +} + +type appSpecFunctionLogDestinationOpenSearchPtrType AppSpecFunctionLogDestinationOpenSearchArgs + +func AppSpecFunctionLogDestinationOpenSearchPtr(v *AppSpecFunctionLogDestinationOpenSearchArgs) AppSpecFunctionLogDestinationOpenSearchPtrInput { + return (*appSpecFunctionLogDestinationOpenSearchPtrType)(v) +} + +func (*appSpecFunctionLogDestinationOpenSearchPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecFunctionLogDestinationOpenSearch)(nil)).Elem() +} + +func (i *appSpecFunctionLogDestinationOpenSearchPtrType) ToAppSpecFunctionLogDestinationOpenSearchPtrOutput() AppSpecFunctionLogDestinationOpenSearchPtrOutput { + return i.ToAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i *appSpecFunctionLogDestinationOpenSearchPtrType) ToAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecFunctionLogDestinationOpenSearchPtrOutput) +} + +type AppSpecFunctionLogDestinationOpenSearchOutput struct{ *pulumi.OutputState } + +func (AppSpecFunctionLogDestinationOpenSearchOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecFunctionLogDestinationOpenSearch)(nil)).Elem() +} + +func (o AppSpecFunctionLogDestinationOpenSearchOutput) ToAppSpecFunctionLogDestinationOpenSearchOutput() AppSpecFunctionLogDestinationOpenSearchOutput { + return o +} + +func (o AppSpecFunctionLogDestinationOpenSearchOutput) ToAppSpecFunctionLogDestinationOpenSearchOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchOutput { + return o +} + +func (o AppSpecFunctionLogDestinationOpenSearchOutput) ToAppSpecFunctionLogDestinationOpenSearchPtrOutput() AppSpecFunctionLogDestinationOpenSearchPtrOutput { + return o.ToAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (o AppSpecFunctionLogDestinationOpenSearchOutput) ToAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecFunctionLogDestinationOpenSearch) *AppSpecFunctionLogDestinationOpenSearch { + return &v + }).(AppSpecFunctionLogDestinationOpenSearchPtrOutput) +} + +// Basic authentication details. +func (o AppSpecFunctionLogDestinationOpenSearchOutput) BasicAuth() AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v AppSpecFunctionLogDestinationOpenSearch) AppSpecFunctionLogDestinationOpenSearchBasicAuth { + return v.BasicAuth + }).(AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o AppSpecFunctionLogDestinationOpenSearchOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecFunctionLogDestinationOpenSearch) *string { return v.ClusterName }).(pulumi.StringPtrOutput) +} + +// OpenSearch endpoint. +func (o AppSpecFunctionLogDestinationOpenSearchOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecFunctionLogDestinationOpenSearch) *string { return v.Endpoint }).(pulumi.StringPtrOutput) +} + +// OpenSearch index name. +func (o AppSpecFunctionLogDestinationOpenSearchOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecFunctionLogDestinationOpenSearch) *string { return v.IndexName }).(pulumi.StringPtrOutput) +} + +type AppSpecFunctionLogDestinationOpenSearchPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecFunctionLogDestinationOpenSearchPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecFunctionLogDestinationOpenSearch)(nil)).Elem() +} + +func (o AppSpecFunctionLogDestinationOpenSearchPtrOutput) ToAppSpecFunctionLogDestinationOpenSearchPtrOutput() AppSpecFunctionLogDestinationOpenSearchPtrOutput { + return o +} + +func (o AppSpecFunctionLogDestinationOpenSearchPtrOutput) ToAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchPtrOutput { + return o +} + +func (o AppSpecFunctionLogDestinationOpenSearchPtrOutput) Elem() AppSpecFunctionLogDestinationOpenSearchOutput { + return o.ApplyT(func(v *AppSpecFunctionLogDestinationOpenSearch) AppSpecFunctionLogDestinationOpenSearch { + if v != nil { + return *v + } + var ret AppSpecFunctionLogDestinationOpenSearch + return ret + }).(AppSpecFunctionLogDestinationOpenSearchOutput) +} + +// Basic authentication details. +func (o AppSpecFunctionLogDestinationOpenSearchPtrOutput) BasicAuth() AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyT(func(v *AppSpecFunctionLogDestinationOpenSearch) *AppSpecFunctionLogDestinationOpenSearchBasicAuth { + if v == nil { + return nil + } + return &v.BasicAuth + }).(AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o AppSpecFunctionLogDestinationOpenSearchPtrOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecFunctionLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.ClusterName + }).(pulumi.StringPtrOutput) +} + +// OpenSearch endpoint. +func (o AppSpecFunctionLogDestinationOpenSearchPtrOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecFunctionLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.Endpoint + }).(pulumi.StringPtrOutput) +} + +// OpenSearch index name. +func (o AppSpecFunctionLogDestinationOpenSearchPtrOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecFunctionLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.IndexName + }).(pulumi.StringPtrOutput) +} + +type AppSpecFunctionLogDestinationOpenSearchBasicAuth struct { + // Password for basic authentication. + Password *string `pulumi:"password"` + // user for basic authentication. + User *string `pulumi:"user"` +} + +// AppSpecFunctionLogDestinationOpenSearchBasicAuthInput is an input type that accepts AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs and AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput values. +// You can construct a concrete instance of `AppSpecFunctionLogDestinationOpenSearchBasicAuthInput` via: +// +// AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs{...} +type AppSpecFunctionLogDestinationOpenSearchBasicAuthInput interface { + pulumi.Input + + ToAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput() AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput + ToAppSpecFunctionLogDestinationOpenSearchBasicAuthOutputWithContext(context.Context) AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput +} + +type AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs struct { + // Password for basic authentication. + Password pulumi.StringPtrInput `pulumi:"password"` + // user for basic authentication. + User pulumi.StringPtrInput `pulumi:"user"` +} + +func (AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecFunctionLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput() AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return i.ToAppSpecFunctionLogDestinationOpenSearchBasicAuthOutputWithContext(context.Background()) +} + +func (i AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) +} + +func (i AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput).ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx) +} + +// AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrInput is an input type that accepts AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs, AppSpecFunctionLogDestinationOpenSearchBasicAuthPtr and AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput values. +// You can construct a concrete instance of `AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrInput` via: +// +// AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs{...} +// +// or: +// +// nil +type AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrInput interface { + pulumi.Input + + ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput + ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Context) AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput +} + +type appSpecFunctionLogDestinationOpenSearchBasicAuthPtrType AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs + +func AppSpecFunctionLogDestinationOpenSearchBasicAuthPtr(v *AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrInput { + return (*appSpecFunctionLogDestinationOpenSearchBasicAuthPtrType)(v) +} + +func (*appSpecFunctionLogDestinationOpenSearchBasicAuthPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecFunctionLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i *appSpecFunctionLogDestinationOpenSearchBasicAuthPtrType) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i *appSpecFunctionLogDestinationOpenSearchBasicAuthPtrType) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) +} + +type AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput struct{ *pulumi.OutputState } + +func (AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecFunctionLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput() AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecFunctionLogDestinationOpenSearchBasicAuth) *AppSpecFunctionLogDestinationOpenSearchBasicAuth { + return &v + }).(AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// Password for basic authentication. +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecFunctionLogDestinationOpenSearchBasicAuth) *string { return v.Password }).(pulumi.StringPtrOutput) +} + +// user for basic authentication. +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecFunctionLogDestinationOpenSearchBasicAuth) *string { return v.User }).(pulumi.StringPtrOutput) +} + +type AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecFunctionLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) ToAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) Elem() AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v *AppSpecFunctionLogDestinationOpenSearchBasicAuth) AppSpecFunctionLogDestinationOpenSearchBasicAuth { + if v != nil { + return *v + } + var ret AppSpecFunctionLogDestinationOpenSearchBasicAuth + return ret + }).(AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) +} + +// Password for basic authentication. +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecFunctionLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.Password + }).(pulumi.StringPtrOutput) +} + +// user for basic authentication. +func (o AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecFunctionLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.User + }).(pulumi.StringPtrOutput) +} + type AppSpecFunctionLogDestinationPapertrail struct { // Papertrail syslog endpoint. Endpoint string `pulumi:"endpoint"` @@ -3597,15 +3950,15 @@ func (o AppSpecIngressRuleComponentPtrOutput) Rewrite() pulumi.StringPtrOutput { } type AppSpecIngressRuleCors struct { - // Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + // Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. AllowCredentials *bool `pulumi:"allowCredentials"` - // The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + // The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. AllowHeaders []string `pulumi:"allowHeaders"` - // The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + // The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. AllowMethods []string `pulumi:"allowMethods"` // The `Access-Control-Allow-Origin` can be AllowOrigins *AppSpecIngressRuleCorsAllowOrigins `pulumi:"allowOrigins"` - // The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + // The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. ExposeHeaders []string `pulumi:"exposeHeaders"` // An optional duration specifying how long browsers can cache the results of a preflight request. This configures the Access-Control-Max-Age header. Example: `5h30m`. MaxAge *string `pulumi:"maxAge"` @@ -3623,15 +3976,15 @@ type AppSpecIngressRuleCorsInput interface { } type AppSpecIngressRuleCorsArgs struct { - // Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + // Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. AllowCredentials pulumi.BoolPtrInput `pulumi:"allowCredentials"` - // The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + // The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. AllowHeaders pulumi.StringArrayInput `pulumi:"allowHeaders"` - // The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + // The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. AllowMethods pulumi.StringArrayInput `pulumi:"allowMethods"` // The `Access-Control-Allow-Origin` can be AllowOrigins AppSpecIngressRuleCorsAllowOriginsPtrInput `pulumi:"allowOrigins"` - // The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + // The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. ExposeHeaders pulumi.StringArrayInput `pulumi:"exposeHeaders"` // An optional duration specifying how long browsers can cache the results of a preflight request. This configures the Access-Control-Max-Age header. Example: `5h30m`. MaxAge pulumi.StringPtrInput `pulumi:"maxAge"` @@ -3714,17 +4067,17 @@ func (o AppSpecIngressRuleCorsOutput) ToAppSpecIngressRuleCorsPtrOutputWithConte }).(AppSpecIngressRuleCorsPtrOutput) } -// Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. +// Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. func (o AppSpecIngressRuleCorsOutput) AllowCredentials() pulumi.BoolPtrOutput { return o.ApplyT(func(v AppSpecIngressRuleCors) *bool { return v.AllowCredentials }).(pulumi.BoolPtrOutput) } -// The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. +// The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. func (o AppSpecIngressRuleCorsOutput) AllowHeaders() pulumi.StringArrayOutput { return o.ApplyT(func(v AppSpecIngressRuleCors) []string { return v.AllowHeaders }).(pulumi.StringArrayOutput) } -// The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. +// The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. func (o AppSpecIngressRuleCorsOutput) AllowMethods() pulumi.StringArrayOutput { return o.ApplyT(func(v AppSpecIngressRuleCors) []string { return v.AllowMethods }).(pulumi.StringArrayOutput) } @@ -3734,7 +4087,7 @@ func (o AppSpecIngressRuleCorsOutput) AllowOrigins() AppSpecIngressRuleCorsAllow return o.ApplyT(func(v AppSpecIngressRuleCors) *AppSpecIngressRuleCorsAllowOrigins { return v.AllowOrigins }).(AppSpecIngressRuleCorsAllowOriginsPtrOutput) } -// The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. +// The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. func (o AppSpecIngressRuleCorsOutput) ExposeHeaders() pulumi.StringArrayOutput { return o.ApplyT(func(v AppSpecIngressRuleCors) []string { return v.ExposeHeaders }).(pulumi.StringArrayOutput) } @@ -3768,7 +4121,7 @@ func (o AppSpecIngressRuleCorsPtrOutput) Elem() AppSpecIngressRuleCorsOutput { }).(AppSpecIngressRuleCorsOutput) } -// Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. +// Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. func (o AppSpecIngressRuleCorsPtrOutput) AllowCredentials() pulumi.BoolPtrOutput { return o.ApplyT(func(v *AppSpecIngressRuleCors) *bool { if v == nil { @@ -3778,7 +4131,7 @@ func (o AppSpecIngressRuleCorsPtrOutput) AllowCredentials() pulumi.BoolPtrOutput }).(pulumi.BoolPtrOutput) } -// The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. +// The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. func (o AppSpecIngressRuleCorsPtrOutput) AllowHeaders() pulumi.StringArrayOutput { return o.ApplyT(func(v *AppSpecIngressRuleCors) []string { if v == nil { @@ -3788,7 +4141,7 @@ func (o AppSpecIngressRuleCorsPtrOutput) AllowHeaders() pulumi.StringArrayOutput }).(pulumi.StringArrayOutput) } -// The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. +// The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. func (o AppSpecIngressRuleCorsPtrOutput) AllowMethods() pulumi.StringArrayOutput { return o.ApplyT(func(v *AppSpecIngressRuleCors) []string { if v == nil { @@ -3808,7 +4161,7 @@ func (o AppSpecIngressRuleCorsPtrOutput) AllowOrigins() AppSpecIngressRuleCorsAl }).(AppSpecIngressRuleCorsAllowOriginsPtrOutput) } -// The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. +// The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. func (o AppSpecIngressRuleCorsPtrOutput) ExposeHeaders() pulumi.StringArrayOutput { return o.ApplyT(func(v *AppSpecIngressRuleCors) []string { if v == nil { @@ -4509,7 +4862,7 @@ type AppSpecJob struct { EnvironmentSlug *string `pulumi:"environmentSlug"` // Describes an environment variable made available to an app competent. Envs []AppSpecJobEnv `pulumi:"envs"` - // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. Git *AppSpecJobGit `pulumi:"git"` // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. Github *AppSpecJobGithub `pulumi:"github"` @@ -4559,7 +4912,7 @@ type AppSpecJobArgs struct { EnvironmentSlug pulumi.StringPtrInput `pulumi:"environmentSlug"` // Describes an environment variable made available to an app competent. Envs AppSpecJobEnvArrayInput `pulumi:"envs"` - // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. Git AppSpecJobGitPtrInput `pulumi:"git"` // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. Github AppSpecJobGithubPtrInput `pulumi:"github"` @@ -4663,7 +5016,7 @@ func (o AppSpecJobOutput) Envs() AppSpecJobEnvArrayOutput { return o.ApplyT(func(v AppSpecJob) []AppSpecJobEnv { return v.Envs }).(AppSpecJobEnvArrayOutput) } -// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. +// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. func (o AppSpecJobOutput) Git() AppSpecJobGitPtrOutput { return o.ApplyT(func(v AppSpecJob) *AppSpecJobGit { return v.Git }).(AppSpecJobGitPtrOutput) } @@ -5841,6 +6194,8 @@ type AppSpecJobLogDestination struct { Logtail *AppSpecJobLogDestinationLogtail `pulumi:"logtail"` // Name of the log destination. Minimum length: 2. Maximum length: 42. Name string `pulumi:"name"` + // OpenSearch configuration. + OpenSearch *AppSpecJobLogDestinationOpenSearch `pulumi:"openSearch"` // Papertrail configuration. Papertrail *AppSpecJobLogDestinationPapertrail `pulumi:"papertrail"` } @@ -5863,6 +6218,8 @@ type AppSpecJobLogDestinationArgs struct { Logtail AppSpecJobLogDestinationLogtailPtrInput `pulumi:"logtail"` // Name of the log destination. Minimum length: 2. Maximum length: 42. Name pulumi.StringInput `pulumi:"name"` + // OpenSearch configuration. + OpenSearch AppSpecJobLogDestinationOpenSearchPtrInput `pulumi:"openSearch"` // Papertrail configuration. Papertrail AppSpecJobLogDestinationPapertrailPtrInput `pulumi:"papertrail"` } @@ -5933,6 +6290,11 @@ func (o AppSpecJobLogDestinationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v AppSpecJobLogDestination) string { return v.Name }).(pulumi.StringOutput) } +// OpenSearch configuration. +func (o AppSpecJobLogDestinationOutput) OpenSearch() AppSpecJobLogDestinationOpenSearchPtrOutput { + return o.ApplyT(func(v AppSpecJobLogDestination) *AppSpecJobLogDestinationOpenSearch { return v.OpenSearch }).(AppSpecJobLogDestinationOpenSearchPtrOutput) +} + // Papertrail configuration. func (o AppSpecJobLogDestinationOutput) Papertrail() AppSpecJobLogDestinationPapertrailPtrOutput { return o.ApplyT(func(v AppSpecJobLogDestination) *AppSpecJobLogDestinationPapertrail { return v.Papertrail }).(AppSpecJobLogDestinationPapertrailPtrOutput) @@ -6116,8 +6478,6 @@ func (o AppSpecJobLogDestinationDatadogPtrOutput) Endpoint() pulumi.StringPtrOut type AppSpecJobLogDestinationLogtail struct { // Logtail token. - // - // A `database` can contain: Token string `pulumi:"token"` } @@ -6134,8 +6494,6 @@ type AppSpecJobLogDestinationLogtailInput interface { type AppSpecJobLogDestinationLogtailArgs struct { // Logtail token. - // - // A `database` can contain: Token pulumi.StringInput `pulumi:"token"` } @@ -6217,8 +6575,6 @@ func (o AppSpecJobLogDestinationLogtailOutput) ToAppSpecJobLogDestinationLogtail } // Logtail token. -// -// A `database` can contain: func (o AppSpecJobLogDestinationLogtailOutput) Token() pulumi.StringOutput { return o.ApplyT(func(v AppSpecJobLogDestinationLogtail) string { return v.Token }).(pulumi.StringOutput) } @@ -6248,8 +6604,6 @@ func (o AppSpecJobLogDestinationLogtailPtrOutput) Elem() AppSpecJobLogDestinatio } // Logtail token. -// -// A `database` can contain: func (o AppSpecJobLogDestinationLogtailPtrOutput) Token() pulumi.StringPtrOutput { return o.ApplyT(func(v *AppSpecJobLogDestinationLogtail) *string { if v == nil { @@ -6259,6 +6613,358 @@ func (o AppSpecJobLogDestinationLogtailPtrOutput) Token() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } +type AppSpecJobLogDestinationOpenSearch struct { + // Basic authentication details. + BasicAuth AppSpecJobLogDestinationOpenSearchBasicAuth `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName *string `pulumi:"clusterName"` + // OpenSearch endpoint. + Endpoint *string `pulumi:"endpoint"` + // OpenSearch index name. + IndexName *string `pulumi:"indexName"` +} + +// AppSpecJobLogDestinationOpenSearchInput is an input type that accepts AppSpecJobLogDestinationOpenSearchArgs and AppSpecJobLogDestinationOpenSearchOutput values. +// You can construct a concrete instance of `AppSpecJobLogDestinationOpenSearchInput` via: +// +// AppSpecJobLogDestinationOpenSearchArgs{...} +type AppSpecJobLogDestinationOpenSearchInput interface { + pulumi.Input + + ToAppSpecJobLogDestinationOpenSearchOutput() AppSpecJobLogDestinationOpenSearchOutput + ToAppSpecJobLogDestinationOpenSearchOutputWithContext(context.Context) AppSpecJobLogDestinationOpenSearchOutput +} + +type AppSpecJobLogDestinationOpenSearchArgs struct { + // Basic authentication details. + BasicAuth AppSpecJobLogDestinationOpenSearchBasicAuthInput `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName pulumi.StringPtrInput `pulumi:"clusterName"` + // OpenSearch endpoint. + Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` + // OpenSearch index name. + IndexName pulumi.StringPtrInput `pulumi:"indexName"` +} + +func (AppSpecJobLogDestinationOpenSearchArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecJobLogDestinationOpenSearch)(nil)).Elem() +} + +func (i AppSpecJobLogDestinationOpenSearchArgs) ToAppSpecJobLogDestinationOpenSearchOutput() AppSpecJobLogDestinationOpenSearchOutput { + return i.ToAppSpecJobLogDestinationOpenSearchOutputWithContext(context.Background()) +} + +func (i AppSpecJobLogDestinationOpenSearchArgs) ToAppSpecJobLogDestinationOpenSearchOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecJobLogDestinationOpenSearchOutput) +} + +func (i AppSpecJobLogDestinationOpenSearchArgs) ToAppSpecJobLogDestinationOpenSearchPtrOutput() AppSpecJobLogDestinationOpenSearchPtrOutput { + return i.ToAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i AppSpecJobLogDestinationOpenSearchArgs) ToAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecJobLogDestinationOpenSearchOutput).ToAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(ctx) +} + +// AppSpecJobLogDestinationOpenSearchPtrInput is an input type that accepts AppSpecJobLogDestinationOpenSearchArgs, AppSpecJobLogDestinationOpenSearchPtr and AppSpecJobLogDestinationOpenSearchPtrOutput values. +// You can construct a concrete instance of `AppSpecJobLogDestinationOpenSearchPtrInput` via: +// +// AppSpecJobLogDestinationOpenSearchArgs{...} +// +// or: +// +// nil +type AppSpecJobLogDestinationOpenSearchPtrInput interface { + pulumi.Input + + ToAppSpecJobLogDestinationOpenSearchPtrOutput() AppSpecJobLogDestinationOpenSearchPtrOutput + ToAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(context.Context) AppSpecJobLogDestinationOpenSearchPtrOutput +} + +type appSpecJobLogDestinationOpenSearchPtrType AppSpecJobLogDestinationOpenSearchArgs + +func AppSpecJobLogDestinationOpenSearchPtr(v *AppSpecJobLogDestinationOpenSearchArgs) AppSpecJobLogDestinationOpenSearchPtrInput { + return (*appSpecJobLogDestinationOpenSearchPtrType)(v) +} + +func (*appSpecJobLogDestinationOpenSearchPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecJobLogDestinationOpenSearch)(nil)).Elem() +} + +func (i *appSpecJobLogDestinationOpenSearchPtrType) ToAppSpecJobLogDestinationOpenSearchPtrOutput() AppSpecJobLogDestinationOpenSearchPtrOutput { + return i.ToAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i *appSpecJobLogDestinationOpenSearchPtrType) ToAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecJobLogDestinationOpenSearchPtrOutput) +} + +type AppSpecJobLogDestinationOpenSearchOutput struct{ *pulumi.OutputState } + +func (AppSpecJobLogDestinationOpenSearchOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecJobLogDestinationOpenSearch)(nil)).Elem() +} + +func (o AppSpecJobLogDestinationOpenSearchOutput) ToAppSpecJobLogDestinationOpenSearchOutput() AppSpecJobLogDestinationOpenSearchOutput { + return o +} + +func (o AppSpecJobLogDestinationOpenSearchOutput) ToAppSpecJobLogDestinationOpenSearchOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchOutput { + return o +} + +func (o AppSpecJobLogDestinationOpenSearchOutput) ToAppSpecJobLogDestinationOpenSearchPtrOutput() AppSpecJobLogDestinationOpenSearchPtrOutput { + return o.ToAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (o AppSpecJobLogDestinationOpenSearchOutput) ToAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecJobLogDestinationOpenSearch) *AppSpecJobLogDestinationOpenSearch { + return &v + }).(AppSpecJobLogDestinationOpenSearchPtrOutput) +} + +// Basic authentication details. +func (o AppSpecJobLogDestinationOpenSearchOutput) BasicAuth() AppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v AppSpecJobLogDestinationOpenSearch) AppSpecJobLogDestinationOpenSearchBasicAuth { + return v.BasicAuth + }).(AppSpecJobLogDestinationOpenSearchBasicAuthOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o AppSpecJobLogDestinationOpenSearchOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecJobLogDestinationOpenSearch) *string { return v.ClusterName }).(pulumi.StringPtrOutput) +} + +// OpenSearch endpoint. +func (o AppSpecJobLogDestinationOpenSearchOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecJobLogDestinationOpenSearch) *string { return v.Endpoint }).(pulumi.StringPtrOutput) +} + +// OpenSearch index name. +func (o AppSpecJobLogDestinationOpenSearchOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecJobLogDestinationOpenSearch) *string { return v.IndexName }).(pulumi.StringPtrOutput) +} + +type AppSpecJobLogDestinationOpenSearchPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecJobLogDestinationOpenSearchPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecJobLogDestinationOpenSearch)(nil)).Elem() +} + +func (o AppSpecJobLogDestinationOpenSearchPtrOutput) ToAppSpecJobLogDestinationOpenSearchPtrOutput() AppSpecJobLogDestinationOpenSearchPtrOutput { + return o +} + +func (o AppSpecJobLogDestinationOpenSearchPtrOutput) ToAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchPtrOutput { + return o +} + +func (o AppSpecJobLogDestinationOpenSearchPtrOutput) Elem() AppSpecJobLogDestinationOpenSearchOutput { + return o.ApplyT(func(v *AppSpecJobLogDestinationOpenSearch) AppSpecJobLogDestinationOpenSearch { + if v != nil { + return *v + } + var ret AppSpecJobLogDestinationOpenSearch + return ret + }).(AppSpecJobLogDestinationOpenSearchOutput) +} + +// Basic authentication details. +func (o AppSpecJobLogDestinationOpenSearchPtrOutput) BasicAuth() AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyT(func(v *AppSpecJobLogDestinationOpenSearch) *AppSpecJobLogDestinationOpenSearchBasicAuth { + if v == nil { + return nil + } + return &v.BasicAuth + }).(AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o AppSpecJobLogDestinationOpenSearchPtrOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecJobLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.ClusterName + }).(pulumi.StringPtrOutput) +} + +// OpenSearch endpoint. +func (o AppSpecJobLogDestinationOpenSearchPtrOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecJobLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.Endpoint + }).(pulumi.StringPtrOutput) +} + +// OpenSearch index name. +func (o AppSpecJobLogDestinationOpenSearchPtrOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecJobLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.IndexName + }).(pulumi.StringPtrOutput) +} + +type AppSpecJobLogDestinationOpenSearchBasicAuth struct { + // Password for basic authentication. + Password *string `pulumi:"password"` + // user for basic authentication. + User *string `pulumi:"user"` +} + +// AppSpecJobLogDestinationOpenSearchBasicAuthInput is an input type that accepts AppSpecJobLogDestinationOpenSearchBasicAuthArgs and AppSpecJobLogDestinationOpenSearchBasicAuthOutput values. +// You can construct a concrete instance of `AppSpecJobLogDestinationOpenSearchBasicAuthInput` via: +// +// AppSpecJobLogDestinationOpenSearchBasicAuthArgs{...} +type AppSpecJobLogDestinationOpenSearchBasicAuthInput interface { + pulumi.Input + + ToAppSpecJobLogDestinationOpenSearchBasicAuthOutput() AppSpecJobLogDestinationOpenSearchBasicAuthOutput + ToAppSpecJobLogDestinationOpenSearchBasicAuthOutputWithContext(context.Context) AppSpecJobLogDestinationOpenSearchBasicAuthOutput +} + +type AppSpecJobLogDestinationOpenSearchBasicAuthArgs struct { + // Password for basic authentication. + Password pulumi.StringPtrInput `pulumi:"password"` + // user for basic authentication. + User pulumi.StringPtrInput `pulumi:"user"` +} + +func (AppSpecJobLogDestinationOpenSearchBasicAuthArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecJobLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i AppSpecJobLogDestinationOpenSearchBasicAuthArgs) ToAppSpecJobLogDestinationOpenSearchBasicAuthOutput() AppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return i.ToAppSpecJobLogDestinationOpenSearchBasicAuthOutputWithContext(context.Background()) +} + +func (i AppSpecJobLogDestinationOpenSearchBasicAuthArgs) ToAppSpecJobLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecJobLogDestinationOpenSearchBasicAuthOutput) +} + +func (i AppSpecJobLogDestinationOpenSearchBasicAuthArgs) ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i AppSpecJobLogDestinationOpenSearchBasicAuthArgs) ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecJobLogDestinationOpenSearchBasicAuthOutput).ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx) +} + +// AppSpecJobLogDestinationOpenSearchBasicAuthPtrInput is an input type that accepts AppSpecJobLogDestinationOpenSearchBasicAuthArgs, AppSpecJobLogDestinationOpenSearchBasicAuthPtr and AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput values. +// You can construct a concrete instance of `AppSpecJobLogDestinationOpenSearchBasicAuthPtrInput` via: +// +// AppSpecJobLogDestinationOpenSearchBasicAuthArgs{...} +// +// or: +// +// nil +type AppSpecJobLogDestinationOpenSearchBasicAuthPtrInput interface { + pulumi.Input + + ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput + ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Context) AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput +} + +type appSpecJobLogDestinationOpenSearchBasicAuthPtrType AppSpecJobLogDestinationOpenSearchBasicAuthArgs + +func AppSpecJobLogDestinationOpenSearchBasicAuthPtr(v *AppSpecJobLogDestinationOpenSearchBasicAuthArgs) AppSpecJobLogDestinationOpenSearchBasicAuthPtrInput { + return (*appSpecJobLogDestinationOpenSearchBasicAuthPtrType)(v) +} + +func (*appSpecJobLogDestinationOpenSearchBasicAuthPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecJobLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i *appSpecJobLogDestinationOpenSearchBasicAuthPtrType) ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i *appSpecJobLogDestinationOpenSearchBasicAuthPtrType) ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) +} + +type AppSpecJobLogDestinationOpenSearchBasicAuthOutput struct{ *pulumi.OutputState } + +func (AppSpecJobLogDestinationOpenSearchBasicAuthOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecJobLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o AppSpecJobLogDestinationOpenSearchBasicAuthOutput) ToAppSpecJobLogDestinationOpenSearchBasicAuthOutput() AppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o AppSpecJobLogDestinationOpenSearchBasicAuthOutput) ToAppSpecJobLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o AppSpecJobLogDestinationOpenSearchBasicAuthOutput) ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (o AppSpecJobLogDestinationOpenSearchBasicAuthOutput) ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecJobLogDestinationOpenSearchBasicAuth) *AppSpecJobLogDestinationOpenSearchBasicAuth { + return &v + }).(AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// Password for basic authentication. +func (o AppSpecJobLogDestinationOpenSearchBasicAuthOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecJobLogDestinationOpenSearchBasicAuth) *string { return v.Password }).(pulumi.StringPtrOutput) +} + +// user for basic authentication. +func (o AppSpecJobLogDestinationOpenSearchBasicAuthOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecJobLogDestinationOpenSearchBasicAuth) *string { return v.User }).(pulumi.StringPtrOutput) +} + +type AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecJobLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) ToAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) Elem() AppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v *AppSpecJobLogDestinationOpenSearchBasicAuth) AppSpecJobLogDestinationOpenSearchBasicAuth { + if v != nil { + return *v + } + var ret AppSpecJobLogDestinationOpenSearchBasicAuth + return ret + }).(AppSpecJobLogDestinationOpenSearchBasicAuthOutput) +} + +// Password for basic authentication. +func (o AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecJobLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.Password + }).(pulumi.StringPtrOutput) +} + +// user for basic authentication. +func (o AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecJobLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.User + }).(pulumi.StringPtrOutput) +} + type AppSpecJobLogDestinationPapertrail struct { // Papertrail syslog endpoint. Endpoint string `pulumi:"endpoint"` @@ -6413,7 +7119,7 @@ type AppSpecService struct { EnvironmentSlug *string `pulumi:"environmentSlug"` // Describes an environment variable made available to an app competent. Envs []AppSpecServiceEnv `pulumi:"envs"` - // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. Git *AppSpecServiceGit `pulumi:"git"` // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. Github *AppSpecServiceGithub `pulumi:"github"` @@ -6473,7 +7179,7 @@ type AppSpecServiceArgs struct { EnvironmentSlug pulumi.StringPtrInput `pulumi:"environmentSlug"` // Describes an environment variable made available to an app competent. Envs AppSpecServiceEnvArrayInput `pulumi:"envs"` - // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. Git AppSpecServiceGitPtrInput `pulumi:"git"` // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. Github AppSpecServiceGithubPtrInput `pulumi:"github"` @@ -6593,7 +7299,7 @@ func (o AppSpecServiceOutput) Envs() AppSpecServiceEnvArrayOutput { return o.ApplyT(func(v AppSpecService) []AppSpecServiceEnv { return v.Envs }).(AppSpecServiceEnvArrayOutput) } -// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. +// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. func (o AppSpecServiceOutput) Git() AppSpecServiceGitPtrOutput { return o.ApplyT(func(v AppSpecService) *AppSpecServiceGit { return v.Git }).(AppSpecServiceGitPtrOutput) } @@ -8907,6 +9613,8 @@ type AppSpecServiceLogDestination struct { Logtail *AppSpecServiceLogDestinationLogtail `pulumi:"logtail"` // Name of the log destination. Minimum length: 2. Maximum length: 42. Name string `pulumi:"name"` + // OpenSearch configuration. + OpenSearch *AppSpecServiceLogDestinationOpenSearch `pulumi:"openSearch"` // Papertrail configuration. Papertrail *AppSpecServiceLogDestinationPapertrail `pulumi:"papertrail"` } @@ -8929,6 +9637,8 @@ type AppSpecServiceLogDestinationArgs struct { Logtail AppSpecServiceLogDestinationLogtailPtrInput `pulumi:"logtail"` // Name of the log destination. Minimum length: 2. Maximum length: 42. Name pulumi.StringInput `pulumi:"name"` + // OpenSearch configuration. + OpenSearch AppSpecServiceLogDestinationOpenSearchPtrInput `pulumi:"openSearch"` // Papertrail configuration. Papertrail AppSpecServiceLogDestinationPapertrailPtrInput `pulumi:"papertrail"` } @@ -8999,6 +9709,11 @@ func (o AppSpecServiceLogDestinationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v AppSpecServiceLogDestination) string { return v.Name }).(pulumi.StringOutput) } +// OpenSearch configuration. +func (o AppSpecServiceLogDestinationOutput) OpenSearch() AppSpecServiceLogDestinationOpenSearchPtrOutput { + return o.ApplyT(func(v AppSpecServiceLogDestination) *AppSpecServiceLogDestinationOpenSearch { return v.OpenSearch }).(AppSpecServiceLogDestinationOpenSearchPtrOutput) +} + // Papertrail configuration. func (o AppSpecServiceLogDestinationOutput) Papertrail() AppSpecServiceLogDestinationPapertrailPtrOutput { return o.ApplyT(func(v AppSpecServiceLogDestination) *AppSpecServiceLogDestinationPapertrail { return v.Papertrail }).(AppSpecServiceLogDestinationPapertrailPtrOutput) @@ -9182,8 +9897,6 @@ func (o AppSpecServiceLogDestinationDatadogPtrOutput) Endpoint() pulumi.StringPt type AppSpecServiceLogDestinationLogtail struct { // Logtail token. - // - // A `database` can contain: Token string `pulumi:"token"` } @@ -9200,8 +9913,6 @@ type AppSpecServiceLogDestinationLogtailInput interface { type AppSpecServiceLogDestinationLogtailArgs struct { // Logtail token. - // - // A `database` can contain: Token pulumi.StringInput `pulumi:"token"` } @@ -9283,8 +9994,6 @@ func (o AppSpecServiceLogDestinationLogtailOutput) ToAppSpecServiceLogDestinatio } // Logtail token. -// -// A `database` can contain: func (o AppSpecServiceLogDestinationLogtailOutput) Token() pulumi.StringOutput { return o.ApplyT(func(v AppSpecServiceLogDestinationLogtail) string { return v.Token }).(pulumi.StringOutput) } @@ -9314,8 +10023,6 @@ func (o AppSpecServiceLogDestinationLogtailPtrOutput) Elem() AppSpecServiceLogDe } // Logtail token. -// -// A `database` can contain: func (o AppSpecServiceLogDestinationLogtailPtrOutput) Token() pulumi.StringPtrOutput { return o.ApplyT(func(v *AppSpecServiceLogDestinationLogtail) *string { if v == nil { @@ -9325,6 +10032,358 @@ func (o AppSpecServiceLogDestinationLogtailPtrOutput) Token() pulumi.StringPtrOu }).(pulumi.StringPtrOutput) } +type AppSpecServiceLogDestinationOpenSearch struct { + // Basic authentication details. + BasicAuth AppSpecServiceLogDestinationOpenSearchBasicAuth `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName *string `pulumi:"clusterName"` + // OpenSearch endpoint. + Endpoint *string `pulumi:"endpoint"` + // OpenSearch index name. + IndexName *string `pulumi:"indexName"` +} + +// AppSpecServiceLogDestinationOpenSearchInput is an input type that accepts AppSpecServiceLogDestinationOpenSearchArgs and AppSpecServiceLogDestinationOpenSearchOutput values. +// You can construct a concrete instance of `AppSpecServiceLogDestinationOpenSearchInput` via: +// +// AppSpecServiceLogDestinationOpenSearchArgs{...} +type AppSpecServiceLogDestinationOpenSearchInput interface { + pulumi.Input + + ToAppSpecServiceLogDestinationOpenSearchOutput() AppSpecServiceLogDestinationOpenSearchOutput + ToAppSpecServiceLogDestinationOpenSearchOutputWithContext(context.Context) AppSpecServiceLogDestinationOpenSearchOutput +} + +type AppSpecServiceLogDestinationOpenSearchArgs struct { + // Basic authentication details. + BasicAuth AppSpecServiceLogDestinationOpenSearchBasicAuthInput `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName pulumi.StringPtrInput `pulumi:"clusterName"` + // OpenSearch endpoint. + Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` + // OpenSearch index name. + IndexName pulumi.StringPtrInput `pulumi:"indexName"` +} + +func (AppSpecServiceLogDestinationOpenSearchArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecServiceLogDestinationOpenSearch)(nil)).Elem() +} + +func (i AppSpecServiceLogDestinationOpenSearchArgs) ToAppSpecServiceLogDestinationOpenSearchOutput() AppSpecServiceLogDestinationOpenSearchOutput { + return i.ToAppSpecServiceLogDestinationOpenSearchOutputWithContext(context.Background()) +} + +func (i AppSpecServiceLogDestinationOpenSearchArgs) ToAppSpecServiceLogDestinationOpenSearchOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecServiceLogDestinationOpenSearchOutput) +} + +func (i AppSpecServiceLogDestinationOpenSearchArgs) ToAppSpecServiceLogDestinationOpenSearchPtrOutput() AppSpecServiceLogDestinationOpenSearchPtrOutput { + return i.ToAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i AppSpecServiceLogDestinationOpenSearchArgs) ToAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecServiceLogDestinationOpenSearchOutput).ToAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(ctx) +} + +// AppSpecServiceLogDestinationOpenSearchPtrInput is an input type that accepts AppSpecServiceLogDestinationOpenSearchArgs, AppSpecServiceLogDestinationOpenSearchPtr and AppSpecServiceLogDestinationOpenSearchPtrOutput values. +// You can construct a concrete instance of `AppSpecServiceLogDestinationOpenSearchPtrInput` via: +// +// AppSpecServiceLogDestinationOpenSearchArgs{...} +// +// or: +// +// nil +type AppSpecServiceLogDestinationOpenSearchPtrInput interface { + pulumi.Input + + ToAppSpecServiceLogDestinationOpenSearchPtrOutput() AppSpecServiceLogDestinationOpenSearchPtrOutput + ToAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(context.Context) AppSpecServiceLogDestinationOpenSearchPtrOutput +} + +type appSpecServiceLogDestinationOpenSearchPtrType AppSpecServiceLogDestinationOpenSearchArgs + +func AppSpecServiceLogDestinationOpenSearchPtr(v *AppSpecServiceLogDestinationOpenSearchArgs) AppSpecServiceLogDestinationOpenSearchPtrInput { + return (*appSpecServiceLogDestinationOpenSearchPtrType)(v) +} + +func (*appSpecServiceLogDestinationOpenSearchPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecServiceLogDestinationOpenSearch)(nil)).Elem() +} + +func (i *appSpecServiceLogDestinationOpenSearchPtrType) ToAppSpecServiceLogDestinationOpenSearchPtrOutput() AppSpecServiceLogDestinationOpenSearchPtrOutput { + return i.ToAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i *appSpecServiceLogDestinationOpenSearchPtrType) ToAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecServiceLogDestinationOpenSearchPtrOutput) +} + +type AppSpecServiceLogDestinationOpenSearchOutput struct{ *pulumi.OutputState } + +func (AppSpecServiceLogDestinationOpenSearchOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecServiceLogDestinationOpenSearch)(nil)).Elem() +} + +func (o AppSpecServiceLogDestinationOpenSearchOutput) ToAppSpecServiceLogDestinationOpenSearchOutput() AppSpecServiceLogDestinationOpenSearchOutput { + return o +} + +func (o AppSpecServiceLogDestinationOpenSearchOutput) ToAppSpecServiceLogDestinationOpenSearchOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchOutput { + return o +} + +func (o AppSpecServiceLogDestinationOpenSearchOutput) ToAppSpecServiceLogDestinationOpenSearchPtrOutput() AppSpecServiceLogDestinationOpenSearchPtrOutput { + return o.ToAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (o AppSpecServiceLogDestinationOpenSearchOutput) ToAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecServiceLogDestinationOpenSearch) *AppSpecServiceLogDestinationOpenSearch { + return &v + }).(AppSpecServiceLogDestinationOpenSearchPtrOutput) +} + +// Basic authentication details. +func (o AppSpecServiceLogDestinationOpenSearchOutput) BasicAuth() AppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v AppSpecServiceLogDestinationOpenSearch) AppSpecServiceLogDestinationOpenSearchBasicAuth { + return v.BasicAuth + }).(AppSpecServiceLogDestinationOpenSearchBasicAuthOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o AppSpecServiceLogDestinationOpenSearchOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecServiceLogDestinationOpenSearch) *string { return v.ClusterName }).(pulumi.StringPtrOutput) +} + +// OpenSearch endpoint. +func (o AppSpecServiceLogDestinationOpenSearchOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecServiceLogDestinationOpenSearch) *string { return v.Endpoint }).(pulumi.StringPtrOutput) +} + +// OpenSearch index name. +func (o AppSpecServiceLogDestinationOpenSearchOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecServiceLogDestinationOpenSearch) *string { return v.IndexName }).(pulumi.StringPtrOutput) +} + +type AppSpecServiceLogDestinationOpenSearchPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecServiceLogDestinationOpenSearchPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecServiceLogDestinationOpenSearch)(nil)).Elem() +} + +func (o AppSpecServiceLogDestinationOpenSearchPtrOutput) ToAppSpecServiceLogDestinationOpenSearchPtrOutput() AppSpecServiceLogDestinationOpenSearchPtrOutput { + return o +} + +func (o AppSpecServiceLogDestinationOpenSearchPtrOutput) ToAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchPtrOutput { + return o +} + +func (o AppSpecServiceLogDestinationOpenSearchPtrOutput) Elem() AppSpecServiceLogDestinationOpenSearchOutput { + return o.ApplyT(func(v *AppSpecServiceLogDestinationOpenSearch) AppSpecServiceLogDestinationOpenSearch { + if v != nil { + return *v + } + var ret AppSpecServiceLogDestinationOpenSearch + return ret + }).(AppSpecServiceLogDestinationOpenSearchOutput) +} + +// Basic authentication details. +func (o AppSpecServiceLogDestinationOpenSearchPtrOutput) BasicAuth() AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyT(func(v *AppSpecServiceLogDestinationOpenSearch) *AppSpecServiceLogDestinationOpenSearchBasicAuth { + if v == nil { + return nil + } + return &v.BasicAuth + }).(AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o AppSpecServiceLogDestinationOpenSearchPtrOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecServiceLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.ClusterName + }).(pulumi.StringPtrOutput) +} + +// OpenSearch endpoint. +func (o AppSpecServiceLogDestinationOpenSearchPtrOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecServiceLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.Endpoint + }).(pulumi.StringPtrOutput) +} + +// OpenSearch index name. +func (o AppSpecServiceLogDestinationOpenSearchPtrOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecServiceLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.IndexName + }).(pulumi.StringPtrOutput) +} + +type AppSpecServiceLogDestinationOpenSearchBasicAuth struct { + // Password for basic authentication. + Password *string `pulumi:"password"` + // user for basic authentication. + User *string `pulumi:"user"` +} + +// AppSpecServiceLogDestinationOpenSearchBasicAuthInput is an input type that accepts AppSpecServiceLogDestinationOpenSearchBasicAuthArgs and AppSpecServiceLogDestinationOpenSearchBasicAuthOutput values. +// You can construct a concrete instance of `AppSpecServiceLogDestinationOpenSearchBasicAuthInput` via: +// +// AppSpecServiceLogDestinationOpenSearchBasicAuthArgs{...} +type AppSpecServiceLogDestinationOpenSearchBasicAuthInput interface { + pulumi.Input + + ToAppSpecServiceLogDestinationOpenSearchBasicAuthOutput() AppSpecServiceLogDestinationOpenSearchBasicAuthOutput + ToAppSpecServiceLogDestinationOpenSearchBasicAuthOutputWithContext(context.Context) AppSpecServiceLogDestinationOpenSearchBasicAuthOutput +} + +type AppSpecServiceLogDestinationOpenSearchBasicAuthArgs struct { + // Password for basic authentication. + Password pulumi.StringPtrInput `pulumi:"password"` + // user for basic authentication. + User pulumi.StringPtrInput `pulumi:"user"` +} + +func (AppSpecServiceLogDestinationOpenSearchBasicAuthArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecServiceLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i AppSpecServiceLogDestinationOpenSearchBasicAuthArgs) ToAppSpecServiceLogDestinationOpenSearchBasicAuthOutput() AppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return i.ToAppSpecServiceLogDestinationOpenSearchBasicAuthOutputWithContext(context.Background()) +} + +func (i AppSpecServiceLogDestinationOpenSearchBasicAuthArgs) ToAppSpecServiceLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecServiceLogDestinationOpenSearchBasicAuthOutput) +} + +func (i AppSpecServiceLogDestinationOpenSearchBasicAuthArgs) ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i AppSpecServiceLogDestinationOpenSearchBasicAuthArgs) ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecServiceLogDestinationOpenSearchBasicAuthOutput).ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx) +} + +// AppSpecServiceLogDestinationOpenSearchBasicAuthPtrInput is an input type that accepts AppSpecServiceLogDestinationOpenSearchBasicAuthArgs, AppSpecServiceLogDestinationOpenSearchBasicAuthPtr and AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput values. +// You can construct a concrete instance of `AppSpecServiceLogDestinationOpenSearchBasicAuthPtrInput` via: +// +// AppSpecServiceLogDestinationOpenSearchBasicAuthArgs{...} +// +// or: +// +// nil +type AppSpecServiceLogDestinationOpenSearchBasicAuthPtrInput interface { + pulumi.Input + + ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput + ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Context) AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput +} + +type appSpecServiceLogDestinationOpenSearchBasicAuthPtrType AppSpecServiceLogDestinationOpenSearchBasicAuthArgs + +func AppSpecServiceLogDestinationOpenSearchBasicAuthPtr(v *AppSpecServiceLogDestinationOpenSearchBasicAuthArgs) AppSpecServiceLogDestinationOpenSearchBasicAuthPtrInput { + return (*appSpecServiceLogDestinationOpenSearchBasicAuthPtrType)(v) +} + +func (*appSpecServiceLogDestinationOpenSearchBasicAuthPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecServiceLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i *appSpecServiceLogDestinationOpenSearchBasicAuthPtrType) ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i *appSpecServiceLogDestinationOpenSearchBasicAuthPtrType) ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) +} + +type AppSpecServiceLogDestinationOpenSearchBasicAuthOutput struct{ *pulumi.OutputState } + +func (AppSpecServiceLogDestinationOpenSearchBasicAuthOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecServiceLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthOutput) ToAppSpecServiceLogDestinationOpenSearchBasicAuthOutput() AppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthOutput) ToAppSpecServiceLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthOutput) ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthOutput) ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecServiceLogDestinationOpenSearchBasicAuth) *AppSpecServiceLogDestinationOpenSearchBasicAuth { + return &v + }).(AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// Password for basic authentication. +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecServiceLogDestinationOpenSearchBasicAuth) *string { return v.Password }).(pulumi.StringPtrOutput) +} + +// user for basic authentication. +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecServiceLogDestinationOpenSearchBasicAuth) *string { return v.User }).(pulumi.StringPtrOutput) +} + +type AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecServiceLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) ToAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) Elem() AppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v *AppSpecServiceLogDestinationOpenSearchBasicAuth) AppSpecServiceLogDestinationOpenSearchBasicAuth { + if v != nil { + return *v + } + var ret AppSpecServiceLogDestinationOpenSearchBasicAuth + return ret + }).(AppSpecServiceLogDestinationOpenSearchBasicAuthOutput) +} + +// Password for basic authentication. +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecServiceLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.Password + }).(pulumi.StringPtrOutput) +} + +// user for basic authentication. +func (o AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecServiceLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.User + }).(pulumi.StringPtrOutput) +} + type AppSpecServiceLogDestinationPapertrail struct { // Papertrail syslog endpoint. Endpoint string `pulumi:"endpoint"` @@ -9585,7 +10644,7 @@ type AppSpecStaticSite struct { Envs []AppSpecStaticSiteEnv `pulumi:"envs"` // The name of the error document to use when serving this static site. ErrorDocument *string `pulumi:"errorDocument"` - // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. Git *AppSpecStaticSiteGit `pulumi:"git"` // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. Github *AppSpecStaticSiteGithub `pulumi:"github"` @@ -9633,7 +10692,7 @@ type AppSpecStaticSiteArgs struct { Envs AppSpecStaticSiteEnvArrayInput `pulumi:"envs"` // The name of the error document to use when serving this static site. ErrorDocument pulumi.StringPtrInput `pulumi:"errorDocument"` - // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. Git AppSpecStaticSiteGitPtrInput `pulumi:"git"` // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. Github AppSpecStaticSiteGithubPtrInput `pulumi:"github"` @@ -9741,7 +10800,7 @@ func (o AppSpecStaticSiteOutput) ErrorDocument() pulumi.StringPtrOutput { return o.ApplyT(func(v AppSpecStaticSite) *string { return v.ErrorDocument }).(pulumi.StringPtrOutput) } -// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. +// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. func (o AppSpecStaticSiteOutput) Git() AppSpecStaticSiteGitPtrOutput { return o.ApplyT(func(v AppSpecStaticSite) *AppSpecStaticSiteGit { return v.Git }).(AppSpecStaticSiteGitPtrOutput) } @@ -10965,7 +12024,7 @@ type AppSpecWorker struct { EnvironmentSlug *string `pulumi:"environmentSlug"` // Describes an environment variable made available to an app competent. Envs []AppSpecWorkerEnv `pulumi:"envs"` - // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. Git *AppSpecWorkerGit `pulumi:"git"` // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. Github *AppSpecWorkerGithub `pulumi:"github"` @@ -11009,7 +12068,7 @@ type AppSpecWorkerArgs struct { EnvironmentSlug pulumi.StringPtrInput `pulumi:"environmentSlug"` // Describes an environment variable made available to an app competent. Envs AppSpecWorkerEnvArrayInput `pulumi:"envs"` - // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + // A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. Git AppSpecWorkerGitPtrInput `pulumi:"git"` // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. Github AppSpecWorkerGithubPtrInput `pulumi:"github"` @@ -11107,7 +12166,7 @@ func (o AppSpecWorkerOutput) Envs() AppSpecWorkerEnvArrayOutput { return o.ApplyT(func(v AppSpecWorker) []AppSpecWorkerEnv { return v.Envs }).(AppSpecWorkerEnvArrayOutput) } -// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. +// A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. func (o AppSpecWorkerOutput) Git() AppSpecWorkerGitPtrOutput { return o.ApplyT(func(v AppSpecWorker) *AppSpecWorkerGit { return v.Git }).(AppSpecWorkerGitPtrOutput) } @@ -12276,6 +13335,8 @@ type AppSpecWorkerLogDestination struct { Logtail *AppSpecWorkerLogDestinationLogtail `pulumi:"logtail"` // Name of the log destination. Minimum length: 2. Maximum length: 42. Name string `pulumi:"name"` + // OpenSearch configuration. + OpenSearch *AppSpecWorkerLogDestinationOpenSearch `pulumi:"openSearch"` // Papertrail configuration. Papertrail *AppSpecWorkerLogDestinationPapertrail `pulumi:"papertrail"` } @@ -12298,6 +13359,8 @@ type AppSpecWorkerLogDestinationArgs struct { Logtail AppSpecWorkerLogDestinationLogtailPtrInput `pulumi:"logtail"` // Name of the log destination. Minimum length: 2. Maximum length: 42. Name pulumi.StringInput `pulumi:"name"` + // OpenSearch configuration. + OpenSearch AppSpecWorkerLogDestinationOpenSearchPtrInput `pulumi:"openSearch"` // Papertrail configuration. Papertrail AppSpecWorkerLogDestinationPapertrailPtrInput `pulumi:"papertrail"` } @@ -12368,6 +13431,11 @@ func (o AppSpecWorkerLogDestinationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v AppSpecWorkerLogDestination) string { return v.Name }).(pulumi.StringOutput) } +// OpenSearch configuration. +func (o AppSpecWorkerLogDestinationOutput) OpenSearch() AppSpecWorkerLogDestinationOpenSearchPtrOutput { + return o.ApplyT(func(v AppSpecWorkerLogDestination) *AppSpecWorkerLogDestinationOpenSearch { return v.OpenSearch }).(AppSpecWorkerLogDestinationOpenSearchPtrOutput) +} + // Papertrail configuration. func (o AppSpecWorkerLogDestinationOutput) Papertrail() AppSpecWorkerLogDestinationPapertrailPtrOutput { return o.ApplyT(func(v AppSpecWorkerLogDestination) *AppSpecWorkerLogDestinationPapertrail { return v.Papertrail }).(AppSpecWorkerLogDestinationPapertrailPtrOutput) @@ -12551,8 +13619,6 @@ func (o AppSpecWorkerLogDestinationDatadogPtrOutput) Endpoint() pulumi.StringPtr type AppSpecWorkerLogDestinationLogtail struct { // Logtail token. - // - // A `database` can contain: Token string `pulumi:"token"` } @@ -12569,8 +13635,6 @@ type AppSpecWorkerLogDestinationLogtailInput interface { type AppSpecWorkerLogDestinationLogtailArgs struct { // Logtail token. - // - // A `database` can contain: Token pulumi.StringInput `pulumi:"token"` } @@ -12652,8 +13716,6 @@ func (o AppSpecWorkerLogDestinationLogtailOutput) ToAppSpecWorkerLogDestinationL } // Logtail token. -// -// A `database` can contain: func (o AppSpecWorkerLogDestinationLogtailOutput) Token() pulumi.StringOutput { return o.ApplyT(func(v AppSpecWorkerLogDestinationLogtail) string { return v.Token }).(pulumi.StringOutput) } @@ -12683,8 +13745,6 @@ func (o AppSpecWorkerLogDestinationLogtailPtrOutput) Elem() AppSpecWorkerLogDest } // Logtail token. -// -// A `database` can contain: func (o AppSpecWorkerLogDestinationLogtailPtrOutput) Token() pulumi.StringPtrOutput { return o.ApplyT(func(v *AppSpecWorkerLogDestinationLogtail) *string { if v == nil { @@ -12694,6 +13754,358 @@ func (o AppSpecWorkerLogDestinationLogtailPtrOutput) Token() pulumi.StringPtrOut }).(pulumi.StringPtrOutput) } +type AppSpecWorkerLogDestinationOpenSearch struct { + // Basic authentication details. + BasicAuth AppSpecWorkerLogDestinationOpenSearchBasicAuth `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName *string `pulumi:"clusterName"` + // OpenSearch endpoint. + Endpoint *string `pulumi:"endpoint"` + // OpenSearch index name. + IndexName *string `pulumi:"indexName"` +} + +// AppSpecWorkerLogDestinationOpenSearchInput is an input type that accepts AppSpecWorkerLogDestinationOpenSearchArgs and AppSpecWorkerLogDestinationOpenSearchOutput values. +// You can construct a concrete instance of `AppSpecWorkerLogDestinationOpenSearchInput` via: +// +// AppSpecWorkerLogDestinationOpenSearchArgs{...} +type AppSpecWorkerLogDestinationOpenSearchInput interface { + pulumi.Input + + ToAppSpecWorkerLogDestinationOpenSearchOutput() AppSpecWorkerLogDestinationOpenSearchOutput + ToAppSpecWorkerLogDestinationOpenSearchOutputWithContext(context.Context) AppSpecWorkerLogDestinationOpenSearchOutput +} + +type AppSpecWorkerLogDestinationOpenSearchArgs struct { + // Basic authentication details. + BasicAuth AppSpecWorkerLogDestinationOpenSearchBasicAuthInput `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName pulumi.StringPtrInput `pulumi:"clusterName"` + // OpenSearch endpoint. + Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` + // OpenSearch index name. + IndexName pulumi.StringPtrInput `pulumi:"indexName"` +} + +func (AppSpecWorkerLogDestinationOpenSearchArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecWorkerLogDestinationOpenSearch)(nil)).Elem() +} + +func (i AppSpecWorkerLogDestinationOpenSearchArgs) ToAppSpecWorkerLogDestinationOpenSearchOutput() AppSpecWorkerLogDestinationOpenSearchOutput { + return i.ToAppSpecWorkerLogDestinationOpenSearchOutputWithContext(context.Background()) +} + +func (i AppSpecWorkerLogDestinationOpenSearchArgs) ToAppSpecWorkerLogDestinationOpenSearchOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecWorkerLogDestinationOpenSearchOutput) +} + +func (i AppSpecWorkerLogDestinationOpenSearchArgs) ToAppSpecWorkerLogDestinationOpenSearchPtrOutput() AppSpecWorkerLogDestinationOpenSearchPtrOutput { + return i.ToAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i AppSpecWorkerLogDestinationOpenSearchArgs) ToAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecWorkerLogDestinationOpenSearchOutput).ToAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(ctx) +} + +// AppSpecWorkerLogDestinationOpenSearchPtrInput is an input type that accepts AppSpecWorkerLogDestinationOpenSearchArgs, AppSpecWorkerLogDestinationOpenSearchPtr and AppSpecWorkerLogDestinationOpenSearchPtrOutput values. +// You can construct a concrete instance of `AppSpecWorkerLogDestinationOpenSearchPtrInput` via: +// +// AppSpecWorkerLogDestinationOpenSearchArgs{...} +// +// or: +// +// nil +type AppSpecWorkerLogDestinationOpenSearchPtrInput interface { + pulumi.Input + + ToAppSpecWorkerLogDestinationOpenSearchPtrOutput() AppSpecWorkerLogDestinationOpenSearchPtrOutput + ToAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(context.Context) AppSpecWorkerLogDestinationOpenSearchPtrOutput +} + +type appSpecWorkerLogDestinationOpenSearchPtrType AppSpecWorkerLogDestinationOpenSearchArgs + +func AppSpecWorkerLogDestinationOpenSearchPtr(v *AppSpecWorkerLogDestinationOpenSearchArgs) AppSpecWorkerLogDestinationOpenSearchPtrInput { + return (*appSpecWorkerLogDestinationOpenSearchPtrType)(v) +} + +func (*appSpecWorkerLogDestinationOpenSearchPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecWorkerLogDestinationOpenSearch)(nil)).Elem() +} + +func (i *appSpecWorkerLogDestinationOpenSearchPtrType) ToAppSpecWorkerLogDestinationOpenSearchPtrOutput() AppSpecWorkerLogDestinationOpenSearchPtrOutput { + return i.ToAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i *appSpecWorkerLogDestinationOpenSearchPtrType) ToAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecWorkerLogDestinationOpenSearchPtrOutput) +} + +type AppSpecWorkerLogDestinationOpenSearchOutput struct{ *pulumi.OutputState } + +func (AppSpecWorkerLogDestinationOpenSearchOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecWorkerLogDestinationOpenSearch)(nil)).Elem() +} + +func (o AppSpecWorkerLogDestinationOpenSearchOutput) ToAppSpecWorkerLogDestinationOpenSearchOutput() AppSpecWorkerLogDestinationOpenSearchOutput { + return o +} + +func (o AppSpecWorkerLogDestinationOpenSearchOutput) ToAppSpecWorkerLogDestinationOpenSearchOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchOutput { + return o +} + +func (o AppSpecWorkerLogDestinationOpenSearchOutput) ToAppSpecWorkerLogDestinationOpenSearchPtrOutput() AppSpecWorkerLogDestinationOpenSearchPtrOutput { + return o.ToAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (o AppSpecWorkerLogDestinationOpenSearchOutput) ToAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecWorkerLogDestinationOpenSearch) *AppSpecWorkerLogDestinationOpenSearch { + return &v + }).(AppSpecWorkerLogDestinationOpenSearchPtrOutput) +} + +// Basic authentication details. +func (o AppSpecWorkerLogDestinationOpenSearchOutput) BasicAuth() AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v AppSpecWorkerLogDestinationOpenSearch) AppSpecWorkerLogDestinationOpenSearchBasicAuth { + return v.BasicAuth + }).(AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o AppSpecWorkerLogDestinationOpenSearchOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecWorkerLogDestinationOpenSearch) *string { return v.ClusterName }).(pulumi.StringPtrOutput) +} + +// OpenSearch endpoint. +func (o AppSpecWorkerLogDestinationOpenSearchOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecWorkerLogDestinationOpenSearch) *string { return v.Endpoint }).(pulumi.StringPtrOutput) +} + +// OpenSearch index name. +func (o AppSpecWorkerLogDestinationOpenSearchOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecWorkerLogDestinationOpenSearch) *string { return v.IndexName }).(pulumi.StringPtrOutput) +} + +type AppSpecWorkerLogDestinationOpenSearchPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecWorkerLogDestinationOpenSearchPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecWorkerLogDestinationOpenSearch)(nil)).Elem() +} + +func (o AppSpecWorkerLogDestinationOpenSearchPtrOutput) ToAppSpecWorkerLogDestinationOpenSearchPtrOutput() AppSpecWorkerLogDestinationOpenSearchPtrOutput { + return o +} + +func (o AppSpecWorkerLogDestinationOpenSearchPtrOutput) ToAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchPtrOutput { + return o +} + +func (o AppSpecWorkerLogDestinationOpenSearchPtrOutput) Elem() AppSpecWorkerLogDestinationOpenSearchOutput { + return o.ApplyT(func(v *AppSpecWorkerLogDestinationOpenSearch) AppSpecWorkerLogDestinationOpenSearch { + if v != nil { + return *v + } + var ret AppSpecWorkerLogDestinationOpenSearch + return ret + }).(AppSpecWorkerLogDestinationOpenSearchOutput) +} + +// Basic authentication details. +func (o AppSpecWorkerLogDestinationOpenSearchPtrOutput) BasicAuth() AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyT(func(v *AppSpecWorkerLogDestinationOpenSearch) *AppSpecWorkerLogDestinationOpenSearchBasicAuth { + if v == nil { + return nil + } + return &v.BasicAuth + }).(AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o AppSpecWorkerLogDestinationOpenSearchPtrOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecWorkerLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.ClusterName + }).(pulumi.StringPtrOutput) +} + +// OpenSearch endpoint. +func (o AppSpecWorkerLogDestinationOpenSearchPtrOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecWorkerLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.Endpoint + }).(pulumi.StringPtrOutput) +} + +// OpenSearch index name. +func (o AppSpecWorkerLogDestinationOpenSearchPtrOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecWorkerLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.IndexName + }).(pulumi.StringPtrOutput) +} + +type AppSpecWorkerLogDestinationOpenSearchBasicAuth struct { + // Password for basic authentication. + Password *string `pulumi:"password"` + // user for basic authentication. + User *string `pulumi:"user"` +} + +// AppSpecWorkerLogDestinationOpenSearchBasicAuthInput is an input type that accepts AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs and AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput values. +// You can construct a concrete instance of `AppSpecWorkerLogDestinationOpenSearchBasicAuthInput` via: +// +// AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs{...} +type AppSpecWorkerLogDestinationOpenSearchBasicAuthInput interface { + pulumi.Input + + ToAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput() AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput + ToAppSpecWorkerLogDestinationOpenSearchBasicAuthOutputWithContext(context.Context) AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput +} + +type AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs struct { + // Password for basic authentication. + Password pulumi.StringPtrInput `pulumi:"password"` + // user for basic authentication. + User pulumi.StringPtrInput `pulumi:"user"` +} + +func (AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecWorkerLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput() AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return i.ToAppSpecWorkerLogDestinationOpenSearchBasicAuthOutputWithContext(context.Background()) +} + +func (i AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) +} + +func (i AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput).ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx) +} + +// AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrInput is an input type that accepts AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs, AppSpecWorkerLogDestinationOpenSearchBasicAuthPtr and AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput values. +// You can construct a concrete instance of `AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrInput` via: +// +// AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs{...} +// +// or: +// +// nil +type AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrInput interface { + pulumi.Input + + ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput + ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Context) AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput +} + +type appSpecWorkerLogDestinationOpenSearchBasicAuthPtrType AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs + +func AppSpecWorkerLogDestinationOpenSearchBasicAuthPtr(v *AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrInput { + return (*appSpecWorkerLogDestinationOpenSearchBasicAuthPtrType)(v) +} + +func (*appSpecWorkerLogDestinationOpenSearchBasicAuthPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecWorkerLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i *appSpecWorkerLogDestinationOpenSearchBasicAuthPtrType) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i *appSpecWorkerLogDestinationOpenSearchBasicAuthPtrType) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) +} + +type AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput struct{ *pulumi.OutputState } + +func (AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecWorkerLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput() AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecWorkerLogDestinationOpenSearchBasicAuth) *AppSpecWorkerLogDestinationOpenSearchBasicAuth { + return &v + }).(AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// Password for basic authentication. +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecWorkerLogDestinationOpenSearchBasicAuth) *string { return v.Password }).(pulumi.StringPtrOutput) +} + +// user for basic authentication. +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecWorkerLogDestinationOpenSearchBasicAuth) *string { return v.User }).(pulumi.StringPtrOutput) +} + +type AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecWorkerLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput() AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) ToAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) Elem() AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v *AppSpecWorkerLogDestinationOpenSearchBasicAuth) AppSpecWorkerLogDestinationOpenSearchBasicAuth { + if v != nil { + return *v + } + var ret AppSpecWorkerLogDestinationOpenSearchBasicAuth + return ret + }).(AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) +} + +// Password for basic authentication. +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecWorkerLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.Password + }).(pulumi.StringPtrOutput) +} + +// user for basic authentication. +func (o AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecWorkerLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.User + }).(pulumi.StringPtrOutput) +} + type AppSpecWorkerLogDestinationPapertrail struct { // Papertrail syslog endpoint. Endpoint string `pulumi:"endpoint"` @@ -13666,8 +15078,7 @@ func (o DatabasePostgresqlConfigPgbouncerArrayOutput) Index(i pulumi.IntInput) D } type DatabasePostgresqlConfigTimescaledb struct { - // TimescaleDB extension configuration values - Timescaledb *int `pulumi:"timescaledb"` + MaxBackgroundWorkers *int `pulumi:"maxBackgroundWorkers"` } // DatabasePostgresqlConfigTimescaledbInput is an input type that accepts DatabasePostgresqlConfigTimescaledbArgs and DatabasePostgresqlConfigTimescaledbOutput values. @@ -13682,8 +15093,7 @@ type DatabasePostgresqlConfigTimescaledbInput interface { } type DatabasePostgresqlConfigTimescaledbArgs struct { - // TimescaleDB extension configuration values - Timescaledb pulumi.IntPtrInput `pulumi:"timescaledb"` + MaxBackgroundWorkers pulumi.IntPtrInput `pulumi:"maxBackgroundWorkers"` } func (DatabasePostgresqlConfigTimescaledbArgs) ElementType() reflect.Type { @@ -13737,9 +15147,8 @@ func (o DatabasePostgresqlConfigTimescaledbOutput) ToDatabasePostgresqlConfigTim return o } -// TimescaleDB extension configuration values -func (o DatabasePostgresqlConfigTimescaledbOutput) Timescaledb() pulumi.IntPtrOutput { - return o.ApplyT(func(v DatabasePostgresqlConfigTimescaledb) *int { return v.Timescaledb }).(pulumi.IntPtrOutput) +func (o DatabasePostgresqlConfigTimescaledbOutput) MaxBackgroundWorkers() pulumi.IntPtrOutput { + return o.ApplyT(func(v DatabasePostgresqlConfigTimescaledb) *int { return v.MaxBackgroundWorkers }).(pulumi.IntPtrOutput) } type DatabasePostgresqlConfigTimescaledbArrayOutput struct{ *pulumi.OutputState } @@ -20501,6 +21910,8 @@ type GetAppSpecFunctionLogDestination struct { Logtail *GetAppSpecFunctionLogDestinationLogtail `pulumi:"logtail"` // The name of the component. Name string `pulumi:"name"` + // OpenSearch configuration. + OpenSearch *GetAppSpecFunctionLogDestinationOpenSearch `pulumi:"openSearch"` // Papertrail configuration. Papertrail *GetAppSpecFunctionLogDestinationPapertrail `pulumi:"papertrail"` } @@ -20523,6 +21934,8 @@ type GetAppSpecFunctionLogDestinationArgs struct { Logtail GetAppSpecFunctionLogDestinationLogtailPtrInput `pulumi:"logtail"` // The name of the component. Name pulumi.StringInput `pulumi:"name"` + // OpenSearch configuration. + OpenSearch GetAppSpecFunctionLogDestinationOpenSearchPtrInput `pulumi:"openSearch"` // Papertrail configuration. Papertrail GetAppSpecFunctionLogDestinationPapertrailPtrInput `pulumi:"papertrail"` } @@ -20593,6 +22006,13 @@ func (o GetAppSpecFunctionLogDestinationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v GetAppSpecFunctionLogDestination) string { return v.Name }).(pulumi.StringOutput) } +// OpenSearch configuration. +func (o GetAppSpecFunctionLogDestinationOutput) OpenSearch() GetAppSpecFunctionLogDestinationOpenSearchPtrOutput { + return o.ApplyT(func(v GetAppSpecFunctionLogDestination) *GetAppSpecFunctionLogDestinationOpenSearch { + return v.OpenSearch + }).(GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) +} + // Papertrail configuration. func (o GetAppSpecFunctionLogDestinationOutput) Papertrail() GetAppSpecFunctionLogDestinationPapertrailPtrOutput { return o.ApplyT(func(v GetAppSpecFunctionLogDestination) *GetAppSpecFunctionLogDestinationPapertrail { @@ -20623,7 +22043,7 @@ func (o GetAppSpecFunctionLogDestinationArrayOutput) Index(i pulumi.IntInput) Ge type GetAppSpecFunctionLogDestinationDatadog struct { // Datadog API key. ApiKey string `pulumi:"apiKey"` - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint *string `pulumi:"endpoint"` } @@ -20641,7 +22061,7 @@ type GetAppSpecFunctionLogDestinationDatadogInput interface { type GetAppSpecFunctionLogDestinationDatadogArgs struct { // Datadog API key. ApiKey pulumi.StringInput `pulumi:"apiKey"` - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` } @@ -20727,7 +22147,7 @@ func (o GetAppSpecFunctionLogDestinationDatadogOutput) ApiKey() pulumi.StringOut return o.ApplyT(func(v GetAppSpecFunctionLogDestinationDatadog) string { return v.ApiKey }).(pulumi.StringOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecFunctionLogDestinationDatadogOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v GetAppSpecFunctionLogDestinationDatadog) *string { return v.Endpoint }).(pulumi.StringPtrOutput) } @@ -20766,7 +22186,7 @@ func (o GetAppSpecFunctionLogDestinationDatadogPtrOutput) ApiKey() pulumi.String }).(pulumi.StringPtrOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecFunctionLogDestinationDatadogPtrOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *GetAppSpecFunctionLogDestinationDatadog) *string { if v == nil { @@ -20913,8 +22333,360 @@ func (o GetAppSpecFunctionLogDestinationLogtailPtrOutput) Token() pulumi.StringP }).(pulumi.StringPtrOutput) } +type GetAppSpecFunctionLogDestinationOpenSearch struct { + // OpenSearch basic auth + BasicAuth GetAppSpecFunctionLogDestinationOpenSearchBasicAuth `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName *string `pulumi:"clusterName"` + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + Endpoint *string `pulumi:"endpoint"` + // The index name to use for the logs. If not set, the default index name is \"logs\". + IndexName *string `pulumi:"indexName"` +} + +// GetAppSpecFunctionLogDestinationOpenSearchInput is an input type that accepts GetAppSpecFunctionLogDestinationOpenSearchArgs and GetAppSpecFunctionLogDestinationOpenSearchOutput values. +// You can construct a concrete instance of `GetAppSpecFunctionLogDestinationOpenSearchInput` via: +// +// GetAppSpecFunctionLogDestinationOpenSearchArgs{...} +type GetAppSpecFunctionLogDestinationOpenSearchInput interface { + pulumi.Input + + ToGetAppSpecFunctionLogDestinationOpenSearchOutput() GetAppSpecFunctionLogDestinationOpenSearchOutput + ToGetAppSpecFunctionLogDestinationOpenSearchOutputWithContext(context.Context) GetAppSpecFunctionLogDestinationOpenSearchOutput +} + +type GetAppSpecFunctionLogDestinationOpenSearchArgs struct { + // OpenSearch basic auth + BasicAuth GetAppSpecFunctionLogDestinationOpenSearchBasicAuthInput `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName pulumi.StringPtrInput `pulumi:"clusterName"` + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` + // The index name to use for the logs. If not set, the default index name is \"logs\". + IndexName pulumi.StringPtrInput `pulumi:"indexName"` +} + +func (GetAppSpecFunctionLogDestinationOpenSearchArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecFunctionLogDestinationOpenSearch)(nil)).Elem() +} + +func (i GetAppSpecFunctionLogDestinationOpenSearchArgs) ToGetAppSpecFunctionLogDestinationOpenSearchOutput() GetAppSpecFunctionLogDestinationOpenSearchOutput { + return i.ToGetAppSpecFunctionLogDestinationOpenSearchOutputWithContext(context.Background()) +} + +func (i GetAppSpecFunctionLogDestinationOpenSearchArgs) ToGetAppSpecFunctionLogDestinationOpenSearchOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecFunctionLogDestinationOpenSearchOutput) +} + +func (i GetAppSpecFunctionLogDestinationOpenSearchArgs) ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutput() GetAppSpecFunctionLogDestinationOpenSearchPtrOutput { + return i.ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecFunctionLogDestinationOpenSearchArgs) ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecFunctionLogDestinationOpenSearchOutput).ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(ctx) +} + +// GetAppSpecFunctionLogDestinationOpenSearchPtrInput is an input type that accepts GetAppSpecFunctionLogDestinationOpenSearchArgs, GetAppSpecFunctionLogDestinationOpenSearchPtr and GetAppSpecFunctionLogDestinationOpenSearchPtrOutput values. +// You can construct a concrete instance of `GetAppSpecFunctionLogDestinationOpenSearchPtrInput` via: +// +// GetAppSpecFunctionLogDestinationOpenSearchArgs{...} +// +// or: +// +// nil +type GetAppSpecFunctionLogDestinationOpenSearchPtrInput interface { + pulumi.Input + + ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutput() GetAppSpecFunctionLogDestinationOpenSearchPtrOutput + ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(context.Context) GetAppSpecFunctionLogDestinationOpenSearchPtrOutput +} + +type getAppSpecFunctionLogDestinationOpenSearchPtrType GetAppSpecFunctionLogDestinationOpenSearchArgs + +func GetAppSpecFunctionLogDestinationOpenSearchPtr(v *GetAppSpecFunctionLogDestinationOpenSearchArgs) GetAppSpecFunctionLogDestinationOpenSearchPtrInput { + return (*getAppSpecFunctionLogDestinationOpenSearchPtrType)(v) +} + +func (*getAppSpecFunctionLogDestinationOpenSearchPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecFunctionLogDestinationOpenSearch)(nil)).Elem() +} + +func (i *getAppSpecFunctionLogDestinationOpenSearchPtrType) ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutput() GetAppSpecFunctionLogDestinationOpenSearchPtrOutput { + return i.ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecFunctionLogDestinationOpenSearchPtrType) ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) +} + +type GetAppSpecFunctionLogDestinationOpenSearchOutput struct{ *pulumi.OutputState } + +func (GetAppSpecFunctionLogDestinationOpenSearchOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecFunctionLogDestinationOpenSearch)(nil)).Elem() +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchOutput) ToGetAppSpecFunctionLogDestinationOpenSearchOutput() GetAppSpecFunctionLogDestinationOpenSearchOutput { + return o +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchOutput) ToGetAppSpecFunctionLogDestinationOpenSearchOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchOutput { + return o +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchOutput) ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutput() GetAppSpecFunctionLogDestinationOpenSearchPtrOutput { + return o.ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchOutput) ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecFunctionLogDestinationOpenSearch) *GetAppSpecFunctionLogDestinationOpenSearch { + return &v + }).(GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) +} + +// OpenSearch basic auth +func (o GetAppSpecFunctionLogDestinationOpenSearchOutput) BasicAuth() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v GetAppSpecFunctionLogDestinationOpenSearch) GetAppSpecFunctionLogDestinationOpenSearchBasicAuth { + return v.BasicAuth + }).(GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o GetAppSpecFunctionLogDestinationOpenSearchOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecFunctionLogDestinationOpenSearch) *string { return v.ClusterName }).(pulumi.StringPtrOutput) +} + +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. +func (o GetAppSpecFunctionLogDestinationOpenSearchOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecFunctionLogDestinationOpenSearch) *string { return v.Endpoint }).(pulumi.StringPtrOutput) +} + +// The index name to use for the logs. If not set, the default index name is \"logs\". +func (o GetAppSpecFunctionLogDestinationOpenSearchOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecFunctionLogDestinationOpenSearch) *string { return v.IndexName }).(pulumi.StringPtrOutput) +} + +type GetAppSpecFunctionLogDestinationOpenSearchPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecFunctionLogDestinationOpenSearch)(nil)).Elem() +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutput() GetAppSpecFunctionLogDestinationOpenSearchPtrOutput { + return o +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) ToGetAppSpecFunctionLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchPtrOutput { + return o +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) Elem() GetAppSpecFunctionLogDestinationOpenSearchOutput { + return o.ApplyT(func(v *GetAppSpecFunctionLogDestinationOpenSearch) GetAppSpecFunctionLogDestinationOpenSearch { + if v != nil { + return *v + } + var ret GetAppSpecFunctionLogDestinationOpenSearch + return ret + }).(GetAppSpecFunctionLogDestinationOpenSearchOutput) +} + +// OpenSearch basic auth +func (o GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) BasicAuth() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyT(func(v *GetAppSpecFunctionLogDestinationOpenSearch) *GetAppSpecFunctionLogDestinationOpenSearchBasicAuth { + if v == nil { + return nil + } + return &v.BasicAuth + }).(GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecFunctionLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.ClusterName + }).(pulumi.StringPtrOutput) +} + +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. +func (o GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecFunctionLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.Endpoint + }).(pulumi.StringPtrOutput) +} + +// The index name to use for the logs. If not set, the default index name is \"logs\". +func (o GetAppSpecFunctionLogDestinationOpenSearchPtrOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecFunctionLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.IndexName + }).(pulumi.StringPtrOutput) +} + +type GetAppSpecFunctionLogDestinationOpenSearchBasicAuth struct { + // Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + Password *string `pulumi:"password"` + // Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + User *string `pulumi:"user"` +} + +// GetAppSpecFunctionLogDestinationOpenSearchBasicAuthInput is an input type that accepts GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs and GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput values. +// You can construct a concrete instance of `GetAppSpecFunctionLogDestinationOpenSearchBasicAuthInput` via: +// +// GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs{...} +type GetAppSpecFunctionLogDestinationOpenSearchBasicAuthInput interface { + pulumi.Input + + ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput + ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutputWithContext(context.Context) GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput +} + +type GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs struct { + // Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + Password pulumi.StringPtrInput `pulumi:"password"` + // Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + User pulumi.StringPtrInput `pulumi:"user"` +} + +func (GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecFunctionLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return i.ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutputWithContext(context.Background()) +} + +func (i GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) +} + +func (i GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput).ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx) +} + +// GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrInput is an input type that accepts GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs, GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtr and GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput values. +// You can construct a concrete instance of `GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrInput` via: +// +// GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs{...} +// +// or: +// +// nil +type GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrInput interface { + pulumi.Input + + ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput + ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Context) GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput +} + +type getAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrType GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs + +func GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtr(v *GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs) GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrInput { + return (*getAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrType)(v) +} + +func (*getAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecFunctionLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i *getAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrType) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrType) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) +} + +type GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput struct{ *pulumi.OutputState } + +func (GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecFunctionLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecFunctionLogDestinationOpenSearchBasicAuth) *GetAppSpecFunctionLogDestinationOpenSearchBasicAuth { + return &v + }).(GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecFunctionLogDestinationOpenSearchBasicAuth) *string { return v.Password }).(pulumi.StringPtrOutput) +} + +// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecFunctionLogDestinationOpenSearchBasicAuth) *string { return v.User }).(pulumi.StringPtrOutput) +} + +type GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecFunctionLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) ToGetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) Elem() GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v *GetAppSpecFunctionLogDestinationOpenSearchBasicAuth) GetAppSpecFunctionLogDestinationOpenSearchBasicAuth { + if v != nil { + return *v + } + var ret GetAppSpecFunctionLogDestinationOpenSearchBasicAuth + return ret + }).(GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput) +} + +// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecFunctionLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.Password + }).(pulumi.StringPtrOutput) +} + +// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. +func (o GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecFunctionLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.User + }).(pulumi.StringPtrOutput) +} + type GetAppSpecFunctionLogDestinationPapertrail struct { - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint string `pulumi:"endpoint"` } @@ -20930,7 +22702,7 @@ type GetAppSpecFunctionLogDestinationPapertrailInput interface { } type GetAppSpecFunctionLogDestinationPapertrailArgs struct { - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint pulumi.StringInput `pulumi:"endpoint"` } @@ -21011,7 +22783,7 @@ func (o GetAppSpecFunctionLogDestinationPapertrailOutput) ToGetAppSpecFunctionLo }).(GetAppSpecFunctionLogDestinationPapertrailPtrOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecFunctionLogDestinationPapertrailOutput) Endpoint() pulumi.StringOutput { return o.ApplyT(func(v GetAppSpecFunctionLogDestinationPapertrail) string { return v.Endpoint }).(pulumi.StringOutput) } @@ -21040,7 +22812,7 @@ func (o GetAppSpecFunctionLogDestinationPapertrailPtrOutput) Elem() GetAppSpecFu }).(GetAppSpecFunctionLogDestinationPapertrailOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecFunctionLogDestinationPapertrailPtrOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *GetAppSpecFunctionLogDestinationPapertrail) *string { if v == nil { @@ -23310,6 +25082,8 @@ type GetAppSpecJobLogDestination struct { Logtail *GetAppSpecJobLogDestinationLogtail `pulumi:"logtail"` // The name of the component. Name string `pulumi:"name"` + // OpenSearch configuration. + OpenSearch *GetAppSpecJobLogDestinationOpenSearch `pulumi:"openSearch"` // Papertrail configuration. Papertrail *GetAppSpecJobLogDestinationPapertrail `pulumi:"papertrail"` } @@ -23332,6 +25106,8 @@ type GetAppSpecJobLogDestinationArgs struct { Logtail GetAppSpecJobLogDestinationLogtailPtrInput `pulumi:"logtail"` // The name of the component. Name pulumi.StringInput `pulumi:"name"` + // OpenSearch configuration. + OpenSearch GetAppSpecJobLogDestinationOpenSearchPtrInput `pulumi:"openSearch"` // Papertrail configuration. Papertrail GetAppSpecJobLogDestinationPapertrailPtrInput `pulumi:"papertrail"` } @@ -23402,6 +25178,11 @@ func (o GetAppSpecJobLogDestinationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v GetAppSpecJobLogDestination) string { return v.Name }).(pulumi.StringOutput) } +// OpenSearch configuration. +func (o GetAppSpecJobLogDestinationOutput) OpenSearch() GetAppSpecJobLogDestinationOpenSearchPtrOutput { + return o.ApplyT(func(v GetAppSpecJobLogDestination) *GetAppSpecJobLogDestinationOpenSearch { return v.OpenSearch }).(GetAppSpecJobLogDestinationOpenSearchPtrOutput) +} + // Papertrail configuration. func (o GetAppSpecJobLogDestinationOutput) Papertrail() GetAppSpecJobLogDestinationPapertrailPtrOutput { return o.ApplyT(func(v GetAppSpecJobLogDestination) *GetAppSpecJobLogDestinationPapertrail { return v.Papertrail }).(GetAppSpecJobLogDestinationPapertrailPtrOutput) @@ -23430,7 +25211,7 @@ func (o GetAppSpecJobLogDestinationArrayOutput) Index(i pulumi.IntInput) GetAppS type GetAppSpecJobLogDestinationDatadog struct { // Datadog API key. ApiKey string `pulumi:"apiKey"` - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint *string `pulumi:"endpoint"` } @@ -23448,7 +25229,7 @@ type GetAppSpecJobLogDestinationDatadogInput interface { type GetAppSpecJobLogDestinationDatadogArgs struct { // Datadog API key. ApiKey pulumi.StringInput `pulumi:"apiKey"` - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` } @@ -23534,7 +25315,7 @@ func (o GetAppSpecJobLogDestinationDatadogOutput) ApiKey() pulumi.StringOutput { return o.ApplyT(func(v GetAppSpecJobLogDestinationDatadog) string { return v.ApiKey }).(pulumi.StringOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecJobLogDestinationDatadogOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v GetAppSpecJobLogDestinationDatadog) *string { return v.Endpoint }).(pulumi.StringPtrOutput) } @@ -23573,7 +25354,7 @@ func (o GetAppSpecJobLogDestinationDatadogPtrOutput) ApiKey() pulumi.StringPtrOu }).(pulumi.StringPtrOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecJobLogDestinationDatadogPtrOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *GetAppSpecJobLogDestinationDatadog) *string { if v == nil { @@ -23720,8 +25501,360 @@ func (o GetAppSpecJobLogDestinationLogtailPtrOutput) Token() pulumi.StringPtrOut }).(pulumi.StringPtrOutput) } +type GetAppSpecJobLogDestinationOpenSearch struct { + // OpenSearch basic auth + BasicAuth GetAppSpecJobLogDestinationOpenSearchBasicAuth `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName *string `pulumi:"clusterName"` + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + Endpoint *string `pulumi:"endpoint"` + // The index name to use for the logs. If not set, the default index name is \"logs\". + IndexName *string `pulumi:"indexName"` +} + +// GetAppSpecJobLogDestinationOpenSearchInput is an input type that accepts GetAppSpecJobLogDestinationOpenSearchArgs and GetAppSpecJobLogDestinationOpenSearchOutput values. +// You can construct a concrete instance of `GetAppSpecJobLogDestinationOpenSearchInput` via: +// +// GetAppSpecJobLogDestinationOpenSearchArgs{...} +type GetAppSpecJobLogDestinationOpenSearchInput interface { + pulumi.Input + + ToGetAppSpecJobLogDestinationOpenSearchOutput() GetAppSpecJobLogDestinationOpenSearchOutput + ToGetAppSpecJobLogDestinationOpenSearchOutputWithContext(context.Context) GetAppSpecJobLogDestinationOpenSearchOutput +} + +type GetAppSpecJobLogDestinationOpenSearchArgs struct { + // OpenSearch basic auth + BasicAuth GetAppSpecJobLogDestinationOpenSearchBasicAuthInput `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName pulumi.StringPtrInput `pulumi:"clusterName"` + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` + // The index name to use for the logs. If not set, the default index name is \"logs\". + IndexName pulumi.StringPtrInput `pulumi:"indexName"` +} + +func (GetAppSpecJobLogDestinationOpenSearchArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecJobLogDestinationOpenSearch)(nil)).Elem() +} + +func (i GetAppSpecJobLogDestinationOpenSearchArgs) ToGetAppSpecJobLogDestinationOpenSearchOutput() GetAppSpecJobLogDestinationOpenSearchOutput { + return i.ToGetAppSpecJobLogDestinationOpenSearchOutputWithContext(context.Background()) +} + +func (i GetAppSpecJobLogDestinationOpenSearchArgs) ToGetAppSpecJobLogDestinationOpenSearchOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecJobLogDestinationOpenSearchOutput) +} + +func (i GetAppSpecJobLogDestinationOpenSearchArgs) ToGetAppSpecJobLogDestinationOpenSearchPtrOutput() GetAppSpecJobLogDestinationOpenSearchPtrOutput { + return i.ToGetAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecJobLogDestinationOpenSearchArgs) ToGetAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecJobLogDestinationOpenSearchOutput).ToGetAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(ctx) +} + +// GetAppSpecJobLogDestinationOpenSearchPtrInput is an input type that accepts GetAppSpecJobLogDestinationOpenSearchArgs, GetAppSpecJobLogDestinationOpenSearchPtr and GetAppSpecJobLogDestinationOpenSearchPtrOutput values. +// You can construct a concrete instance of `GetAppSpecJobLogDestinationOpenSearchPtrInput` via: +// +// GetAppSpecJobLogDestinationOpenSearchArgs{...} +// +// or: +// +// nil +type GetAppSpecJobLogDestinationOpenSearchPtrInput interface { + pulumi.Input + + ToGetAppSpecJobLogDestinationOpenSearchPtrOutput() GetAppSpecJobLogDestinationOpenSearchPtrOutput + ToGetAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(context.Context) GetAppSpecJobLogDestinationOpenSearchPtrOutput +} + +type getAppSpecJobLogDestinationOpenSearchPtrType GetAppSpecJobLogDestinationOpenSearchArgs + +func GetAppSpecJobLogDestinationOpenSearchPtr(v *GetAppSpecJobLogDestinationOpenSearchArgs) GetAppSpecJobLogDestinationOpenSearchPtrInput { + return (*getAppSpecJobLogDestinationOpenSearchPtrType)(v) +} + +func (*getAppSpecJobLogDestinationOpenSearchPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecJobLogDestinationOpenSearch)(nil)).Elem() +} + +func (i *getAppSpecJobLogDestinationOpenSearchPtrType) ToGetAppSpecJobLogDestinationOpenSearchPtrOutput() GetAppSpecJobLogDestinationOpenSearchPtrOutput { + return i.ToGetAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecJobLogDestinationOpenSearchPtrType) ToGetAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecJobLogDestinationOpenSearchPtrOutput) +} + +type GetAppSpecJobLogDestinationOpenSearchOutput struct{ *pulumi.OutputState } + +func (GetAppSpecJobLogDestinationOpenSearchOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecJobLogDestinationOpenSearch)(nil)).Elem() +} + +func (o GetAppSpecJobLogDestinationOpenSearchOutput) ToGetAppSpecJobLogDestinationOpenSearchOutput() GetAppSpecJobLogDestinationOpenSearchOutput { + return o +} + +func (o GetAppSpecJobLogDestinationOpenSearchOutput) ToGetAppSpecJobLogDestinationOpenSearchOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchOutput { + return o +} + +func (o GetAppSpecJobLogDestinationOpenSearchOutput) ToGetAppSpecJobLogDestinationOpenSearchPtrOutput() GetAppSpecJobLogDestinationOpenSearchPtrOutput { + return o.ToGetAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecJobLogDestinationOpenSearchOutput) ToGetAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecJobLogDestinationOpenSearch) *GetAppSpecJobLogDestinationOpenSearch { + return &v + }).(GetAppSpecJobLogDestinationOpenSearchPtrOutput) +} + +// OpenSearch basic auth +func (o GetAppSpecJobLogDestinationOpenSearchOutput) BasicAuth() GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v GetAppSpecJobLogDestinationOpenSearch) GetAppSpecJobLogDestinationOpenSearchBasicAuth { + return v.BasicAuth + }).(GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o GetAppSpecJobLogDestinationOpenSearchOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecJobLogDestinationOpenSearch) *string { return v.ClusterName }).(pulumi.StringPtrOutput) +} + +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. +func (o GetAppSpecJobLogDestinationOpenSearchOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecJobLogDestinationOpenSearch) *string { return v.Endpoint }).(pulumi.StringPtrOutput) +} + +// The index name to use for the logs. If not set, the default index name is \"logs\". +func (o GetAppSpecJobLogDestinationOpenSearchOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecJobLogDestinationOpenSearch) *string { return v.IndexName }).(pulumi.StringPtrOutput) +} + +type GetAppSpecJobLogDestinationOpenSearchPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecJobLogDestinationOpenSearchPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecJobLogDestinationOpenSearch)(nil)).Elem() +} + +func (o GetAppSpecJobLogDestinationOpenSearchPtrOutput) ToGetAppSpecJobLogDestinationOpenSearchPtrOutput() GetAppSpecJobLogDestinationOpenSearchPtrOutput { + return o +} + +func (o GetAppSpecJobLogDestinationOpenSearchPtrOutput) ToGetAppSpecJobLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchPtrOutput { + return o +} + +func (o GetAppSpecJobLogDestinationOpenSearchPtrOutput) Elem() GetAppSpecJobLogDestinationOpenSearchOutput { + return o.ApplyT(func(v *GetAppSpecJobLogDestinationOpenSearch) GetAppSpecJobLogDestinationOpenSearch { + if v != nil { + return *v + } + var ret GetAppSpecJobLogDestinationOpenSearch + return ret + }).(GetAppSpecJobLogDestinationOpenSearchOutput) +} + +// OpenSearch basic auth +func (o GetAppSpecJobLogDestinationOpenSearchPtrOutput) BasicAuth() GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyT(func(v *GetAppSpecJobLogDestinationOpenSearch) *GetAppSpecJobLogDestinationOpenSearchBasicAuth { + if v == nil { + return nil + } + return &v.BasicAuth + }).(GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o GetAppSpecJobLogDestinationOpenSearchPtrOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecJobLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.ClusterName + }).(pulumi.StringPtrOutput) +} + +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. +func (o GetAppSpecJobLogDestinationOpenSearchPtrOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecJobLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.Endpoint + }).(pulumi.StringPtrOutput) +} + +// The index name to use for the logs. If not set, the default index name is \"logs\". +func (o GetAppSpecJobLogDestinationOpenSearchPtrOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecJobLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.IndexName + }).(pulumi.StringPtrOutput) +} + +type GetAppSpecJobLogDestinationOpenSearchBasicAuth struct { + // Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + Password *string `pulumi:"password"` + // Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + User *string `pulumi:"user"` +} + +// GetAppSpecJobLogDestinationOpenSearchBasicAuthInput is an input type that accepts GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs and GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput values. +// You can construct a concrete instance of `GetAppSpecJobLogDestinationOpenSearchBasicAuthInput` via: +// +// GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs{...} +type GetAppSpecJobLogDestinationOpenSearchBasicAuthInput interface { + pulumi.Input + + ToGetAppSpecJobLogDestinationOpenSearchBasicAuthOutput() GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput + ToGetAppSpecJobLogDestinationOpenSearchBasicAuthOutputWithContext(context.Context) GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput +} + +type GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs struct { + // Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + Password pulumi.StringPtrInput `pulumi:"password"` + // Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + User pulumi.StringPtrInput `pulumi:"user"` +} + +func (GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecJobLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthOutput() GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return i.ToGetAppSpecJobLogDestinationOpenSearchBasicAuthOutputWithContext(context.Background()) +} + +func (i GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput) +} + +func (i GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput).ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx) +} + +// GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrInput is an input type that accepts GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs, GetAppSpecJobLogDestinationOpenSearchBasicAuthPtr and GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput values. +// You can construct a concrete instance of `GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrInput` via: +// +// GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs{...} +// +// or: +// +// nil +type GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrInput interface { + pulumi.Input + + ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput + ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Context) GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput +} + +type getAppSpecJobLogDestinationOpenSearchBasicAuthPtrType GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs + +func GetAppSpecJobLogDestinationOpenSearchBasicAuthPtr(v *GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs) GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrInput { + return (*getAppSpecJobLogDestinationOpenSearchBasicAuthPtrType)(v) +} + +func (*getAppSpecJobLogDestinationOpenSearchBasicAuthPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecJobLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i *getAppSpecJobLogDestinationOpenSearchBasicAuthPtrType) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecJobLogDestinationOpenSearchBasicAuthPtrType) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) +} + +type GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput struct{ *pulumi.OutputState } + +func (GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecJobLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthOutput() GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecJobLogDestinationOpenSearchBasicAuth) *GetAppSpecJobLogDestinationOpenSearchBasicAuth { + return &v + }).(GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecJobLogDestinationOpenSearchBasicAuth) *string { return v.Password }).(pulumi.StringPtrOutput) +} + +// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecJobLogDestinationOpenSearchBasicAuth) *string { return v.User }).(pulumi.StringPtrOutput) +} + +type GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecJobLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) ToGetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) Elem() GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v *GetAppSpecJobLogDestinationOpenSearchBasicAuth) GetAppSpecJobLogDestinationOpenSearchBasicAuth { + if v != nil { + return *v + } + var ret GetAppSpecJobLogDestinationOpenSearchBasicAuth + return ret + }).(GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput) +} + +// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecJobLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.Password + }).(pulumi.StringPtrOutput) +} + +// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. +func (o GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecJobLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.User + }).(pulumi.StringPtrOutput) +} + type GetAppSpecJobLogDestinationPapertrail struct { - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint string `pulumi:"endpoint"` } @@ -23737,7 +25870,7 @@ type GetAppSpecJobLogDestinationPapertrailInput interface { } type GetAppSpecJobLogDestinationPapertrailArgs struct { - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint pulumi.StringInput `pulumi:"endpoint"` } @@ -23818,7 +25951,7 @@ func (o GetAppSpecJobLogDestinationPapertrailOutput) ToGetAppSpecJobLogDestinati }).(GetAppSpecJobLogDestinationPapertrailPtrOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecJobLogDestinationPapertrailOutput) Endpoint() pulumi.StringOutput { return o.ApplyT(func(v GetAppSpecJobLogDestinationPapertrail) string { return v.Endpoint }).(pulumi.StringOutput) } @@ -23847,7 +25980,7 @@ func (o GetAppSpecJobLogDestinationPapertrailPtrOutput) Elem() GetAppSpecJobLogD }).(GetAppSpecJobLogDestinationPapertrailOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecJobLogDestinationPapertrailPtrOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *GetAppSpecJobLogDestinationPapertrail) *string { if v == nil { @@ -26354,6 +28487,8 @@ type GetAppSpecServiceLogDestination struct { Logtail *GetAppSpecServiceLogDestinationLogtail `pulumi:"logtail"` // The name of the component. Name string `pulumi:"name"` + // OpenSearch configuration. + OpenSearch *GetAppSpecServiceLogDestinationOpenSearch `pulumi:"openSearch"` // Papertrail configuration. Papertrail *GetAppSpecServiceLogDestinationPapertrail `pulumi:"papertrail"` } @@ -26376,6 +28511,8 @@ type GetAppSpecServiceLogDestinationArgs struct { Logtail GetAppSpecServiceLogDestinationLogtailPtrInput `pulumi:"logtail"` // The name of the component. Name pulumi.StringInput `pulumi:"name"` + // OpenSearch configuration. + OpenSearch GetAppSpecServiceLogDestinationOpenSearchPtrInput `pulumi:"openSearch"` // Papertrail configuration. Papertrail GetAppSpecServiceLogDestinationPapertrailPtrInput `pulumi:"papertrail"` } @@ -26446,6 +28583,13 @@ func (o GetAppSpecServiceLogDestinationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v GetAppSpecServiceLogDestination) string { return v.Name }).(pulumi.StringOutput) } +// OpenSearch configuration. +func (o GetAppSpecServiceLogDestinationOutput) OpenSearch() GetAppSpecServiceLogDestinationOpenSearchPtrOutput { + return o.ApplyT(func(v GetAppSpecServiceLogDestination) *GetAppSpecServiceLogDestinationOpenSearch { + return v.OpenSearch + }).(GetAppSpecServiceLogDestinationOpenSearchPtrOutput) +} + // Papertrail configuration. func (o GetAppSpecServiceLogDestinationOutput) Papertrail() GetAppSpecServiceLogDestinationPapertrailPtrOutput { return o.ApplyT(func(v GetAppSpecServiceLogDestination) *GetAppSpecServiceLogDestinationPapertrail { @@ -26476,7 +28620,7 @@ func (o GetAppSpecServiceLogDestinationArrayOutput) Index(i pulumi.IntInput) Get type GetAppSpecServiceLogDestinationDatadog struct { // Datadog API key. ApiKey string `pulumi:"apiKey"` - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint *string `pulumi:"endpoint"` } @@ -26494,7 +28638,7 @@ type GetAppSpecServiceLogDestinationDatadogInput interface { type GetAppSpecServiceLogDestinationDatadogArgs struct { // Datadog API key. ApiKey pulumi.StringInput `pulumi:"apiKey"` - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` } @@ -26580,7 +28724,7 @@ func (o GetAppSpecServiceLogDestinationDatadogOutput) ApiKey() pulumi.StringOutp return o.ApplyT(func(v GetAppSpecServiceLogDestinationDatadog) string { return v.ApiKey }).(pulumi.StringOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecServiceLogDestinationDatadogOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v GetAppSpecServiceLogDestinationDatadog) *string { return v.Endpoint }).(pulumi.StringPtrOutput) } @@ -26619,7 +28763,7 @@ func (o GetAppSpecServiceLogDestinationDatadogPtrOutput) ApiKey() pulumi.StringP }).(pulumi.StringPtrOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecServiceLogDestinationDatadogPtrOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *GetAppSpecServiceLogDestinationDatadog) *string { if v == nil { @@ -26766,8 +28910,360 @@ func (o GetAppSpecServiceLogDestinationLogtailPtrOutput) Token() pulumi.StringPt }).(pulumi.StringPtrOutput) } +type GetAppSpecServiceLogDestinationOpenSearch struct { + // OpenSearch basic auth + BasicAuth GetAppSpecServiceLogDestinationOpenSearchBasicAuth `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName *string `pulumi:"clusterName"` + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + Endpoint *string `pulumi:"endpoint"` + // The index name to use for the logs. If not set, the default index name is \"logs\". + IndexName *string `pulumi:"indexName"` +} + +// GetAppSpecServiceLogDestinationOpenSearchInput is an input type that accepts GetAppSpecServiceLogDestinationOpenSearchArgs and GetAppSpecServiceLogDestinationOpenSearchOutput values. +// You can construct a concrete instance of `GetAppSpecServiceLogDestinationOpenSearchInput` via: +// +// GetAppSpecServiceLogDestinationOpenSearchArgs{...} +type GetAppSpecServiceLogDestinationOpenSearchInput interface { + pulumi.Input + + ToGetAppSpecServiceLogDestinationOpenSearchOutput() GetAppSpecServiceLogDestinationOpenSearchOutput + ToGetAppSpecServiceLogDestinationOpenSearchOutputWithContext(context.Context) GetAppSpecServiceLogDestinationOpenSearchOutput +} + +type GetAppSpecServiceLogDestinationOpenSearchArgs struct { + // OpenSearch basic auth + BasicAuth GetAppSpecServiceLogDestinationOpenSearchBasicAuthInput `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName pulumi.StringPtrInput `pulumi:"clusterName"` + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` + // The index name to use for the logs. If not set, the default index name is \"logs\". + IndexName pulumi.StringPtrInput `pulumi:"indexName"` +} + +func (GetAppSpecServiceLogDestinationOpenSearchArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecServiceLogDestinationOpenSearch)(nil)).Elem() +} + +func (i GetAppSpecServiceLogDestinationOpenSearchArgs) ToGetAppSpecServiceLogDestinationOpenSearchOutput() GetAppSpecServiceLogDestinationOpenSearchOutput { + return i.ToGetAppSpecServiceLogDestinationOpenSearchOutputWithContext(context.Background()) +} + +func (i GetAppSpecServiceLogDestinationOpenSearchArgs) ToGetAppSpecServiceLogDestinationOpenSearchOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecServiceLogDestinationOpenSearchOutput) +} + +func (i GetAppSpecServiceLogDestinationOpenSearchArgs) ToGetAppSpecServiceLogDestinationOpenSearchPtrOutput() GetAppSpecServiceLogDestinationOpenSearchPtrOutput { + return i.ToGetAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecServiceLogDestinationOpenSearchArgs) ToGetAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecServiceLogDestinationOpenSearchOutput).ToGetAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(ctx) +} + +// GetAppSpecServiceLogDestinationOpenSearchPtrInput is an input type that accepts GetAppSpecServiceLogDestinationOpenSearchArgs, GetAppSpecServiceLogDestinationOpenSearchPtr and GetAppSpecServiceLogDestinationOpenSearchPtrOutput values. +// You can construct a concrete instance of `GetAppSpecServiceLogDestinationOpenSearchPtrInput` via: +// +// GetAppSpecServiceLogDestinationOpenSearchArgs{...} +// +// or: +// +// nil +type GetAppSpecServiceLogDestinationOpenSearchPtrInput interface { + pulumi.Input + + ToGetAppSpecServiceLogDestinationOpenSearchPtrOutput() GetAppSpecServiceLogDestinationOpenSearchPtrOutput + ToGetAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(context.Context) GetAppSpecServiceLogDestinationOpenSearchPtrOutput +} + +type getAppSpecServiceLogDestinationOpenSearchPtrType GetAppSpecServiceLogDestinationOpenSearchArgs + +func GetAppSpecServiceLogDestinationOpenSearchPtr(v *GetAppSpecServiceLogDestinationOpenSearchArgs) GetAppSpecServiceLogDestinationOpenSearchPtrInput { + return (*getAppSpecServiceLogDestinationOpenSearchPtrType)(v) +} + +func (*getAppSpecServiceLogDestinationOpenSearchPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecServiceLogDestinationOpenSearch)(nil)).Elem() +} + +func (i *getAppSpecServiceLogDestinationOpenSearchPtrType) ToGetAppSpecServiceLogDestinationOpenSearchPtrOutput() GetAppSpecServiceLogDestinationOpenSearchPtrOutput { + return i.ToGetAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecServiceLogDestinationOpenSearchPtrType) ToGetAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecServiceLogDestinationOpenSearchPtrOutput) +} + +type GetAppSpecServiceLogDestinationOpenSearchOutput struct{ *pulumi.OutputState } + +func (GetAppSpecServiceLogDestinationOpenSearchOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecServiceLogDestinationOpenSearch)(nil)).Elem() +} + +func (o GetAppSpecServiceLogDestinationOpenSearchOutput) ToGetAppSpecServiceLogDestinationOpenSearchOutput() GetAppSpecServiceLogDestinationOpenSearchOutput { + return o +} + +func (o GetAppSpecServiceLogDestinationOpenSearchOutput) ToGetAppSpecServiceLogDestinationOpenSearchOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchOutput { + return o +} + +func (o GetAppSpecServiceLogDestinationOpenSearchOutput) ToGetAppSpecServiceLogDestinationOpenSearchPtrOutput() GetAppSpecServiceLogDestinationOpenSearchPtrOutput { + return o.ToGetAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecServiceLogDestinationOpenSearchOutput) ToGetAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecServiceLogDestinationOpenSearch) *GetAppSpecServiceLogDestinationOpenSearch { + return &v + }).(GetAppSpecServiceLogDestinationOpenSearchPtrOutput) +} + +// OpenSearch basic auth +func (o GetAppSpecServiceLogDestinationOpenSearchOutput) BasicAuth() GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v GetAppSpecServiceLogDestinationOpenSearch) GetAppSpecServiceLogDestinationOpenSearchBasicAuth { + return v.BasicAuth + }).(GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o GetAppSpecServiceLogDestinationOpenSearchOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecServiceLogDestinationOpenSearch) *string { return v.ClusterName }).(pulumi.StringPtrOutput) +} + +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. +func (o GetAppSpecServiceLogDestinationOpenSearchOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecServiceLogDestinationOpenSearch) *string { return v.Endpoint }).(pulumi.StringPtrOutput) +} + +// The index name to use for the logs. If not set, the default index name is \"logs\". +func (o GetAppSpecServiceLogDestinationOpenSearchOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecServiceLogDestinationOpenSearch) *string { return v.IndexName }).(pulumi.StringPtrOutput) +} + +type GetAppSpecServiceLogDestinationOpenSearchPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecServiceLogDestinationOpenSearchPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecServiceLogDestinationOpenSearch)(nil)).Elem() +} + +func (o GetAppSpecServiceLogDestinationOpenSearchPtrOutput) ToGetAppSpecServiceLogDestinationOpenSearchPtrOutput() GetAppSpecServiceLogDestinationOpenSearchPtrOutput { + return o +} + +func (o GetAppSpecServiceLogDestinationOpenSearchPtrOutput) ToGetAppSpecServiceLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchPtrOutput { + return o +} + +func (o GetAppSpecServiceLogDestinationOpenSearchPtrOutput) Elem() GetAppSpecServiceLogDestinationOpenSearchOutput { + return o.ApplyT(func(v *GetAppSpecServiceLogDestinationOpenSearch) GetAppSpecServiceLogDestinationOpenSearch { + if v != nil { + return *v + } + var ret GetAppSpecServiceLogDestinationOpenSearch + return ret + }).(GetAppSpecServiceLogDestinationOpenSearchOutput) +} + +// OpenSearch basic auth +func (o GetAppSpecServiceLogDestinationOpenSearchPtrOutput) BasicAuth() GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyT(func(v *GetAppSpecServiceLogDestinationOpenSearch) *GetAppSpecServiceLogDestinationOpenSearchBasicAuth { + if v == nil { + return nil + } + return &v.BasicAuth + }).(GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o GetAppSpecServiceLogDestinationOpenSearchPtrOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecServiceLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.ClusterName + }).(pulumi.StringPtrOutput) +} + +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. +func (o GetAppSpecServiceLogDestinationOpenSearchPtrOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecServiceLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.Endpoint + }).(pulumi.StringPtrOutput) +} + +// The index name to use for the logs. If not set, the default index name is \"logs\". +func (o GetAppSpecServiceLogDestinationOpenSearchPtrOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecServiceLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.IndexName + }).(pulumi.StringPtrOutput) +} + +type GetAppSpecServiceLogDestinationOpenSearchBasicAuth struct { + // Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + Password *string `pulumi:"password"` + // Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + User *string `pulumi:"user"` +} + +// GetAppSpecServiceLogDestinationOpenSearchBasicAuthInput is an input type that accepts GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs and GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput values. +// You can construct a concrete instance of `GetAppSpecServiceLogDestinationOpenSearchBasicAuthInput` via: +// +// GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs{...} +type GetAppSpecServiceLogDestinationOpenSearchBasicAuthInput interface { + pulumi.Input + + ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput() GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput + ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthOutputWithContext(context.Context) GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput +} + +type GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs struct { + // Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + Password pulumi.StringPtrInput `pulumi:"password"` + // Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + User pulumi.StringPtrInput `pulumi:"user"` +} + +func (GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecServiceLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput() GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return i.ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthOutputWithContext(context.Background()) +} + +func (i GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput) +} + +func (i GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput).ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx) +} + +// GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrInput is an input type that accepts GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs, GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtr and GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput values. +// You can construct a concrete instance of `GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrInput` via: +// +// GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs{...} +// +// or: +// +// nil +type GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrInput interface { + pulumi.Input + + ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput + ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Context) GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput +} + +type getAppSpecServiceLogDestinationOpenSearchBasicAuthPtrType GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs + +func GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtr(v *GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs) GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrInput { + return (*getAppSpecServiceLogDestinationOpenSearchBasicAuthPtrType)(v) +} + +func (*getAppSpecServiceLogDestinationOpenSearchBasicAuthPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecServiceLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i *getAppSpecServiceLogDestinationOpenSearchBasicAuthPtrType) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecServiceLogDestinationOpenSearchBasicAuthPtrType) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) +} + +type GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput struct{ *pulumi.OutputState } + +func (GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecServiceLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput() GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecServiceLogDestinationOpenSearchBasicAuth) *GetAppSpecServiceLogDestinationOpenSearchBasicAuth { + return &v + }).(GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecServiceLogDestinationOpenSearchBasicAuth) *string { return v.Password }).(pulumi.StringPtrOutput) +} + +// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecServiceLogDestinationOpenSearchBasicAuth) *string { return v.User }).(pulumi.StringPtrOutput) +} + +type GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecServiceLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) ToGetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) Elem() GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v *GetAppSpecServiceLogDestinationOpenSearchBasicAuth) GetAppSpecServiceLogDestinationOpenSearchBasicAuth { + if v != nil { + return *v + } + var ret GetAppSpecServiceLogDestinationOpenSearchBasicAuth + return ret + }).(GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput) +} + +// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecServiceLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.Password + }).(pulumi.StringPtrOutput) +} + +// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. +func (o GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecServiceLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.User + }).(pulumi.StringPtrOutput) +} + type GetAppSpecServiceLogDestinationPapertrail struct { - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint string `pulumi:"endpoint"` } @@ -26783,7 +29279,7 @@ type GetAppSpecServiceLogDestinationPapertrailInput interface { } type GetAppSpecServiceLogDestinationPapertrailArgs struct { - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint pulumi.StringInput `pulumi:"endpoint"` } @@ -26864,7 +29360,7 @@ func (o GetAppSpecServiceLogDestinationPapertrailOutput) ToGetAppSpecServiceLogD }).(GetAppSpecServiceLogDestinationPapertrailPtrOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecServiceLogDestinationPapertrailOutput) Endpoint() pulumi.StringOutput { return o.ApplyT(func(v GetAppSpecServiceLogDestinationPapertrail) string { return v.Endpoint }).(pulumi.StringOutput) } @@ -26893,7 +29389,7 @@ func (o GetAppSpecServiceLogDestinationPapertrailPtrOutput) Elem() GetAppSpecSer }).(GetAppSpecServiceLogDestinationPapertrailOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecServiceLogDestinationPapertrailPtrOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *GetAppSpecServiceLogDestinationPapertrail) *string { if v == nil { @@ -29711,6 +32207,8 @@ type GetAppSpecWorkerLogDestination struct { Logtail *GetAppSpecWorkerLogDestinationLogtail `pulumi:"logtail"` // The name of the component. Name string `pulumi:"name"` + // OpenSearch configuration. + OpenSearch *GetAppSpecWorkerLogDestinationOpenSearch `pulumi:"openSearch"` // Papertrail configuration. Papertrail *GetAppSpecWorkerLogDestinationPapertrail `pulumi:"papertrail"` } @@ -29733,6 +32231,8 @@ type GetAppSpecWorkerLogDestinationArgs struct { Logtail GetAppSpecWorkerLogDestinationLogtailPtrInput `pulumi:"logtail"` // The name of the component. Name pulumi.StringInput `pulumi:"name"` + // OpenSearch configuration. + OpenSearch GetAppSpecWorkerLogDestinationOpenSearchPtrInput `pulumi:"openSearch"` // Papertrail configuration. Papertrail GetAppSpecWorkerLogDestinationPapertrailPtrInput `pulumi:"papertrail"` } @@ -29803,6 +32303,11 @@ func (o GetAppSpecWorkerLogDestinationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v GetAppSpecWorkerLogDestination) string { return v.Name }).(pulumi.StringOutput) } +// OpenSearch configuration. +func (o GetAppSpecWorkerLogDestinationOutput) OpenSearch() GetAppSpecWorkerLogDestinationOpenSearchPtrOutput { + return o.ApplyT(func(v GetAppSpecWorkerLogDestination) *GetAppSpecWorkerLogDestinationOpenSearch { return v.OpenSearch }).(GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) +} + // Papertrail configuration. func (o GetAppSpecWorkerLogDestinationOutput) Papertrail() GetAppSpecWorkerLogDestinationPapertrailPtrOutput { return o.ApplyT(func(v GetAppSpecWorkerLogDestination) *GetAppSpecWorkerLogDestinationPapertrail { return v.Papertrail }).(GetAppSpecWorkerLogDestinationPapertrailPtrOutput) @@ -29831,7 +32336,7 @@ func (o GetAppSpecWorkerLogDestinationArrayOutput) Index(i pulumi.IntInput) GetA type GetAppSpecWorkerLogDestinationDatadog struct { // Datadog API key. ApiKey string `pulumi:"apiKey"` - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint *string `pulumi:"endpoint"` } @@ -29849,7 +32354,7 @@ type GetAppSpecWorkerLogDestinationDatadogInput interface { type GetAppSpecWorkerLogDestinationDatadogArgs struct { // Datadog API key. ApiKey pulumi.StringInput `pulumi:"apiKey"` - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` } @@ -29935,7 +32440,7 @@ func (o GetAppSpecWorkerLogDestinationDatadogOutput) ApiKey() pulumi.StringOutpu return o.ApplyT(func(v GetAppSpecWorkerLogDestinationDatadog) string { return v.ApiKey }).(pulumi.StringOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecWorkerLogDestinationDatadogOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v GetAppSpecWorkerLogDestinationDatadog) *string { return v.Endpoint }).(pulumi.StringPtrOutput) } @@ -29974,7 +32479,7 @@ func (o GetAppSpecWorkerLogDestinationDatadogPtrOutput) ApiKey() pulumi.StringPt }).(pulumi.StringPtrOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecWorkerLogDestinationDatadogPtrOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *GetAppSpecWorkerLogDestinationDatadog) *string { if v == nil { @@ -30121,8 +32626,360 @@ func (o GetAppSpecWorkerLogDestinationLogtailPtrOutput) Token() pulumi.StringPtr }).(pulumi.StringPtrOutput) } +type GetAppSpecWorkerLogDestinationOpenSearch struct { + // OpenSearch basic auth + BasicAuth GetAppSpecWorkerLogDestinationOpenSearchBasicAuth `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName *string `pulumi:"clusterName"` + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + Endpoint *string `pulumi:"endpoint"` + // The index name to use for the logs. If not set, the default index name is \"logs\". + IndexName *string `pulumi:"indexName"` +} + +// GetAppSpecWorkerLogDestinationOpenSearchInput is an input type that accepts GetAppSpecWorkerLogDestinationOpenSearchArgs and GetAppSpecWorkerLogDestinationOpenSearchOutput values. +// You can construct a concrete instance of `GetAppSpecWorkerLogDestinationOpenSearchInput` via: +// +// GetAppSpecWorkerLogDestinationOpenSearchArgs{...} +type GetAppSpecWorkerLogDestinationOpenSearchInput interface { + pulumi.Input + + ToGetAppSpecWorkerLogDestinationOpenSearchOutput() GetAppSpecWorkerLogDestinationOpenSearchOutput + ToGetAppSpecWorkerLogDestinationOpenSearchOutputWithContext(context.Context) GetAppSpecWorkerLogDestinationOpenSearchOutput +} + +type GetAppSpecWorkerLogDestinationOpenSearchArgs struct { + // OpenSearch basic auth + BasicAuth GetAppSpecWorkerLogDestinationOpenSearchBasicAuthInput `pulumi:"basicAuth"` + // The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + ClusterName pulumi.StringPtrInput `pulumi:"clusterName"` + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + Endpoint pulumi.StringPtrInput `pulumi:"endpoint"` + // The index name to use for the logs. If not set, the default index name is \"logs\". + IndexName pulumi.StringPtrInput `pulumi:"indexName"` +} + +func (GetAppSpecWorkerLogDestinationOpenSearchArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecWorkerLogDestinationOpenSearch)(nil)).Elem() +} + +func (i GetAppSpecWorkerLogDestinationOpenSearchArgs) ToGetAppSpecWorkerLogDestinationOpenSearchOutput() GetAppSpecWorkerLogDestinationOpenSearchOutput { + return i.ToGetAppSpecWorkerLogDestinationOpenSearchOutputWithContext(context.Background()) +} + +func (i GetAppSpecWorkerLogDestinationOpenSearchArgs) ToGetAppSpecWorkerLogDestinationOpenSearchOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecWorkerLogDestinationOpenSearchOutput) +} + +func (i GetAppSpecWorkerLogDestinationOpenSearchArgs) ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutput() GetAppSpecWorkerLogDestinationOpenSearchPtrOutput { + return i.ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecWorkerLogDestinationOpenSearchArgs) ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecWorkerLogDestinationOpenSearchOutput).ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(ctx) +} + +// GetAppSpecWorkerLogDestinationOpenSearchPtrInput is an input type that accepts GetAppSpecWorkerLogDestinationOpenSearchArgs, GetAppSpecWorkerLogDestinationOpenSearchPtr and GetAppSpecWorkerLogDestinationOpenSearchPtrOutput values. +// You can construct a concrete instance of `GetAppSpecWorkerLogDestinationOpenSearchPtrInput` via: +// +// GetAppSpecWorkerLogDestinationOpenSearchArgs{...} +// +// or: +// +// nil +type GetAppSpecWorkerLogDestinationOpenSearchPtrInput interface { + pulumi.Input + + ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutput() GetAppSpecWorkerLogDestinationOpenSearchPtrOutput + ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(context.Context) GetAppSpecWorkerLogDestinationOpenSearchPtrOutput +} + +type getAppSpecWorkerLogDestinationOpenSearchPtrType GetAppSpecWorkerLogDestinationOpenSearchArgs + +func GetAppSpecWorkerLogDestinationOpenSearchPtr(v *GetAppSpecWorkerLogDestinationOpenSearchArgs) GetAppSpecWorkerLogDestinationOpenSearchPtrInput { + return (*getAppSpecWorkerLogDestinationOpenSearchPtrType)(v) +} + +func (*getAppSpecWorkerLogDestinationOpenSearchPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecWorkerLogDestinationOpenSearch)(nil)).Elem() +} + +func (i *getAppSpecWorkerLogDestinationOpenSearchPtrType) ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutput() GetAppSpecWorkerLogDestinationOpenSearchPtrOutput { + return i.ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecWorkerLogDestinationOpenSearchPtrType) ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) +} + +type GetAppSpecWorkerLogDestinationOpenSearchOutput struct{ *pulumi.OutputState } + +func (GetAppSpecWorkerLogDestinationOpenSearchOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecWorkerLogDestinationOpenSearch)(nil)).Elem() +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchOutput) ToGetAppSpecWorkerLogDestinationOpenSearchOutput() GetAppSpecWorkerLogDestinationOpenSearchOutput { + return o +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchOutput) ToGetAppSpecWorkerLogDestinationOpenSearchOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchOutput { + return o +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchOutput) ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutput() GetAppSpecWorkerLogDestinationOpenSearchPtrOutput { + return o.ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchOutput) ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecWorkerLogDestinationOpenSearch) *GetAppSpecWorkerLogDestinationOpenSearch { + return &v + }).(GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) +} + +// OpenSearch basic auth +func (o GetAppSpecWorkerLogDestinationOpenSearchOutput) BasicAuth() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v GetAppSpecWorkerLogDestinationOpenSearch) GetAppSpecWorkerLogDestinationOpenSearchBasicAuth { + return v.BasicAuth + }).(GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o GetAppSpecWorkerLogDestinationOpenSearchOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecWorkerLogDestinationOpenSearch) *string { return v.ClusterName }).(pulumi.StringPtrOutput) +} + +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. +func (o GetAppSpecWorkerLogDestinationOpenSearchOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecWorkerLogDestinationOpenSearch) *string { return v.Endpoint }).(pulumi.StringPtrOutput) +} + +// The index name to use for the logs. If not set, the default index name is \"logs\". +func (o GetAppSpecWorkerLogDestinationOpenSearchOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecWorkerLogDestinationOpenSearch) *string { return v.IndexName }).(pulumi.StringPtrOutput) +} + +type GetAppSpecWorkerLogDestinationOpenSearchPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecWorkerLogDestinationOpenSearch)(nil)).Elem() +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutput() GetAppSpecWorkerLogDestinationOpenSearchPtrOutput { + return o +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) ToGetAppSpecWorkerLogDestinationOpenSearchPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchPtrOutput { + return o +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) Elem() GetAppSpecWorkerLogDestinationOpenSearchOutput { + return o.ApplyT(func(v *GetAppSpecWorkerLogDestinationOpenSearch) GetAppSpecWorkerLogDestinationOpenSearch { + if v != nil { + return *v + } + var ret GetAppSpecWorkerLogDestinationOpenSearch + return ret + }).(GetAppSpecWorkerLogDestinationOpenSearchOutput) +} + +// OpenSearch basic auth +func (o GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) BasicAuth() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyT(func(v *GetAppSpecWorkerLogDestinationOpenSearch) *GetAppSpecWorkerLogDestinationOpenSearchBasicAuth { + if v == nil { + return nil + } + return &v.BasicAuth + }).(GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. +func (o GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) ClusterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecWorkerLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.ClusterName + }).(pulumi.StringPtrOutput) +} + +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. +func (o GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) Endpoint() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecWorkerLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.Endpoint + }).(pulumi.StringPtrOutput) +} + +// The index name to use for the logs. If not set, the default index name is \"logs\". +func (o GetAppSpecWorkerLogDestinationOpenSearchPtrOutput) IndexName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecWorkerLogDestinationOpenSearch) *string { + if v == nil { + return nil + } + return v.IndexName + }).(pulumi.StringPtrOutput) +} + +type GetAppSpecWorkerLogDestinationOpenSearchBasicAuth struct { + // Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + Password *string `pulumi:"password"` + // Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + User *string `pulumi:"user"` +} + +// GetAppSpecWorkerLogDestinationOpenSearchBasicAuthInput is an input type that accepts GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs and GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput values. +// You can construct a concrete instance of `GetAppSpecWorkerLogDestinationOpenSearchBasicAuthInput` via: +// +// GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs{...} +type GetAppSpecWorkerLogDestinationOpenSearchBasicAuthInput interface { + pulumi.Input + + ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput + ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutputWithContext(context.Context) GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput +} + +type GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs struct { + // Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + Password pulumi.StringPtrInput `pulumi:"password"` + // Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + User pulumi.StringPtrInput `pulumi:"user"` +} + +func (GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecWorkerLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return i.ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutputWithContext(context.Background()) +} + +func (i GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) +} + +func (i GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput).ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx) +} + +// GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrInput is an input type that accepts GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs, GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtr and GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput values. +// You can construct a concrete instance of `GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrInput` via: +// +// GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs{...} +// +// or: +// +// nil +type GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrInput interface { + pulumi.Input + + ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput + ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Context) GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput +} + +type getAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrType GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs + +func GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtr(v *GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs) GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrInput { + return (*getAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrType)(v) +} + +func (*getAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecWorkerLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (i *getAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrType) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return i.ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrType) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) +} + +type GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput struct{ *pulumi.OutputState } + +func (GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecWorkerLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return o +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecWorkerLogDestinationOpenSearchBasicAuth) *GetAppSpecWorkerLogDestinationOpenSearchBasicAuth { + return &v + }).(GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) +} + +// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecWorkerLogDestinationOpenSearchBasicAuth) *string { return v.Password }).(pulumi.StringPtrOutput) +} + +// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecWorkerLogDestinationOpenSearchBasicAuth) *string { return v.User }).(pulumi.StringPtrOutput) +} + +type GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecWorkerLogDestinationOpenSearchBasicAuth)(nil)).Elem() +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) ToGetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput { + return o +} + +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) Elem() GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput { + return o.ApplyT(func(v *GetAppSpecWorkerLogDestinationOpenSearchBasicAuth) GetAppSpecWorkerLogDestinationOpenSearchBasicAuth { + if v != nil { + return *v + } + var ret GetAppSpecWorkerLogDestinationOpenSearchBasicAuth + return ret + }).(GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput) +} + +// Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) Password() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecWorkerLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.Password + }).(pulumi.StringPtrOutput) +} + +// Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. +func (o GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecWorkerLogDestinationOpenSearchBasicAuth) *string { + if v == nil { + return nil + } + return v.User + }).(pulumi.StringPtrOutput) +} + type GetAppSpecWorkerLogDestinationPapertrail struct { - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint string `pulumi:"endpoint"` } @@ -30138,7 +32995,7 @@ type GetAppSpecWorkerLogDestinationPapertrailInput interface { } type GetAppSpecWorkerLogDestinationPapertrailArgs struct { - // Datadog HTTP log intake endpoint. + // OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. Endpoint pulumi.StringInput `pulumi:"endpoint"` } @@ -30219,7 +33076,7 @@ func (o GetAppSpecWorkerLogDestinationPapertrailOutput) ToGetAppSpecWorkerLogDes }).(GetAppSpecWorkerLogDestinationPapertrailPtrOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecWorkerLogDestinationPapertrailOutput) Endpoint() pulumi.StringOutput { return o.ApplyT(func(v GetAppSpecWorkerLogDestinationPapertrail) string { return v.Endpoint }).(pulumi.StringOutput) } @@ -30248,7 +33105,7 @@ func (o GetAppSpecWorkerLogDestinationPapertrailPtrOutput) Elem() GetAppSpecWork }).(GetAppSpecWorkerLogDestinationPapertrailOutput) } -// Datadog HTTP log intake endpoint. +// OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. func (o GetAppSpecWorkerLogDestinationPapertrailPtrOutput) Endpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *GetAppSpecWorkerLogDestinationPapertrail) *string { if v == nil { @@ -36901,6 +39758,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionLogDestinationDatadogPtrInput)(nil)).Elem(), AppSpecFunctionLogDestinationDatadogArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionLogDestinationLogtailInput)(nil)).Elem(), AppSpecFunctionLogDestinationLogtailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionLogDestinationLogtailPtrInput)(nil)).Elem(), AppSpecFunctionLogDestinationLogtailArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionLogDestinationOpenSearchInput)(nil)).Elem(), AppSpecFunctionLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionLogDestinationOpenSearchPtrInput)(nil)).Elem(), AppSpecFunctionLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionLogDestinationOpenSearchBasicAuthInput)(nil)).Elem(), AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrInput)(nil)).Elem(), AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionLogDestinationPapertrailInput)(nil)).Elem(), AppSpecFunctionLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionLogDestinationPapertrailPtrInput)(nil)).Elem(), AppSpecFunctionLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionRouteInput)(nil)).Elem(), AppSpecFunctionRouteArgs{}) @@ -36943,6 +39804,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobLogDestinationDatadogPtrInput)(nil)).Elem(), AppSpecJobLogDestinationDatadogArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobLogDestinationLogtailInput)(nil)).Elem(), AppSpecJobLogDestinationLogtailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobLogDestinationLogtailPtrInput)(nil)).Elem(), AppSpecJobLogDestinationLogtailArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobLogDestinationOpenSearchInput)(nil)).Elem(), AppSpecJobLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobLogDestinationOpenSearchPtrInput)(nil)).Elem(), AppSpecJobLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobLogDestinationOpenSearchBasicAuthInput)(nil)).Elem(), AppSpecJobLogDestinationOpenSearchBasicAuthArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobLogDestinationOpenSearchBasicAuthPtrInput)(nil)).Elem(), AppSpecJobLogDestinationOpenSearchBasicAuthArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobLogDestinationPapertrailInput)(nil)).Elem(), AppSpecJobLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobLogDestinationPapertrailPtrInput)(nil)).Elem(), AppSpecJobLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceInput)(nil)).Elem(), AppSpecServiceArgs{}) @@ -36979,6 +39844,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceLogDestinationDatadogPtrInput)(nil)).Elem(), AppSpecServiceLogDestinationDatadogArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceLogDestinationLogtailInput)(nil)).Elem(), AppSpecServiceLogDestinationLogtailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceLogDestinationLogtailPtrInput)(nil)).Elem(), AppSpecServiceLogDestinationLogtailArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceLogDestinationOpenSearchInput)(nil)).Elem(), AppSpecServiceLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceLogDestinationOpenSearchPtrInput)(nil)).Elem(), AppSpecServiceLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceLogDestinationOpenSearchBasicAuthInput)(nil)).Elem(), AppSpecServiceLogDestinationOpenSearchBasicAuthArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceLogDestinationOpenSearchBasicAuthPtrInput)(nil)).Elem(), AppSpecServiceLogDestinationOpenSearchBasicAuthArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceLogDestinationPapertrailInput)(nil)).Elem(), AppSpecServiceLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceLogDestinationPapertrailPtrInput)(nil)).Elem(), AppSpecServiceLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceRouteInput)(nil)).Elem(), AppSpecServiceRouteArgs{}) @@ -37021,6 +39890,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerLogDestinationDatadogPtrInput)(nil)).Elem(), AppSpecWorkerLogDestinationDatadogArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerLogDestinationLogtailInput)(nil)).Elem(), AppSpecWorkerLogDestinationLogtailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerLogDestinationLogtailPtrInput)(nil)).Elem(), AppSpecWorkerLogDestinationLogtailArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerLogDestinationOpenSearchInput)(nil)).Elem(), AppSpecWorkerLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerLogDestinationOpenSearchPtrInput)(nil)).Elem(), AppSpecWorkerLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerLogDestinationOpenSearchBasicAuthInput)(nil)).Elem(), AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrInput)(nil)).Elem(), AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerLogDestinationPapertrailInput)(nil)).Elem(), AppSpecWorkerLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerLogDestinationPapertrailPtrInput)(nil)).Elem(), AppSpecWorkerLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DatabaseClusterBackupRestoreInput)(nil)).Elem(), DatabaseClusterBackupRestoreArgs{}) @@ -37129,6 +40002,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionLogDestinationDatadogPtrInput)(nil)).Elem(), GetAppSpecFunctionLogDestinationDatadogArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionLogDestinationLogtailInput)(nil)).Elem(), GetAppSpecFunctionLogDestinationLogtailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionLogDestinationLogtailPtrInput)(nil)).Elem(), GetAppSpecFunctionLogDestinationLogtailArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionLogDestinationOpenSearchInput)(nil)).Elem(), GetAppSpecFunctionLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionLogDestinationOpenSearchPtrInput)(nil)).Elem(), GetAppSpecFunctionLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionLogDestinationOpenSearchBasicAuthInput)(nil)).Elem(), GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrInput)(nil)).Elem(), GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionLogDestinationPapertrailInput)(nil)).Elem(), GetAppSpecFunctionLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionLogDestinationPapertrailPtrInput)(nil)).Elem(), GetAppSpecFunctionLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionRouteInput)(nil)).Elem(), GetAppSpecFunctionRouteArgs{}) @@ -37166,6 +40043,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobLogDestinationDatadogPtrInput)(nil)).Elem(), GetAppSpecJobLogDestinationDatadogArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobLogDestinationLogtailInput)(nil)).Elem(), GetAppSpecJobLogDestinationLogtailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobLogDestinationLogtailPtrInput)(nil)).Elem(), GetAppSpecJobLogDestinationLogtailArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobLogDestinationOpenSearchInput)(nil)).Elem(), GetAppSpecJobLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobLogDestinationOpenSearchPtrInput)(nil)).Elem(), GetAppSpecJobLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobLogDestinationOpenSearchBasicAuthInput)(nil)).Elem(), GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrInput)(nil)).Elem(), GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobLogDestinationPapertrailInput)(nil)).Elem(), GetAppSpecJobLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobLogDestinationPapertrailPtrInput)(nil)).Elem(), GetAppSpecJobLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceInput)(nil)).Elem(), GetAppSpecServiceArgs{}) @@ -37202,6 +40083,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceLogDestinationDatadogPtrInput)(nil)).Elem(), GetAppSpecServiceLogDestinationDatadogArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceLogDestinationLogtailInput)(nil)).Elem(), GetAppSpecServiceLogDestinationLogtailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceLogDestinationLogtailPtrInput)(nil)).Elem(), GetAppSpecServiceLogDestinationLogtailArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceLogDestinationOpenSearchInput)(nil)).Elem(), GetAppSpecServiceLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceLogDestinationOpenSearchPtrInput)(nil)).Elem(), GetAppSpecServiceLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceLogDestinationOpenSearchBasicAuthInput)(nil)).Elem(), GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrInput)(nil)).Elem(), GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceLogDestinationPapertrailInput)(nil)).Elem(), GetAppSpecServiceLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceLogDestinationPapertrailPtrInput)(nil)).Elem(), GetAppSpecServiceLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceRouteInput)(nil)).Elem(), GetAppSpecServiceRouteArgs{}) @@ -37244,6 +40129,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerLogDestinationDatadogPtrInput)(nil)).Elem(), GetAppSpecWorkerLogDestinationDatadogArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerLogDestinationLogtailInput)(nil)).Elem(), GetAppSpecWorkerLogDestinationLogtailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerLogDestinationLogtailPtrInput)(nil)).Elem(), GetAppSpecWorkerLogDestinationLogtailArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerLogDestinationOpenSearchInput)(nil)).Elem(), GetAppSpecWorkerLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerLogDestinationOpenSearchPtrInput)(nil)).Elem(), GetAppSpecWorkerLogDestinationOpenSearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerLogDestinationOpenSearchBasicAuthInput)(nil)).Elem(), GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrInput)(nil)).Elem(), GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerLogDestinationPapertrailInput)(nil)).Elem(), GetAppSpecWorkerLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerLogDestinationPapertrailPtrInput)(nil)).Elem(), GetAppSpecWorkerLogDestinationPapertrailArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetDatabaseClusterMaintenanceWindowInput)(nil)).Elem(), GetDatabaseClusterMaintenanceWindowArgs{}) @@ -37378,6 +40267,10 @@ func init() { pulumi.RegisterOutputType(AppSpecFunctionLogDestinationDatadogPtrOutput{}) pulumi.RegisterOutputType(AppSpecFunctionLogDestinationLogtailOutput{}) pulumi.RegisterOutputType(AppSpecFunctionLogDestinationLogtailPtrOutput{}) + pulumi.RegisterOutputType(AppSpecFunctionLogDestinationOpenSearchOutput{}) + pulumi.RegisterOutputType(AppSpecFunctionLogDestinationOpenSearchPtrOutput{}) + pulumi.RegisterOutputType(AppSpecFunctionLogDestinationOpenSearchBasicAuthOutput{}) + pulumi.RegisterOutputType(AppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput{}) pulumi.RegisterOutputType(AppSpecFunctionLogDestinationPapertrailOutput{}) pulumi.RegisterOutputType(AppSpecFunctionLogDestinationPapertrailPtrOutput{}) pulumi.RegisterOutputType(AppSpecFunctionRouteOutput{}) @@ -37420,6 +40313,10 @@ func init() { pulumi.RegisterOutputType(AppSpecJobLogDestinationDatadogPtrOutput{}) pulumi.RegisterOutputType(AppSpecJobLogDestinationLogtailOutput{}) pulumi.RegisterOutputType(AppSpecJobLogDestinationLogtailPtrOutput{}) + pulumi.RegisterOutputType(AppSpecJobLogDestinationOpenSearchOutput{}) + pulumi.RegisterOutputType(AppSpecJobLogDestinationOpenSearchPtrOutput{}) + pulumi.RegisterOutputType(AppSpecJobLogDestinationOpenSearchBasicAuthOutput{}) + pulumi.RegisterOutputType(AppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput{}) pulumi.RegisterOutputType(AppSpecJobLogDestinationPapertrailOutput{}) pulumi.RegisterOutputType(AppSpecJobLogDestinationPapertrailPtrOutput{}) pulumi.RegisterOutputType(AppSpecServiceOutput{}) @@ -37456,6 +40353,10 @@ func init() { pulumi.RegisterOutputType(AppSpecServiceLogDestinationDatadogPtrOutput{}) pulumi.RegisterOutputType(AppSpecServiceLogDestinationLogtailOutput{}) pulumi.RegisterOutputType(AppSpecServiceLogDestinationLogtailPtrOutput{}) + pulumi.RegisterOutputType(AppSpecServiceLogDestinationOpenSearchOutput{}) + pulumi.RegisterOutputType(AppSpecServiceLogDestinationOpenSearchPtrOutput{}) + pulumi.RegisterOutputType(AppSpecServiceLogDestinationOpenSearchBasicAuthOutput{}) + pulumi.RegisterOutputType(AppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput{}) pulumi.RegisterOutputType(AppSpecServiceLogDestinationPapertrailOutput{}) pulumi.RegisterOutputType(AppSpecServiceLogDestinationPapertrailPtrOutput{}) pulumi.RegisterOutputType(AppSpecServiceRouteOutput{}) @@ -37498,6 +40399,10 @@ func init() { pulumi.RegisterOutputType(AppSpecWorkerLogDestinationDatadogPtrOutput{}) pulumi.RegisterOutputType(AppSpecWorkerLogDestinationLogtailOutput{}) pulumi.RegisterOutputType(AppSpecWorkerLogDestinationLogtailPtrOutput{}) + pulumi.RegisterOutputType(AppSpecWorkerLogDestinationOpenSearchOutput{}) + pulumi.RegisterOutputType(AppSpecWorkerLogDestinationOpenSearchPtrOutput{}) + pulumi.RegisterOutputType(AppSpecWorkerLogDestinationOpenSearchBasicAuthOutput{}) + pulumi.RegisterOutputType(AppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput{}) pulumi.RegisterOutputType(AppSpecWorkerLogDestinationPapertrailOutput{}) pulumi.RegisterOutputType(AppSpecWorkerLogDestinationPapertrailPtrOutput{}) pulumi.RegisterOutputType(DatabaseClusterBackupRestoreOutput{}) @@ -37606,6 +40511,10 @@ func init() { pulumi.RegisterOutputType(GetAppSpecFunctionLogDestinationDatadogPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecFunctionLogDestinationLogtailOutput{}) pulumi.RegisterOutputType(GetAppSpecFunctionLogDestinationLogtailPtrOutput{}) + pulumi.RegisterOutputType(GetAppSpecFunctionLogDestinationOpenSearchOutput{}) + pulumi.RegisterOutputType(GetAppSpecFunctionLogDestinationOpenSearchPtrOutput{}) + pulumi.RegisterOutputType(GetAppSpecFunctionLogDestinationOpenSearchBasicAuthOutput{}) + pulumi.RegisterOutputType(GetAppSpecFunctionLogDestinationOpenSearchBasicAuthPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecFunctionLogDestinationPapertrailOutput{}) pulumi.RegisterOutputType(GetAppSpecFunctionLogDestinationPapertrailPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecFunctionRouteOutput{}) @@ -37643,6 +40552,10 @@ func init() { pulumi.RegisterOutputType(GetAppSpecJobLogDestinationDatadogPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecJobLogDestinationLogtailOutput{}) pulumi.RegisterOutputType(GetAppSpecJobLogDestinationLogtailPtrOutput{}) + pulumi.RegisterOutputType(GetAppSpecJobLogDestinationOpenSearchOutput{}) + pulumi.RegisterOutputType(GetAppSpecJobLogDestinationOpenSearchPtrOutput{}) + pulumi.RegisterOutputType(GetAppSpecJobLogDestinationOpenSearchBasicAuthOutput{}) + pulumi.RegisterOutputType(GetAppSpecJobLogDestinationOpenSearchBasicAuthPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecJobLogDestinationPapertrailOutput{}) pulumi.RegisterOutputType(GetAppSpecJobLogDestinationPapertrailPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceOutput{}) @@ -37679,6 +40592,10 @@ func init() { pulumi.RegisterOutputType(GetAppSpecServiceLogDestinationDatadogPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceLogDestinationLogtailOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceLogDestinationLogtailPtrOutput{}) + pulumi.RegisterOutputType(GetAppSpecServiceLogDestinationOpenSearchOutput{}) + pulumi.RegisterOutputType(GetAppSpecServiceLogDestinationOpenSearchPtrOutput{}) + pulumi.RegisterOutputType(GetAppSpecServiceLogDestinationOpenSearchBasicAuthOutput{}) + pulumi.RegisterOutputType(GetAppSpecServiceLogDestinationOpenSearchBasicAuthPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceLogDestinationPapertrailOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceLogDestinationPapertrailPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceRouteOutput{}) @@ -37721,6 +40638,10 @@ func init() { pulumi.RegisterOutputType(GetAppSpecWorkerLogDestinationDatadogPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecWorkerLogDestinationLogtailOutput{}) pulumi.RegisterOutputType(GetAppSpecWorkerLogDestinationLogtailPtrOutput{}) + pulumi.RegisterOutputType(GetAppSpecWorkerLogDestinationOpenSearchOutput{}) + pulumi.RegisterOutputType(GetAppSpecWorkerLogDestinationOpenSearchPtrOutput{}) + pulumi.RegisterOutputType(GetAppSpecWorkerLogDestinationOpenSearchBasicAuthOutput{}) + pulumi.RegisterOutputType(GetAppSpecWorkerLogDestinationOpenSearchBasicAuthPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecWorkerLogDestinationPapertrailOutput{}) pulumi.RegisterOutputType(GetAppSpecWorkerLogDestinationPapertrailPtrOutput{}) pulumi.RegisterOutputType(GetDatabaseClusterMaintenanceWindowOutput{}) diff --git a/sdk/java/build.gradle b/sdk/java/build.gradle index 40dcc767..31646497 100644 --- a/sdk/java/build.gradle +++ b/sdk/java/build.gradle @@ -44,7 +44,7 @@ repositories { dependencies { implementation("com.google.code.findbugs:jsr305:3.0.2") implementation("com.google.code.gson:gson:2.8.9") - implementation("com.pulumi:pulumi:0.15.0") + implementation("com.pulumi:pulumi:0.16.1") } task sourcesJar(type: Jar) { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/App.java b/sdk/java/src/main/java/com/pulumi/digitalocean/App.java index f3449abe..b8da2b1f 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/App.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/App.java @@ -56,9 +56,8 @@ * .region("ams") * .services(AppSpecServiceArgs.builder() * .name("go-service") - * .environmentSlug("go") * .instanceCount(1) - * .instanceSizeSlug("professional-xs") + * .instanceSizeSlug("apps-s-1vcpu-1gb") * .git(AppSpecServiceGitArgs.builder() * .repoCloneUrl("https://github.com/digitalocean/sample-golang.git") * .branch("main") @@ -157,10 +156,9 @@ * .rule("DEPLOYMENT_FAILED") * .build()) * .services(AppSpecServiceArgs.builder() - * .name("api") - * .environmentSlug("go") + * .name("go-api") * .instanceCount(2) - * .instanceSizeSlug("professional-xs") + * .instanceSizeSlug("apps-s-1vcpu-1gb") * .github(AppSpecServiceGithubArgs.builder() * .branch("main") * .deployOnPush(true) @@ -228,6 +226,63 @@ * * <!--End PulumiCodeChooser --> * + * ### Log Destination Example with Opensearch + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.digitalocean.App;
+ * import com.pulumi.digitalocean.AppArgs;
+ * import com.pulumi.digitalocean.inputs.AppSpecArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var golang_sample = new App("golang-sample", AppArgs.builder()
+ *             .spec(AppSpecArgs.builder()
+ *                 .name("golang-sample")
+ *                 .region("ams")
+ *                 .services(AppSpecServiceArgs.builder()
+ *                     .name("go-service")
+ *                     .instanceCount(1)
+ *                     .instanceSizeSlug("apps-s-1vcpu-1gb")
+ *                     .git(AppSpecServiceGitArgs.builder()
+ *                         .repoCloneUrl("https://github.com/digitalocean/sample-golang.git")
+ *                         .branch("main")
+ *                         .build())
+ *                     .logDestinations(AppSpecServiceLogDestinationArgs.builder()
+ *                         .name("MyLogs")
+ *                         .openSearch(AppSpecServiceLogDestinationOpenSearchArgs.builder()
+ *                             .endpoint("https://something:1234")
+ *                             .basicAuth(AppSpecServiceLogDestinationOpenSearchBasicAuthArgs.builder()
+ *                                 .user("user")
+ *                                 .password("hi")
+ *                                 .build())
+ *                             .build())
+ *                         .build())
+ *                     .build())
+ *                 .build())
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * * ## Import * * An app can be imported using its `id`, e.g. @@ -309,6 +364,20 @@ public Output> dedicatedIps() { public Output defaultIngress() { return this.defaultIngress; } + /** + * The live domain of the app. + * + */ + @Export(name="liveDomain", refs={String.class}, tree="[0]") + private Output liveDomain; + + /** + * @return The live domain of the app. + * + */ + public Output liveDomain() { + return this.liveDomain; + } /** * The live URL of the app. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/DatabaseCluster.java b/sdk/java/src/main/java/com/pulumi/digitalocean/DatabaseCluster.java index 45623983..4c26558f 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/DatabaseCluster.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/DatabaseCluster.java @@ -218,6 +218,45 @@ * * <!--End PulumiCodeChooser --> * + * ### Create a new OpenSearch database cluster + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.digitalocean.DatabaseCluster;
+ * import com.pulumi.digitalocean.DatabaseClusterArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var opensearch_example = new DatabaseCluster("opensearch-example", DatabaseClusterArgs.builder()
+ *             .name("example-opensearch-cluster")
+ *             .engine("opensearch")
+ *             .version("2")
+ *             .size("db-s-1vcpu-2gb")
+ *             .region("nyc3")
+ *             .nodeCount(1)
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * * ## Create a new database cluster based on a backup of an existing cluster. * * <!--Start PulumiCodeChooser --> diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecAlertArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecAlertArgs.java index c2647835..6d981659 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecAlertArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecAlertArgs.java @@ -33,14 +33,14 @@ public Optional> disabled() { } /** - * The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + * The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. * */ @Import(name="rule", required=true) private Output rule; /** - * @return The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + * @return The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. * */ public Output rule() { @@ -94,7 +94,7 @@ public Builder disabled(Boolean disabled) { } /** - * @param rule The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + * @param rule The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. * * @return builder * @@ -105,7 +105,7 @@ public Builder rule(Output rule) { } /** - * @param rule The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + * @param rule The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecArgs.java index 1a793c0a..2af6f1ab 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecArgs.java @@ -29,14 +29,14 @@ public final class AppSpecArgs extends com.pulumi.resources.ResourceArgs { public static final AppSpecArgs Empty = new AppSpecArgs(); /** - * Describes an alert policy for the app. + * Describes an alert policy for the component. * */ @Import(name="alerts") private @Nullable Output> alerts; /** - * @return Describes an alert policy for the app. + * @return Describes an alert policy for the component. * */ public Optional>> alerts() { @@ -100,14 +100,14 @@ public Optional>> egresses() { } /** - * Describes an app-wide environment variable made available to all components. + * Describes an environment variable made available to an app competent. * */ @Import(name="envs") private @Nullable Output> envs; /** - * @return Describes an app-wide environment variable made available to all components. + * @return Describes an environment variable made available to an app competent. * */ public Optional>> envs() { @@ -159,14 +159,14 @@ public Optional>> jobs() { } /** - * The name of the app. Must be unique across all apps in the same account. + * The name of the component. * */ @Import(name="name", required=true) private Output name; /** - * @return The name of the app. Must be unique across all apps in the same account. + * @return The name of the component. * */ public Output name() { @@ -248,7 +248,7 @@ public Builder(AppSpecArgs defaults) { } /** - * @param alerts Describes an alert policy for the app. + * @param alerts Describes an alert policy for the component. * * @return builder * @@ -259,7 +259,7 @@ public Builder alerts(@Nullable Output> alerts) { } /** - * @param alerts Describes an alert policy for the app. + * @param alerts Describes an alert policy for the component. * * @return builder * @@ -269,7 +269,7 @@ public Builder alerts(List alerts) { } /** - * @param alerts Describes an alert policy for the app. + * @param alerts Describes an alert policy for the component. * * @return builder * @@ -391,7 +391,7 @@ public Builder egresses(AppSpecEgressArgs... egresses) { } /** - * @param envs Describes an app-wide environment variable made available to all components. + * @param envs Describes an environment variable made available to an app competent. * * @return builder * @@ -402,7 +402,7 @@ public Builder envs(@Nullable Output> envs) { } /** - * @param envs Describes an app-wide environment variable made available to all components. + * @param envs Describes an environment variable made available to an app competent. * * @return builder * @@ -412,7 +412,7 @@ public Builder envs(List envs) { } /** - * @param envs Describes an app-wide environment variable made available to all components. + * @param envs Describes an environment variable made available to an app competent. * * @return builder * @@ -500,7 +500,7 @@ public Builder jobs(AppSpecJobArgs... jobs) { } /** - * @param name The name of the app. Must be unique across all apps in the same account. + * @param name The name of the component. * * @return builder * @@ -511,7 +511,7 @@ public Builder name(Output name) { } /** - * @param name The name of the app. Must be unique across all apps in the same account. + * @param name The name of the component. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionArgs.java index bcf5ebc7..274fa4b1 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionArgs.java @@ -79,14 +79,14 @@ public Optional>> envs() { } /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ @Import(name="git") private @Nullable Output git; /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ public Optional> git() { @@ -316,7 +316,7 @@ public Builder envs(AppSpecFunctionEnvArgs... envs) { } /** - * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * * @return builder * @@ -327,7 +327,7 @@ public Builder git(@Nullable Output git) { } /** - * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationArgs.java index fe880e31..73323530 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationArgs.java @@ -7,6 +7,7 @@ import com.pulumi.core.annotations.Import; import com.pulumi.digitalocean.inputs.AppSpecFunctionLogDestinationDatadogArgs; import com.pulumi.digitalocean.inputs.AppSpecFunctionLogDestinationLogtailArgs; +import com.pulumi.digitalocean.inputs.AppSpecFunctionLogDestinationOpenSearchArgs; import com.pulumi.digitalocean.inputs.AppSpecFunctionLogDestinationPapertrailArgs; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -64,6 +65,21 @@ public Output name() { return this.name; } + /** + * OpenSearch configuration. + * + */ + @Import(name="openSearch") + private @Nullable Output openSearch; + + /** + * @return OpenSearch configuration. + * + */ + public Optional> openSearch() { + return Optional.ofNullable(this.openSearch); + } + /** * Papertrail configuration. * @@ -85,6 +101,7 @@ private AppSpecFunctionLogDestinationArgs(AppSpecFunctionLogDestinationArgs $) { this.datadog = $.datadog; this.logtail = $.logtail; this.name = $.name; + this.openSearch = $.openSearch; this.papertrail = $.papertrail; } @@ -169,6 +186,27 @@ public Builder name(String name) { return name(Output.of(name)); } + /** + * @param openSearch OpenSearch configuration. + * + * @return builder + * + */ + public Builder openSearch(@Nullable Output openSearch) { + $.openSearch = openSearch; + return this; + } + + /** + * @param openSearch OpenSearch configuration. + * + * @return builder + * + */ + public Builder openSearch(AppSpecFunctionLogDestinationOpenSearchArgs openSearch) { + return openSearch(Output.of(openSearch)); + } + /** * @param papertrail Papertrail configuration. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationLogtailArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationLogtailArgs.java index 0779717d..3dcd5e93 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationLogtailArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationLogtailArgs.java @@ -17,8 +17,6 @@ public final class AppSpecFunctionLogDestinationLogtailArgs extends com.pulumi.r /** * Logtail token. * - * A `database` can contain: - * */ @Import(name="token", required=true) private Output token; @@ -26,8 +24,6 @@ public final class AppSpecFunctionLogDestinationLogtailArgs extends com.pulumi.r /** * @return Logtail token. * - * A `database` can contain: - * */ public Output token() { return this.token; @@ -60,8 +56,6 @@ public Builder(AppSpecFunctionLogDestinationLogtailArgs defaults) { /** * @param token Logtail token. * - * A `database` can contain: - * * @return builder * */ @@ -73,8 +67,6 @@ public Builder token(Output token) { /** * @param token Logtail token. * - * A `database` can contain: - * * @return builder * */ diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationOpenSearchArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationOpenSearchArgs.java new file mode 100644 index 00000000..34048245 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationOpenSearchArgs.java @@ -0,0 +1,199 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.digitalocean.inputs.AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecFunctionLogDestinationOpenSearchArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecFunctionLogDestinationOpenSearchArgs Empty = new AppSpecFunctionLogDestinationOpenSearchArgs(); + + /** + * Basic authentication details. + * + */ + @Import(name="basicAuth", required=true) + private Output basicAuth; + + /** + * @return Basic authentication details. + * + */ + public Output basicAuth() { + return this.basicAuth; + } + + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + @Import(name="clusterName") + private @Nullable Output clusterName; + + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional> clusterName() { + return Optional.ofNullable(this.clusterName); + } + + /** + * OpenSearch endpoint. + * + */ + @Import(name="endpoint") + private @Nullable Output endpoint; + + /** + * @return OpenSearch endpoint. + * + */ + public Optional> endpoint() { + return Optional.ofNullable(this.endpoint); + } + + /** + * OpenSearch index name. + * + */ + @Import(name="indexName") + private @Nullable Output indexName; + + /** + * @return OpenSearch index name. + * + */ + public Optional> indexName() { + return Optional.ofNullable(this.indexName); + } + + private AppSpecFunctionLogDestinationOpenSearchArgs() {} + + private AppSpecFunctionLogDestinationOpenSearchArgs(AppSpecFunctionLogDestinationOpenSearchArgs $) { + this.basicAuth = $.basicAuth; + this.clusterName = $.clusterName; + this.endpoint = $.endpoint; + this.indexName = $.indexName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecFunctionLogDestinationOpenSearchArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecFunctionLogDestinationOpenSearchArgs $; + + public Builder() { + $ = new AppSpecFunctionLogDestinationOpenSearchArgs(); + } + + public Builder(AppSpecFunctionLogDestinationOpenSearchArgs defaults) { + $ = new AppSpecFunctionLogDestinationOpenSearchArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param basicAuth Basic authentication details. + * + * @return builder + * + */ + public Builder basicAuth(Output basicAuth) { + $.basicAuth = basicAuth; + return this; + } + + /** + * @param basicAuth Basic authentication details. + * + * @return builder + * + */ + public Builder basicAuth(AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs basicAuth) { + return basicAuth(Output.of(basicAuth)); + } + + /** + * @param clusterName The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + * @return builder + * + */ + public Builder clusterName(@Nullable Output clusterName) { + $.clusterName = clusterName; + return this; + } + + /** + * @param clusterName The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + * @return builder + * + */ + public Builder clusterName(String clusterName) { + return clusterName(Output.of(clusterName)); + } + + /** + * @param endpoint OpenSearch endpoint. + * + * @return builder + * + */ + public Builder endpoint(@Nullable Output endpoint) { + $.endpoint = endpoint; + return this; + } + + /** + * @param endpoint OpenSearch endpoint. + * + * @return builder + * + */ + public Builder endpoint(String endpoint) { + return endpoint(Output.of(endpoint)); + } + + /** + * @param indexName OpenSearch index name. + * + * @return builder + * + */ + public Builder indexName(@Nullable Output indexName) { + $.indexName = indexName; + return this; + } + + /** + * @param indexName OpenSearch index name. + * + * @return builder + * + */ + public Builder indexName(String indexName) { + return indexName(Output.of(indexName)); + } + + public AppSpecFunctionLogDestinationOpenSearchArgs build() { + if ($.basicAuth == null) { + throw new MissingRequiredPropertyException("AppSpecFunctionLogDestinationOpenSearchArgs", "basicAuth"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs.java new file mode 100644 index 00000000..fc3a30c2 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs.java @@ -0,0 +1,120 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs Empty = new AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs(); + + /** + * Password for basic authentication. + * + */ + @Import(name="password") + private @Nullable Output password; + + /** + * @return Password for basic authentication. + * + */ + public Optional> password() { + return Optional.ofNullable(this.password); + } + + /** + * user for basic authentication. + * + */ + @Import(name="user") + private @Nullable Output user; + + /** + * @return user for basic authentication. + * + */ + public Optional> user() { + return Optional.ofNullable(this.user); + } + + private AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs() {} + + private AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs(AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs $) { + this.password = $.password; + this.user = $.user; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs $; + + public Builder() { + $ = new AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs(); + } + + public Builder(AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs defaults) { + $ = new AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param password Password for basic authentication. + * + * @return builder + * + */ + public Builder password(@Nullable Output password) { + $.password = password; + return this; + } + + /** + * @param password Password for basic authentication. + * + * @return builder + * + */ + public Builder password(String password) { + return password(Output.of(password)); + } + + /** + * @param user user for basic authentication. + * + * @return builder + * + */ + public Builder user(@Nullable Output user) { + $.user = user; + return this; + } + + /** + * @param user user for basic authentication. + * + * @return builder + * + */ + public Builder user(String user) { + return user(Output.of(user)); + } + + public AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecIngressRuleCorsArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecIngressRuleCorsArgs.java index bc536af4..6a702624 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecIngressRuleCorsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecIngressRuleCorsArgs.java @@ -19,14 +19,14 @@ public final class AppSpecIngressRuleCorsArgs extends com.pulumi.resources.Resou public static final AppSpecIngressRuleCorsArgs Empty = new AppSpecIngressRuleCorsArgs(); /** - * Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + * Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. * */ @Import(name="allowCredentials") private @Nullable Output allowCredentials; /** - * @return Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + * @return Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. * */ public Optional> allowCredentials() { @@ -34,14 +34,14 @@ public Optional> allowCredentials() { } /** - * The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + * The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. * */ @Import(name="allowHeaders") private @Nullable Output> allowHeaders; /** - * @return The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + * @return The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. * */ public Optional>> allowHeaders() { @@ -49,14 +49,14 @@ public Optional>> allowHeaders() { } /** - * The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + * The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. * */ @Import(name="allowMethods") private @Nullable Output> allowMethods; /** - * @return The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + * @return The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. * */ public Optional>> allowMethods() { @@ -79,14 +79,14 @@ public Optional> allowOrigins() { } /** - * The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + * The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. * */ @Import(name="exposeHeaders") private @Nullable Output> exposeHeaders; /** - * @return The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + * @return The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. * */ public Optional>> exposeHeaders() { @@ -138,7 +138,7 @@ public Builder(AppSpecIngressRuleCorsArgs defaults) { } /** - * @param allowCredentials Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + * @param allowCredentials Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. * * @return builder * @@ -149,7 +149,7 @@ public Builder allowCredentials(@Nullable Output allowCredentials) { } /** - * @param allowCredentials Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + * @param allowCredentials Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. * * @return builder * @@ -159,7 +159,7 @@ public Builder allowCredentials(Boolean allowCredentials) { } /** - * @param allowHeaders The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + * @param allowHeaders The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. * * @return builder * @@ -170,7 +170,7 @@ public Builder allowHeaders(@Nullable Output> allowHeaders) { } /** - * @param allowHeaders The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + * @param allowHeaders The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. * * @return builder * @@ -180,7 +180,7 @@ public Builder allowHeaders(List allowHeaders) { } /** - * @param allowHeaders The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + * @param allowHeaders The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. * * @return builder * @@ -190,7 +190,7 @@ public Builder allowHeaders(String... allowHeaders) { } /** - * @param allowMethods The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + * @param allowMethods The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. * * @return builder * @@ -201,7 +201,7 @@ public Builder allowMethods(@Nullable Output> allowMethods) { } /** - * @param allowMethods The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + * @param allowMethods The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. * * @return builder * @@ -211,7 +211,7 @@ public Builder allowMethods(List allowMethods) { } /** - * @param allowMethods The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + * @param allowMethods The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. * * @return builder * @@ -242,7 +242,7 @@ public Builder allowOrigins(AppSpecIngressRuleCorsAllowOriginsArgs allowOrigins) } /** - * @param exposeHeaders The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + * @param exposeHeaders The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. * * @return builder * @@ -253,7 +253,7 @@ public Builder exposeHeaders(@Nullable Output> exposeHeaders) { } /** - * @param exposeHeaders The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + * @param exposeHeaders The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. * * @return builder * @@ -263,7 +263,7 @@ public Builder exposeHeaders(List exposeHeaders) { } /** - * @param exposeHeaders The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + * @param exposeHeaders The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobArgs.java index 76a2cb3e..2473a684 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobArgs.java @@ -101,14 +101,14 @@ public Optional>> envs() { } /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ @Import(name="git") private @Nullable Output git; /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ public Optional> git() { @@ -438,7 +438,7 @@ public Builder envs(AppSpecJobEnvArgs... envs) { } /** - * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * * @return builder * @@ -449,7 +449,7 @@ public Builder git(@Nullable Output git) { } /** - * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationArgs.java index 645de50d..756cb530 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationArgs.java @@ -7,6 +7,7 @@ import com.pulumi.core.annotations.Import; import com.pulumi.digitalocean.inputs.AppSpecJobLogDestinationDatadogArgs; import com.pulumi.digitalocean.inputs.AppSpecJobLogDestinationLogtailArgs; +import com.pulumi.digitalocean.inputs.AppSpecJobLogDestinationOpenSearchArgs; import com.pulumi.digitalocean.inputs.AppSpecJobLogDestinationPapertrailArgs; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -64,6 +65,21 @@ public Output name() { return this.name; } + /** + * OpenSearch configuration. + * + */ + @Import(name="openSearch") + private @Nullable Output openSearch; + + /** + * @return OpenSearch configuration. + * + */ + public Optional> openSearch() { + return Optional.ofNullable(this.openSearch); + } + /** * Papertrail configuration. * @@ -85,6 +101,7 @@ private AppSpecJobLogDestinationArgs(AppSpecJobLogDestinationArgs $) { this.datadog = $.datadog; this.logtail = $.logtail; this.name = $.name; + this.openSearch = $.openSearch; this.papertrail = $.papertrail; } @@ -169,6 +186,27 @@ public Builder name(String name) { return name(Output.of(name)); } + /** + * @param openSearch OpenSearch configuration. + * + * @return builder + * + */ + public Builder openSearch(@Nullable Output openSearch) { + $.openSearch = openSearch; + return this; + } + + /** + * @param openSearch OpenSearch configuration. + * + * @return builder + * + */ + public Builder openSearch(AppSpecJobLogDestinationOpenSearchArgs openSearch) { + return openSearch(Output.of(openSearch)); + } + /** * @param papertrail Papertrail configuration. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationLogtailArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationLogtailArgs.java index 5148721a..394eb608 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationLogtailArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationLogtailArgs.java @@ -17,8 +17,6 @@ public final class AppSpecJobLogDestinationLogtailArgs extends com.pulumi.resour /** * Logtail token. * - * A `database` can contain: - * */ @Import(name="token", required=true) private Output token; @@ -26,8 +24,6 @@ public final class AppSpecJobLogDestinationLogtailArgs extends com.pulumi.resour /** * @return Logtail token. * - * A `database` can contain: - * */ public Output token() { return this.token; @@ -60,8 +56,6 @@ public Builder(AppSpecJobLogDestinationLogtailArgs defaults) { /** * @param token Logtail token. * - * A `database` can contain: - * * @return builder * */ @@ -73,8 +67,6 @@ public Builder token(Output token) { /** * @param token Logtail token. * - * A `database` can contain: - * * @return builder * */ diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationOpenSearchArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationOpenSearchArgs.java new file mode 100644 index 00000000..96c071ee --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationOpenSearchArgs.java @@ -0,0 +1,199 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.digitalocean.inputs.AppSpecJobLogDestinationOpenSearchBasicAuthArgs; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecJobLogDestinationOpenSearchArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecJobLogDestinationOpenSearchArgs Empty = new AppSpecJobLogDestinationOpenSearchArgs(); + + /** + * Basic authentication details. + * + */ + @Import(name="basicAuth", required=true) + private Output basicAuth; + + /** + * @return Basic authentication details. + * + */ + public Output basicAuth() { + return this.basicAuth; + } + + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + @Import(name="clusterName") + private @Nullable Output clusterName; + + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional> clusterName() { + return Optional.ofNullable(this.clusterName); + } + + /** + * OpenSearch endpoint. + * + */ + @Import(name="endpoint") + private @Nullable Output endpoint; + + /** + * @return OpenSearch endpoint. + * + */ + public Optional> endpoint() { + return Optional.ofNullable(this.endpoint); + } + + /** + * OpenSearch index name. + * + */ + @Import(name="indexName") + private @Nullable Output indexName; + + /** + * @return OpenSearch index name. + * + */ + public Optional> indexName() { + return Optional.ofNullable(this.indexName); + } + + private AppSpecJobLogDestinationOpenSearchArgs() {} + + private AppSpecJobLogDestinationOpenSearchArgs(AppSpecJobLogDestinationOpenSearchArgs $) { + this.basicAuth = $.basicAuth; + this.clusterName = $.clusterName; + this.endpoint = $.endpoint; + this.indexName = $.indexName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecJobLogDestinationOpenSearchArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecJobLogDestinationOpenSearchArgs $; + + public Builder() { + $ = new AppSpecJobLogDestinationOpenSearchArgs(); + } + + public Builder(AppSpecJobLogDestinationOpenSearchArgs defaults) { + $ = new AppSpecJobLogDestinationOpenSearchArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param basicAuth Basic authentication details. + * + * @return builder + * + */ + public Builder basicAuth(Output basicAuth) { + $.basicAuth = basicAuth; + return this; + } + + /** + * @param basicAuth Basic authentication details. + * + * @return builder + * + */ + public Builder basicAuth(AppSpecJobLogDestinationOpenSearchBasicAuthArgs basicAuth) { + return basicAuth(Output.of(basicAuth)); + } + + /** + * @param clusterName The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + * @return builder + * + */ + public Builder clusterName(@Nullable Output clusterName) { + $.clusterName = clusterName; + return this; + } + + /** + * @param clusterName The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + * @return builder + * + */ + public Builder clusterName(String clusterName) { + return clusterName(Output.of(clusterName)); + } + + /** + * @param endpoint OpenSearch endpoint. + * + * @return builder + * + */ + public Builder endpoint(@Nullable Output endpoint) { + $.endpoint = endpoint; + return this; + } + + /** + * @param endpoint OpenSearch endpoint. + * + * @return builder + * + */ + public Builder endpoint(String endpoint) { + return endpoint(Output.of(endpoint)); + } + + /** + * @param indexName OpenSearch index name. + * + * @return builder + * + */ + public Builder indexName(@Nullable Output indexName) { + $.indexName = indexName; + return this; + } + + /** + * @param indexName OpenSearch index name. + * + * @return builder + * + */ + public Builder indexName(String indexName) { + return indexName(Output.of(indexName)); + } + + public AppSpecJobLogDestinationOpenSearchArgs build() { + if ($.basicAuth == null) { + throw new MissingRequiredPropertyException("AppSpecJobLogDestinationOpenSearchArgs", "basicAuth"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationOpenSearchBasicAuthArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationOpenSearchBasicAuthArgs.java new file mode 100644 index 00000000..91fd8601 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobLogDestinationOpenSearchBasicAuthArgs.java @@ -0,0 +1,120 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecJobLogDestinationOpenSearchBasicAuthArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecJobLogDestinationOpenSearchBasicAuthArgs Empty = new AppSpecJobLogDestinationOpenSearchBasicAuthArgs(); + + /** + * Password for basic authentication. + * + */ + @Import(name="password") + private @Nullable Output password; + + /** + * @return Password for basic authentication. + * + */ + public Optional> password() { + return Optional.ofNullable(this.password); + } + + /** + * user for basic authentication. + * + */ + @Import(name="user") + private @Nullable Output user; + + /** + * @return user for basic authentication. + * + */ + public Optional> user() { + return Optional.ofNullable(this.user); + } + + private AppSpecJobLogDestinationOpenSearchBasicAuthArgs() {} + + private AppSpecJobLogDestinationOpenSearchBasicAuthArgs(AppSpecJobLogDestinationOpenSearchBasicAuthArgs $) { + this.password = $.password; + this.user = $.user; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecJobLogDestinationOpenSearchBasicAuthArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecJobLogDestinationOpenSearchBasicAuthArgs $; + + public Builder() { + $ = new AppSpecJobLogDestinationOpenSearchBasicAuthArgs(); + } + + public Builder(AppSpecJobLogDestinationOpenSearchBasicAuthArgs defaults) { + $ = new AppSpecJobLogDestinationOpenSearchBasicAuthArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param password Password for basic authentication. + * + * @return builder + * + */ + public Builder password(@Nullable Output password) { + $.password = password; + return this; + } + + /** + * @param password Password for basic authentication. + * + * @return builder + * + */ + public Builder password(String password) { + return password(Output.of(password)); + } + + /** + * @param user user for basic authentication. + * + * @return builder + * + */ + public Builder user(@Nullable Output user) { + $.user = user; + return this; + } + + /** + * @param user user for basic authentication. + * + * @return builder + * + */ + public Builder user(String user) { + return user(Output.of(user)); + } + + public AppSpecJobLogDestinationOpenSearchBasicAuthArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceArgs.java index f41e0898..0b76ea65 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceArgs.java @@ -143,14 +143,14 @@ public Optional>> envs() { } /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ @Import(name="git") private @Nullable Output git; /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ public Optional> git() { @@ -580,7 +580,7 @@ public Builder envs(AppSpecServiceEnvArgs... envs) { } /** - * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * * @return builder * @@ -591,7 +591,7 @@ public Builder git(@Nullable Output git) { } /** - * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationArgs.java index b4306b98..9426abe8 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationArgs.java @@ -7,6 +7,7 @@ import com.pulumi.core.annotations.Import; import com.pulumi.digitalocean.inputs.AppSpecServiceLogDestinationDatadogArgs; import com.pulumi.digitalocean.inputs.AppSpecServiceLogDestinationLogtailArgs; +import com.pulumi.digitalocean.inputs.AppSpecServiceLogDestinationOpenSearchArgs; import com.pulumi.digitalocean.inputs.AppSpecServiceLogDestinationPapertrailArgs; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -64,6 +65,21 @@ public Output name() { return this.name; } + /** + * OpenSearch configuration. + * + */ + @Import(name="openSearch") + private @Nullable Output openSearch; + + /** + * @return OpenSearch configuration. + * + */ + public Optional> openSearch() { + return Optional.ofNullable(this.openSearch); + } + /** * Papertrail configuration. * @@ -85,6 +101,7 @@ private AppSpecServiceLogDestinationArgs(AppSpecServiceLogDestinationArgs $) { this.datadog = $.datadog; this.logtail = $.logtail; this.name = $.name; + this.openSearch = $.openSearch; this.papertrail = $.papertrail; } @@ -169,6 +186,27 @@ public Builder name(String name) { return name(Output.of(name)); } + /** + * @param openSearch OpenSearch configuration. + * + * @return builder + * + */ + public Builder openSearch(@Nullable Output openSearch) { + $.openSearch = openSearch; + return this; + } + + /** + * @param openSearch OpenSearch configuration. + * + * @return builder + * + */ + public Builder openSearch(AppSpecServiceLogDestinationOpenSearchArgs openSearch) { + return openSearch(Output.of(openSearch)); + } + /** * @param papertrail Papertrail configuration. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationLogtailArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationLogtailArgs.java index b0849e9c..4015f2ad 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationLogtailArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationLogtailArgs.java @@ -17,8 +17,6 @@ public final class AppSpecServiceLogDestinationLogtailArgs extends com.pulumi.re /** * Logtail token. * - * A `database` can contain: - * */ @Import(name="token", required=true) private Output token; @@ -26,8 +24,6 @@ public final class AppSpecServiceLogDestinationLogtailArgs extends com.pulumi.re /** * @return Logtail token. * - * A `database` can contain: - * */ public Output token() { return this.token; @@ -60,8 +56,6 @@ public Builder(AppSpecServiceLogDestinationLogtailArgs defaults) { /** * @param token Logtail token. * - * A `database` can contain: - * * @return builder * */ @@ -73,8 +67,6 @@ public Builder token(Output token) { /** * @param token Logtail token. * - * A `database` can contain: - * * @return builder * */ diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationOpenSearchArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationOpenSearchArgs.java new file mode 100644 index 00000000..6625061b --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationOpenSearchArgs.java @@ -0,0 +1,199 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.digitalocean.inputs.AppSpecServiceLogDestinationOpenSearchBasicAuthArgs; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecServiceLogDestinationOpenSearchArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecServiceLogDestinationOpenSearchArgs Empty = new AppSpecServiceLogDestinationOpenSearchArgs(); + + /** + * Basic authentication details. + * + */ + @Import(name="basicAuth", required=true) + private Output basicAuth; + + /** + * @return Basic authentication details. + * + */ + public Output basicAuth() { + return this.basicAuth; + } + + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + @Import(name="clusterName") + private @Nullable Output clusterName; + + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional> clusterName() { + return Optional.ofNullable(this.clusterName); + } + + /** + * OpenSearch endpoint. + * + */ + @Import(name="endpoint") + private @Nullable Output endpoint; + + /** + * @return OpenSearch endpoint. + * + */ + public Optional> endpoint() { + return Optional.ofNullable(this.endpoint); + } + + /** + * OpenSearch index name. + * + */ + @Import(name="indexName") + private @Nullable Output indexName; + + /** + * @return OpenSearch index name. + * + */ + public Optional> indexName() { + return Optional.ofNullable(this.indexName); + } + + private AppSpecServiceLogDestinationOpenSearchArgs() {} + + private AppSpecServiceLogDestinationOpenSearchArgs(AppSpecServiceLogDestinationOpenSearchArgs $) { + this.basicAuth = $.basicAuth; + this.clusterName = $.clusterName; + this.endpoint = $.endpoint; + this.indexName = $.indexName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecServiceLogDestinationOpenSearchArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecServiceLogDestinationOpenSearchArgs $; + + public Builder() { + $ = new AppSpecServiceLogDestinationOpenSearchArgs(); + } + + public Builder(AppSpecServiceLogDestinationOpenSearchArgs defaults) { + $ = new AppSpecServiceLogDestinationOpenSearchArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param basicAuth Basic authentication details. + * + * @return builder + * + */ + public Builder basicAuth(Output basicAuth) { + $.basicAuth = basicAuth; + return this; + } + + /** + * @param basicAuth Basic authentication details. + * + * @return builder + * + */ + public Builder basicAuth(AppSpecServiceLogDestinationOpenSearchBasicAuthArgs basicAuth) { + return basicAuth(Output.of(basicAuth)); + } + + /** + * @param clusterName The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + * @return builder + * + */ + public Builder clusterName(@Nullable Output clusterName) { + $.clusterName = clusterName; + return this; + } + + /** + * @param clusterName The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + * @return builder + * + */ + public Builder clusterName(String clusterName) { + return clusterName(Output.of(clusterName)); + } + + /** + * @param endpoint OpenSearch endpoint. + * + * @return builder + * + */ + public Builder endpoint(@Nullable Output endpoint) { + $.endpoint = endpoint; + return this; + } + + /** + * @param endpoint OpenSearch endpoint. + * + * @return builder + * + */ + public Builder endpoint(String endpoint) { + return endpoint(Output.of(endpoint)); + } + + /** + * @param indexName OpenSearch index name. + * + * @return builder + * + */ + public Builder indexName(@Nullable Output indexName) { + $.indexName = indexName; + return this; + } + + /** + * @param indexName OpenSearch index name. + * + * @return builder + * + */ + public Builder indexName(String indexName) { + return indexName(Output.of(indexName)); + } + + public AppSpecServiceLogDestinationOpenSearchArgs build() { + if ($.basicAuth == null) { + throw new MissingRequiredPropertyException("AppSpecServiceLogDestinationOpenSearchArgs", "basicAuth"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationOpenSearchBasicAuthArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationOpenSearchBasicAuthArgs.java new file mode 100644 index 00000000..c61cd83c --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceLogDestinationOpenSearchBasicAuthArgs.java @@ -0,0 +1,120 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecServiceLogDestinationOpenSearchBasicAuthArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecServiceLogDestinationOpenSearchBasicAuthArgs Empty = new AppSpecServiceLogDestinationOpenSearchBasicAuthArgs(); + + /** + * Password for basic authentication. + * + */ + @Import(name="password") + private @Nullable Output password; + + /** + * @return Password for basic authentication. + * + */ + public Optional> password() { + return Optional.ofNullable(this.password); + } + + /** + * user for basic authentication. + * + */ + @Import(name="user") + private @Nullable Output user; + + /** + * @return user for basic authentication. + * + */ + public Optional> user() { + return Optional.ofNullable(this.user); + } + + private AppSpecServiceLogDestinationOpenSearchBasicAuthArgs() {} + + private AppSpecServiceLogDestinationOpenSearchBasicAuthArgs(AppSpecServiceLogDestinationOpenSearchBasicAuthArgs $) { + this.password = $.password; + this.user = $.user; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecServiceLogDestinationOpenSearchBasicAuthArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecServiceLogDestinationOpenSearchBasicAuthArgs $; + + public Builder() { + $ = new AppSpecServiceLogDestinationOpenSearchBasicAuthArgs(); + } + + public Builder(AppSpecServiceLogDestinationOpenSearchBasicAuthArgs defaults) { + $ = new AppSpecServiceLogDestinationOpenSearchBasicAuthArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param password Password for basic authentication. + * + * @return builder + * + */ + public Builder password(@Nullable Output password) { + $.password = password; + return this; + } + + /** + * @param password Password for basic authentication. + * + * @return builder + * + */ + public Builder password(String password) { + return password(Output.of(password)); + } + + /** + * @param user user for basic authentication. + * + * @return builder + * + */ + public Builder user(@Nullable Output user) { + $.user = user; + return this; + } + + /** + * @param user user for basic authentication. + * + * @return builder + * + */ + public Builder user(String user) { + return user(Output.of(user)); + } + + public AppSpecServiceLogDestinationOpenSearchBasicAuthArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecStaticSiteArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecStaticSiteArgs.java index 324a1d90..679f235a 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecStaticSiteArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecStaticSiteArgs.java @@ -137,14 +137,14 @@ public Optional> errorDocument() { } /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ @Import(name="git") private @Nullable Output git; /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ public Optional> git() { @@ -468,7 +468,7 @@ public Builder errorDocument(String errorDocument) { } /** - * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * * @return builder * @@ -479,7 +479,7 @@ public Builder git(@Nullable Output git) { } /** - * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerArgs.java index 7ed1ad62..005df3fe 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerArgs.java @@ -101,14 +101,14 @@ public Optional>> envs() { } /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ @Import(name="git") private @Nullable Output git; /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ public Optional> git() { @@ -414,7 +414,7 @@ public Builder envs(AppSpecWorkerEnvArgs... envs) { } /** - * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * * @return builder * @@ -425,7 +425,7 @@ public Builder git(@Nullable Output git) { } /** - * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @param git A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationArgs.java index afffa403..384e7cf8 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationArgs.java @@ -7,6 +7,7 @@ import com.pulumi.core.annotations.Import; import com.pulumi.digitalocean.inputs.AppSpecWorkerLogDestinationDatadogArgs; import com.pulumi.digitalocean.inputs.AppSpecWorkerLogDestinationLogtailArgs; +import com.pulumi.digitalocean.inputs.AppSpecWorkerLogDestinationOpenSearchArgs; import com.pulumi.digitalocean.inputs.AppSpecWorkerLogDestinationPapertrailArgs; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -64,6 +65,21 @@ public Output name() { return this.name; } + /** + * OpenSearch configuration. + * + */ + @Import(name="openSearch") + private @Nullable Output openSearch; + + /** + * @return OpenSearch configuration. + * + */ + public Optional> openSearch() { + return Optional.ofNullable(this.openSearch); + } + /** * Papertrail configuration. * @@ -85,6 +101,7 @@ private AppSpecWorkerLogDestinationArgs(AppSpecWorkerLogDestinationArgs $) { this.datadog = $.datadog; this.logtail = $.logtail; this.name = $.name; + this.openSearch = $.openSearch; this.papertrail = $.papertrail; } @@ -169,6 +186,27 @@ public Builder name(String name) { return name(Output.of(name)); } + /** + * @param openSearch OpenSearch configuration. + * + * @return builder + * + */ + public Builder openSearch(@Nullable Output openSearch) { + $.openSearch = openSearch; + return this; + } + + /** + * @param openSearch OpenSearch configuration. + * + * @return builder + * + */ + public Builder openSearch(AppSpecWorkerLogDestinationOpenSearchArgs openSearch) { + return openSearch(Output.of(openSearch)); + } + /** * @param papertrail Papertrail configuration. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationLogtailArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationLogtailArgs.java index 0b10f62a..30e3e068 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationLogtailArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationLogtailArgs.java @@ -17,8 +17,6 @@ public final class AppSpecWorkerLogDestinationLogtailArgs extends com.pulumi.res /** * Logtail token. * - * A `database` can contain: - * */ @Import(name="token", required=true) private Output token; @@ -26,8 +24,6 @@ public final class AppSpecWorkerLogDestinationLogtailArgs extends com.pulumi.res /** * @return Logtail token. * - * A `database` can contain: - * */ public Output token() { return this.token; @@ -60,8 +56,6 @@ public Builder(AppSpecWorkerLogDestinationLogtailArgs defaults) { /** * @param token Logtail token. * - * A `database` can contain: - * * @return builder * */ @@ -73,8 +67,6 @@ public Builder token(Output token) { /** * @param token Logtail token. * - * A `database` can contain: - * * @return builder * */ diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationOpenSearchArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationOpenSearchArgs.java new file mode 100644 index 00000000..cd1fe794 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationOpenSearchArgs.java @@ -0,0 +1,199 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.digitalocean.inputs.AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecWorkerLogDestinationOpenSearchArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecWorkerLogDestinationOpenSearchArgs Empty = new AppSpecWorkerLogDestinationOpenSearchArgs(); + + /** + * Basic authentication details. + * + */ + @Import(name="basicAuth", required=true) + private Output basicAuth; + + /** + * @return Basic authentication details. + * + */ + public Output basicAuth() { + return this.basicAuth; + } + + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + @Import(name="clusterName") + private @Nullable Output clusterName; + + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional> clusterName() { + return Optional.ofNullable(this.clusterName); + } + + /** + * OpenSearch endpoint. + * + */ + @Import(name="endpoint") + private @Nullable Output endpoint; + + /** + * @return OpenSearch endpoint. + * + */ + public Optional> endpoint() { + return Optional.ofNullable(this.endpoint); + } + + /** + * OpenSearch index name. + * + */ + @Import(name="indexName") + private @Nullable Output indexName; + + /** + * @return OpenSearch index name. + * + */ + public Optional> indexName() { + return Optional.ofNullable(this.indexName); + } + + private AppSpecWorkerLogDestinationOpenSearchArgs() {} + + private AppSpecWorkerLogDestinationOpenSearchArgs(AppSpecWorkerLogDestinationOpenSearchArgs $) { + this.basicAuth = $.basicAuth; + this.clusterName = $.clusterName; + this.endpoint = $.endpoint; + this.indexName = $.indexName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecWorkerLogDestinationOpenSearchArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecWorkerLogDestinationOpenSearchArgs $; + + public Builder() { + $ = new AppSpecWorkerLogDestinationOpenSearchArgs(); + } + + public Builder(AppSpecWorkerLogDestinationOpenSearchArgs defaults) { + $ = new AppSpecWorkerLogDestinationOpenSearchArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param basicAuth Basic authentication details. + * + * @return builder + * + */ + public Builder basicAuth(Output basicAuth) { + $.basicAuth = basicAuth; + return this; + } + + /** + * @param basicAuth Basic authentication details. + * + * @return builder + * + */ + public Builder basicAuth(AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs basicAuth) { + return basicAuth(Output.of(basicAuth)); + } + + /** + * @param clusterName The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + * @return builder + * + */ + public Builder clusterName(@Nullable Output clusterName) { + $.clusterName = clusterName; + return this; + } + + /** + * @param clusterName The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + * @return builder + * + */ + public Builder clusterName(String clusterName) { + return clusterName(Output.of(clusterName)); + } + + /** + * @param endpoint OpenSearch endpoint. + * + * @return builder + * + */ + public Builder endpoint(@Nullable Output endpoint) { + $.endpoint = endpoint; + return this; + } + + /** + * @param endpoint OpenSearch endpoint. + * + * @return builder + * + */ + public Builder endpoint(String endpoint) { + return endpoint(Output.of(endpoint)); + } + + /** + * @param indexName OpenSearch index name. + * + * @return builder + * + */ + public Builder indexName(@Nullable Output indexName) { + $.indexName = indexName; + return this; + } + + /** + * @param indexName OpenSearch index name. + * + * @return builder + * + */ + public Builder indexName(String indexName) { + return indexName(Output.of(indexName)); + } + + public AppSpecWorkerLogDestinationOpenSearchArgs build() { + if ($.basicAuth == null) { + throw new MissingRequiredPropertyException("AppSpecWorkerLogDestinationOpenSearchArgs", "basicAuth"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs.java new file mode 100644 index 00000000..8874db66 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs.java @@ -0,0 +1,120 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs Empty = new AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs(); + + /** + * Password for basic authentication. + * + */ + @Import(name="password") + private @Nullable Output password; + + /** + * @return Password for basic authentication. + * + */ + public Optional> password() { + return Optional.ofNullable(this.password); + } + + /** + * user for basic authentication. + * + */ + @Import(name="user") + private @Nullable Output user; + + /** + * @return user for basic authentication. + * + */ + public Optional> user() { + return Optional.ofNullable(this.user); + } + + private AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs() {} + + private AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs(AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs $) { + this.password = $.password; + this.user = $.user; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs $; + + public Builder() { + $ = new AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs(); + } + + public Builder(AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs defaults) { + $ = new AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param password Password for basic authentication. + * + * @return builder + * + */ + public Builder password(@Nullable Output password) { + $.password = password; + return this; + } + + /** + * @param password Password for basic authentication. + * + * @return builder + * + */ + public Builder password(String password) { + return password(Output.of(password)); + } + + /** + * @param user user for basic authentication. + * + * @return builder + * + */ + public Builder user(@Nullable Output user) { + $.user = user; + return this; + } + + /** + * @param user user for basic authentication. + * + * @return builder + * + */ + public Builder user(String user) { + return user(Output.of(user)); + } + + public AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppState.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppState.java index 7a44636e..bcf82fad 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppState.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppState.java @@ -93,6 +93,21 @@ public Optional> defaultIngress() { return Optional.ofNullable(this.defaultIngress); } + /** + * The live domain of the app. + * + */ + @Import(name="liveDomain") + private @Nullable Output liveDomain; + + /** + * @return The live domain of the app. + * + */ + public Optional> liveDomain() { + return Optional.ofNullable(this.liveDomain); + } + /** * The live URL of the app. * @@ -169,6 +184,7 @@ private AppState(AppState $) { this.createdAt = $.createdAt; this.dedicatedIps = $.dedicatedIps; this.defaultIngress = $.defaultIngress; + this.liveDomain = $.liveDomain; this.liveUrl = $.liveUrl; this.projectId = $.projectId; this.spec = $.spec; @@ -308,6 +324,27 @@ public Builder defaultIngress(String defaultIngress) { return defaultIngress(Output.of(defaultIngress)); } + /** + * @param liveDomain The live domain of the app. + * + * @return builder + * + */ + public Builder liveDomain(@Nullable Output liveDomain) { + $.liveDomain = liveDomain; + return this; + } + + /** + * @param liveDomain The live domain of the app. + * + * @return builder + * + */ + public Builder liveDomain(String liveDomain) { + return liveDomain(Output.of(liveDomain)); + } + /** * @param liveUrl The live URL of the app. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/DatabasePostgresqlConfigTimescaledbArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/DatabasePostgresqlConfigTimescaledbArgs.java index e9d15cc7..712fec6c 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/DatabasePostgresqlConfigTimescaledbArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/DatabasePostgresqlConfigTimescaledbArgs.java @@ -15,25 +15,17 @@ public final class DatabasePostgresqlConfigTimescaledbArgs extends com.pulumi.re public static final DatabasePostgresqlConfigTimescaledbArgs Empty = new DatabasePostgresqlConfigTimescaledbArgs(); - /** - * TimescaleDB extension configuration values - * - */ - @Import(name="timescaledb") - private @Nullable Output timescaledb; - - /** - * @return TimescaleDB extension configuration values - * - */ - public Optional> timescaledb() { - return Optional.ofNullable(this.timescaledb); + @Import(name="maxBackgroundWorkers") + private @Nullable Output maxBackgroundWorkers; + + public Optional> maxBackgroundWorkers() { + return Optional.ofNullable(this.maxBackgroundWorkers); } private DatabasePostgresqlConfigTimescaledbArgs() {} private DatabasePostgresqlConfigTimescaledbArgs(DatabasePostgresqlConfigTimescaledbArgs $) { - this.timescaledb = $.timescaledb; + this.maxBackgroundWorkers = $.maxBackgroundWorkers; } public static Builder builder() { @@ -54,25 +46,13 @@ public Builder(DatabasePostgresqlConfigTimescaledbArgs defaults) { $ = new DatabasePostgresqlConfigTimescaledbArgs(Objects.requireNonNull(defaults)); } - /** - * @param timescaledb TimescaleDB extension configuration values - * - * @return builder - * - */ - public Builder timescaledb(@Nullable Output timescaledb) { - $.timescaledb = timescaledb; + public Builder maxBackgroundWorkers(@Nullable Output maxBackgroundWorkers) { + $.maxBackgroundWorkers = maxBackgroundWorkers; return this; } - /** - * @param timescaledb TimescaleDB extension configuration values - * - * @return builder - * - */ - public Builder timescaledb(Integer timescaledb) { - return timescaledb(Output.of(timescaledb)); + public Builder maxBackgroundWorkers(Integer maxBackgroundWorkers) { + return maxBackgroundWorkers(Output.of(maxBackgroundWorkers)); } public DatabasePostgresqlConfigTimescaledbArgs build() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpec.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpec.java index 0465cb90..bf5ed13e 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpec.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpec.java @@ -25,7 +25,7 @@ @CustomType public final class AppSpec { /** - * @return Describes an alert policy for the app. + * @return Describes an alert policy for the component. * */ private @Nullable List alerts; @@ -48,7 +48,7 @@ public final class AppSpec { */ private @Nullable List egresses; /** - * @return Describes an app-wide environment variable made available to all components. + * @return Describes an environment variable made available to an app competent. * */ private @Nullable List envs; @@ -65,7 +65,7 @@ public final class AppSpec { private @Nullable AppSpecIngress ingress; private @Nullable List jobs; /** - * @return The name of the app. Must be unique across all apps in the same account. + * @return The name of the component. * */ private String name; @@ -80,7 +80,7 @@ public final class AppSpec { private AppSpec() {} /** - * @return Describes an alert policy for the app. + * @return Describes an alert policy for the component. * */ public List alerts() { @@ -113,7 +113,7 @@ public List egresses() { return this.egresses == null ? List.of() : this.egresses; } /** - * @return Describes an app-wide environment variable made available to all components. + * @return Describes an environment variable made available to an app competent. * */ public List envs() { @@ -140,7 +140,7 @@ public List jobs() { return this.jobs == null ? List.of() : this.jobs; } /** - * @return The name of the app. Must be unique across all apps in the same account. + * @return The name of the component. * */ public String name() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecAlert.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecAlert.java index 808c7699..25be814f 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecAlert.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecAlert.java @@ -19,7 +19,7 @@ public final class AppSpecAlert { */ private @Nullable Boolean disabled; /** - * @return The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + * @return The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. * */ private String rule; @@ -33,7 +33,7 @@ public Optional disabled() { return Optional.ofNullable(this.disabled); } /** - * @return The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + * @return The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. * */ public String rule() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunction.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunction.java index 648ca5db..f353d52b 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunction.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunction.java @@ -41,7 +41,7 @@ public final class AppSpecFunction { */ private @Nullable List envs; /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ private @Nullable AppSpecFunctionGit git; @@ -107,7 +107,7 @@ public List envs() { return this.envs == null ? List.of() : this.envs; } /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ public Optional git() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestination.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestination.java index 1778299f..68e9e59c 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestination.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestination.java @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.AppSpecFunctionLogDestinationDatadog; import com.pulumi.digitalocean.outputs.AppSpecFunctionLogDestinationLogtail; +import com.pulumi.digitalocean.outputs.AppSpecFunctionLogDestinationOpenSearch; import com.pulumi.digitalocean.outputs.AppSpecFunctionLogDestinationPapertrail; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -30,6 +31,11 @@ public final class AppSpecFunctionLogDestination { * */ private String name; + /** + * @return OpenSearch configuration. + * + */ + private @Nullable AppSpecFunctionLogDestinationOpenSearch openSearch; /** * @return Papertrail configuration. * @@ -58,6 +64,13 @@ public Optional logtail() { public String name() { return this.name; } + /** + * @return OpenSearch configuration. + * + */ + public Optional openSearch() { + return Optional.ofNullable(this.openSearch); + } /** * @return Papertrail configuration. * @@ -78,6 +91,7 @@ public static final class Builder { private @Nullable AppSpecFunctionLogDestinationDatadog datadog; private @Nullable AppSpecFunctionLogDestinationLogtail logtail; private String name; + private @Nullable AppSpecFunctionLogDestinationOpenSearch openSearch; private @Nullable AppSpecFunctionLogDestinationPapertrail papertrail; public Builder() {} public Builder(AppSpecFunctionLogDestination defaults) { @@ -85,6 +99,7 @@ public Builder(AppSpecFunctionLogDestination defaults) { this.datadog = defaults.datadog; this.logtail = defaults.logtail; this.name = defaults.name; + this.openSearch = defaults.openSearch; this.papertrail = defaults.papertrail; } @@ -109,6 +124,12 @@ public Builder name(String name) { return this; } @CustomType.Setter + public Builder openSearch(@Nullable AppSpecFunctionLogDestinationOpenSearch openSearch) { + + this.openSearch = openSearch; + return this; + } + @CustomType.Setter public Builder papertrail(@Nullable AppSpecFunctionLogDestinationPapertrail papertrail) { this.papertrail = papertrail; @@ -119,6 +140,7 @@ public AppSpecFunctionLogDestination build() { _resultValue.datadog = datadog; _resultValue.logtail = logtail; _resultValue.name = name; + _resultValue.openSearch = openSearch; _resultValue.papertrail = papertrail; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestinationLogtail.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestinationLogtail.java index afa0e172..acae53da 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestinationLogtail.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestinationLogtail.java @@ -13,8 +13,6 @@ public final class AppSpecFunctionLogDestinationLogtail { /** * @return Logtail token. * - * A `database` can contain: - * */ private String token; @@ -22,8 +20,6 @@ private AppSpecFunctionLogDestinationLogtail() {} /** * @return Logtail token. * - * A `database` can contain: - * */ public String token() { return this.token; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestinationOpenSearch.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestinationOpenSearch.java new file mode 100644 index 00000000..2907651d --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestinationOpenSearch.java @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.digitalocean.outputs.AppSpecFunctionLogDestinationOpenSearchBasicAuth; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecFunctionLogDestinationOpenSearch { + /** + * @return Basic authentication details. + * + */ + private AppSpecFunctionLogDestinationOpenSearchBasicAuth basicAuth; + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + private @Nullable String clusterName; + /** + * @return OpenSearch endpoint. + * + */ + private @Nullable String endpoint; + /** + * @return OpenSearch index name. + * + */ + private @Nullable String indexName; + + private AppSpecFunctionLogDestinationOpenSearch() {} + /** + * @return Basic authentication details. + * + */ + public AppSpecFunctionLogDestinationOpenSearchBasicAuth basicAuth() { + return this.basicAuth; + } + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional clusterName() { + return Optional.ofNullable(this.clusterName); + } + /** + * @return OpenSearch endpoint. + * + */ + public Optional endpoint() { + return Optional.ofNullable(this.endpoint); + } + /** + * @return OpenSearch index name. + * + */ + public Optional indexName() { + return Optional.ofNullable(this.indexName); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecFunctionLogDestinationOpenSearch defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private AppSpecFunctionLogDestinationOpenSearchBasicAuth basicAuth; + private @Nullable String clusterName; + private @Nullable String endpoint; + private @Nullable String indexName; + public Builder() {} + public Builder(AppSpecFunctionLogDestinationOpenSearch defaults) { + Objects.requireNonNull(defaults); + this.basicAuth = defaults.basicAuth; + this.clusterName = defaults.clusterName; + this.endpoint = defaults.endpoint; + this.indexName = defaults.indexName; + } + + @CustomType.Setter + public Builder basicAuth(AppSpecFunctionLogDestinationOpenSearchBasicAuth basicAuth) { + if (basicAuth == null) { + throw new MissingRequiredPropertyException("AppSpecFunctionLogDestinationOpenSearch", "basicAuth"); + } + this.basicAuth = basicAuth; + return this; + } + @CustomType.Setter + public Builder clusterName(@Nullable String clusterName) { + + this.clusterName = clusterName; + return this; + } + @CustomType.Setter + public Builder endpoint(@Nullable String endpoint) { + + this.endpoint = endpoint; + return this; + } + @CustomType.Setter + public Builder indexName(@Nullable String indexName) { + + this.indexName = indexName; + return this; + } + public AppSpecFunctionLogDestinationOpenSearch build() { + final var _resultValue = new AppSpecFunctionLogDestinationOpenSearch(); + _resultValue.basicAuth = basicAuth; + _resultValue.clusterName = clusterName; + _resultValue.endpoint = endpoint; + _resultValue.indexName = indexName; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestinationOpenSearchBasicAuth.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestinationOpenSearchBasicAuth.java new file mode 100644 index 00000000..db0653bd --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionLogDestinationOpenSearchBasicAuth.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecFunctionLogDestinationOpenSearchBasicAuth { + /** + * @return Password for basic authentication. + * + */ + private @Nullable String password; + /** + * @return user for basic authentication. + * + */ + private @Nullable String user; + + private AppSpecFunctionLogDestinationOpenSearchBasicAuth() {} + /** + * @return Password for basic authentication. + * + */ + public Optional password() { + return Optional.ofNullable(this.password); + } + /** + * @return user for basic authentication. + * + */ + public Optional user() { + return Optional.ofNullable(this.user); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecFunctionLogDestinationOpenSearchBasicAuth defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String password; + private @Nullable String user; + public Builder() {} + public Builder(AppSpecFunctionLogDestinationOpenSearchBasicAuth defaults) { + Objects.requireNonNull(defaults); + this.password = defaults.password; + this.user = defaults.user; + } + + @CustomType.Setter + public Builder password(@Nullable String password) { + + this.password = password; + return this; + } + @CustomType.Setter + public Builder user(@Nullable String user) { + + this.user = user; + return this; + } + public AppSpecFunctionLogDestinationOpenSearchBasicAuth build() { + final var _resultValue = new AppSpecFunctionLogDestinationOpenSearchBasicAuth(); + _resultValue.password = password; + _resultValue.user = user; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecIngressRuleCors.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecIngressRuleCors.java index b156169a..ec51b13f 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecIngressRuleCors.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecIngressRuleCors.java @@ -15,17 +15,17 @@ @CustomType public final class AppSpecIngressRuleCors { /** - * @return Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + * @return Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. * */ private @Nullable Boolean allowCredentials; /** - * @return The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + * @return The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. * */ private @Nullable List allowHeaders; /** - * @return The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + * @return The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. * */ private @Nullable List allowMethods; @@ -35,7 +35,7 @@ public final class AppSpecIngressRuleCors { */ private @Nullable AppSpecIngressRuleCorsAllowOrigins allowOrigins; /** - * @return The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + * @return The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. * */ private @Nullable List exposeHeaders; @@ -47,21 +47,21 @@ public final class AppSpecIngressRuleCors { private AppSpecIngressRuleCors() {} /** - * @return Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + * @return Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. * */ public Optional allowCredentials() { return Optional.ofNullable(this.allowCredentials); } /** - * @return The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + * @return The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. * */ public List allowHeaders() { return this.allowHeaders == null ? List.of() : this.allowHeaders; } /** - * @return The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + * @return The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. * */ public List allowMethods() { @@ -75,7 +75,7 @@ public Optional allowOrigins() { return Optional.ofNullable(this.allowOrigins); } /** - * @return The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + * @return The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. * */ public List exposeHeaders() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJob.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJob.java index 0a63069a..9b4010e7 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJob.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJob.java @@ -47,7 +47,7 @@ public final class AppSpecJob { */ private @Nullable List envs; /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ private @Nullable AppSpecJobGit git; @@ -143,7 +143,7 @@ public List envs() { return this.envs == null ? List.of() : this.envs; } /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ public Optional git() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestination.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestination.java index 27dcbddd..df847973 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestination.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestination.java @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.AppSpecJobLogDestinationDatadog; import com.pulumi.digitalocean.outputs.AppSpecJobLogDestinationLogtail; +import com.pulumi.digitalocean.outputs.AppSpecJobLogDestinationOpenSearch; import com.pulumi.digitalocean.outputs.AppSpecJobLogDestinationPapertrail; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -30,6 +31,11 @@ public final class AppSpecJobLogDestination { * */ private String name; + /** + * @return OpenSearch configuration. + * + */ + private @Nullable AppSpecJobLogDestinationOpenSearch openSearch; /** * @return Papertrail configuration. * @@ -58,6 +64,13 @@ public Optional logtail() { public String name() { return this.name; } + /** + * @return OpenSearch configuration. + * + */ + public Optional openSearch() { + return Optional.ofNullable(this.openSearch); + } /** * @return Papertrail configuration. * @@ -78,6 +91,7 @@ public static final class Builder { private @Nullable AppSpecJobLogDestinationDatadog datadog; private @Nullable AppSpecJobLogDestinationLogtail logtail; private String name; + private @Nullable AppSpecJobLogDestinationOpenSearch openSearch; private @Nullable AppSpecJobLogDestinationPapertrail papertrail; public Builder() {} public Builder(AppSpecJobLogDestination defaults) { @@ -85,6 +99,7 @@ public Builder(AppSpecJobLogDestination defaults) { this.datadog = defaults.datadog; this.logtail = defaults.logtail; this.name = defaults.name; + this.openSearch = defaults.openSearch; this.papertrail = defaults.papertrail; } @@ -109,6 +124,12 @@ public Builder name(String name) { return this; } @CustomType.Setter + public Builder openSearch(@Nullable AppSpecJobLogDestinationOpenSearch openSearch) { + + this.openSearch = openSearch; + return this; + } + @CustomType.Setter public Builder papertrail(@Nullable AppSpecJobLogDestinationPapertrail papertrail) { this.papertrail = papertrail; @@ -119,6 +140,7 @@ public AppSpecJobLogDestination build() { _resultValue.datadog = datadog; _resultValue.logtail = logtail; _resultValue.name = name; + _resultValue.openSearch = openSearch; _resultValue.papertrail = papertrail; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestinationLogtail.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestinationLogtail.java index 7ecb4e25..f8d684e0 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestinationLogtail.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestinationLogtail.java @@ -13,8 +13,6 @@ public final class AppSpecJobLogDestinationLogtail { /** * @return Logtail token. * - * A `database` can contain: - * */ private String token; @@ -22,8 +20,6 @@ private AppSpecJobLogDestinationLogtail() {} /** * @return Logtail token. * - * A `database` can contain: - * */ public String token() { return this.token; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestinationOpenSearch.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestinationOpenSearch.java new file mode 100644 index 00000000..94e206ef --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestinationOpenSearch.java @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.digitalocean.outputs.AppSpecJobLogDestinationOpenSearchBasicAuth; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecJobLogDestinationOpenSearch { + /** + * @return Basic authentication details. + * + */ + private AppSpecJobLogDestinationOpenSearchBasicAuth basicAuth; + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + private @Nullable String clusterName; + /** + * @return OpenSearch endpoint. + * + */ + private @Nullable String endpoint; + /** + * @return OpenSearch index name. + * + */ + private @Nullable String indexName; + + private AppSpecJobLogDestinationOpenSearch() {} + /** + * @return Basic authentication details. + * + */ + public AppSpecJobLogDestinationOpenSearchBasicAuth basicAuth() { + return this.basicAuth; + } + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional clusterName() { + return Optional.ofNullable(this.clusterName); + } + /** + * @return OpenSearch endpoint. + * + */ + public Optional endpoint() { + return Optional.ofNullable(this.endpoint); + } + /** + * @return OpenSearch index name. + * + */ + public Optional indexName() { + return Optional.ofNullable(this.indexName); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecJobLogDestinationOpenSearch defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private AppSpecJobLogDestinationOpenSearchBasicAuth basicAuth; + private @Nullable String clusterName; + private @Nullable String endpoint; + private @Nullable String indexName; + public Builder() {} + public Builder(AppSpecJobLogDestinationOpenSearch defaults) { + Objects.requireNonNull(defaults); + this.basicAuth = defaults.basicAuth; + this.clusterName = defaults.clusterName; + this.endpoint = defaults.endpoint; + this.indexName = defaults.indexName; + } + + @CustomType.Setter + public Builder basicAuth(AppSpecJobLogDestinationOpenSearchBasicAuth basicAuth) { + if (basicAuth == null) { + throw new MissingRequiredPropertyException("AppSpecJobLogDestinationOpenSearch", "basicAuth"); + } + this.basicAuth = basicAuth; + return this; + } + @CustomType.Setter + public Builder clusterName(@Nullable String clusterName) { + + this.clusterName = clusterName; + return this; + } + @CustomType.Setter + public Builder endpoint(@Nullable String endpoint) { + + this.endpoint = endpoint; + return this; + } + @CustomType.Setter + public Builder indexName(@Nullable String indexName) { + + this.indexName = indexName; + return this; + } + public AppSpecJobLogDestinationOpenSearch build() { + final var _resultValue = new AppSpecJobLogDestinationOpenSearch(); + _resultValue.basicAuth = basicAuth; + _resultValue.clusterName = clusterName; + _resultValue.endpoint = endpoint; + _resultValue.indexName = indexName; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestinationOpenSearchBasicAuth.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestinationOpenSearchBasicAuth.java new file mode 100644 index 00000000..ee3fcf1d --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobLogDestinationOpenSearchBasicAuth.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecJobLogDestinationOpenSearchBasicAuth { + /** + * @return Password for basic authentication. + * + */ + private @Nullable String password; + /** + * @return user for basic authentication. + * + */ + private @Nullable String user; + + private AppSpecJobLogDestinationOpenSearchBasicAuth() {} + /** + * @return Password for basic authentication. + * + */ + public Optional password() { + return Optional.ofNullable(this.password); + } + /** + * @return user for basic authentication. + * + */ + public Optional user() { + return Optional.ofNullable(this.user); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecJobLogDestinationOpenSearchBasicAuth defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String password; + private @Nullable String user; + public Builder() {} + public Builder(AppSpecJobLogDestinationOpenSearchBasicAuth defaults) { + Objects.requireNonNull(defaults); + this.password = defaults.password; + this.user = defaults.user; + } + + @CustomType.Setter + public Builder password(@Nullable String password) { + + this.password = password; + return this; + } + @CustomType.Setter + public Builder user(@Nullable String user) { + + this.user = user; + return this; + } + public AppSpecJobLogDestinationOpenSearchBasicAuth build() { + final var _resultValue = new AppSpecJobLogDestinationOpenSearchBasicAuth(); + _resultValue.password = password; + _resultValue.user = user; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecService.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecService.java index 0eb54d05..2b8927a7 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecService.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecService.java @@ -65,7 +65,7 @@ public final class AppSpecService { */ private @Nullable List envs; /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ private @Nullable AppSpecServiceGit git; @@ -194,7 +194,7 @@ public List envs() { return this.envs == null ? List.of() : this.envs; } /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ public Optional git() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestination.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestination.java index 9ace7488..c2a2f6d9 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestination.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestination.java @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.AppSpecServiceLogDestinationDatadog; import com.pulumi.digitalocean.outputs.AppSpecServiceLogDestinationLogtail; +import com.pulumi.digitalocean.outputs.AppSpecServiceLogDestinationOpenSearch; import com.pulumi.digitalocean.outputs.AppSpecServiceLogDestinationPapertrail; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -30,6 +31,11 @@ public final class AppSpecServiceLogDestination { * */ private String name; + /** + * @return OpenSearch configuration. + * + */ + private @Nullable AppSpecServiceLogDestinationOpenSearch openSearch; /** * @return Papertrail configuration. * @@ -58,6 +64,13 @@ public Optional logtail() { public String name() { return this.name; } + /** + * @return OpenSearch configuration. + * + */ + public Optional openSearch() { + return Optional.ofNullable(this.openSearch); + } /** * @return Papertrail configuration. * @@ -78,6 +91,7 @@ public static final class Builder { private @Nullable AppSpecServiceLogDestinationDatadog datadog; private @Nullable AppSpecServiceLogDestinationLogtail logtail; private String name; + private @Nullable AppSpecServiceLogDestinationOpenSearch openSearch; private @Nullable AppSpecServiceLogDestinationPapertrail papertrail; public Builder() {} public Builder(AppSpecServiceLogDestination defaults) { @@ -85,6 +99,7 @@ public Builder(AppSpecServiceLogDestination defaults) { this.datadog = defaults.datadog; this.logtail = defaults.logtail; this.name = defaults.name; + this.openSearch = defaults.openSearch; this.papertrail = defaults.papertrail; } @@ -109,6 +124,12 @@ public Builder name(String name) { return this; } @CustomType.Setter + public Builder openSearch(@Nullable AppSpecServiceLogDestinationOpenSearch openSearch) { + + this.openSearch = openSearch; + return this; + } + @CustomType.Setter public Builder papertrail(@Nullable AppSpecServiceLogDestinationPapertrail papertrail) { this.papertrail = papertrail; @@ -119,6 +140,7 @@ public AppSpecServiceLogDestination build() { _resultValue.datadog = datadog; _resultValue.logtail = logtail; _resultValue.name = name; + _resultValue.openSearch = openSearch; _resultValue.papertrail = papertrail; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestinationLogtail.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestinationLogtail.java index 03fe7080..86ed6193 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestinationLogtail.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestinationLogtail.java @@ -13,8 +13,6 @@ public final class AppSpecServiceLogDestinationLogtail { /** * @return Logtail token. * - * A `database` can contain: - * */ private String token; @@ -22,8 +20,6 @@ private AppSpecServiceLogDestinationLogtail() {} /** * @return Logtail token. * - * A `database` can contain: - * */ public String token() { return this.token; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestinationOpenSearch.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestinationOpenSearch.java new file mode 100644 index 00000000..f8463ffd --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestinationOpenSearch.java @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.digitalocean.outputs.AppSpecServiceLogDestinationOpenSearchBasicAuth; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecServiceLogDestinationOpenSearch { + /** + * @return Basic authentication details. + * + */ + private AppSpecServiceLogDestinationOpenSearchBasicAuth basicAuth; + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + private @Nullable String clusterName; + /** + * @return OpenSearch endpoint. + * + */ + private @Nullable String endpoint; + /** + * @return OpenSearch index name. + * + */ + private @Nullable String indexName; + + private AppSpecServiceLogDestinationOpenSearch() {} + /** + * @return Basic authentication details. + * + */ + public AppSpecServiceLogDestinationOpenSearchBasicAuth basicAuth() { + return this.basicAuth; + } + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional clusterName() { + return Optional.ofNullable(this.clusterName); + } + /** + * @return OpenSearch endpoint. + * + */ + public Optional endpoint() { + return Optional.ofNullable(this.endpoint); + } + /** + * @return OpenSearch index name. + * + */ + public Optional indexName() { + return Optional.ofNullable(this.indexName); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecServiceLogDestinationOpenSearch defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private AppSpecServiceLogDestinationOpenSearchBasicAuth basicAuth; + private @Nullable String clusterName; + private @Nullable String endpoint; + private @Nullable String indexName; + public Builder() {} + public Builder(AppSpecServiceLogDestinationOpenSearch defaults) { + Objects.requireNonNull(defaults); + this.basicAuth = defaults.basicAuth; + this.clusterName = defaults.clusterName; + this.endpoint = defaults.endpoint; + this.indexName = defaults.indexName; + } + + @CustomType.Setter + public Builder basicAuth(AppSpecServiceLogDestinationOpenSearchBasicAuth basicAuth) { + if (basicAuth == null) { + throw new MissingRequiredPropertyException("AppSpecServiceLogDestinationOpenSearch", "basicAuth"); + } + this.basicAuth = basicAuth; + return this; + } + @CustomType.Setter + public Builder clusterName(@Nullable String clusterName) { + + this.clusterName = clusterName; + return this; + } + @CustomType.Setter + public Builder endpoint(@Nullable String endpoint) { + + this.endpoint = endpoint; + return this; + } + @CustomType.Setter + public Builder indexName(@Nullable String indexName) { + + this.indexName = indexName; + return this; + } + public AppSpecServiceLogDestinationOpenSearch build() { + final var _resultValue = new AppSpecServiceLogDestinationOpenSearch(); + _resultValue.basicAuth = basicAuth; + _resultValue.clusterName = clusterName; + _resultValue.endpoint = endpoint; + _resultValue.indexName = indexName; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestinationOpenSearchBasicAuth.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestinationOpenSearchBasicAuth.java new file mode 100644 index 00000000..70e78ef5 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceLogDestinationOpenSearchBasicAuth.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecServiceLogDestinationOpenSearchBasicAuth { + /** + * @return Password for basic authentication. + * + */ + private @Nullable String password; + /** + * @return user for basic authentication. + * + */ + private @Nullable String user; + + private AppSpecServiceLogDestinationOpenSearchBasicAuth() {} + /** + * @return Password for basic authentication. + * + */ + public Optional password() { + return Optional.ofNullable(this.password); + } + /** + * @return user for basic authentication. + * + */ + public Optional user() { + return Optional.ofNullable(this.user); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecServiceLogDestinationOpenSearchBasicAuth defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String password; + private @Nullable String user; + public Builder() {} + public Builder(AppSpecServiceLogDestinationOpenSearchBasicAuth defaults) { + Objects.requireNonNull(defaults); + this.password = defaults.password; + this.user = defaults.user; + } + + @CustomType.Setter + public Builder password(@Nullable String password) { + + this.password = password; + return this; + } + @CustomType.Setter + public Builder user(@Nullable String user) { + + this.user = user; + return this; + } + public AppSpecServiceLogDestinationOpenSearchBasicAuth build() { + final var _resultValue = new AppSpecServiceLogDestinationOpenSearchBasicAuth(); + _resultValue.password = password; + _resultValue.user = user; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecStaticSite.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecStaticSite.java index 6fe31201..d382705e 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecStaticSite.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecStaticSite.java @@ -59,7 +59,7 @@ public final class AppSpecStaticSite { */ private @Nullable String errorDocument; /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ private @Nullable AppSpecStaticSiteGit git; @@ -158,7 +158,7 @@ public Optional errorDocument() { return Optional.ofNullable(this.errorDocument); } /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ public Optional git() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorker.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorker.java index a8720983..5614ce9e 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorker.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorker.java @@ -47,7 +47,7 @@ public final class AppSpecWorker { */ private @Nullable List envs; /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ private @Nullable AppSpecWorkerGit git; @@ -134,7 +134,7 @@ public List envs() { return this.envs == null ? List.of() : this.envs; } /** - * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * @return A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. * */ public Optional git() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestination.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestination.java index b7564582..6b69bbc4 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestination.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestination.java @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.AppSpecWorkerLogDestinationDatadog; import com.pulumi.digitalocean.outputs.AppSpecWorkerLogDestinationLogtail; +import com.pulumi.digitalocean.outputs.AppSpecWorkerLogDestinationOpenSearch; import com.pulumi.digitalocean.outputs.AppSpecWorkerLogDestinationPapertrail; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -30,6 +31,11 @@ public final class AppSpecWorkerLogDestination { * */ private String name; + /** + * @return OpenSearch configuration. + * + */ + private @Nullable AppSpecWorkerLogDestinationOpenSearch openSearch; /** * @return Papertrail configuration. * @@ -58,6 +64,13 @@ public Optional logtail() { public String name() { return this.name; } + /** + * @return OpenSearch configuration. + * + */ + public Optional openSearch() { + return Optional.ofNullable(this.openSearch); + } /** * @return Papertrail configuration. * @@ -78,6 +91,7 @@ public static final class Builder { private @Nullable AppSpecWorkerLogDestinationDatadog datadog; private @Nullable AppSpecWorkerLogDestinationLogtail logtail; private String name; + private @Nullable AppSpecWorkerLogDestinationOpenSearch openSearch; private @Nullable AppSpecWorkerLogDestinationPapertrail papertrail; public Builder() {} public Builder(AppSpecWorkerLogDestination defaults) { @@ -85,6 +99,7 @@ public Builder(AppSpecWorkerLogDestination defaults) { this.datadog = defaults.datadog; this.logtail = defaults.logtail; this.name = defaults.name; + this.openSearch = defaults.openSearch; this.papertrail = defaults.papertrail; } @@ -109,6 +124,12 @@ public Builder name(String name) { return this; } @CustomType.Setter + public Builder openSearch(@Nullable AppSpecWorkerLogDestinationOpenSearch openSearch) { + + this.openSearch = openSearch; + return this; + } + @CustomType.Setter public Builder papertrail(@Nullable AppSpecWorkerLogDestinationPapertrail papertrail) { this.papertrail = papertrail; @@ -119,6 +140,7 @@ public AppSpecWorkerLogDestination build() { _resultValue.datadog = datadog; _resultValue.logtail = logtail; _resultValue.name = name; + _resultValue.openSearch = openSearch; _resultValue.papertrail = papertrail; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestinationLogtail.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestinationLogtail.java index 3f80a0eb..b969bf05 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestinationLogtail.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestinationLogtail.java @@ -13,8 +13,6 @@ public final class AppSpecWorkerLogDestinationLogtail { /** * @return Logtail token. * - * A `database` can contain: - * */ private String token; @@ -22,8 +20,6 @@ private AppSpecWorkerLogDestinationLogtail() {} /** * @return Logtail token. * - * A `database` can contain: - * */ public String token() { return this.token; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestinationOpenSearch.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestinationOpenSearch.java new file mode 100644 index 00000000..54760879 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestinationOpenSearch.java @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.digitalocean.outputs.AppSpecWorkerLogDestinationOpenSearchBasicAuth; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecWorkerLogDestinationOpenSearch { + /** + * @return Basic authentication details. + * + */ + private AppSpecWorkerLogDestinationOpenSearchBasicAuth basicAuth; + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + private @Nullable String clusterName; + /** + * @return OpenSearch endpoint. + * + */ + private @Nullable String endpoint; + /** + * @return OpenSearch index name. + * + */ + private @Nullable String indexName; + + private AppSpecWorkerLogDestinationOpenSearch() {} + /** + * @return Basic authentication details. + * + */ + public AppSpecWorkerLogDestinationOpenSearchBasicAuth basicAuth() { + return this.basicAuth; + } + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional clusterName() { + return Optional.ofNullable(this.clusterName); + } + /** + * @return OpenSearch endpoint. + * + */ + public Optional endpoint() { + return Optional.ofNullable(this.endpoint); + } + /** + * @return OpenSearch index name. + * + */ + public Optional indexName() { + return Optional.ofNullable(this.indexName); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecWorkerLogDestinationOpenSearch defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private AppSpecWorkerLogDestinationOpenSearchBasicAuth basicAuth; + private @Nullable String clusterName; + private @Nullable String endpoint; + private @Nullable String indexName; + public Builder() {} + public Builder(AppSpecWorkerLogDestinationOpenSearch defaults) { + Objects.requireNonNull(defaults); + this.basicAuth = defaults.basicAuth; + this.clusterName = defaults.clusterName; + this.endpoint = defaults.endpoint; + this.indexName = defaults.indexName; + } + + @CustomType.Setter + public Builder basicAuth(AppSpecWorkerLogDestinationOpenSearchBasicAuth basicAuth) { + if (basicAuth == null) { + throw new MissingRequiredPropertyException("AppSpecWorkerLogDestinationOpenSearch", "basicAuth"); + } + this.basicAuth = basicAuth; + return this; + } + @CustomType.Setter + public Builder clusterName(@Nullable String clusterName) { + + this.clusterName = clusterName; + return this; + } + @CustomType.Setter + public Builder endpoint(@Nullable String endpoint) { + + this.endpoint = endpoint; + return this; + } + @CustomType.Setter + public Builder indexName(@Nullable String indexName) { + + this.indexName = indexName; + return this; + } + public AppSpecWorkerLogDestinationOpenSearch build() { + final var _resultValue = new AppSpecWorkerLogDestinationOpenSearch(); + _resultValue.basicAuth = basicAuth; + _resultValue.clusterName = clusterName; + _resultValue.endpoint = endpoint; + _resultValue.indexName = indexName; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestinationOpenSearchBasicAuth.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestinationOpenSearchBasicAuth.java new file mode 100644 index 00000000..1b6f3fad --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerLogDestinationOpenSearchBasicAuth.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecWorkerLogDestinationOpenSearchBasicAuth { + /** + * @return Password for basic authentication. + * + */ + private @Nullable String password; + /** + * @return user for basic authentication. + * + */ + private @Nullable String user; + + private AppSpecWorkerLogDestinationOpenSearchBasicAuth() {} + /** + * @return Password for basic authentication. + * + */ + public Optional password() { + return Optional.ofNullable(this.password); + } + /** + * @return user for basic authentication. + * + */ + public Optional user() { + return Optional.ofNullable(this.user); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecWorkerLogDestinationOpenSearchBasicAuth defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String password; + private @Nullable String user; + public Builder() {} + public Builder(AppSpecWorkerLogDestinationOpenSearchBasicAuth defaults) { + Objects.requireNonNull(defaults); + this.password = defaults.password; + this.user = defaults.user; + } + + @CustomType.Setter + public Builder password(@Nullable String password) { + + this.password = password; + return this; + } + @CustomType.Setter + public Builder user(@Nullable String user) { + + this.user = user; + return this; + } + public AppSpecWorkerLogDestinationOpenSearchBasicAuth build() { + final var _resultValue = new AppSpecWorkerLogDestinationOpenSearchBasicAuth(); + _resultValue.password = password; + _resultValue.user = user; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/DatabasePostgresqlConfigTimescaledb.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/DatabasePostgresqlConfigTimescaledb.java index dabbf76e..9af495a4 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/DatabasePostgresqlConfigTimescaledb.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/DatabasePostgresqlConfigTimescaledb.java @@ -11,19 +11,11 @@ @CustomType public final class DatabasePostgresqlConfigTimescaledb { - /** - * @return TimescaleDB extension configuration values - * - */ - private @Nullable Integer timescaledb; + private @Nullable Integer maxBackgroundWorkers; private DatabasePostgresqlConfigTimescaledb() {} - /** - * @return TimescaleDB extension configuration values - * - */ - public Optional timescaledb() { - return Optional.ofNullable(this.timescaledb); + public Optional maxBackgroundWorkers() { + return Optional.ofNullable(this.maxBackgroundWorkers); } public static Builder builder() { @@ -35,22 +27,22 @@ public static Builder builder(DatabasePostgresqlConfigTimescaledb defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable Integer timescaledb; + private @Nullable Integer maxBackgroundWorkers; public Builder() {} public Builder(DatabasePostgresqlConfigTimescaledb defaults) { Objects.requireNonNull(defaults); - this.timescaledb = defaults.timescaledb; + this.maxBackgroundWorkers = defaults.maxBackgroundWorkers; } @CustomType.Setter - public Builder timescaledb(@Nullable Integer timescaledb) { + public Builder maxBackgroundWorkers(@Nullable Integer maxBackgroundWorkers) { - this.timescaledb = timescaledb; + this.maxBackgroundWorkers = maxBackgroundWorkers; return this; } public DatabasePostgresqlConfigTimescaledb build() { final var _resultValue = new DatabasePostgresqlConfigTimescaledb(); - _resultValue.timescaledb = timescaledb; + _resultValue.maxBackgroundWorkers = maxBackgroundWorkers; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppResult.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppResult.java index a61b2165..8b0fa42f 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppResult.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppResult.java @@ -39,6 +39,11 @@ public final class GetAppResult { * */ private String id; + /** + * @return The live domain of the app. + * + */ + private String liveDomain; /** * @return The live URL of the app. * @@ -104,6 +109,13 @@ public String defaultIngress() { public String id() { return this.id; } + /** + * @return The live domain of the app. + * + */ + public String liveDomain() { + return this.liveDomain; + } /** * @return The live URL of the app. * @@ -155,6 +167,7 @@ public static final class Builder { private List dedicatedIps; private String defaultIngress; private String id; + private String liveDomain; private String liveUrl; private String projectId; private List specs; @@ -169,6 +182,7 @@ public Builder(GetAppResult defaults) { this.dedicatedIps = defaults.dedicatedIps; this.defaultIngress = defaults.defaultIngress; this.id = defaults.id; + this.liveDomain = defaults.liveDomain; this.liveUrl = defaults.liveUrl; this.projectId = defaults.projectId; this.specs = defaults.specs; @@ -228,6 +242,14 @@ public Builder id(String id) { return this; } @CustomType.Setter + public Builder liveDomain(String liveDomain) { + if (liveDomain == null) { + throw new MissingRequiredPropertyException("GetAppResult", "liveDomain"); + } + this.liveDomain = liveDomain; + return this; + } + @CustomType.Setter public Builder liveUrl(String liveUrl) { if (liveUrl == null) { throw new MissingRequiredPropertyException("GetAppResult", "liveUrl"); @@ -278,6 +300,7 @@ public GetAppResult build() { _resultValue.dedicatedIps = dedicatedIps; _resultValue.defaultIngress = defaultIngress; _resultValue.id = id; + _resultValue.liveDomain = liveDomain; _resultValue.liveUrl = liveUrl; _resultValue.projectId = projectId; _resultValue.specs = specs; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestination.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestination.java index f9bd405e..3dd913c7 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestination.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestination.java @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.GetAppSpecFunctionLogDestinationDatadog; import com.pulumi.digitalocean.outputs.GetAppSpecFunctionLogDestinationLogtail; +import com.pulumi.digitalocean.outputs.GetAppSpecFunctionLogDestinationOpenSearch; import com.pulumi.digitalocean.outputs.GetAppSpecFunctionLogDestinationPapertrail; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -30,6 +31,11 @@ public final class GetAppSpecFunctionLogDestination { * */ private String name; + /** + * @return OpenSearch configuration. + * + */ + private @Nullable GetAppSpecFunctionLogDestinationOpenSearch openSearch; /** * @return Papertrail configuration. * @@ -58,6 +64,13 @@ public Optional logtail() { public String name() { return this.name; } + /** + * @return OpenSearch configuration. + * + */ + public Optional openSearch() { + return Optional.ofNullable(this.openSearch); + } /** * @return Papertrail configuration. * @@ -78,6 +91,7 @@ public static final class Builder { private @Nullable GetAppSpecFunctionLogDestinationDatadog datadog; private @Nullable GetAppSpecFunctionLogDestinationLogtail logtail; private String name; + private @Nullable GetAppSpecFunctionLogDestinationOpenSearch openSearch; private @Nullable GetAppSpecFunctionLogDestinationPapertrail papertrail; public Builder() {} public Builder(GetAppSpecFunctionLogDestination defaults) { @@ -85,6 +99,7 @@ public Builder(GetAppSpecFunctionLogDestination defaults) { this.datadog = defaults.datadog; this.logtail = defaults.logtail; this.name = defaults.name; + this.openSearch = defaults.openSearch; this.papertrail = defaults.papertrail; } @@ -109,6 +124,12 @@ public Builder name(String name) { return this; } @CustomType.Setter + public Builder openSearch(@Nullable GetAppSpecFunctionLogDestinationOpenSearch openSearch) { + + this.openSearch = openSearch; + return this; + } + @CustomType.Setter public Builder papertrail(@Nullable GetAppSpecFunctionLogDestinationPapertrail papertrail) { this.papertrail = papertrail; @@ -119,6 +140,7 @@ public GetAppSpecFunctionLogDestination build() { _resultValue.datadog = datadog; _resultValue.logtail = logtail; _resultValue.name = name; + _resultValue.openSearch = openSearch; _resultValue.papertrail = papertrail; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationDatadog.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationDatadog.java index 293ce5b1..0c20a8cd 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationDatadog.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationDatadog.java @@ -18,7 +18,7 @@ public final class GetAppSpecFunctionLogDestinationDatadog { */ private String apiKey; /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ private @Nullable String endpoint; @@ -32,7 +32,7 @@ public String apiKey() { return this.apiKey; } /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ public Optional endpoint() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationOpenSearch.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationOpenSearch.java new file mode 100644 index 00000000..7c686059 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationOpenSearch.java @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.digitalocean.outputs.GetAppSpecFunctionLogDestinationOpenSearchBasicAuth; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecFunctionLogDestinationOpenSearch { + /** + * @return OpenSearch basic auth + * + */ + private GetAppSpecFunctionLogDestinationOpenSearchBasicAuth basicAuth; + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + private @Nullable String clusterName; + /** + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + * + */ + private @Nullable String endpoint; + /** + * @return The index name to use for the logs. If not set, the default index name is \"logs\". + * + */ + private @Nullable String indexName; + + private GetAppSpecFunctionLogDestinationOpenSearch() {} + /** + * @return OpenSearch basic auth + * + */ + public GetAppSpecFunctionLogDestinationOpenSearchBasicAuth basicAuth() { + return this.basicAuth; + } + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional clusterName() { + return Optional.ofNullable(this.clusterName); + } + /** + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + * + */ + public Optional endpoint() { + return Optional.ofNullable(this.endpoint); + } + /** + * @return The index name to use for the logs. If not set, the default index name is \"logs\". + * + */ + public Optional indexName() { + return Optional.ofNullable(this.indexName); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecFunctionLogDestinationOpenSearch defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private GetAppSpecFunctionLogDestinationOpenSearchBasicAuth basicAuth; + private @Nullable String clusterName; + private @Nullable String endpoint; + private @Nullable String indexName; + public Builder() {} + public Builder(GetAppSpecFunctionLogDestinationOpenSearch defaults) { + Objects.requireNonNull(defaults); + this.basicAuth = defaults.basicAuth; + this.clusterName = defaults.clusterName; + this.endpoint = defaults.endpoint; + this.indexName = defaults.indexName; + } + + @CustomType.Setter + public Builder basicAuth(GetAppSpecFunctionLogDestinationOpenSearchBasicAuth basicAuth) { + if (basicAuth == null) { + throw new MissingRequiredPropertyException("GetAppSpecFunctionLogDestinationOpenSearch", "basicAuth"); + } + this.basicAuth = basicAuth; + return this; + } + @CustomType.Setter + public Builder clusterName(@Nullable String clusterName) { + + this.clusterName = clusterName; + return this; + } + @CustomType.Setter + public Builder endpoint(@Nullable String endpoint) { + + this.endpoint = endpoint; + return this; + } + @CustomType.Setter + public Builder indexName(@Nullable String indexName) { + + this.indexName = indexName; + return this; + } + public GetAppSpecFunctionLogDestinationOpenSearch build() { + final var _resultValue = new GetAppSpecFunctionLogDestinationOpenSearch(); + _resultValue.basicAuth = basicAuth; + _resultValue.clusterName = clusterName; + _resultValue.endpoint = endpoint; + _resultValue.indexName = indexName; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationOpenSearchBasicAuth.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationOpenSearchBasicAuth.java new file mode 100644 index 00000000..e12b17f1 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationOpenSearchBasicAuth.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecFunctionLogDestinationOpenSearchBasicAuth { + /** + * @return Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + * + */ + private @Nullable String password; + /** + * @return Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + * + */ + private @Nullable String user; + + private GetAppSpecFunctionLogDestinationOpenSearchBasicAuth() {} + /** + * @return Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + * + */ + public Optional password() { + return Optional.ofNullable(this.password); + } + /** + * @return Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + * + */ + public Optional user() { + return Optional.ofNullable(this.user); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecFunctionLogDestinationOpenSearchBasicAuth defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String password; + private @Nullable String user; + public Builder() {} + public Builder(GetAppSpecFunctionLogDestinationOpenSearchBasicAuth defaults) { + Objects.requireNonNull(defaults); + this.password = defaults.password; + this.user = defaults.user; + } + + @CustomType.Setter + public Builder password(@Nullable String password) { + + this.password = password; + return this; + } + @CustomType.Setter + public Builder user(@Nullable String user) { + + this.user = user; + return this; + } + public GetAppSpecFunctionLogDestinationOpenSearchBasicAuth build() { + final var _resultValue = new GetAppSpecFunctionLogDestinationOpenSearchBasicAuth(); + _resultValue.password = password; + _resultValue.user = user; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationPapertrail.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationPapertrail.java index 96cdd686..709353d9 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationPapertrail.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionLogDestinationPapertrail.java @@ -11,14 +11,14 @@ @CustomType public final class GetAppSpecFunctionLogDestinationPapertrail { /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ private String endpoint; private GetAppSpecFunctionLogDestinationPapertrail() {} /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ public String endpoint() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestination.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestination.java index f43bed88..560183fa 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestination.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestination.java @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.GetAppSpecJobLogDestinationDatadog; import com.pulumi.digitalocean.outputs.GetAppSpecJobLogDestinationLogtail; +import com.pulumi.digitalocean.outputs.GetAppSpecJobLogDestinationOpenSearch; import com.pulumi.digitalocean.outputs.GetAppSpecJobLogDestinationPapertrail; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -30,6 +31,11 @@ public final class GetAppSpecJobLogDestination { * */ private String name; + /** + * @return OpenSearch configuration. + * + */ + private @Nullable GetAppSpecJobLogDestinationOpenSearch openSearch; /** * @return Papertrail configuration. * @@ -58,6 +64,13 @@ public Optional logtail() { public String name() { return this.name; } + /** + * @return OpenSearch configuration. + * + */ + public Optional openSearch() { + return Optional.ofNullable(this.openSearch); + } /** * @return Papertrail configuration. * @@ -78,6 +91,7 @@ public static final class Builder { private @Nullable GetAppSpecJobLogDestinationDatadog datadog; private @Nullable GetAppSpecJobLogDestinationLogtail logtail; private String name; + private @Nullable GetAppSpecJobLogDestinationOpenSearch openSearch; private @Nullable GetAppSpecJobLogDestinationPapertrail papertrail; public Builder() {} public Builder(GetAppSpecJobLogDestination defaults) { @@ -85,6 +99,7 @@ public Builder(GetAppSpecJobLogDestination defaults) { this.datadog = defaults.datadog; this.logtail = defaults.logtail; this.name = defaults.name; + this.openSearch = defaults.openSearch; this.papertrail = defaults.papertrail; } @@ -109,6 +124,12 @@ public Builder name(String name) { return this; } @CustomType.Setter + public Builder openSearch(@Nullable GetAppSpecJobLogDestinationOpenSearch openSearch) { + + this.openSearch = openSearch; + return this; + } + @CustomType.Setter public Builder papertrail(@Nullable GetAppSpecJobLogDestinationPapertrail papertrail) { this.papertrail = papertrail; @@ -119,6 +140,7 @@ public GetAppSpecJobLogDestination build() { _resultValue.datadog = datadog; _resultValue.logtail = logtail; _resultValue.name = name; + _resultValue.openSearch = openSearch; _resultValue.papertrail = papertrail; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationDatadog.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationDatadog.java index 48192d95..de79a950 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationDatadog.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationDatadog.java @@ -18,7 +18,7 @@ public final class GetAppSpecJobLogDestinationDatadog { */ private String apiKey; /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ private @Nullable String endpoint; @@ -32,7 +32,7 @@ public String apiKey() { return this.apiKey; } /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ public Optional endpoint() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationOpenSearch.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationOpenSearch.java new file mode 100644 index 00000000..29c5f59a --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationOpenSearch.java @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.digitalocean.outputs.GetAppSpecJobLogDestinationOpenSearchBasicAuth; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecJobLogDestinationOpenSearch { + /** + * @return OpenSearch basic auth + * + */ + private GetAppSpecJobLogDestinationOpenSearchBasicAuth basicAuth; + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + private @Nullable String clusterName; + /** + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + * + */ + private @Nullable String endpoint; + /** + * @return The index name to use for the logs. If not set, the default index name is \"logs\". + * + */ + private @Nullable String indexName; + + private GetAppSpecJobLogDestinationOpenSearch() {} + /** + * @return OpenSearch basic auth + * + */ + public GetAppSpecJobLogDestinationOpenSearchBasicAuth basicAuth() { + return this.basicAuth; + } + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional clusterName() { + return Optional.ofNullable(this.clusterName); + } + /** + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + * + */ + public Optional endpoint() { + return Optional.ofNullable(this.endpoint); + } + /** + * @return The index name to use for the logs. If not set, the default index name is \"logs\". + * + */ + public Optional indexName() { + return Optional.ofNullable(this.indexName); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecJobLogDestinationOpenSearch defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private GetAppSpecJobLogDestinationOpenSearchBasicAuth basicAuth; + private @Nullable String clusterName; + private @Nullable String endpoint; + private @Nullable String indexName; + public Builder() {} + public Builder(GetAppSpecJobLogDestinationOpenSearch defaults) { + Objects.requireNonNull(defaults); + this.basicAuth = defaults.basicAuth; + this.clusterName = defaults.clusterName; + this.endpoint = defaults.endpoint; + this.indexName = defaults.indexName; + } + + @CustomType.Setter + public Builder basicAuth(GetAppSpecJobLogDestinationOpenSearchBasicAuth basicAuth) { + if (basicAuth == null) { + throw new MissingRequiredPropertyException("GetAppSpecJobLogDestinationOpenSearch", "basicAuth"); + } + this.basicAuth = basicAuth; + return this; + } + @CustomType.Setter + public Builder clusterName(@Nullable String clusterName) { + + this.clusterName = clusterName; + return this; + } + @CustomType.Setter + public Builder endpoint(@Nullable String endpoint) { + + this.endpoint = endpoint; + return this; + } + @CustomType.Setter + public Builder indexName(@Nullable String indexName) { + + this.indexName = indexName; + return this; + } + public GetAppSpecJobLogDestinationOpenSearch build() { + final var _resultValue = new GetAppSpecJobLogDestinationOpenSearch(); + _resultValue.basicAuth = basicAuth; + _resultValue.clusterName = clusterName; + _resultValue.endpoint = endpoint; + _resultValue.indexName = indexName; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationOpenSearchBasicAuth.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationOpenSearchBasicAuth.java new file mode 100644 index 00000000..bb34222e --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationOpenSearchBasicAuth.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecJobLogDestinationOpenSearchBasicAuth { + /** + * @return Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + * + */ + private @Nullable String password; + /** + * @return Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + * + */ + private @Nullable String user; + + private GetAppSpecJobLogDestinationOpenSearchBasicAuth() {} + /** + * @return Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + * + */ + public Optional password() { + return Optional.ofNullable(this.password); + } + /** + * @return Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + * + */ + public Optional user() { + return Optional.ofNullable(this.user); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecJobLogDestinationOpenSearchBasicAuth defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String password; + private @Nullable String user; + public Builder() {} + public Builder(GetAppSpecJobLogDestinationOpenSearchBasicAuth defaults) { + Objects.requireNonNull(defaults); + this.password = defaults.password; + this.user = defaults.user; + } + + @CustomType.Setter + public Builder password(@Nullable String password) { + + this.password = password; + return this; + } + @CustomType.Setter + public Builder user(@Nullable String user) { + + this.user = user; + return this; + } + public GetAppSpecJobLogDestinationOpenSearchBasicAuth build() { + final var _resultValue = new GetAppSpecJobLogDestinationOpenSearchBasicAuth(); + _resultValue.password = password; + _resultValue.user = user; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationPapertrail.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationPapertrail.java index 02c967bb..03555410 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationPapertrail.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobLogDestinationPapertrail.java @@ -11,14 +11,14 @@ @CustomType public final class GetAppSpecJobLogDestinationPapertrail { /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ private String endpoint; private GetAppSpecJobLogDestinationPapertrail() {} /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ public String endpoint() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestination.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestination.java index 01442bff..a54080c9 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestination.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestination.java @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.GetAppSpecServiceLogDestinationDatadog; import com.pulumi.digitalocean.outputs.GetAppSpecServiceLogDestinationLogtail; +import com.pulumi.digitalocean.outputs.GetAppSpecServiceLogDestinationOpenSearch; import com.pulumi.digitalocean.outputs.GetAppSpecServiceLogDestinationPapertrail; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -30,6 +31,11 @@ public final class GetAppSpecServiceLogDestination { * */ private String name; + /** + * @return OpenSearch configuration. + * + */ + private @Nullable GetAppSpecServiceLogDestinationOpenSearch openSearch; /** * @return Papertrail configuration. * @@ -58,6 +64,13 @@ public Optional logtail() { public String name() { return this.name; } + /** + * @return OpenSearch configuration. + * + */ + public Optional openSearch() { + return Optional.ofNullable(this.openSearch); + } /** * @return Papertrail configuration. * @@ -78,6 +91,7 @@ public static final class Builder { private @Nullable GetAppSpecServiceLogDestinationDatadog datadog; private @Nullable GetAppSpecServiceLogDestinationLogtail logtail; private String name; + private @Nullable GetAppSpecServiceLogDestinationOpenSearch openSearch; private @Nullable GetAppSpecServiceLogDestinationPapertrail papertrail; public Builder() {} public Builder(GetAppSpecServiceLogDestination defaults) { @@ -85,6 +99,7 @@ public Builder(GetAppSpecServiceLogDestination defaults) { this.datadog = defaults.datadog; this.logtail = defaults.logtail; this.name = defaults.name; + this.openSearch = defaults.openSearch; this.papertrail = defaults.papertrail; } @@ -109,6 +124,12 @@ public Builder name(String name) { return this; } @CustomType.Setter + public Builder openSearch(@Nullable GetAppSpecServiceLogDestinationOpenSearch openSearch) { + + this.openSearch = openSearch; + return this; + } + @CustomType.Setter public Builder papertrail(@Nullable GetAppSpecServiceLogDestinationPapertrail papertrail) { this.papertrail = papertrail; @@ -119,6 +140,7 @@ public GetAppSpecServiceLogDestination build() { _resultValue.datadog = datadog; _resultValue.logtail = logtail; _resultValue.name = name; + _resultValue.openSearch = openSearch; _resultValue.papertrail = papertrail; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationDatadog.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationDatadog.java index 7837b7d1..57eac4a9 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationDatadog.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationDatadog.java @@ -18,7 +18,7 @@ public final class GetAppSpecServiceLogDestinationDatadog { */ private String apiKey; /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ private @Nullable String endpoint; @@ -32,7 +32,7 @@ public String apiKey() { return this.apiKey; } /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ public Optional endpoint() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationOpenSearch.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationOpenSearch.java new file mode 100644 index 00000000..f3a6b56b --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationOpenSearch.java @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.digitalocean.outputs.GetAppSpecServiceLogDestinationOpenSearchBasicAuth; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecServiceLogDestinationOpenSearch { + /** + * @return OpenSearch basic auth + * + */ + private GetAppSpecServiceLogDestinationOpenSearchBasicAuth basicAuth; + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + private @Nullable String clusterName; + /** + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + * + */ + private @Nullable String endpoint; + /** + * @return The index name to use for the logs. If not set, the default index name is \"logs\". + * + */ + private @Nullable String indexName; + + private GetAppSpecServiceLogDestinationOpenSearch() {} + /** + * @return OpenSearch basic auth + * + */ + public GetAppSpecServiceLogDestinationOpenSearchBasicAuth basicAuth() { + return this.basicAuth; + } + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional clusterName() { + return Optional.ofNullable(this.clusterName); + } + /** + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + * + */ + public Optional endpoint() { + return Optional.ofNullable(this.endpoint); + } + /** + * @return The index name to use for the logs. If not set, the default index name is \"logs\". + * + */ + public Optional indexName() { + return Optional.ofNullable(this.indexName); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecServiceLogDestinationOpenSearch defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private GetAppSpecServiceLogDestinationOpenSearchBasicAuth basicAuth; + private @Nullable String clusterName; + private @Nullable String endpoint; + private @Nullable String indexName; + public Builder() {} + public Builder(GetAppSpecServiceLogDestinationOpenSearch defaults) { + Objects.requireNonNull(defaults); + this.basicAuth = defaults.basicAuth; + this.clusterName = defaults.clusterName; + this.endpoint = defaults.endpoint; + this.indexName = defaults.indexName; + } + + @CustomType.Setter + public Builder basicAuth(GetAppSpecServiceLogDestinationOpenSearchBasicAuth basicAuth) { + if (basicAuth == null) { + throw new MissingRequiredPropertyException("GetAppSpecServiceLogDestinationOpenSearch", "basicAuth"); + } + this.basicAuth = basicAuth; + return this; + } + @CustomType.Setter + public Builder clusterName(@Nullable String clusterName) { + + this.clusterName = clusterName; + return this; + } + @CustomType.Setter + public Builder endpoint(@Nullable String endpoint) { + + this.endpoint = endpoint; + return this; + } + @CustomType.Setter + public Builder indexName(@Nullable String indexName) { + + this.indexName = indexName; + return this; + } + public GetAppSpecServiceLogDestinationOpenSearch build() { + final var _resultValue = new GetAppSpecServiceLogDestinationOpenSearch(); + _resultValue.basicAuth = basicAuth; + _resultValue.clusterName = clusterName; + _resultValue.endpoint = endpoint; + _resultValue.indexName = indexName; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationOpenSearchBasicAuth.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationOpenSearchBasicAuth.java new file mode 100644 index 00000000..9a30f6c0 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationOpenSearchBasicAuth.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecServiceLogDestinationOpenSearchBasicAuth { + /** + * @return Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + * + */ + private @Nullable String password; + /** + * @return Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + * + */ + private @Nullable String user; + + private GetAppSpecServiceLogDestinationOpenSearchBasicAuth() {} + /** + * @return Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + * + */ + public Optional password() { + return Optional.ofNullable(this.password); + } + /** + * @return Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + * + */ + public Optional user() { + return Optional.ofNullable(this.user); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecServiceLogDestinationOpenSearchBasicAuth defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String password; + private @Nullable String user; + public Builder() {} + public Builder(GetAppSpecServiceLogDestinationOpenSearchBasicAuth defaults) { + Objects.requireNonNull(defaults); + this.password = defaults.password; + this.user = defaults.user; + } + + @CustomType.Setter + public Builder password(@Nullable String password) { + + this.password = password; + return this; + } + @CustomType.Setter + public Builder user(@Nullable String user) { + + this.user = user; + return this; + } + public GetAppSpecServiceLogDestinationOpenSearchBasicAuth build() { + final var _resultValue = new GetAppSpecServiceLogDestinationOpenSearchBasicAuth(); + _resultValue.password = password; + _resultValue.user = user; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationPapertrail.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationPapertrail.java index 550140ea..bf35551d 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationPapertrail.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceLogDestinationPapertrail.java @@ -11,14 +11,14 @@ @CustomType public final class GetAppSpecServiceLogDestinationPapertrail { /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ private String endpoint; private GetAppSpecServiceLogDestinationPapertrail() {} /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ public String endpoint() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestination.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestination.java index 946dffb4..b34bedda 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestination.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestination.java @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.GetAppSpecWorkerLogDestinationDatadog; import com.pulumi.digitalocean.outputs.GetAppSpecWorkerLogDestinationLogtail; +import com.pulumi.digitalocean.outputs.GetAppSpecWorkerLogDestinationOpenSearch; import com.pulumi.digitalocean.outputs.GetAppSpecWorkerLogDestinationPapertrail; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; @@ -30,6 +31,11 @@ public final class GetAppSpecWorkerLogDestination { * */ private String name; + /** + * @return OpenSearch configuration. + * + */ + private @Nullable GetAppSpecWorkerLogDestinationOpenSearch openSearch; /** * @return Papertrail configuration. * @@ -58,6 +64,13 @@ public Optional logtail() { public String name() { return this.name; } + /** + * @return OpenSearch configuration. + * + */ + public Optional openSearch() { + return Optional.ofNullable(this.openSearch); + } /** * @return Papertrail configuration. * @@ -78,6 +91,7 @@ public static final class Builder { private @Nullable GetAppSpecWorkerLogDestinationDatadog datadog; private @Nullable GetAppSpecWorkerLogDestinationLogtail logtail; private String name; + private @Nullable GetAppSpecWorkerLogDestinationOpenSearch openSearch; private @Nullable GetAppSpecWorkerLogDestinationPapertrail papertrail; public Builder() {} public Builder(GetAppSpecWorkerLogDestination defaults) { @@ -85,6 +99,7 @@ public Builder(GetAppSpecWorkerLogDestination defaults) { this.datadog = defaults.datadog; this.logtail = defaults.logtail; this.name = defaults.name; + this.openSearch = defaults.openSearch; this.papertrail = defaults.papertrail; } @@ -109,6 +124,12 @@ public Builder name(String name) { return this; } @CustomType.Setter + public Builder openSearch(@Nullable GetAppSpecWorkerLogDestinationOpenSearch openSearch) { + + this.openSearch = openSearch; + return this; + } + @CustomType.Setter public Builder papertrail(@Nullable GetAppSpecWorkerLogDestinationPapertrail papertrail) { this.papertrail = papertrail; @@ -119,6 +140,7 @@ public GetAppSpecWorkerLogDestination build() { _resultValue.datadog = datadog; _resultValue.logtail = logtail; _resultValue.name = name; + _resultValue.openSearch = openSearch; _resultValue.papertrail = papertrail; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationDatadog.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationDatadog.java index 3032aa67..6d59e4b9 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationDatadog.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationDatadog.java @@ -18,7 +18,7 @@ public final class GetAppSpecWorkerLogDestinationDatadog { */ private String apiKey; /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ private @Nullable String endpoint; @@ -32,7 +32,7 @@ public String apiKey() { return this.apiKey; } /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ public Optional endpoint() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationOpenSearch.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationOpenSearch.java new file mode 100644 index 00000000..e7eeddf7 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationOpenSearch.java @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.digitalocean.outputs.GetAppSpecWorkerLogDestinationOpenSearchBasicAuth; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecWorkerLogDestinationOpenSearch { + /** + * @return OpenSearch basic auth + * + */ + private GetAppSpecWorkerLogDestinationOpenSearchBasicAuth basicAuth; + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + private @Nullable String clusterName; + /** + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + * + */ + private @Nullable String endpoint; + /** + * @return The index name to use for the logs. If not set, the default index name is \"logs\". + * + */ + private @Nullable String indexName; + + private GetAppSpecWorkerLogDestinationOpenSearch() {} + /** + * @return OpenSearch basic auth + * + */ + public GetAppSpecWorkerLogDestinationOpenSearchBasicAuth basicAuth() { + return this.basicAuth; + } + /** + * @return The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + * + */ + public Optional clusterName() { + return Optional.ofNullable(this.clusterName); + } + /** + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. + * + */ + public Optional endpoint() { + return Optional.ofNullable(this.endpoint); + } + /** + * @return The index name to use for the logs. If not set, the default index name is \"logs\". + * + */ + public Optional indexName() { + return Optional.ofNullable(this.indexName); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecWorkerLogDestinationOpenSearch defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private GetAppSpecWorkerLogDestinationOpenSearchBasicAuth basicAuth; + private @Nullable String clusterName; + private @Nullable String endpoint; + private @Nullable String indexName; + public Builder() {} + public Builder(GetAppSpecWorkerLogDestinationOpenSearch defaults) { + Objects.requireNonNull(defaults); + this.basicAuth = defaults.basicAuth; + this.clusterName = defaults.clusterName; + this.endpoint = defaults.endpoint; + this.indexName = defaults.indexName; + } + + @CustomType.Setter + public Builder basicAuth(GetAppSpecWorkerLogDestinationOpenSearchBasicAuth basicAuth) { + if (basicAuth == null) { + throw new MissingRequiredPropertyException("GetAppSpecWorkerLogDestinationOpenSearch", "basicAuth"); + } + this.basicAuth = basicAuth; + return this; + } + @CustomType.Setter + public Builder clusterName(@Nullable String clusterName) { + + this.clusterName = clusterName; + return this; + } + @CustomType.Setter + public Builder endpoint(@Nullable String endpoint) { + + this.endpoint = endpoint; + return this; + } + @CustomType.Setter + public Builder indexName(@Nullable String indexName) { + + this.indexName = indexName; + return this; + } + public GetAppSpecWorkerLogDestinationOpenSearch build() { + final var _resultValue = new GetAppSpecWorkerLogDestinationOpenSearch(); + _resultValue.basicAuth = basicAuth; + _resultValue.clusterName = clusterName; + _resultValue.endpoint = endpoint; + _resultValue.indexName = indexName; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationOpenSearchBasicAuth.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationOpenSearchBasicAuth.java new file mode 100644 index 00000000..9c6570fe --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationOpenSearchBasicAuth.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.digitalocean.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecWorkerLogDestinationOpenSearchBasicAuth { + /** + * @return Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + * + */ + private @Nullable String password; + /** + * @return Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + * + */ + private @Nullable String user; + + private GetAppSpecWorkerLogDestinationOpenSearchBasicAuth() {} + /** + * @return Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + * + */ + public Optional password() { + return Optional.ofNullable(this.password); + } + /** + * @return Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + * + */ + public Optional user() { + return Optional.ofNullable(this.user); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecWorkerLogDestinationOpenSearchBasicAuth defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String password; + private @Nullable String user; + public Builder() {} + public Builder(GetAppSpecWorkerLogDestinationOpenSearchBasicAuth defaults) { + Objects.requireNonNull(defaults); + this.password = defaults.password; + this.user = defaults.user; + } + + @CustomType.Setter + public Builder password(@Nullable String password) { + + this.password = password; + return this; + } + @CustomType.Setter + public Builder user(@Nullable String user) { + + this.user = user; + return this; + } + public GetAppSpecWorkerLogDestinationOpenSearchBasicAuth build() { + final var _resultValue = new GetAppSpecWorkerLogDestinationOpenSearchBasicAuth(); + _resultValue.password = password; + _resultValue.user = user; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationPapertrail.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationPapertrail.java index 868fe2d7..26f146e4 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationPapertrail.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerLogDestinationPapertrail.java @@ -11,14 +11,14 @@ @CustomType public final class GetAppSpecWorkerLogDestinationPapertrail { /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ private String endpoint; private GetAppSpecWorkerLogDestinationPapertrail() {} /** - * @return Datadog HTTP log intake endpoint. + * @return OpenSearch API Endpoint. Only HTTPS is supported. Format: https://<host>:<port>. * */ public String endpoint() { diff --git a/sdk/nodejs/app.ts b/sdk/nodejs/app.ts index 0ede18b2..b879b422 100644 --- a/sdk/nodejs/app.ts +++ b/sdk/nodejs/app.ts @@ -25,9 +25,8 @@ import * as utilities from "./utilities"; * region: "ams", * services: [{ * name: "go-service", - * environmentSlug: "go", * instanceCount: 1, - * instanceSizeSlug: "professional-xs", + * instanceSizeSlug: "apps-s-1vcpu-1gb", * git: { * repoCloneUrl: "https://github.com/digitalocean/sample-golang.git", * branch: "main", @@ -57,6 +56,36 @@ import * as utilities from "./utilities"; * }}); * ``` * + * ### Log Destination Example with Opensearch + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as digitalocean from "@pulumi/digitalocean"; + * + * const golang_sample = new digitalocean.App("golang-sample", {spec: { + * name: "golang-sample", + * region: "ams", + * services: [{ + * name: "go-service", + * instanceCount: 1, + * instanceSizeSlug: "apps-s-1vcpu-1gb", + * git: { + * repoCloneUrl: "https://github.com/digitalocean/sample-golang.git", + * branch: "main", + * }, + * logDestinations: [{ + * name: "MyLogs", + * openSearch: { + * endpoint: "https://something:1234", + * basicAuth: { + * user: "user", + * password: "hi", + * }, + * }, + * }], + * }], + * }}); + * ``` + * * ## Import * * An app can be imported using its `id`, e.g. @@ -113,6 +142,10 @@ export class App extends pulumi.CustomResource { * The default URL to access the app. */ public /*out*/ readonly defaultIngress!: pulumi.Output; + /** + * The live domain of the app. + */ + public /*out*/ readonly liveDomain!: pulumi.Output; /** * The live URL of the app. */ @@ -152,6 +185,7 @@ export class App extends pulumi.CustomResource { resourceInputs["createdAt"] = state ? state.createdAt : undefined; resourceInputs["dedicatedIps"] = state ? state.dedicatedIps : undefined; resourceInputs["defaultIngress"] = state ? state.defaultIngress : undefined; + resourceInputs["liveDomain"] = state ? state.liveDomain : undefined; resourceInputs["liveUrl"] = state ? state.liveUrl : undefined; resourceInputs["projectId"] = state ? state.projectId : undefined; resourceInputs["spec"] = state ? state.spec : undefined; @@ -165,6 +199,7 @@ export class App extends pulumi.CustomResource { resourceInputs["appUrn"] = undefined /*out*/; resourceInputs["createdAt"] = undefined /*out*/; resourceInputs["defaultIngress"] = undefined /*out*/; + resourceInputs["liveDomain"] = undefined /*out*/; resourceInputs["liveUrl"] = undefined /*out*/; resourceInputs["updatedAt"] = undefined /*out*/; } @@ -197,6 +232,10 @@ export interface AppState { * The default URL to access the app. */ defaultIngress?: pulumi.Input; + /** + * The live domain of the app. + */ + liveDomain?: pulumi.Input; /** * The live URL of the app. */ diff --git a/sdk/nodejs/databaseCluster.ts b/sdk/nodejs/databaseCluster.ts index 5bac8297..889ed7ca 100644 --- a/sdk/nodejs/databaseCluster.ts +++ b/sdk/nodejs/databaseCluster.ts @@ -87,6 +87,21 @@ import * as utilities from "./utilities"; * }); * ``` * + * ### Create a new OpenSearch database cluster + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as digitalocean from "@pulumi/digitalocean"; + * + * const opensearch_example = new digitalocean.DatabaseCluster("opensearch-example", { + * name: "example-opensearch-cluster", + * engine: "opensearch", + * version: "2", + * size: digitalocean.DatabaseSlug.DB_1VPCU2GB, + * region: digitalocean.Region.NYC3, + * nodeCount: 1, + * }); + * ``` + * * ## Create a new database cluster based on a backup of an existing cluster. * * ```typescript diff --git a/sdk/nodejs/getApp.ts b/sdk/nodejs/getApp.ts index 87f0bc46..e20df9f0 100644 --- a/sdk/nodejs/getApp.ts +++ b/sdk/nodejs/getApp.ts @@ -72,6 +72,10 @@ export interface GetAppResult { * The provider-assigned unique ID for this managed resource. */ readonly id: string; + /** + * The live domain of the app. + */ + readonly liveDomain: string; /** * The live URL of the app. */ diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 7d780025..2ea50bf5 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -23,7 +23,7 @@ export interface AppDedicatedIp { export interface AppSpec { /** - * Describes an alert policy for the app. + * Describes an alert policy for the component. */ alerts?: pulumi.Input[]>; databases?: pulumi.Input[]>; @@ -40,7 +40,7 @@ export interface AppSpec { */ egresses?: pulumi.Input[]>; /** - * Describes an app-wide environment variable made available to all components. + * Describes an environment variable made available to an app competent. */ envs?: pulumi.Input[]>; /** @@ -54,7 +54,7 @@ export interface AppSpec { ingress?: pulumi.Input; jobs?: pulumi.Input[]>; /** - * The name of the app. Must be unique across all apps in the same account. + * The name of the component. */ name: pulumi.Input; /** @@ -72,7 +72,7 @@ export interface AppSpecAlert { */ disabled?: pulumi.Input; /** - * The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + * The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. */ rule: pulumi.Input; } @@ -174,7 +174,7 @@ export interface AppSpecFunction { */ envs?: pulumi.Input[]>; /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. */ git?: pulumi.Input; /** @@ -345,6 +345,10 @@ export interface AppSpecFunctionLogDestination { * Name of the log destination. Minimum length: 2. Maximum length: 42. */ name: pulumi.Input; + /** + * OpenSearch configuration. + */ + openSearch?: pulumi.Input; /** * Papertrail configuration. */ @@ -365,12 +369,40 @@ export interface AppSpecFunctionLogDestinationDatadog { export interface AppSpecFunctionLogDestinationLogtail { /** * Logtail token. - * - * A `database` can contain: */ token: pulumi.Input; } +export interface AppSpecFunctionLogDestinationOpenSearch { + /** + * Basic authentication details. + */ + basicAuth: pulumi.Input; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: pulumi.Input; + /** + * OpenSearch endpoint. + */ + endpoint?: pulumi.Input; + /** + * OpenSearch index name. + */ + indexName?: pulumi.Input; +} + +export interface AppSpecFunctionLogDestinationOpenSearchBasicAuth { + /** + * Password for basic authentication. + */ + password?: pulumi.Input; + /** + * user for basic authentication. + */ + user?: pulumi.Input; +} + export interface AppSpecFunctionLogDestinationPapertrail { /** * Papertrail syslog endpoint. @@ -432,15 +464,15 @@ export interface AppSpecIngressRuleComponent { export interface AppSpecIngressRuleCors { /** - * Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + * Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. */ allowCredentials?: pulumi.Input; /** - * The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + * The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. */ allowHeaders?: pulumi.Input[]>; /** - * The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + * The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. */ allowMethods?: pulumi.Input[]>; /** @@ -448,7 +480,7 @@ export interface AppSpecIngressRuleCors { */ allowOrigins?: pulumi.Input; /** - * The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + * The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. */ exposeHeaders?: pulumi.Input[]>; /** @@ -533,7 +565,7 @@ export interface AppSpecJob { */ envs?: pulumi.Input[]>; /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. */ git?: pulumi.Input; /** @@ -712,6 +744,10 @@ export interface AppSpecJobLogDestination { * Name of the log destination. Minimum length: 2. Maximum length: 42. */ name: pulumi.Input; + /** + * OpenSearch configuration. + */ + openSearch?: pulumi.Input; /** * Papertrail configuration. */ @@ -732,12 +768,40 @@ export interface AppSpecJobLogDestinationDatadog { export interface AppSpecJobLogDestinationLogtail { /** * Logtail token. - * - * A `database` can contain: */ token: pulumi.Input; } +export interface AppSpecJobLogDestinationOpenSearch { + /** + * Basic authentication details. + */ + basicAuth: pulumi.Input; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: pulumi.Input; + /** + * OpenSearch endpoint. + */ + endpoint?: pulumi.Input; + /** + * OpenSearch index name. + */ + indexName?: pulumi.Input; +} + +export interface AppSpecJobLogDestinationOpenSearchBasicAuth { + /** + * Password for basic authentication. + */ + password?: pulumi.Input; + /** + * user for basic authentication. + */ + user?: pulumi.Input; +} + export interface AppSpecJobLogDestinationPapertrail { /** * Papertrail syslog endpoint. @@ -777,7 +841,7 @@ export interface AppSpecService { */ envs?: pulumi.Input[]>; /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. */ git?: pulumi.Input; /** @@ -1072,6 +1136,10 @@ export interface AppSpecServiceLogDestination { * Name of the log destination. Minimum length: 2. Maximum length: 42. */ name: pulumi.Input; + /** + * OpenSearch configuration. + */ + openSearch?: pulumi.Input; /** * Papertrail configuration. */ @@ -1092,12 +1160,40 @@ export interface AppSpecServiceLogDestinationDatadog { export interface AppSpecServiceLogDestinationLogtail { /** * Logtail token. - * - * A `database` can contain: */ token: pulumi.Input; } +export interface AppSpecServiceLogDestinationOpenSearch { + /** + * Basic authentication details. + */ + basicAuth: pulumi.Input; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: pulumi.Input; + /** + * OpenSearch endpoint. + */ + endpoint?: pulumi.Input; + /** + * OpenSearch index name. + */ + indexName?: pulumi.Input; +} + +export interface AppSpecServiceLogDestinationOpenSearchBasicAuth { + /** + * Password for basic authentication. + */ + password?: pulumi.Input; + /** + * user for basic authentication. + */ + user?: pulumi.Input; +} + export interface AppSpecServiceLogDestinationPapertrail { /** * Papertrail syslog endpoint. @@ -1148,7 +1244,7 @@ export interface AppSpecStaticSite { */ errorDocument?: pulumi.Input; /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. */ git?: pulumi.Input; /** @@ -1320,7 +1416,7 @@ export interface AppSpecWorker { */ envs?: pulumi.Input[]>; /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. */ git?: pulumi.Input; /** @@ -1491,6 +1587,10 @@ export interface AppSpecWorkerLogDestination { * Name of the log destination. Minimum length: 2. Maximum length: 42. */ name: pulumi.Input; + /** + * OpenSearch configuration. + */ + openSearch?: pulumi.Input; /** * Papertrail configuration. */ @@ -1511,12 +1611,40 @@ export interface AppSpecWorkerLogDestinationDatadog { export interface AppSpecWorkerLogDestinationLogtail { /** * Logtail token. - * - * A `database` can contain: */ token: pulumi.Input; } +export interface AppSpecWorkerLogDestinationOpenSearch { + /** + * Basic authentication details. + */ + basicAuth: pulumi.Input; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: pulumi.Input; + /** + * OpenSearch endpoint. + */ + endpoint?: pulumi.Input; + /** + * OpenSearch index name. + */ + indexName?: pulumi.Input; +} + +export interface AppSpecWorkerLogDestinationOpenSearchBasicAuth { + /** + * Password for basic authentication. + */ + password?: pulumi.Input; + /** + * user for basic authentication. + */ + user?: pulumi.Input; +} + export interface AppSpecWorkerLogDestinationPapertrail { /** * Papertrail syslog endpoint. @@ -1674,10 +1802,7 @@ export interface DatabasePostgresqlConfigPgbouncer { } export interface DatabasePostgresqlConfigTimescaledb { - /** - * TimescaleDB extension configuration values - */ - timescaledb?: pulumi.Input; + maxBackgroundWorkers?: pulumi.Input; } export interface DatabaseUserSetting { diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index d8266cd7..a0b194ab 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -23,7 +23,7 @@ export interface AppDedicatedIp { export interface AppSpec { /** - * Describes an alert policy for the app. + * Describes an alert policy for the component. */ alerts?: outputs.AppSpecAlert[]; databases?: outputs.AppSpecDatabase[]; @@ -40,7 +40,7 @@ export interface AppSpec { */ egresses?: outputs.AppSpecEgress[]; /** - * Describes an app-wide environment variable made available to all components. + * Describes an environment variable made available to an app competent. */ envs?: outputs.AppSpecEnv[]; /** @@ -54,7 +54,7 @@ export interface AppSpec { ingress: outputs.AppSpecIngress; jobs?: outputs.AppSpecJob[]; /** - * The name of the app. Must be unique across all apps in the same account. + * The name of the component. */ name: string; /** @@ -72,7 +72,7 @@ export interface AppSpecAlert { */ disabled?: boolean; /** - * The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + * The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. */ rule: string; } @@ -174,7 +174,7 @@ export interface AppSpecFunction { */ envs?: outputs.AppSpecFunctionEnv[]; /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. */ git?: outputs.AppSpecFunctionGit; /** @@ -345,6 +345,10 @@ export interface AppSpecFunctionLogDestination { * Name of the log destination. Minimum length: 2. Maximum length: 42. */ name: string; + /** + * OpenSearch configuration. + */ + openSearch?: outputs.AppSpecFunctionLogDestinationOpenSearch; /** * Papertrail configuration. */ @@ -365,12 +369,40 @@ export interface AppSpecFunctionLogDestinationDatadog { export interface AppSpecFunctionLogDestinationLogtail { /** * Logtail token. - * - * A `database` can contain: */ token: string; } +export interface AppSpecFunctionLogDestinationOpenSearch { + /** + * Basic authentication details. + */ + basicAuth: outputs.AppSpecFunctionLogDestinationOpenSearchBasicAuth; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: string; + /** + * OpenSearch endpoint. + */ + endpoint?: string; + /** + * OpenSearch index name. + */ + indexName?: string; +} + +export interface AppSpecFunctionLogDestinationOpenSearchBasicAuth { + /** + * Password for basic authentication. + */ + password?: string; + /** + * user for basic authentication. + */ + user?: string; +} + export interface AppSpecFunctionLogDestinationPapertrail { /** * Papertrail syslog endpoint. @@ -432,15 +464,15 @@ export interface AppSpecIngressRuleComponent { export interface AppSpecIngressRuleCors { /** - * Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + * Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. */ allowCredentials?: boolean; /** - * The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + * The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. */ allowHeaders?: string[]; /** - * The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + * The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. */ allowMethods?: string[]; /** @@ -448,7 +480,7 @@ export interface AppSpecIngressRuleCors { */ allowOrigins?: outputs.AppSpecIngressRuleCorsAllowOrigins; /** - * The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + * The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. */ exposeHeaders?: string[]; /** @@ -533,7 +565,7 @@ export interface AppSpecJob { */ envs?: outputs.AppSpecJobEnv[]; /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. */ git?: outputs.AppSpecJobGit; /** @@ -712,6 +744,10 @@ export interface AppSpecJobLogDestination { * Name of the log destination. Minimum length: 2. Maximum length: 42. */ name: string; + /** + * OpenSearch configuration. + */ + openSearch?: outputs.AppSpecJobLogDestinationOpenSearch; /** * Papertrail configuration. */ @@ -732,12 +768,40 @@ export interface AppSpecJobLogDestinationDatadog { export interface AppSpecJobLogDestinationLogtail { /** * Logtail token. - * - * A `database` can contain: */ token: string; } +export interface AppSpecJobLogDestinationOpenSearch { + /** + * Basic authentication details. + */ + basicAuth: outputs.AppSpecJobLogDestinationOpenSearchBasicAuth; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: string; + /** + * OpenSearch endpoint. + */ + endpoint?: string; + /** + * OpenSearch index name. + */ + indexName?: string; +} + +export interface AppSpecJobLogDestinationOpenSearchBasicAuth { + /** + * Password for basic authentication. + */ + password?: string; + /** + * user for basic authentication. + */ + user?: string; +} + export interface AppSpecJobLogDestinationPapertrail { /** * Papertrail syslog endpoint. @@ -777,7 +841,7 @@ export interface AppSpecService { */ envs?: outputs.AppSpecServiceEnv[]; /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. */ git?: outputs.AppSpecServiceGit; /** @@ -1072,6 +1136,10 @@ export interface AppSpecServiceLogDestination { * Name of the log destination. Minimum length: 2. Maximum length: 42. */ name: string; + /** + * OpenSearch configuration. + */ + openSearch?: outputs.AppSpecServiceLogDestinationOpenSearch; /** * Papertrail configuration. */ @@ -1092,12 +1160,40 @@ export interface AppSpecServiceLogDestinationDatadog { export interface AppSpecServiceLogDestinationLogtail { /** * Logtail token. - * - * A `database` can contain: */ token: string; } +export interface AppSpecServiceLogDestinationOpenSearch { + /** + * Basic authentication details. + */ + basicAuth: outputs.AppSpecServiceLogDestinationOpenSearchBasicAuth; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: string; + /** + * OpenSearch endpoint. + */ + endpoint?: string; + /** + * OpenSearch index name. + */ + indexName?: string; +} + +export interface AppSpecServiceLogDestinationOpenSearchBasicAuth { + /** + * Password for basic authentication. + */ + password?: string; + /** + * user for basic authentication. + */ + user?: string; +} + export interface AppSpecServiceLogDestinationPapertrail { /** * Papertrail syslog endpoint. @@ -1148,7 +1244,7 @@ export interface AppSpecStaticSite { */ errorDocument?: string; /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. */ git?: outputs.AppSpecStaticSiteGit; /** @@ -1320,7 +1416,7 @@ export interface AppSpecWorker { */ envs?: outputs.AppSpecWorkerEnv[]; /** - * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + * A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. */ git?: outputs.AppSpecWorkerGit; /** @@ -1491,6 +1587,10 @@ export interface AppSpecWorkerLogDestination { * Name of the log destination. Minimum length: 2. Maximum length: 42. */ name: string; + /** + * OpenSearch configuration. + */ + openSearch?: outputs.AppSpecWorkerLogDestinationOpenSearch; /** * Papertrail configuration. */ @@ -1511,12 +1611,40 @@ export interface AppSpecWorkerLogDestinationDatadog { export interface AppSpecWorkerLogDestinationLogtail { /** * Logtail token. - * - * A `database` can contain: */ token: string; } +export interface AppSpecWorkerLogDestinationOpenSearch { + /** + * Basic authentication details. + */ + basicAuth: outputs.AppSpecWorkerLogDestinationOpenSearchBasicAuth; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: string; + /** + * OpenSearch endpoint. + */ + endpoint?: string; + /** + * OpenSearch index name. + */ + indexName?: string; +} + +export interface AppSpecWorkerLogDestinationOpenSearchBasicAuth { + /** + * Password for basic authentication. + */ + password?: string; + /** + * user for basic authentication. + */ + user?: string; +} + export interface AppSpecWorkerLogDestinationPapertrail { /** * Papertrail syslog endpoint. @@ -1674,10 +1802,7 @@ export interface DatabasePostgresqlConfigPgbouncer { } export interface DatabasePostgresqlConfigTimescaledb { - /** - * TimescaleDB extension configuration values - */ - timescaledb?: number; + maxBackgroundWorkers?: number; } export interface DatabaseUserSetting { @@ -2121,6 +2246,10 @@ export interface GetAppSpecFunctionLogDestination { * The name of the component. */ name: string; + /** + * OpenSearch configuration. + */ + openSearch?: outputs.GetAppSpecFunctionLogDestinationOpenSearch; /** * Papertrail configuration. */ @@ -2133,7 +2262,7 @@ export interface GetAppSpecFunctionLogDestinationDatadog { */ apiKey: string; /** - * Datadog HTTP log intake endpoint. + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. */ endpoint?: string; } @@ -2145,9 +2274,39 @@ export interface GetAppSpecFunctionLogDestinationLogtail { token: string; } +export interface GetAppSpecFunctionLogDestinationOpenSearch { + /** + * OpenSearch basic auth + */ + basicAuth: outputs.GetAppSpecFunctionLogDestinationOpenSearchBasicAuth; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: string; + /** + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + */ + endpoint?: string; + /** + * The index name to use for the logs. If not set, the default index name is \"logs\". + */ + indexName?: string; +} + +export interface GetAppSpecFunctionLogDestinationOpenSearchBasicAuth { + /** + * Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + */ + password?: string; + /** + * Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + */ + user?: string; +} + export interface GetAppSpecFunctionLogDestinationPapertrail { /** - * Datadog HTTP log intake endpoint. + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. */ endpoint: string; } @@ -2459,6 +2618,10 @@ export interface GetAppSpecJobLogDestination { * The name of the component. */ name: string; + /** + * OpenSearch configuration. + */ + openSearch?: outputs.GetAppSpecJobLogDestinationOpenSearch; /** * Papertrail configuration. */ @@ -2471,7 +2634,7 @@ export interface GetAppSpecJobLogDestinationDatadog { */ apiKey: string; /** - * Datadog HTTP log intake endpoint. + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. */ endpoint?: string; } @@ -2483,9 +2646,39 @@ export interface GetAppSpecJobLogDestinationLogtail { token: string; } +export interface GetAppSpecJobLogDestinationOpenSearch { + /** + * OpenSearch basic auth + */ + basicAuth: outputs.GetAppSpecJobLogDestinationOpenSearchBasicAuth; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: string; + /** + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + */ + endpoint?: string; + /** + * The index name to use for the logs. If not set, the default index name is \"logs\". + */ + indexName?: string; +} + +export interface GetAppSpecJobLogDestinationOpenSearchBasicAuth { + /** + * Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + */ + password?: string; + /** + * Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + */ + user?: string; +} + export interface GetAppSpecJobLogDestinationPapertrail { /** - * Datadog HTTP log intake endpoint. + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. */ endpoint: string; } @@ -2813,6 +3006,10 @@ export interface GetAppSpecServiceLogDestination { * The name of the component. */ name: string; + /** + * OpenSearch configuration. + */ + openSearch?: outputs.GetAppSpecServiceLogDestinationOpenSearch; /** * Papertrail configuration. */ @@ -2825,7 +3022,7 @@ export interface GetAppSpecServiceLogDestinationDatadog { */ apiKey: string; /** - * Datadog HTTP log intake endpoint. + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. */ endpoint?: string; } @@ -2837,9 +3034,39 @@ export interface GetAppSpecServiceLogDestinationLogtail { token: string; } +export interface GetAppSpecServiceLogDestinationOpenSearch { + /** + * OpenSearch basic auth + */ + basicAuth: outputs.GetAppSpecServiceLogDestinationOpenSearchBasicAuth; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: string; + /** + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + */ + endpoint?: string; + /** + * The index name to use for the logs. If not set, the default index name is \"logs\". + */ + indexName?: string; +} + +export interface GetAppSpecServiceLogDestinationOpenSearchBasicAuth { + /** + * Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + */ + password?: string; + /** + * Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + */ + user?: string; +} + export interface GetAppSpecServiceLogDestinationPapertrail { /** - * Datadog HTTP log intake endpoint. + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. */ endpoint: string; } @@ -3228,6 +3455,10 @@ export interface GetAppSpecWorkerLogDestination { * The name of the component. */ name: string; + /** + * OpenSearch configuration. + */ + openSearch?: outputs.GetAppSpecWorkerLogDestinationOpenSearch; /** * Papertrail configuration. */ @@ -3240,7 +3471,7 @@ export interface GetAppSpecWorkerLogDestinationDatadog { */ apiKey: string; /** - * Datadog HTTP log intake endpoint. + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. */ endpoint?: string; } @@ -3252,9 +3483,39 @@ export interface GetAppSpecWorkerLogDestinationLogtail { token: string; } +export interface GetAppSpecWorkerLogDestinationOpenSearch { + /** + * OpenSearch basic auth + */ + basicAuth: outputs.GetAppSpecWorkerLogDestinationOpenSearchBasicAuth; + /** + * The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `clusterName` is not set, a new cluster will be provisioned. + */ + clusterName?: string; + /** + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + */ + endpoint?: string; + /** + * The index name to use for the logs. If not set, the default index name is \"logs\". + */ + indexName?: string; +} + +export interface GetAppSpecWorkerLogDestinationOpenSearchBasicAuth { + /** + * Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + */ + password?: string; + /** + * Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when clusterName is set. + */ + user?: string; +} + export interface GetAppSpecWorkerLogDestinationPapertrail { /** - * Datadog HTTP log intake endpoint. + * OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. */ endpoint: string; } diff --git a/sdk/python/pulumi_digitalocean/_inputs.py b/sdk/python/pulumi_digitalocean/_inputs.py index 1743adbc..76a6f64f 100644 --- a/sdk/python/pulumi_digitalocean/_inputs.py +++ b/sdk/python/pulumi_digitalocean/_inputs.py @@ -29,6 +29,8 @@ 'AppSpecFunctionLogDestinationArgs', 'AppSpecFunctionLogDestinationDatadogArgs', 'AppSpecFunctionLogDestinationLogtailArgs', + 'AppSpecFunctionLogDestinationOpenSearchArgs', + 'AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs', 'AppSpecFunctionLogDestinationPapertrailArgs', 'AppSpecFunctionRouteArgs', 'AppSpecIngressArgs', @@ -50,6 +52,8 @@ 'AppSpecJobLogDestinationArgs', 'AppSpecJobLogDestinationDatadogArgs', 'AppSpecJobLogDestinationLogtailArgs', + 'AppSpecJobLogDestinationOpenSearchArgs', + 'AppSpecJobLogDestinationOpenSearchBasicAuthArgs', 'AppSpecJobLogDestinationPapertrailArgs', 'AppSpecServiceArgs', 'AppSpecServiceAlertArgs', @@ -68,6 +72,8 @@ 'AppSpecServiceLogDestinationArgs', 'AppSpecServiceLogDestinationDatadogArgs', 'AppSpecServiceLogDestinationLogtailArgs', + 'AppSpecServiceLogDestinationOpenSearchArgs', + 'AppSpecServiceLogDestinationOpenSearchBasicAuthArgs', 'AppSpecServiceLogDestinationPapertrailArgs', 'AppSpecServiceRouteArgs', 'AppSpecStaticSiteArgs', @@ -89,6 +95,8 @@ 'AppSpecWorkerLogDestinationArgs', 'AppSpecWorkerLogDestinationDatadogArgs', 'AppSpecWorkerLogDestinationLogtailArgs', + 'AppSpecWorkerLogDestinationOpenSearchArgs', + 'AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs', 'AppSpecWorkerLogDestinationPapertrailArgs', 'DatabaseClusterBackupRestoreArgs', 'DatabaseClusterMaintenanceWindowArgs', @@ -224,11 +232,11 @@ def __init__(__self__, *, static_sites: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecStaticSiteArgs']]]] = None, workers: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecWorkerArgs']]]] = None): """ - :param pulumi.Input[str] name: The name of the app. Must be unique across all apps in the same account. - :param pulumi.Input[Sequence[pulumi.Input['AppSpecAlertArgs']]] alerts: Describes an alert policy for the app. + :param pulumi.Input[str] name: The name of the component. + :param pulumi.Input[Sequence[pulumi.Input['AppSpecAlertArgs']]] alerts: Describes an alert policy for the component. :param pulumi.Input[Sequence[pulumi.Input['AppSpecDomainNameArgs']]] domain_names: Describes a domain where the application will be made available. :param pulumi.Input[Sequence[pulumi.Input['AppSpecEgressArgs']]] egresses: Specification for app egress configurations. - :param pulumi.Input[Sequence[pulumi.Input['AppSpecEnvArgs']]] envs: Describes an app-wide environment variable made available to all components. + :param pulumi.Input[Sequence[pulumi.Input['AppSpecEnvArgs']]] envs: Describes an environment variable made available to an app competent. :param pulumi.Input[Sequence[pulumi.Input[str]]] features: A list of the features applied to the app. The default buildpack can be overridden here. List of available buildpacks can be found using the [doctl CLI](https://docs.digitalocean.com/reference/doctl/reference/apps/list-buildpacks/) :param pulumi.Input['AppSpecIngressArgs'] ingress: Specification for component routing, rewrites, and redirects. :param pulumi.Input[str] region: The slug for the DigitalOcean data center region hosting the app. @@ -270,7 +278,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> pulumi.Input[str]: """ - The name of the app. Must be unique across all apps in the same account. + The name of the component. """ return pulumi.get(self, "name") @@ -282,7 +290,7 @@ def name(self, value: pulumi.Input[str]): @pulumi.getter def alerts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecAlertArgs']]]]: """ - Describes an alert policy for the app. + Describes an alert policy for the component. """ return pulumi.get(self, "alerts") @@ -337,7 +345,7 @@ def egresses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecEg @pulumi.getter def envs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecEnvArgs']]]]: """ - Describes an app-wide environment variable made available to all components. + Describes an environment variable made available to an app competent. """ return pulumi.get(self, "envs") @@ -433,7 +441,7 @@ def __init__(__self__, *, rule: pulumi.Input[str], disabled: Optional[pulumi.Input[bool]] = None): """ - :param pulumi.Input[str] rule: The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + :param pulumi.Input[str] rule: The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. :param pulumi.Input[bool] disabled: Determines whether or not the alert is disabled (default: `false`). """ pulumi.set(__self__, "rule", rule) @@ -444,7 +452,7 @@ def __init__(__self__, *, @pulumi.getter def rule(self) -> pulumi.Input[str]: """ - The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. """ return pulumi.get(self, "rule") @@ -776,7 +784,7 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input['AppSpecFunctionAlertArgs']]] alerts: Describes an alert policy for the component. :param pulumi.Input['AppSpecFunctionCorsArgs'] cors: The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. :param pulumi.Input[Sequence[pulumi.Input['AppSpecFunctionEnvArgs']]] envs: Describes an environment variable made available to an app competent. - :param pulumi.Input['AppSpecFunctionGitArgs'] git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + :param pulumi.Input['AppSpecFunctionGitArgs'] git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. :param pulumi.Input['AppSpecFunctionGithubArgs'] github: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param pulumi.Input['AppSpecFunctionGitlabArgs'] gitlab: A Gitlab repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/gitlab/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param pulumi.Input[Sequence[pulumi.Input['AppSpecFunctionLogDestinationArgs']]] log_destinations: Describes a log forwarding destination. @@ -862,7 +870,7 @@ def envs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecFuncti @pulumi.getter def git(self) -> Optional[pulumi.Input['AppSpecFunctionGitArgs']]: """ - A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. """ return pulumi.get(self, "git") @@ -1403,11 +1411,13 @@ def __init__(__self__, *, name: pulumi.Input[str], datadog: Optional[pulumi.Input['AppSpecFunctionLogDestinationDatadogArgs']] = None, logtail: Optional[pulumi.Input['AppSpecFunctionLogDestinationLogtailArgs']] = None, + open_search: Optional[pulumi.Input['AppSpecFunctionLogDestinationOpenSearchArgs']] = None, papertrail: Optional[pulumi.Input['AppSpecFunctionLogDestinationPapertrailArgs']] = None): """ :param pulumi.Input[str] name: Name of the log destination. Minimum length: 2. Maximum length: 42. :param pulumi.Input['AppSpecFunctionLogDestinationDatadogArgs'] datadog: Datadog configuration. :param pulumi.Input['AppSpecFunctionLogDestinationLogtailArgs'] logtail: Logtail configuration. + :param pulumi.Input['AppSpecFunctionLogDestinationOpenSearchArgs'] open_search: OpenSearch configuration. :param pulumi.Input['AppSpecFunctionLogDestinationPapertrailArgs'] papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -1415,6 +1425,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -1454,6 +1466,18 @@ def logtail(self) -> Optional[pulumi.Input['AppSpecFunctionLogDestinationLogtail def logtail(self, value: Optional[pulumi.Input['AppSpecFunctionLogDestinationLogtailArgs']]): pulumi.set(self, "logtail", value) + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional[pulumi.Input['AppSpecFunctionLogDestinationOpenSearchArgs']]: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + + @open_search.setter + def open_search(self, value: Optional[pulumi.Input['AppSpecFunctionLogDestinationOpenSearchArgs']]): + pulumi.set(self, "open_search", value) + @property @pulumi.getter def papertrail(self) -> Optional[pulumi.Input['AppSpecFunctionLogDestinationPapertrailArgs']]: @@ -1511,8 +1535,6 @@ def __init__(__self__, *, token: pulumi.Input[str]): """ :param pulumi.Input[str] token: Logtail token. - - A `database` can contain: """ pulumi.set(__self__, "token", token) @@ -1521,8 +1543,6 @@ def __init__(__self__, *, def token(self) -> pulumi.Input[str]: """ Logtail token. - - A `database` can contain: """ return pulumi.get(self, "token") @@ -1531,6 +1551,115 @@ def token(self, value: pulumi.Input[str]): pulumi.set(self, "token", value) +@pulumi.input_type +class AppSpecFunctionLogDestinationOpenSearchArgs: + def __init__(__self__, *, + basic_auth: pulumi.Input['AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs'], + cluster_name: Optional[pulumi.Input[str]] = None, + endpoint: Optional[pulumi.Input[str]] = None, + index_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input['AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs'] basic_auth: Basic authentication details. + :param pulumi.Input[str] cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param pulumi.Input[str] endpoint: OpenSearch endpoint. + :param pulumi.Input[str] index_name: OpenSearch index name. + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> pulumi.Input['AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs']: + """ + Basic authentication details. + """ + return pulumi.get(self, "basic_auth") + + @basic_auth.setter + def basic_auth(self, value: pulumi.Input['AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs']): + pulumi.set(self, "basic_auth", value) + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @cluster_name.setter + def cluster_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "cluster_name", value) + + @property + @pulumi.getter + def endpoint(self) -> Optional[pulumi.Input[str]]: + """ + OpenSearch endpoint. + """ + return pulumi.get(self, "endpoint") + + @endpoint.setter + def endpoint(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "endpoint", value) + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[pulumi.Input[str]]: + """ + OpenSearch index name. + """ + return pulumi.get(self, "index_name") + + @index_name.setter + def index_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "index_name", value) + + +@pulumi.input_type +class AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs: + def __init__(__self__, *, + password: Optional[pulumi.Input[str]] = None, + user: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] password: Password for basic authentication. + :param pulumi.Input[str] user: user for basic authentication. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[pulumi.Input[str]]: + """ + Password for basic authentication. + """ + return pulumi.get(self, "password") + + @password.setter + def password(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "password", value) + + @property + @pulumi.getter + def user(self) -> Optional[pulumi.Input[str]]: + """ + user for basic authentication. + """ + return pulumi.get(self, "user") + + @user.setter + def user(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "user", value) + + @pulumi.input_type class AppSpecFunctionLogDestinationPapertrailArgs: def __init__(__self__, *, @@ -1751,11 +1880,11 @@ def __init__(__self__, *, expose_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, max_age: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[bool] allow_credentials: Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. - :param pulumi.Input[Sequence[pulumi.Input[str]]] allow_headers: The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. - :param pulumi.Input[Sequence[pulumi.Input[str]]] allow_methods: The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + :param pulumi.Input[bool] allow_credentials: Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. + :param pulumi.Input[Sequence[pulumi.Input[str]]] allow_headers: The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. + :param pulumi.Input[Sequence[pulumi.Input[str]]] allow_methods: The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. :param pulumi.Input['AppSpecIngressRuleCorsAllowOriginsArgs'] allow_origins: The `Access-Control-Allow-Origin` can be - :param pulumi.Input[Sequence[pulumi.Input[str]]] expose_headers: The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + :param pulumi.Input[Sequence[pulumi.Input[str]]] expose_headers: The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. :param pulumi.Input[str] max_age: An optional duration specifying how long browsers can cache the results of a preflight request. This configures the Access-Control-Max-Age header. Example: `5h30m`. """ if allow_credentials is not None: @@ -1775,7 +1904,7 @@ def __init__(__self__, *, @pulumi.getter(name="allowCredentials") def allow_credentials(self) -> Optional[pulumi.Input[bool]]: """ - Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. """ return pulumi.get(self, "allow_credentials") @@ -1787,7 +1916,7 @@ def allow_credentials(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="allowHeaders") def allow_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. """ return pulumi.get(self, "allow_headers") @@ -1799,7 +1928,7 @@ def allow_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] @pulumi.getter(name="allowMethods") def allow_methods(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. """ return pulumi.get(self, "allow_methods") @@ -1823,7 +1952,7 @@ def allow_origins(self, value: Optional[pulumi.Input['AppSpecIngressRuleCorsAllo @pulumi.getter(name="exposeHeaders") def expose_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. """ return pulumi.get(self, "expose_headers") @@ -2062,7 +2191,7 @@ def __init__(__self__, *, :param pulumi.Input[str] dockerfile_path: The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. :param pulumi.Input[str] environment_slug: An environment slug describing the type of this app. :param pulumi.Input[Sequence[pulumi.Input['AppSpecJobEnvArgs']]] envs: Describes an environment variable made available to an app competent. - :param pulumi.Input['AppSpecJobGitArgs'] git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + :param pulumi.Input['AppSpecJobGitArgs'] git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. :param pulumi.Input['AppSpecJobGithubArgs'] github: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param pulumi.Input['AppSpecJobGitlabArgs'] gitlab: A Gitlab repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/gitlab/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param pulumi.Input['AppSpecJobImageArgs'] image: An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. @@ -2185,7 +2314,7 @@ def envs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecJobEnv @pulumi.getter def git(self) -> Optional[pulumi.Input['AppSpecJobGitArgs']]: """ - A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. """ return pulumi.get(self, "git") @@ -2739,11 +2868,13 @@ def __init__(__self__, *, name: pulumi.Input[str], datadog: Optional[pulumi.Input['AppSpecJobLogDestinationDatadogArgs']] = None, logtail: Optional[pulumi.Input['AppSpecJobLogDestinationLogtailArgs']] = None, + open_search: Optional[pulumi.Input['AppSpecJobLogDestinationOpenSearchArgs']] = None, papertrail: Optional[pulumi.Input['AppSpecJobLogDestinationPapertrailArgs']] = None): """ :param pulumi.Input[str] name: Name of the log destination. Minimum length: 2. Maximum length: 42. :param pulumi.Input['AppSpecJobLogDestinationDatadogArgs'] datadog: Datadog configuration. :param pulumi.Input['AppSpecJobLogDestinationLogtailArgs'] logtail: Logtail configuration. + :param pulumi.Input['AppSpecJobLogDestinationOpenSearchArgs'] open_search: OpenSearch configuration. :param pulumi.Input['AppSpecJobLogDestinationPapertrailArgs'] papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -2751,6 +2882,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -2790,6 +2923,18 @@ def logtail(self) -> Optional[pulumi.Input['AppSpecJobLogDestinationLogtailArgs' def logtail(self, value: Optional[pulumi.Input['AppSpecJobLogDestinationLogtailArgs']]): pulumi.set(self, "logtail", value) + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional[pulumi.Input['AppSpecJobLogDestinationOpenSearchArgs']]: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + + @open_search.setter + def open_search(self, value: Optional[pulumi.Input['AppSpecJobLogDestinationOpenSearchArgs']]): + pulumi.set(self, "open_search", value) + @property @pulumi.getter def papertrail(self) -> Optional[pulumi.Input['AppSpecJobLogDestinationPapertrailArgs']]: @@ -2847,8 +2992,6 @@ def __init__(__self__, *, token: pulumi.Input[str]): """ :param pulumi.Input[str] token: Logtail token. - - A `database` can contain: """ pulumi.set(__self__, "token", token) @@ -2857,8 +3000,6 @@ def __init__(__self__, *, def token(self) -> pulumi.Input[str]: """ Logtail token. - - A `database` can contain: """ return pulumi.get(self, "token") @@ -2867,6 +3008,115 @@ def token(self, value: pulumi.Input[str]): pulumi.set(self, "token", value) +@pulumi.input_type +class AppSpecJobLogDestinationOpenSearchArgs: + def __init__(__self__, *, + basic_auth: pulumi.Input['AppSpecJobLogDestinationOpenSearchBasicAuthArgs'], + cluster_name: Optional[pulumi.Input[str]] = None, + endpoint: Optional[pulumi.Input[str]] = None, + index_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input['AppSpecJobLogDestinationOpenSearchBasicAuthArgs'] basic_auth: Basic authentication details. + :param pulumi.Input[str] cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param pulumi.Input[str] endpoint: OpenSearch endpoint. + :param pulumi.Input[str] index_name: OpenSearch index name. + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> pulumi.Input['AppSpecJobLogDestinationOpenSearchBasicAuthArgs']: + """ + Basic authentication details. + """ + return pulumi.get(self, "basic_auth") + + @basic_auth.setter + def basic_auth(self, value: pulumi.Input['AppSpecJobLogDestinationOpenSearchBasicAuthArgs']): + pulumi.set(self, "basic_auth", value) + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @cluster_name.setter + def cluster_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "cluster_name", value) + + @property + @pulumi.getter + def endpoint(self) -> Optional[pulumi.Input[str]]: + """ + OpenSearch endpoint. + """ + return pulumi.get(self, "endpoint") + + @endpoint.setter + def endpoint(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "endpoint", value) + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[pulumi.Input[str]]: + """ + OpenSearch index name. + """ + return pulumi.get(self, "index_name") + + @index_name.setter + def index_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "index_name", value) + + +@pulumi.input_type +class AppSpecJobLogDestinationOpenSearchBasicAuthArgs: + def __init__(__self__, *, + password: Optional[pulumi.Input[str]] = None, + user: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] password: Password for basic authentication. + :param pulumi.Input[str] user: user for basic authentication. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[pulumi.Input[str]]: + """ + Password for basic authentication. + """ + return pulumi.get(self, "password") + + @password.setter + def password(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "password", value) + + @property + @pulumi.getter + def user(self) -> Optional[pulumi.Input[str]]: + """ + user for basic authentication. + """ + return pulumi.get(self, "user") + + @user.setter + def user(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "user", value) + + @pulumi.input_type class AppSpecJobLogDestinationPapertrailArgs: def __init__(__self__, *, @@ -2922,7 +3172,7 @@ def __init__(__self__, *, :param pulumi.Input[str] dockerfile_path: The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. :param pulumi.Input[str] environment_slug: An environment slug describing the type of this app. :param pulumi.Input[Sequence[pulumi.Input['AppSpecServiceEnvArgs']]] envs: Describes an environment variable made available to an app competent. - :param pulumi.Input['AppSpecServiceGitArgs'] git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + :param pulumi.Input['AppSpecServiceGitArgs'] git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. :param pulumi.Input['AppSpecServiceGithubArgs'] github: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param pulumi.Input['AppSpecServiceGitlabArgs'] gitlab: A Gitlab repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/gitlab/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param pulumi.Input['AppSpecServiceHealthCheckArgs'] health_check: A health check to determine the availability of this component. @@ -3085,7 +3335,7 @@ def envs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecServic @pulumi.getter def git(self) -> Optional[pulumi.Input['AppSpecServiceGitArgs']]: """ - A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. """ return pulumi.get(self, "git") @@ -4054,11 +4304,13 @@ def __init__(__self__, *, name: pulumi.Input[str], datadog: Optional[pulumi.Input['AppSpecServiceLogDestinationDatadogArgs']] = None, logtail: Optional[pulumi.Input['AppSpecServiceLogDestinationLogtailArgs']] = None, + open_search: Optional[pulumi.Input['AppSpecServiceLogDestinationOpenSearchArgs']] = None, papertrail: Optional[pulumi.Input['AppSpecServiceLogDestinationPapertrailArgs']] = None): """ :param pulumi.Input[str] name: Name of the log destination. Minimum length: 2. Maximum length: 42. :param pulumi.Input['AppSpecServiceLogDestinationDatadogArgs'] datadog: Datadog configuration. :param pulumi.Input['AppSpecServiceLogDestinationLogtailArgs'] logtail: Logtail configuration. + :param pulumi.Input['AppSpecServiceLogDestinationOpenSearchArgs'] open_search: OpenSearch configuration. :param pulumi.Input['AppSpecServiceLogDestinationPapertrailArgs'] papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -4066,6 +4318,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -4105,6 +4359,18 @@ def logtail(self) -> Optional[pulumi.Input['AppSpecServiceLogDestinationLogtailA def logtail(self, value: Optional[pulumi.Input['AppSpecServiceLogDestinationLogtailArgs']]): pulumi.set(self, "logtail", value) + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional[pulumi.Input['AppSpecServiceLogDestinationOpenSearchArgs']]: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + + @open_search.setter + def open_search(self, value: Optional[pulumi.Input['AppSpecServiceLogDestinationOpenSearchArgs']]): + pulumi.set(self, "open_search", value) + @property @pulumi.getter def papertrail(self) -> Optional[pulumi.Input['AppSpecServiceLogDestinationPapertrailArgs']]: @@ -4162,8 +4428,6 @@ def __init__(__self__, *, token: pulumi.Input[str]): """ :param pulumi.Input[str] token: Logtail token. - - A `database` can contain: """ pulumi.set(__self__, "token", token) @@ -4172,8 +4436,6 @@ def __init__(__self__, *, def token(self) -> pulumi.Input[str]: """ Logtail token. - - A `database` can contain: """ return pulumi.get(self, "token") @@ -4182,6 +4444,115 @@ def token(self, value: pulumi.Input[str]): pulumi.set(self, "token", value) +@pulumi.input_type +class AppSpecServiceLogDestinationOpenSearchArgs: + def __init__(__self__, *, + basic_auth: pulumi.Input['AppSpecServiceLogDestinationOpenSearchBasicAuthArgs'], + cluster_name: Optional[pulumi.Input[str]] = None, + endpoint: Optional[pulumi.Input[str]] = None, + index_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input['AppSpecServiceLogDestinationOpenSearchBasicAuthArgs'] basic_auth: Basic authentication details. + :param pulumi.Input[str] cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param pulumi.Input[str] endpoint: OpenSearch endpoint. + :param pulumi.Input[str] index_name: OpenSearch index name. + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> pulumi.Input['AppSpecServiceLogDestinationOpenSearchBasicAuthArgs']: + """ + Basic authentication details. + """ + return pulumi.get(self, "basic_auth") + + @basic_auth.setter + def basic_auth(self, value: pulumi.Input['AppSpecServiceLogDestinationOpenSearchBasicAuthArgs']): + pulumi.set(self, "basic_auth", value) + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @cluster_name.setter + def cluster_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "cluster_name", value) + + @property + @pulumi.getter + def endpoint(self) -> Optional[pulumi.Input[str]]: + """ + OpenSearch endpoint. + """ + return pulumi.get(self, "endpoint") + + @endpoint.setter + def endpoint(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "endpoint", value) + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[pulumi.Input[str]]: + """ + OpenSearch index name. + """ + return pulumi.get(self, "index_name") + + @index_name.setter + def index_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "index_name", value) + + +@pulumi.input_type +class AppSpecServiceLogDestinationOpenSearchBasicAuthArgs: + def __init__(__self__, *, + password: Optional[pulumi.Input[str]] = None, + user: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] password: Password for basic authentication. + :param pulumi.Input[str] user: user for basic authentication. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[pulumi.Input[str]]: + """ + Password for basic authentication. + """ + return pulumi.get(self, "password") + + @password.setter + def password(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "password", value) + + @property + @pulumi.getter + def user(self) -> Optional[pulumi.Input[str]]: + """ + user for basic authentication. + """ + return pulumi.get(self, "user") + + @user.setter + def user(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "user", value) + + @pulumi.input_type class AppSpecServiceLogDestinationPapertrailArgs: def __init__(__self__, *, @@ -4270,7 +4641,7 @@ def __init__(__self__, *, :param pulumi.Input[str] environment_slug: An environment slug describing the type of this app. :param pulumi.Input[Sequence[pulumi.Input['AppSpecStaticSiteEnvArgs']]] envs: Describes an environment variable made available to an app competent. :param pulumi.Input[str] error_document: The name of the error document to use when serving this static site. - :param pulumi.Input['AppSpecStaticSiteGitArgs'] git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + :param pulumi.Input['AppSpecStaticSiteGitArgs'] git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. :param pulumi.Input['AppSpecStaticSiteGithubArgs'] github: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param pulumi.Input['AppSpecStaticSiteGitlabArgs'] gitlab: A Gitlab repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/gitlab/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param pulumi.Input[str] index_document: The name of the index document to use when serving this static site. @@ -4415,7 +4786,7 @@ def error_document(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def git(self) -> Optional[pulumi.Input['AppSpecStaticSiteGitArgs']]: """ - A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. """ return pulumi.get(self, "git") @@ -4943,7 +5314,7 @@ def __init__(__self__, *, :param pulumi.Input[str] dockerfile_path: The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. :param pulumi.Input[str] environment_slug: An environment slug describing the type of this app. :param pulumi.Input[Sequence[pulumi.Input['AppSpecWorkerEnvArgs']]] envs: Describes an environment variable made available to an app competent. - :param pulumi.Input['AppSpecWorkerGitArgs'] git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + :param pulumi.Input['AppSpecWorkerGitArgs'] git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. :param pulumi.Input['AppSpecWorkerGithubArgs'] github: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param pulumi.Input['AppSpecWorkerGitlabArgs'] gitlab: A Gitlab repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/gitlab/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param pulumi.Input['AppSpecWorkerImageArgs'] image: An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. @@ -5059,7 +5430,7 @@ def envs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecWorker @pulumi.getter def git(self) -> Optional[pulumi.Input['AppSpecWorkerGitArgs']]: """ - A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. """ return pulumi.get(self, "git") @@ -5597,11 +5968,13 @@ def __init__(__self__, *, name: pulumi.Input[str], datadog: Optional[pulumi.Input['AppSpecWorkerLogDestinationDatadogArgs']] = None, logtail: Optional[pulumi.Input['AppSpecWorkerLogDestinationLogtailArgs']] = None, + open_search: Optional[pulumi.Input['AppSpecWorkerLogDestinationOpenSearchArgs']] = None, papertrail: Optional[pulumi.Input['AppSpecWorkerLogDestinationPapertrailArgs']] = None): """ :param pulumi.Input[str] name: Name of the log destination. Minimum length: 2. Maximum length: 42. :param pulumi.Input['AppSpecWorkerLogDestinationDatadogArgs'] datadog: Datadog configuration. :param pulumi.Input['AppSpecWorkerLogDestinationLogtailArgs'] logtail: Logtail configuration. + :param pulumi.Input['AppSpecWorkerLogDestinationOpenSearchArgs'] open_search: OpenSearch configuration. :param pulumi.Input['AppSpecWorkerLogDestinationPapertrailArgs'] papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -5609,6 +5982,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -5648,6 +6023,18 @@ def logtail(self) -> Optional[pulumi.Input['AppSpecWorkerLogDestinationLogtailAr def logtail(self, value: Optional[pulumi.Input['AppSpecWorkerLogDestinationLogtailArgs']]): pulumi.set(self, "logtail", value) + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional[pulumi.Input['AppSpecWorkerLogDestinationOpenSearchArgs']]: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + + @open_search.setter + def open_search(self, value: Optional[pulumi.Input['AppSpecWorkerLogDestinationOpenSearchArgs']]): + pulumi.set(self, "open_search", value) + @property @pulumi.getter def papertrail(self) -> Optional[pulumi.Input['AppSpecWorkerLogDestinationPapertrailArgs']]: @@ -5705,8 +6092,6 @@ def __init__(__self__, *, token: pulumi.Input[str]): """ :param pulumi.Input[str] token: Logtail token. - - A `database` can contain: """ pulumi.set(__self__, "token", token) @@ -5715,8 +6100,6 @@ def __init__(__self__, *, def token(self) -> pulumi.Input[str]: """ Logtail token. - - A `database` can contain: """ return pulumi.get(self, "token") @@ -5725,6 +6108,115 @@ def token(self, value: pulumi.Input[str]): pulumi.set(self, "token", value) +@pulumi.input_type +class AppSpecWorkerLogDestinationOpenSearchArgs: + def __init__(__self__, *, + basic_auth: pulumi.Input['AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs'], + cluster_name: Optional[pulumi.Input[str]] = None, + endpoint: Optional[pulumi.Input[str]] = None, + index_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input['AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs'] basic_auth: Basic authentication details. + :param pulumi.Input[str] cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param pulumi.Input[str] endpoint: OpenSearch endpoint. + :param pulumi.Input[str] index_name: OpenSearch index name. + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> pulumi.Input['AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs']: + """ + Basic authentication details. + """ + return pulumi.get(self, "basic_auth") + + @basic_auth.setter + def basic_auth(self, value: pulumi.Input['AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs']): + pulumi.set(self, "basic_auth", value) + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @cluster_name.setter + def cluster_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "cluster_name", value) + + @property + @pulumi.getter + def endpoint(self) -> Optional[pulumi.Input[str]]: + """ + OpenSearch endpoint. + """ + return pulumi.get(self, "endpoint") + + @endpoint.setter + def endpoint(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "endpoint", value) + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[pulumi.Input[str]]: + """ + OpenSearch index name. + """ + return pulumi.get(self, "index_name") + + @index_name.setter + def index_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "index_name", value) + + +@pulumi.input_type +class AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs: + def __init__(__self__, *, + password: Optional[pulumi.Input[str]] = None, + user: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] password: Password for basic authentication. + :param pulumi.Input[str] user: user for basic authentication. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[pulumi.Input[str]]: + """ + Password for basic authentication. + """ + return pulumi.get(self, "password") + + @password.setter + def password(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "password", value) + + @property + @pulumi.getter + def user(self) -> Optional[pulumi.Input[str]]: + """ + user for basic authentication. + """ + return pulumi.get(self, "user") + + @user.setter + def user(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "user", value) + + @pulumi.input_type class AppSpecWorkerLogDestinationPapertrailArgs: def __init__(__self__, *, @@ -6386,24 +6878,18 @@ def server_reset_query_always(self, value: Optional[pulumi.Input[bool]]): @pulumi.input_type class DatabasePostgresqlConfigTimescaledbArgs: def __init__(__self__, *, - timescaledb: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[int] timescaledb: TimescaleDB extension configuration values - """ - if timescaledb is not None: - pulumi.set(__self__, "timescaledb", timescaledb) + max_background_workers: Optional[pulumi.Input[int]] = None): + if max_background_workers is not None: + pulumi.set(__self__, "max_background_workers", max_background_workers) @property - @pulumi.getter - def timescaledb(self) -> Optional[pulumi.Input[int]]: - """ - TimescaleDB extension configuration values - """ - return pulumi.get(self, "timescaledb") + @pulumi.getter(name="maxBackgroundWorkers") + def max_background_workers(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "max_background_workers") - @timescaledb.setter - def timescaledb(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "timescaledb", value) + @max_background_workers.setter + def max_background_workers(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_background_workers", value) @pulumi.input_type diff --git a/sdk/python/pulumi_digitalocean/app.py b/sdk/python/pulumi_digitalocean/app.py index 6d07d838..459f99cb 100644 --- a/sdk/python/pulumi_digitalocean/app.py +++ b/sdk/python/pulumi_digitalocean/app.py @@ -85,6 +85,7 @@ def __init__(__self__, *, created_at: Optional[pulumi.Input[str]] = None, dedicated_ips: Optional[pulumi.Input[Sequence[pulumi.Input['AppDedicatedIpArgs']]]] = None, default_ingress: Optional[pulumi.Input[str]] = None, + live_domain: Optional[pulumi.Input[str]] = None, live_url: Optional[pulumi.Input[str]] = None, project_id: Optional[pulumi.Input[str]] = None, spec: Optional[pulumi.Input['AppSpecArgs']] = None, @@ -96,6 +97,7 @@ def __init__(__self__, *, :param pulumi.Input[str] created_at: The date and time of when the app was created. :param pulumi.Input[Sequence[pulumi.Input['AppDedicatedIpArgs']]] dedicated_ips: The dedicated egress IP addresses associated with the app. :param pulumi.Input[str] default_ingress: The default URL to access the app. + :param pulumi.Input[str] live_domain: The live domain of the app. :param pulumi.Input[str] live_url: The live URL of the app. :param pulumi.Input[str] project_id: The ID of the project that the app is assigned to. @@ -115,6 +117,8 @@ def __init__(__self__, *, pulumi.set(__self__, "dedicated_ips", dedicated_ips) if default_ingress is not None: pulumi.set(__self__, "default_ingress", default_ingress) + if live_domain is not None: + pulumi.set(__self__, "live_domain", live_domain) if live_url is not None: pulumi.set(__self__, "live_url", live_url) if project_id is not None: @@ -184,6 +188,18 @@ def default_ingress(self) -> Optional[pulumi.Input[str]]: def default_ingress(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "default_ingress", value) + @property + @pulumi.getter(name="liveDomain") + def live_domain(self) -> Optional[pulumi.Input[str]]: + """ + The live domain of the app. + """ + return pulumi.get(self, "live_domain") + + @live_domain.setter + def live_domain(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "live_domain", value) + @property @pulumi.getter(name="liveUrl") def live_url(self) -> Optional[pulumi.Input[str]]: @@ -264,9 +280,8 @@ def __init__(__self__, "region": "ams", "services": [{ "name": "go-service", - "environment_slug": "go", "instance_count": 1, - "instance_size_slug": "professional-xs", + "instance_size_slug": "apps-s-1vcpu-1gb", "git": { "repo_clone_url": "https://github.com/digitalocean/sample-golang.git", "branch": "main", @@ -296,6 +311,36 @@ def __init__(__self__, }) ``` + ### Log Destination Example with Opensearch + ```python + import pulumi + import pulumi_digitalocean as digitalocean + + golang_sample = digitalocean.App("golang-sample", spec={ + "name": "golang-sample", + "region": "ams", + "services": [{ + "name": "go-service", + "instance_count": 1, + "instance_size_slug": "apps-s-1vcpu-1gb", + "git": { + "repo_clone_url": "https://github.com/digitalocean/sample-golang.git", + "branch": "main", + }, + "log_destinations": [{ + "name": "MyLogs", + "open_search": { + "endpoint": "https://something:1234", + "basic_auth": { + "user": "user", + "password": "hi", + }, + }, + }], + }], + }) + ``` + ## Import An app can be imported using its `id`, e.g. @@ -338,9 +383,8 @@ def __init__(__self__, "region": "ams", "services": [{ "name": "go-service", - "environment_slug": "go", "instance_count": 1, - "instance_size_slug": "professional-xs", + "instance_size_slug": "apps-s-1vcpu-1gb", "git": { "repo_clone_url": "https://github.com/digitalocean/sample-golang.git", "branch": "main", @@ -370,6 +414,36 @@ def __init__(__self__, }) ``` + ### Log Destination Example with Opensearch + ```python + import pulumi + import pulumi_digitalocean as digitalocean + + golang_sample = digitalocean.App("golang-sample", spec={ + "name": "golang-sample", + "region": "ams", + "services": [{ + "name": "go-service", + "instance_count": 1, + "instance_size_slug": "apps-s-1vcpu-1gb", + "git": { + "repo_clone_url": "https://github.com/digitalocean/sample-golang.git", + "branch": "main", + }, + "log_destinations": [{ + "name": "MyLogs", + "open_search": { + "endpoint": "https://something:1234", + "basic_auth": { + "user": "user", + "password": "hi", + }, + }, + }], + }], + }) + ``` + ## Import An app can be imported using its `id`, e.g. @@ -412,6 +486,7 @@ def _internal_init(__self__, __props__.__dict__["app_urn"] = None __props__.__dict__["created_at"] = None __props__.__dict__["default_ingress"] = None + __props__.__dict__["live_domain"] = None __props__.__dict__["live_url"] = None __props__.__dict__["updated_at"] = None super(App, __self__).__init__( @@ -429,6 +504,7 @@ def get(resource_name: str, created_at: Optional[pulumi.Input[str]] = None, dedicated_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AppDedicatedIpArgs', 'AppDedicatedIpArgsDict']]]]] = None, default_ingress: Optional[pulumi.Input[str]] = None, + live_domain: Optional[pulumi.Input[str]] = None, live_url: Optional[pulumi.Input[str]] = None, project_id: Optional[pulumi.Input[str]] = None, spec: Optional[pulumi.Input[Union['AppSpecArgs', 'AppSpecArgsDict']]] = None, @@ -445,6 +521,7 @@ def get(resource_name: str, :param pulumi.Input[str] created_at: The date and time of when the app was created. :param pulumi.Input[Sequence[pulumi.Input[Union['AppDedicatedIpArgs', 'AppDedicatedIpArgsDict']]]] dedicated_ips: The dedicated egress IP addresses associated with the app. :param pulumi.Input[str] default_ingress: The default URL to access the app. + :param pulumi.Input[str] live_domain: The live domain of the app. :param pulumi.Input[str] live_url: The live URL of the app. :param pulumi.Input[str] project_id: The ID of the project that the app is assigned to. @@ -463,6 +540,7 @@ def get(resource_name: str, __props__.__dict__["created_at"] = created_at __props__.__dict__["dedicated_ips"] = dedicated_ips __props__.__dict__["default_ingress"] = default_ingress + __props__.__dict__["live_domain"] = live_domain __props__.__dict__["live_url"] = live_url __props__.__dict__["project_id"] = project_id __props__.__dict__["spec"] = spec @@ -509,6 +587,14 @@ def default_ingress(self) -> pulumi.Output[str]: """ return pulumi.get(self, "default_ingress") + @property + @pulumi.getter(name="liveDomain") + def live_domain(self) -> pulumi.Output[str]: + """ + The live domain of the app. + """ + return pulumi.get(self, "live_domain") + @property @pulumi.getter(name="liveUrl") def live_url(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_digitalocean/database_cluster.py b/sdk/python/pulumi_digitalocean/database_cluster.py index d01fa6e6..2697bbd5 100644 --- a/sdk/python/pulumi_digitalocean/database_cluster.py +++ b/sdk/python/pulumi_digitalocean/database_cluster.py @@ -805,6 +805,20 @@ def __init__(__self__, node_count=1) ``` + ### Create a new OpenSearch database cluster + ```python + import pulumi + import pulumi_digitalocean as digitalocean + + opensearch_example = digitalocean.DatabaseCluster("opensearch-example", + name="example-opensearch-cluster", + engine="opensearch", + version="2", + size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB, + region=digitalocean.Region.NYC3, + node_count=1) + ``` + ## Create a new database cluster based on a backup of an existing cluster. ```python @@ -939,6 +953,20 @@ def __init__(__self__, node_count=1) ``` + ### Create a new OpenSearch database cluster + ```python + import pulumi + import pulumi_digitalocean as digitalocean + + opensearch_example = digitalocean.DatabaseCluster("opensearch-example", + name="example-opensearch-cluster", + engine="opensearch", + version="2", + size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB, + region=digitalocean.Region.NYC3, + node_count=1) + ``` + ## Create a new database cluster based on a backup of an existing cluster. ```python diff --git a/sdk/python/pulumi_digitalocean/get_app.py b/sdk/python/pulumi_digitalocean/get_app.py index 21856ddb..4bc7d997 100644 --- a/sdk/python/pulumi_digitalocean/get_app.py +++ b/sdk/python/pulumi_digitalocean/get_app.py @@ -23,7 +23,7 @@ class GetAppResult: """ A collection of values returned by getApp. """ - def __init__(__self__, active_deployment_id=None, app_id=None, created_at=None, dedicated_ips=None, default_ingress=None, id=None, live_url=None, project_id=None, specs=None, updated_at=None, urn=None): + def __init__(__self__, active_deployment_id=None, app_id=None, created_at=None, dedicated_ips=None, default_ingress=None, id=None, live_domain=None, live_url=None, project_id=None, specs=None, updated_at=None, urn=None): if active_deployment_id and not isinstance(active_deployment_id, str): raise TypeError("Expected argument 'active_deployment_id' to be a str") pulumi.set(__self__, "active_deployment_id", active_deployment_id) @@ -42,6 +42,9 @@ def __init__(__self__, active_deployment_id=None, app_id=None, created_at=None, if id and not isinstance(id, str): raise TypeError("Expected argument 'id' to be a str") pulumi.set(__self__, "id", id) + if live_domain and not isinstance(live_domain, str): + raise TypeError("Expected argument 'live_domain' to be a str") + pulumi.set(__self__, "live_domain", live_domain) if live_url and not isinstance(live_url, str): raise TypeError("Expected argument 'live_url' to be a str") pulumi.set(__self__, "live_url", live_url) @@ -103,6 +106,14 @@ def id(self) -> str: """ return pulumi.get(self, "id") + @property + @pulumi.getter(name="liveDomain") + def live_domain(self) -> str: + """ + The live domain of the app. + """ + return pulumi.get(self, "live_domain") + @property @pulumi.getter(name="liveUrl") def live_url(self) -> str: @@ -156,6 +167,7 @@ def __await__(self): dedicated_ips=self.dedicated_ips, default_ingress=self.default_ingress, id=self.id, + live_domain=self.live_domain, live_url=self.live_url, project_id=self.project_id, specs=self.specs, @@ -198,6 +210,7 @@ def get_app(app_id: Optional[str] = None, dedicated_ips=pulumi.get(__ret__, 'dedicated_ips'), default_ingress=pulumi.get(__ret__, 'default_ingress'), id=pulumi.get(__ret__, 'id'), + live_domain=pulumi.get(__ret__, 'live_domain'), live_url=pulumi.get(__ret__, 'live_url'), project_id=pulumi.get(__ret__, 'project_id'), specs=pulumi.get(__ret__, 'specs'), diff --git a/sdk/python/pulumi_digitalocean/outputs.py b/sdk/python/pulumi_digitalocean/outputs.py index cf8e1025..0a246b1d 100644 --- a/sdk/python/pulumi_digitalocean/outputs.py +++ b/sdk/python/pulumi_digitalocean/outputs.py @@ -30,6 +30,8 @@ 'AppSpecFunctionLogDestination', 'AppSpecFunctionLogDestinationDatadog', 'AppSpecFunctionLogDestinationLogtail', + 'AppSpecFunctionLogDestinationOpenSearch', + 'AppSpecFunctionLogDestinationOpenSearchBasicAuth', 'AppSpecFunctionLogDestinationPapertrail', 'AppSpecFunctionRoute', 'AppSpecIngress', @@ -51,6 +53,8 @@ 'AppSpecJobLogDestination', 'AppSpecJobLogDestinationDatadog', 'AppSpecJobLogDestinationLogtail', + 'AppSpecJobLogDestinationOpenSearch', + 'AppSpecJobLogDestinationOpenSearchBasicAuth', 'AppSpecJobLogDestinationPapertrail', 'AppSpecService', 'AppSpecServiceAlert', @@ -69,6 +73,8 @@ 'AppSpecServiceLogDestination', 'AppSpecServiceLogDestinationDatadog', 'AppSpecServiceLogDestinationLogtail', + 'AppSpecServiceLogDestinationOpenSearch', + 'AppSpecServiceLogDestinationOpenSearchBasicAuth', 'AppSpecServiceLogDestinationPapertrail', 'AppSpecServiceRoute', 'AppSpecStaticSite', @@ -90,6 +96,8 @@ 'AppSpecWorkerLogDestination', 'AppSpecWorkerLogDestinationDatadog', 'AppSpecWorkerLogDestinationLogtail', + 'AppSpecWorkerLogDestinationOpenSearch', + 'AppSpecWorkerLogDestinationOpenSearchBasicAuth', 'AppSpecWorkerLogDestinationPapertrail', 'DatabaseClusterBackupRestore', 'DatabaseClusterMaintenanceWindow', @@ -144,6 +152,8 @@ 'GetAppSpecFunctionLogDestinationResult', 'GetAppSpecFunctionLogDestinationDatadogResult', 'GetAppSpecFunctionLogDestinationLogtailResult', + 'GetAppSpecFunctionLogDestinationOpenSearchResult', + 'GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult', 'GetAppSpecFunctionLogDestinationPapertrailResult', 'GetAppSpecFunctionRouteResult', 'GetAppSpecIngressResult', @@ -165,6 +175,8 @@ 'GetAppSpecJobLogDestinationResult', 'GetAppSpecJobLogDestinationDatadogResult', 'GetAppSpecJobLogDestinationLogtailResult', + 'GetAppSpecJobLogDestinationOpenSearchResult', + 'GetAppSpecJobLogDestinationOpenSearchBasicAuthResult', 'GetAppSpecJobLogDestinationPapertrailResult', 'GetAppSpecServiceResult', 'GetAppSpecServiceAlertResult', @@ -183,6 +195,8 @@ 'GetAppSpecServiceLogDestinationResult', 'GetAppSpecServiceLogDestinationDatadogResult', 'GetAppSpecServiceLogDestinationLogtailResult', + 'GetAppSpecServiceLogDestinationOpenSearchResult', + 'GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult', 'GetAppSpecServiceLogDestinationPapertrailResult', 'GetAppSpecServiceRouteResult', 'GetAppSpecStaticSiteResult', @@ -204,6 +218,8 @@ 'GetAppSpecWorkerLogDestinationResult', 'GetAppSpecWorkerLogDestinationDatadogResult', 'GetAppSpecWorkerLogDestinationLogtailResult', + 'GetAppSpecWorkerLogDestinationOpenSearchResult', + 'GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult', 'GetAppSpecWorkerLogDestinationPapertrailResult', 'GetDatabaseClusterMaintenanceWindowResult', 'GetDatabaseUserSettingResult', @@ -336,11 +352,11 @@ def __init__(__self__, *, static_sites: Optional[Sequence['outputs.AppSpecStaticSite']] = None, workers: Optional[Sequence['outputs.AppSpecWorker']] = None): """ - :param str name: The name of the app. Must be unique across all apps in the same account. - :param Sequence['AppSpecAlertArgs'] alerts: Describes an alert policy for the app. + :param str name: The name of the component. + :param Sequence['AppSpecAlertArgs'] alerts: Describes an alert policy for the component. :param Sequence['AppSpecDomainNameArgs'] domain_names: Describes a domain where the application will be made available. :param Sequence['AppSpecEgressArgs'] egresses: Specification for app egress configurations. - :param Sequence['AppSpecEnvArgs'] envs: Describes an app-wide environment variable made available to all components. + :param Sequence['AppSpecEnvArgs'] envs: Describes an environment variable made available to an app competent. :param Sequence[str] features: A list of the features applied to the app. The default buildpack can be overridden here. List of available buildpacks can be found using the [doctl CLI](https://docs.digitalocean.com/reference/doctl/reference/apps/list-buildpacks/) :param 'AppSpecIngressArgs' ingress: Specification for component routing, rewrites, and redirects. :param str region: The slug for the DigitalOcean data center region hosting the app. @@ -379,7 +395,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> str: """ - The name of the app. Must be unique across all apps in the same account. + The name of the component. """ return pulumi.get(self, "name") @@ -387,7 +403,7 @@ def name(self) -> str: @pulumi.getter def alerts(self) -> Optional[Sequence['outputs.AppSpecAlert']]: """ - Describes an alert policy for the app. + Describes an alert policy for the component. """ return pulumi.get(self, "alerts") @@ -422,7 +438,7 @@ def egresses(self) -> Optional[Sequence['outputs.AppSpecEgress']]: @pulumi.getter def envs(self) -> Optional[Sequence['outputs.AppSpecEnv']]: """ - Describes an app-wide environment variable made available to all components. + Describes an environment variable made available to an app competent. """ return pulumi.get(self, "envs") @@ -482,7 +498,7 @@ def __init__(__self__, *, rule: str, disabled: Optional[bool] = None): """ - :param str rule: The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + :param str rule: The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. :param bool disabled: Determines whether or not the alert is disabled (default: `false`). """ pulumi.set(__self__, "rule", rule) @@ -493,7 +509,7 @@ def __init__(__self__, *, @pulumi.getter def rule(self) -> str: """ - The type of the alert to configure. Top-level app alert policies can be: `DEPLOYMENT_FAILED`, `DEPLOYMENT_LIVE`, `DOMAIN_FAILED`, or `DOMAIN_LIVE`. + The type of the alert to configure. Component app alert policies can be: `CPU_UTILIZATION`, `MEM_UTILIZATION`, or `RESTART_COUNT`. """ return pulumi.get(self, "rule") @@ -793,7 +809,7 @@ def __init__(__self__, *, :param Sequence['AppSpecFunctionAlertArgs'] alerts: Describes an alert policy for the component. :param 'AppSpecFunctionCorsArgs' cors: The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. :param Sequence['AppSpecFunctionEnvArgs'] envs: Describes an environment variable made available to an app competent. - :param 'AppSpecFunctionGitArgs' git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + :param 'AppSpecFunctionGitArgs' git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. :param 'AppSpecFunctionGithubArgs' github: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param 'AppSpecFunctionGitlabArgs' gitlab: A Gitlab repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/gitlab/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param Sequence['AppSpecFunctionLogDestinationArgs'] log_destinations: Describes a log forwarding destination. @@ -857,7 +873,7 @@ def envs(self) -> Optional[Sequence['outputs.AppSpecFunctionEnv']]: @pulumi.getter def git(self) -> Optional['outputs.AppSpecFunctionGit']: """ - A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. """ return pulumi.get(self, "git") @@ -1341,15 +1357,34 @@ def repo(self) -> Optional[str]: @pulumi.output_type class AppSpecFunctionLogDestination(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "openSearch": + suggest = "open_search" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecFunctionLogDestination. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecFunctionLogDestination.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecFunctionLogDestination.__key_warning(key) + return super().get(key, default) + def __init__(__self__, *, name: str, datadog: Optional['outputs.AppSpecFunctionLogDestinationDatadog'] = None, logtail: Optional['outputs.AppSpecFunctionLogDestinationLogtail'] = None, + open_search: Optional['outputs.AppSpecFunctionLogDestinationOpenSearch'] = None, papertrail: Optional['outputs.AppSpecFunctionLogDestinationPapertrail'] = None): """ :param str name: Name of the log destination. Minimum length: 2. Maximum length: 42. :param 'AppSpecFunctionLogDestinationDatadogArgs' datadog: Datadog configuration. :param 'AppSpecFunctionLogDestinationLogtailArgs' logtail: Logtail configuration. + :param 'AppSpecFunctionLogDestinationOpenSearchArgs' open_search: OpenSearch configuration. :param 'AppSpecFunctionLogDestinationPapertrailArgs' papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -1357,6 +1392,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -1384,6 +1421,14 @@ def logtail(self) -> Optional['outputs.AppSpecFunctionLogDestinationLogtail']: """ return pulumi.get(self, "logtail") + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional['outputs.AppSpecFunctionLogDestinationOpenSearch']: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + @property @pulumi.getter def papertrail(self) -> Optional['outputs.AppSpecFunctionLogDestinationPapertrail']: @@ -1446,8 +1491,6 @@ def __init__(__self__, *, token: str): """ :param str token: Logtail token. - - A `database` can contain: """ pulumi.set(__self__, "token", token) @@ -1456,12 +1499,116 @@ def __init__(__self__, *, def token(self) -> str: """ Logtail token. - - A `database` can contain: """ return pulumi.get(self, "token") +@pulumi.output_type +class AppSpecFunctionLogDestinationOpenSearch(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "basicAuth": + suggest = "basic_auth" + elif key == "clusterName": + suggest = "cluster_name" + elif key == "indexName": + suggest = "index_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecFunctionLogDestinationOpenSearch. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecFunctionLogDestinationOpenSearch.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecFunctionLogDestinationOpenSearch.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + basic_auth: 'outputs.AppSpecFunctionLogDestinationOpenSearchBasicAuth', + cluster_name: Optional[str] = None, + endpoint: Optional[str] = None, + index_name: Optional[str] = None): + """ + :param 'AppSpecFunctionLogDestinationOpenSearchBasicAuthArgs' basic_auth: Basic authentication details. + :param str cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param str endpoint: OpenSearch endpoint. + :param str index_name: OpenSearch index name. + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> 'outputs.AppSpecFunctionLogDestinationOpenSearchBasicAuth': + """ + Basic authentication details. + """ + return pulumi.get(self, "basic_auth") + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[str]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @property + @pulumi.getter + def endpoint(self) -> Optional[str]: + """ + OpenSearch endpoint. + """ + return pulumi.get(self, "endpoint") + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[str]: + """ + OpenSearch index name. + """ + return pulumi.get(self, "index_name") + + +@pulumi.output_type +class AppSpecFunctionLogDestinationOpenSearchBasicAuth(dict): + def __init__(__self__, *, + password: Optional[str] = None, + user: Optional[str] = None): + """ + :param str password: Password for basic authentication. + :param str user: user for basic authentication. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[str]: + """ + Password for basic authentication. + """ + return pulumi.get(self, "password") + + @property + @pulumi.getter + def user(self) -> Optional[str]: + """ + user for basic authentication. + """ + return pulumi.get(self, "user") + + @pulumi.output_type class AppSpecFunctionLogDestinationPapertrail(dict): def __init__(__self__, *, @@ -1699,11 +1846,11 @@ def __init__(__self__, *, expose_headers: Optional[Sequence[str]] = None, max_age: Optional[str] = None): """ - :param bool allow_credentials: Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. - :param Sequence[str] allow_headers: The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. - :param Sequence[str] allow_methods: The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + :param bool allow_credentials: Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. + :param Sequence[str] allow_headers: The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. + :param Sequence[str] allow_methods: The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. :param 'AppSpecIngressRuleCorsAllowOriginsArgs' allow_origins: The `Access-Control-Allow-Origin` can be - :param Sequence[str] expose_headers: The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + :param Sequence[str] expose_headers: The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. :param str max_age: An optional duration specifying how long browsers can cache the results of a preflight request. This configures the Access-Control-Max-Age header. Example: `5h30m`. """ if allow_credentials is not None: @@ -1723,7 +1870,7 @@ def __init__(__self__, *, @pulumi.getter(name="allowCredentials") def allow_credentials(self) -> Optional[bool]: """ - Whether browsers should expose the response to the client-side JavaScript code when the request’s credentials mode is `include`. This configures the Access-Control-Allow-Credentials header. + Whether browsers should expose the response to the client-side JavaScript code when the request's credentials mode is `include`. This configures the `Access-Control-Allow-Credentials` header. """ return pulumi.get(self, "allow_credentials") @@ -1731,7 +1878,7 @@ def allow_credentials(self) -> Optional[bool]: @pulumi.getter(name="allowHeaders") def allow_headers(self) -> Optional[Sequence[str]]: """ - The set of allowed HTTP request headers. This configures the Access-Control-Allow-Headers header. + The set of allowed HTTP request headers. This configures the `Access-Control-Allow-Headers` header. """ return pulumi.get(self, "allow_headers") @@ -1739,7 +1886,7 @@ def allow_headers(self) -> Optional[Sequence[str]]: @pulumi.getter(name="allowMethods") def allow_methods(self) -> Optional[Sequence[str]]: """ - The set of allowed HTTP methods. This configures the Access-Control-Allow-Methods header. + The set of allowed HTTP methods. This configures the `Access-Control-Allow-Methods` header. """ return pulumi.get(self, "allow_methods") @@ -1755,7 +1902,7 @@ def allow_origins(self) -> Optional['outputs.AppSpecIngressRuleCorsAllowOrigins' @pulumi.getter(name="exposeHeaders") def expose_headers(self) -> Optional[Sequence[str]]: """ - The set of HTTP response headers that browsers are allowed to access. This configures the Access-Control-Expose-Headers header. + The set of HTTP response headers that browsers are allowed to access. This configures the `Access-Control-Expose-Headers` header. """ return pulumi.get(self, "expose_headers") @@ -1991,7 +2138,7 @@ def __init__(__self__, *, :param str dockerfile_path: The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. :param str environment_slug: An environment slug describing the type of this app. :param Sequence['AppSpecJobEnvArgs'] envs: Describes an environment variable made available to an app competent. - :param 'AppSpecJobGitArgs' git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + :param 'AppSpecJobGitArgs' git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. :param 'AppSpecJobGithubArgs' github: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param 'AppSpecJobGitlabArgs' gitlab: A Gitlab repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/gitlab/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param 'AppSpecJobImageArgs' image: An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. @@ -2090,7 +2237,7 @@ def envs(self) -> Optional[Sequence['outputs.AppSpecJobEnv']]: @pulumi.getter def git(self) -> Optional['outputs.AppSpecJobGit']: """ - A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. """ return pulumi.get(self, "git") @@ -2576,15 +2723,34 @@ def enabled(self) -> Optional[bool]: @pulumi.output_type class AppSpecJobLogDestination(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "openSearch": + suggest = "open_search" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecJobLogDestination. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecJobLogDestination.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecJobLogDestination.__key_warning(key) + return super().get(key, default) + def __init__(__self__, *, name: str, datadog: Optional['outputs.AppSpecJobLogDestinationDatadog'] = None, logtail: Optional['outputs.AppSpecJobLogDestinationLogtail'] = None, + open_search: Optional['outputs.AppSpecJobLogDestinationOpenSearch'] = None, papertrail: Optional['outputs.AppSpecJobLogDestinationPapertrail'] = None): """ :param str name: Name of the log destination. Minimum length: 2. Maximum length: 42. :param 'AppSpecJobLogDestinationDatadogArgs' datadog: Datadog configuration. :param 'AppSpecJobLogDestinationLogtailArgs' logtail: Logtail configuration. + :param 'AppSpecJobLogDestinationOpenSearchArgs' open_search: OpenSearch configuration. :param 'AppSpecJobLogDestinationPapertrailArgs' papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -2592,6 +2758,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -2619,6 +2787,14 @@ def logtail(self) -> Optional['outputs.AppSpecJobLogDestinationLogtail']: """ return pulumi.get(self, "logtail") + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional['outputs.AppSpecJobLogDestinationOpenSearch']: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + @property @pulumi.getter def papertrail(self) -> Optional['outputs.AppSpecJobLogDestinationPapertrail']: @@ -2681,8 +2857,6 @@ def __init__(__self__, *, token: str): """ :param str token: Logtail token. - - A `database` can contain: """ pulumi.set(__self__, "token", token) @@ -2691,12 +2865,116 @@ def __init__(__self__, *, def token(self) -> str: """ Logtail token. - - A `database` can contain: """ return pulumi.get(self, "token") +@pulumi.output_type +class AppSpecJobLogDestinationOpenSearch(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "basicAuth": + suggest = "basic_auth" + elif key == "clusterName": + suggest = "cluster_name" + elif key == "indexName": + suggest = "index_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecJobLogDestinationOpenSearch. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecJobLogDestinationOpenSearch.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecJobLogDestinationOpenSearch.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + basic_auth: 'outputs.AppSpecJobLogDestinationOpenSearchBasicAuth', + cluster_name: Optional[str] = None, + endpoint: Optional[str] = None, + index_name: Optional[str] = None): + """ + :param 'AppSpecJobLogDestinationOpenSearchBasicAuthArgs' basic_auth: Basic authentication details. + :param str cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param str endpoint: OpenSearch endpoint. + :param str index_name: OpenSearch index name. + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> 'outputs.AppSpecJobLogDestinationOpenSearchBasicAuth': + """ + Basic authentication details. + """ + return pulumi.get(self, "basic_auth") + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[str]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @property + @pulumi.getter + def endpoint(self) -> Optional[str]: + """ + OpenSearch endpoint. + """ + return pulumi.get(self, "endpoint") + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[str]: + """ + OpenSearch index name. + """ + return pulumi.get(self, "index_name") + + +@pulumi.output_type +class AppSpecJobLogDestinationOpenSearchBasicAuth(dict): + def __init__(__self__, *, + password: Optional[str] = None, + user: Optional[str] = None): + """ + :param str password: Password for basic authentication. + :param str user: user for basic authentication. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[str]: + """ + Password for basic authentication. + """ + return pulumi.get(self, "password") + + @property + @pulumi.getter + def user(self) -> Optional[str]: + """ + user for basic authentication. + """ + return pulumi.get(self, "user") + + @pulumi.output_type class AppSpecJobLogDestinationPapertrail(dict): def __init__(__self__, *, @@ -2785,7 +3063,7 @@ def __init__(__self__, *, :param str dockerfile_path: The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. :param str environment_slug: An environment slug describing the type of this app. :param Sequence['AppSpecServiceEnvArgs'] envs: Describes an environment variable made available to an app competent. - :param 'AppSpecServiceGitArgs' git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + :param 'AppSpecServiceGitArgs' git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. :param 'AppSpecServiceGithubArgs' github: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param 'AppSpecServiceGitlabArgs' gitlab: A Gitlab repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/gitlab/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param 'AppSpecServiceHealthCheckArgs' health_check: A health check to determine the availability of this component. @@ -2910,7 +3188,7 @@ def envs(self) -> Optional[Sequence['outputs.AppSpecServiceEnv']]: @pulumi.getter def git(self) -> Optional['outputs.AppSpecServiceGit']: """ - A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. """ return pulumi.get(self, "git") @@ -3785,15 +4063,34 @@ def enabled(self) -> Optional[bool]: @pulumi.output_type class AppSpecServiceLogDestination(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "openSearch": + suggest = "open_search" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecServiceLogDestination. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecServiceLogDestination.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecServiceLogDestination.__key_warning(key) + return super().get(key, default) + def __init__(__self__, *, name: str, datadog: Optional['outputs.AppSpecServiceLogDestinationDatadog'] = None, logtail: Optional['outputs.AppSpecServiceLogDestinationLogtail'] = None, + open_search: Optional['outputs.AppSpecServiceLogDestinationOpenSearch'] = None, papertrail: Optional['outputs.AppSpecServiceLogDestinationPapertrail'] = None): """ :param str name: Name of the log destination. Minimum length: 2. Maximum length: 42. :param 'AppSpecServiceLogDestinationDatadogArgs' datadog: Datadog configuration. :param 'AppSpecServiceLogDestinationLogtailArgs' logtail: Logtail configuration. + :param 'AppSpecServiceLogDestinationOpenSearchArgs' open_search: OpenSearch configuration. :param 'AppSpecServiceLogDestinationPapertrailArgs' papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -3801,6 +4098,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -3828,6 +4127,14 @@ def logtail(self) -> Optional['outputs.AppSpecServiceLogDestinationLogtail']: """ return pulumi.get(self, "logtail") + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional['outputs.AppSpecServiceLogDestinationOpenSearch']: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + @property @pulumi.getter def papertrail(self) -> Optional['outputs.AppSpecServiceLogDestinationPapertrail']: @@ -3890,8 +4197,6 @@ def __init__(__self__, *, token: str): """ :param str token: Logtail token. - - A `database` can contain: """ pulumi.set(__self__, "token", token) @@ -3900,12 +4205,116 @@ def __init__(__self__, *, def token(self) -> str: """ Logtail token. - - A `database` can contain: """ return pulumi.get(self, "token") +@pulumi.output_type +class AppSpecServiceLogDestinationOpenSearch(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "basicAuth": + suggest = "basic_auth" + elif key == "clusterName": + suggest = "cluster_name" + elif key == "indexName": + suggest = "index_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecServiceLogDestinationOpenSearch. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecServiceLogDestinationOpenSearch.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecServiceLogDestinationOpenSearch.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + basic_auth: 'outputs.AppSpecServiceLogDestinationOpenSearchBasicAuth', + cluster_name: Optional[str] = None, + endpoint: Optional[str] = None, + index_name: Optional[str] = None): + """ + :param 'AppSpecServiceLogDestinationOpenSearchBasicAuthArgs' basic_auth: Basic authentication details. + :param str cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param str endpoint: OpenSearch endpoint. + :param str index_name: OpenSearch index name. + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> 'outputs.AppSpecServiceLogDestinationOpenSearchBasicAuth': + """ + Basic authentication details. + """ + return pulumi.get(self, "basic_auth") + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[str]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @property + @pulumi.getter + def endpoint(self) -> Optional[str]: + """ + OpenSearch endpoint. + """ + return pulumi.get(self, "endpoint") + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[str]: + """ + OpenSearch index name. + """ + return pulumi.get(self, "index_name") + + +@pulumi.output_type +class AppSpecServiceLogDestinationOpenSearchBasicAuth(dict): + def __init__(__self__, *, + password: Optional[str] = None, + user: Optional[str] = None): + """ + :param str password: Password for basic authentication. + :param str user: user for basic authentication. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[str]: + """ + Password for basic authentication. + """ + return pulumi.get(self, "password") + + @property + @pulumi.getter + def user(self) -> Optional[str]: + """ + user for basic authentication. + """ + return pulumi.get(self, "user") + + @pulumi.output_type class AppSpecServiceLogDestinationPapertrail(dict): def __init__(__self__, *, @@ -4030,7 +4439,7 @@ def __init__(__self__, *, :param str environment_slug: An environment slug describing the type of this app. :param Sequence['AppSpecStaticSiteEnvArgs'] envs: Describes an environment variable made available to an app competent. :param str error_document: The name of the error document to use when serving this static site. - :param 'AppSpecStaticSiteGitArgs' git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + :param 'AppSpecStaticSiteGitArgs' git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. :param 'AppSpecStaticSiteGithubArgs' github: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param 'AppSpecStaticSiteGitlabArgs' gitlab: A Gitlab repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/gitlab/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param str index_document: The name of the index document to use when serving this static site. @@ -4137,7 +4546,7 @@ def error_document(self) -> Optional[str]: @pulumi.getter def git(self) -> Optional['outputs.AppSpecStaticSiteGit']: """ - A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. """ return pulumi.get(self, "git") @@ -4668,7 +5077,7 @@ def __init__(__self__, *, :param str dockerfile_path: The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. :param str environment_slug: An environment slug describing the type of this app. :param Sequence['AppSpecWorkerEnvArgs'] envs: Describes an environment variable made available to an app competent. - :param 'AppSpecWorkerGitArgs' git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + :param 'AppSpecWorkerGitArgs' git: A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. :param 'AppSpecWorkerGithubArgs' github: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/github/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param 'AppSpecWorkerGitlabArgs' gitlab: A Gitlab repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/gitlab/install). Only one of `git`, `github`, `gitlab`, or `image` may be set. :param 'AppSpecWorkerImageArgs' image: An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. @@ -4760,7 +5169,7 @@ def envs(self) -> Optional[Sequence['outputs.AppSpecWorkerEnv']]: @pulumi.getter def git(self) -> Optional['outputs.AppSpecWorkerGit']: """ - A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. + A Git repo to use as the component's source. The repository must be able to be cloned without authentication. Only one of `git`, `github` or `gitlab` may be set. """ return pulumi.get(self, "git") @@ -5234,15 +5643,34 @@ def enabled(self) -> Optional[bool]: @pulumi.output_type class AppSpecWorkerLogDestination(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "openSearch": + suggest = "open_search" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecWorkerLogDestination. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecWorkerLogDestination.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecWorkerLogDestination.__key_warning(key) + return super().get(key, default) + def __init__(__self__, *, name: str, datadog: Optional['outputs.AppSpecWorkerLogDestinationDatadog'] = None, logtail: Optional['outputs.AppSpecWorkerLogDestinationLogtail'] = None, + open_search: Optional['outputs.AppSpecWorkerLogDestinationOpenSearch'] = None, papertrail: Optional['outputs.AppSpecWorkerLogDestinationPapertrail'] = None): """ :param str name: Name of the log destination. Minimum length: 2. Maximum length: 42. :param 'AppSpecWorkerLogDestinationDatadogArgs' datadog: Datadog configuration. :param 'AppSpecWorkerLogDestinationLogtailArgs' logtail: Logtail configuration. + :param 'AppSpecWorkerLogDestinationOpenSearchArgs' open_search: OpenSearch configuration. :param 'AppSpecWorkerLogDestinationPapertrailArgs' papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -5250,6 +5678,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -5277,6 +5707,14 @@ def logtail(self) -> Optional['outputs.AppSpecWorkerLogDestinationLogtail']: """ return pulumi.get(self, "logtail") + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional['outputs.AppSpecWorkerLogDestinationOpenSearch']: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + @property @pulumi.getter def papertrail(self) -> Optional['outputs.AppSpecWorkerLogDestinationPapertrail']: @@ -5339,8 +5777,6 @@ def __init__(__self__, *, token: str): """ :param str token: Logtail token. - - A `database` can contain: """ pulumi.set(__self__, "token", token) @@ -5348,11 +5784,115 @@ def __init__(__self__, *, @pulumi.getter def token(self) -> str: """ - Logtail token. - - A `database` can contain: + Logtail token. + """ + return pulumi.get(self, "token") + + +@pulumi.output_type +class AppSpecWorkerLogDestinationOpenSearch(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "basicAuth": + suggest = "basic_auth" + elif key == "clusterName": + suggest = "cluster_name" + elif key == "indexName": + suggest = "index_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecWorkerLogDestinationOpenSearch. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecWorkerLogDestinationOpenSearch.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecWorkerLogDestinationOpenSearch.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + basic_auth: 'outputs.AppSpecWorkerLogDestinationOpenSearchBasicAuth', + cluster_name: Optional[str] = None, + endpoint: Optional[str] = None, + index_name: Optional[str] = None): + """ + :param 'AppSpecWorkerLogDestinationOpenSearchBasicAuthArgs' basic_auth: Basic authentication details. + :param str cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param str endpoint: OpenSearch endpoint. + :param str index_name: OpenSearch index name. + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> 'outputs.AppSpecWorkerLogDestinationOpenSearchBasicAuth': + """ + Basic authentication details. + """ + return pulumi.get(self, "basic_auth") + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[str]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @property + @pulumi.getter + def endpoint(self) -> Optional[str]: + """ + OpenSearch endpoint. + """ + return pulumi.get(self, "endpoint") + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[str]: + """ + OpenSearch index name. + """ + return pulumi.get(self, "index_name") + + +@pulumi.output_type +class AppSpecWorkerLogDestinationOpenSearchBasicAuth(dict): + def __init__(__self__, *, + password: Optional[str] = None, + user: Optional[str] = None): + """ + :param str password: Password for basic authentication. + :param str user: user for basic authentication. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[str]: + """ + Password for basic authentication. + """ + return pulumi.get(self, "password") + + @property + @pulumi.getter + def user(self) -> Optional[str]: + """ + user for basic authentication. """ - return pulumi.get(self, "token") + return pulumi.get(self, "user") @pulumi.output_type @@ -5979,21 +6519,32 @@ def server_reset_query_always(self) -> Optional[bool]: @pulumi.output_type class DatabasePostgresqlConfigTimescaledb(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "maxBackgroundWorkers": + suggest = "max_background_workers" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DatabasePostgresqlConfigTimescaledb. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DatabasePostgresqlConfigTimescaledb.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DatabasePostgresqlConfigTimescaledb.__key_warning(key) + return super().get(key, default) + def __init__(__self__, *, - timescaledb: Optional[int] = None): - """ - :param int timescaledb: TimescaleDB extension configuration values - """ - if timescaledb is not None: - pulumi.set(__self__, "timescaledb", timescaledb) + max_background_workers: Optional[int] = None): + if max_background_workers is not None: + pulumi.set(__self__, "max_background_workers", max_background_workers) @property - @pulumi.getter - def timescaledb(self) -> Optional[int]: - """ - TimescaleDB extension configuration values - """ - return pulumi.get(self, "timescaledb") + @pulumi.getter(name="maxBackgroundWorkers") + def max_background_workers(self) -> Optional[int]: + return pulumi.get(self, "max_background_workers") @pulumi.output_type @@ -8971,11 +9522,13 @@ def __init__(__self__, *, name: str, datadog: Optional['outputs.GetAppSpecFunctionLogDestinationDatadogResult'] = None, logtail: Optional['outputs.GetAppSpecFunctionLogDestinationLogtailResult'] = None, + open_search: Optional['outputs.GetAppSpecFunctionLogDestinationOpenSearchResult'] = None, papertrail: Optional['outputs.GetAppSpecFunctionLogDestinationPapertrailResult'] = None): """ :param str name: The name of the component. :param 'GetAppSpecFunctionLogDestinationDatadogArgs' datadog: Datadog configuration. :param 'GetAppSpecFunctionLogDestinationLogtailArgs' logtail: Logtail configuration. + :param 'GetAppSpecFunctionLogDestinationOpenSearchArgs' open_search: OpenSearch configuration. :param 'GetAppSpecFunctionLogDestinationPapertrailArgs' papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -8983,6 +9536,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -9010,6 +9565,14 @@ def logtail(self) -> Optional['outputs.GetAppSpecFunctionLogDestinationLogtailRe """ return pulumi.get(self, "logtail") + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional['outputs.GetAppSpecFunctionLogDestinationOpenSearchResult']: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + @property @pulumi.getter def papertrail(self) -> Optional['outputs.GetAppSpecFunctionLogDestinationPapertrailResult']: @@ -9026,7 +9589,7 @@ def __init__(__self__, *, endpoint: Optional[str] = None): """ :param str api_key: Datadog API key. - :param str endpoint: Datadog HTTP log intake endpoint. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ pulumi.set(__self__, "api_key", api_key) if endpoint is not None: @@ -9044,7 +9607,7 @@ def api_key(self) -> str: @pulumi.getter def endpoint(self) -> Optional[str]: """ - Datadog HTTP log intake endpoint. + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ return pulumi.get(self, "endpoint") @@ -9067,12 +9630,97 @@ def token(self) -> str: return pulumi.get(self, "token") +@pulumi.output_type +class GetAppSpecFunctionLogDestinationOpenSearchResult(dict): + def __init__(__self__, *, + basic_auth: 'outputs.GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult', + cluster_name: Optional[str] = None, + endpoint: Optional[str] = None, + index_name: Optional[str] = None): + """ + :param 'GetAppSpecFunctionLogDestinationOpenSearchBasicAuthArgs' basic_auth: OpenSearch basic auth + :param str cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + :param str index_name: The index name to use for the logs. If not set, the default index name is \\"logs\\". + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> 'outputs.GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult': + """ + OpenSearch basic auth + """ + return pulumi.get(self, "basic_auth") + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[str]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @property + @pulumi.getter + def endpoint(self) -> Optional[str]: + """ + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + """ + return pulumi.get(self, "endpoint") + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[str]: + """ + The index name to use for the logs. If not set, the default index name is \\"logs\\". + """ + return pulumi.get(self, "index_name") + + +@pulumi.output_type +class GetAppSpecFunctionLogDestinationOpenSearchBasicAuthResult(dict): + def __init__(__self__, *, + password: Optional[str] = None, + user: Optional[str] = None): + """ + :param str password: Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + :param str user: Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[str]: + """ + Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + """ + return pulumi.get(self, "password") + + @property + @pulumi.getter + def user(self) -> Optional[str]: + """ + Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + """ + return pulumi.get(self, "user") + + @pulumi.output_type class GetAppSpecFunctionLogDestinationPapertrailResult(dict): def __init__(__self__, *, endpoint: str): """ - :param str endpoint: Datadog HTTP log intake endpoint. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ pulumi.set(__self__, "endpoint", endpoint) @@ -9080,7 +9728,7 @@ def __init__(__self__, *, @pulumi.getter def endpoint(self) -> str: """ - Datadog HTTP log intake endpoint. + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ return pulumi.get(self, "endpoint") @@ -9955,11 +10603,13 @@ def __init__(__self__, *, name: str, datadog: Optional['outputs.GetAppSpecJobLogDestinationDatadogResult'] = None, logtail: Optional['outputs.GetAppSpecJobLogDestinationLogtailResult'] = None, + open_search: Optional['outputs.GetAppSpecJobLogDestinationOpenSearchResult'] = None, papertrail: Optional['outputs.GetAppSpecJobLogDestinationPapertrailResult'] = None): """ :param str name: The name of the component. :param 'GetAppSpecJobLogDestinationDatadogArgs' datadog: Datadog configuration. :param 'GetAppSpecJobLogDestinationLogtailArgs' logtail: Logtail configuration. + :param 'GetAppSpecJobLogDestinationOpenSearchArgs' open_search: OpenSearch configuration. :param 'GetAppSpecJobLogDestinationPapertrailArgs' papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -9967,6 +10617,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -9994,6 +10646,14 @@ def logtail(self) -> Optional['outputs.GetAppSpecJobLogDestinationLogtailResult' """ return pulumi.get(self, "logtail") + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional['outputs.GetAppSpecJobLogDestinationOpenSearchResult']: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + @property @pulumi.getter def papertrail(self) -> Optional['outputs.GetAppSpecJobLogDestinationPapertrailResult']: @@ -10010,7 +10670,7 @@ def __init__(__self__, *, endpoint: Optional[str] = None): """ :param str api_key: Datadog API key. - :param str endpoint: Datadog HTTP log intake endpoint. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ pulumi.set(__self__, "api_key", api_key) if endpoint is not None: @@ -10028,7 +10688,7 @@ def api_key(self) -> str: @pulumi.getter def endpoint(self) -> Optional[str]: """ - Datadog HTTP log intake endpoint. + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ return pulumi.get(self, "endpoint") @@ -10051,12 +10711,97 @@ def token(self) -> str: return pulumi.get(self, "token") +@pulumi.output_type +class GetAppSpecJobLogDestinationOpenSearchResult(dict): + def __init__(__self__, *, + basic_auth: 'outputs.GetAppSpecJobLogDestinationOpenSearchBasicAuthResult', + cluster_name: Optional[str] = None, + endpoint: Optional[str] = None, + index_name: Optional[str] = None): + """ + :param 'GetAppSpecJobLogDestinationOpenSearchBasicAuthArgs' basic_auth: OpenSearch basic auth + :param str cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + :param str index_name: The index name to use for the logs. If not set, the default index name is \\"logs\\". + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> 'outputs.GetAppSpecJobLogDestinationOpenSearchBasicAuthResult': + """ + OpenSearch basic auth + """ + return pulumi.get(self, "basic_auth") + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[str]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @property + @pulumi.getter + def endpoint(self) -> Optional[str]: + """ + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + """ + return pulumi.get(self, "endpoint") + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[str]: + """ + The index name to use for the logs. If not set, the default index name is \\"logs\\". + """ + return pulumi.get(self, "index_name") + + +@pulumi.output_type +class GetAppSpecJobLogDestinationOpenSearchBasicAuthResult(dict): + def __init__(__self__, *, + password: Optional[str] = None, + user: Optional[str] = None): + """ + :param str password: Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + :param str user: Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[str]: + """ + Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + """ + return pulumi.get(self, "password") + + @property + @pulumi.getter + def user(self) -> Optional[str]: + """ + Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + """ + return pulumi.get(self, "user") + + @pulumi.output_type class GetAppSpecJobLogDestinationPapertrailResult(dict): def __init__(__self__, *, endpoint: str): """ - :param str endpoint: Datadog HTTP log intake endpoint. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ pulumi.set(__self__, "endpoint", endpoint) @@ -10064,7 +10809,7 @@ def __init__(__self__, *, @pulumi.getter def endpoint(self) -> str: """ - Datadog HTTP log intake endpoint. + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ return pulumi.get(self, "endpoint") @@ -10947,11 +11692,13 @@ def __init__(__self__, *, name: str, datadog: Optional['outputs.GetAppSpecServiceLogDestinationDatadogResult'] = None, logtail: Optional['outputs.GetAppSpecServiceLogDestinationLogtailResult'] = None, + open_search: Optional['outputs.GetAppSpecServiceLogDestinationOpenSearchResult'] = None, papertrail: Optional['outputs.GetAppSpecServiceLogDestinationPapertrailResult'] = None): """ :param str name: The name of the component. :param 'GetAppSpecServiceLogDestinationDatadogArgs' datadog: Datadog configuration. :param 'GetAppSpecServiceLogDestinationLogtailArgs' logtail: Logtail configuration. + :param 'GetAppSpecServiceLogDestinationOpenSearchArgs' open_search: OpenSearch configuration. :param 'GetAppSpecServiceLogDestinationPapertrailArgs' papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -10959,6 +11706,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -10986,6 +11735,14 @@ def logtail(self) -> Optional['outputs.GetAppSpecServiceLogDestinationLogtailRes """ return pulumi.get(self, "logtail") + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional['outputs.GetAppSpecServiceLogDestinationOpenSearchResult']: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + @property @pulumi.getter def papertrail(self) -> Optional['outputs.GetAppSpecServiceLogDestinationPapertrailResult']: @@ -11002,7 +11759,7 @@ def __init__(__self__, *, endpoint: Optional[str] = None): """ :param str api_key: Datadog API key. - :param str endpoint: Datadog HTTP log intake endpoint. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ pulumi.set(__self__, "api_key", api_key) if endpoint is not None: @@ -11020,7 +11777,7 @@ def api_key(self) -> str: @pulumi.getter def endpoint(self) -> Optional[str]: """ - Datadog HTTP log intake endpoint. + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ return pulumi.get(self, "endpoint") @@ -11043,12 +11800,97 @@ def token(self) -> str: return pulumi.get(self, "token") +@pulumi.output_type +class GetAppSpecServiceLogDestinationOpenSearchResult(dict): + def __init__(__self__, *, + basic_auth: 'outputs.GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult', + cluster_name: Optional[str] = None, + endpoint: Optional[str] = None, + index_name: Optional[str] = None): + """ + :param 'GetAppSpecServiceLogDestinationOpenSearchBasicAuthArgs' basic_auth: OpenSearch basic auth + :param str cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + :param str index_name: The index name to use for the logs. If not set, the default index name is \\"logs\\". + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> 'outputs.GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult': + """ + OpenSearch basic auth + """ + return pulumi.get(self, "basic_auth") + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[str]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @property + @pulumi.getter + def endpoint(self) -> Optional[str]: + """ + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + """ + return pulumi.get(self, "endpoint") + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[str]: + """ + The index name to use for the logs. If not set, the default index name is \\"logs\\". + """ + return pulumi.get(self, "index_name") + + +@pulumi.output_type +class GetAppSpecServiceLogDestinationOpenSearchBasicAuthResult(dict): + def __init__(__self__, *, + password: Optional[str] = None, + user: Optional[str] = None): + """ + :param str password: Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + :param str user: Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[str]: + """ + Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + """ + return pulumi.get(self, "password") + + @property + @pulumi.getter + def user(self) -> Optional[str]: + """ + Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + """ + return pulumi.get(self, "user") + + @pulumi.output_type class GetAppSpecServiceLogDestinationPapertrailResult(dict): def __init__(__self__, *, endpoint: str): """ - :param str endpoint: Datadog HTTP log intake endpoint. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ pulumi.set(__self__, "endpoint", endpoint) @@ -11056,7 +11898,7 @@ def __init__(__self__, *, @pulumi.getter def endpoint(self) -> str: """ - Datadog HTTP log intake endpoint. + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ return pulumi.get(self, "endpoint") @@ -12121,11 +12963,13 @@ def __init__(__self__, *, name: str, datadog: Optional['outputs.GetAppSpecWorkerLogDestinationDatadogResult'] = None, logtail: Optional['outputs.GetAppSpecWorkerLogDestinationLogtailResult'] = None, + open_search: Optional['outputs.GetAppSpecWorkerLogDestinationOpenSearchResult'] = None, papertrail: Optional['outputs.GetAppSpecWorkerLogDestinationPapertrailResult'] = None): """ :param str name: The name of the component. :param 'GetAppSpecWorkerLogDestinationDatadogArgs' datadog: Datadog configuration. :param 'GetAppSpecWorkerLogDestinationLogtailArgs' logtail: Logtail configuration. + :param 'GetAppSpecWorkerLogDestinationOpenSearchArgs' open_search: OpenSearch configuration. :param 'GetAppSpecWorkerLogDestinationPapertrailArgs' papertrail: Papertrail configuration. """ pulumi.set(__self__, "name", name) @@ -12133,6 +12977,8 @@ def __init__(__self__, *, pulumi.set(__self__, "datadog", datadog) if logtail is not None: pulumi.set(__self__, "logtail", logtail) + if open_search is not None: + pulumi.set(__self__, "open_search", open_search) if papertrail is not None: pulumi.set(__self__, "papertrail", papertrail) @@ -12160,6 +13006,14 @@ def logtail(self) -> Optional['outputs.GetAppSpecWorkerLogDestinationLogtailResu """ return pulumi.get(self, "logtail") + @property + @pulumi.getter(name="openSearch") + def open_search(self) -> Optional['outputs.GetAppSpecWorkerLogDestinationOpenSearchResult']: + """ + OpenSearch configuration. + """ + return pulumi.get(self, "open_search") + @property @pulumi.getter def papertrail(self) -> Optional['outputs.GetAppSpecWorkerLogDestinationPapertrailResult']: @@ -12176,7 +13030,7 @@ def __init__(__self__, *, endpoint: Optional[str] = None): """ :param str api_key: Datadog API key. - :param str endpoint: Datadog HTTP log intake endpoint. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ pulumi.set(__self__, "api_key", api_key) if endpoint is not None: @@ -12194,7 +13048,7 @@ def api_key(self) -> str: @pulumi.getter def endpoint(self) -> Optional[str]: """ - Datadog HTTP log intake endpoint. + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ return pulumi.get(self, "endpoint") @@ -12217,12 +13071,97 @@ def token(self) -> str: return pulumi.get(self, "token") +@pulumi.output_type +class GetAppSpecWorkerLogDestinationOpenSearchResult(dict): + def __init__(__self__, *, + basic_auth: 'outputs.GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult', + cluster_name: Optional[str] = None, + endpoint: Optional[str] = None, + index_name: Optional[str] = None): + """ + :param 'GetAppSpecWorkerLogDestinationOpenSearchBasicAuthArgs' basic_auth: OpenSearch basic auth + :param str cluster_name: The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + :param str index_name: The index name to use for the logs. If not set, the default index name is \\"logs\\". + """ + pulumi.set(__self__, "basic_auth", basic_auth) + if cluster_name is not None: + pulumi.set(__self__, "cluster_name", cluster_name) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) + if index_name is not None: + pulumi.set(__self__, "index_name", index_name) + + @property + @pulumi.getter(name="basicAuth") + def basic_auth(self) -> 'outputs.GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult': + """ + OpenSearch basic auth + """ + return pulumi.get(self, "basic_auth") + + @property + @pulumi.getter(name="clusterName") + def cluster_name(self) -> Optional[str]: + """ + The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned. + """ + return pulumi.get(self, "cluster_name") + + @property + @pulumi.getter + def endpoint(self) -> Optional[str]: + """ + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. + """ + return pulumi.get(self, "endpoint") + + @property + @pulumi.getter(name="indexName") + def index_name(self) -> Optional[str]: + """ + The index name to use for the logs. If not set, the default index name is \\"logs\\". + """ + return pulumi.get(self, "index_name") + + +@pulumi.output_type +class GetAppSpecWorkerLogDestinationOpenSearchBasicAuthResult(dict): + def __init__(__self__, *, + password: Optional[str] = None, + user: Optional[str] = None): + """ + :param str password: Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + :param str user: Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + """ + if password is not None: + pulumi.set(__self__, "password", password) + if user is not None: + pulumi.set(__self__, "user", user) + + @property + @pulumi.getter + def password(self) -> Optional[str]: + """ + Password for user defined in User. Is required when endpoint is set. Cannot be set if using a DigitalOcean DBaaS OpenSearch cluster. + """ + return pulumi.get(self, "password") + + @property + @pulumi.getter + def user(self) -> Optional[str]: + """ + Username to authenticate with. Only required when endpoint is set. Defaults to doadmin when cluster_name is set. + """ + return pulumi.get(self, "user") + + @pulumi.output_type class GetAppSpecWorkerLogDestinationPapertrailResult(dict): def __init__(__self__, *, endpoint: str): """ - :param str endpoint: Datadog HTTP log intake endpoint. + :param str endpoint: OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ pulumi.set(__self__, "endpoint", endpoint) @@ -12230,7 +13169,7 @@ def __init__(__self__, *, @pulumi.getter def endpoint(self) -> str: """ - Datadog HTTP log intake endpoint. + OpenSearch API Endpoint. Only HTTPS is supported. Format: https://:. """ return pulumi.get(self, "endpoint") diff --git a/upstream b/upstream index 28b52694..9e37c59d 160000 --- a/upstream +++ b/upstream @@ -1 +1 @@ -Subproject commit 28b5269496e8096c06cfb553b8153f98a6d0b139 +Subproject commit 9e37c59d7ca959ad48f517a70e7568a487f04d1f