diff --git a/provider/cmd/pulumi-resource-digitalocean/bridge-metadata.json b/provider/cmd/pulumi-resource-digitalocean/bridge-metadata.json index 3aae586c..d742cd7e 100644 --- a/provider/cmd/pulumi-resource-digitalocean/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-digitalocean/bridge-metadata.json @@ -40,6 +40,9 @@ "alert": { "maxItemsOne": false }, + "bitbucket": { + "maxItemsOne": true + }, "cors": { "maxItemsOne": true, "elem": { @@ -159,6 +162,9 @@ "alert": { "maxItemsOne": false }, + "bitbucket": { + "maxItemsOne": true + }, "env": { "maxItemsOne": false }, @@ -237,6 +243,9 @@ } } }, + "bitbucket": { + "maxItemsOne": true + }, "cors": { "maxItemsOne": true, "elem": { @@ -323,6 +332,9 @@ "maxItemsOne": false, "elem": { "fields": { + "bitbucket": { + "maxItemsOne": true + }, "cors": { "maxItemsOne": true, "elem": { @@ -384,6 +396,9 @@ } } }, + "bitbucket": { + "maxItemsOne": true + }, "env": { "maxItemsOne": false }, @@ -716,6 +731,16 @@ "current": "digitalocean:index/kubernetesCluster:KubernetesCluster", "majorVersion": 4, "fields": { + "control_plane_firewall": { + "maxItemsOne": true, + "elem": { + "fields": { + "allowed_addresses": { + "maxItemsOne": false + } + } + } + }, "kube_config": { "maxItemsOne": false }, @@ -1071,6 +1096,9 @@ "alert": { "maxItemsOne": false }, + "bitbucket": { + "maxItemsOne": true + }, "cors": { "maxItemsOne": true, "elem": { @@ -1190,6 +1218,9 @@ "alert": { "maxItemsOne": false }, + "bitbucket": { + "maxItemsOne": true + }, "env": { "maxItemsOne": false }, @@ -1268,6 +1299,9 @@ } } }, + "bitbucket": { + "maxItemsOne": true + }, "cors": { "maxItemsOne": true, "elem": { @@ -1354,6 +1388,9 @@ "maxItemsOne": false, "elem": { "fields": { + "bitbucket": { + "maxItemsOne": true + }, "cors": { "maxItemsOne": true, "elem": { @@ -1415,6 +1452,9 @@ } } }, + "bitbucket": { + "maxItemsOne": true + }, "env": { "maxItemsOne": false }, diff --git a/provider/cmd/pulumi-resource-digitalocean/schema.json b/provider/cmd/pulumi-resource-digitalocean/schema.json index 6f5a26f7..463bc2db 100644 --- a/provider/cmd/pulumi-resource-digitalocean/schema.json +++ b/provider/cmd/pulumi-resource-digitalocean/schema.json @@ -368,6 +368,10 @@ }, "description": "Describes an alert policy for the component.\n" }, + "bitbucket": { + "$ref": "#/types/digitalocean:index/AppSpecFunctionBitbucket:AppSpecFunctionBitbucket", + "description": "A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" + }, "cors": { "$ref": "#/types/digitalocean:index/AppSpecFunctionCors:AppSpecFunctionCors", "description": "The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app.\n", @@ -460,6 +464,23 @@ "window" ] }, + "digitalocean:index/AppSpecFunctionBitbucket:AppSpecFunctionBitbucket": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the branch to use.\n" + }, + "deployOnPush": { + "type": "boolean", + "description": "Whether to automatically deploy new commits made to the repo.\n" + }, + "repo": { + "type": "string", + "description": "The name of the repo in the format `owner/repo`.\n" + } + }, + "type": "object" + }, "digitalocean:index/AppSpecFunctionCors:AppSpecFunctionCors": { "properties": { "allowCredentials": { @@ -901,6 +922,10 @@ }, "description": "Describes an alert policy for the component.\n" }, + "bitbucket": { + "$ref": "#/types/digitalocean:index/AppSpecJobBitbucket:AppSpecJobBitbucket", + "description": "A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" + }, "buildCommand": { "type": "string", "description": "An optional build command to run while building this component from source.\n" @@ -1008,6 +1033,23 @@ "window" ] }, + "digitalocean:index/AppSpecJobBitbucket:AppSpecJobBitbucket": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the branch to use.\n" + }, + "deployOnPush": { + "type": "boolean", + "description": "Whether to automatically deploy new commits made to the repo.\n" + }, + "repo": { + "type": "string", + "description": "The name of the repo in the format `owner/repo`.\n" + } + }, + "type": "object" + }, "digitalocean:index/AppSpecJobEnv:AppSpecJobEnv": { "properties": { "key": { @@ -1271,6 +1313,10 @@ "$ref": "#/types/digitalocean:index/AppSpecServiceAutoscaling:AppSpecServiceAutoscaling", "description": "Configuration for automatically scaling this component based on metrics.\n" }, + "bitbucket": { + "$ref": "#/types/digitalocean:index/AppSpecServiceBitbucket:AppSpecServiceBitbucket", + "description": "A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" + }, "buildCommand": { "type": "string", "description": "An optional build command to run while building this component from source.\n" @@ -1456,6 +1502,23 @@ "percent" ] }, + "digitalocean:index/AppSpecServiceBitbucket:AppSpecServiceBitbucket": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the branch to use.\n" + }, + "deployOnPush": { + "type": "boolean", + "description": "Whether to automatically deploy new commits made to the repo.\n" + }, + "repo": { + "type": "string", + "description": "The name of the repo in the format `owner/repo`.\n" + } + }, + "type": "object" + }, "digitalocean:index/AppSpecServiceCors:AppSpecServiceCors": { "properties": { "allowCredentials": { @@ -1814,6 +1877,10 @@ }, "digitalocean:index/AppSpecStaticSite:AppSpecStaticSite": { "properties": { + "bitbucket": { + "$ref": "#/types/digitalocean:index/AppSpecStaticSiteBitbucket:AppSpecStaticSiteBitbucket", + "description": "A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" + }, "buildCommand": { "type": "string", "description": "An optional build command to run while building this component from source.\n" @@ -1896,6 +1963,23 @@ } } }, + "digitalocean:index/AppSpecStaticSiteBitbucket:AppSpecStaticSiteBitbucket": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the branch to use.\n" + }, + "deployOnPush": { + "type": "boolean", + "description": "Whether to automatically deploy new commits made to the repo.\n" + }, + "repo": { + "type": "string", + "description": "The name of the repo in the format `owner/repo`.\n" + } + }, + "type": "object" + }, "digitalocean:index/AppSpecStaticSiteCors:AppSpecStaticSiteCors": { "properties": { "allowCredentials": { @@ -2054,6 +2138,10 @@ "$ref": "#/types/digitalocean:index/AppSpecWorkerAutoscaling:AppSpecWorkerAutoscaling", "description": "Configuration for automatically scaling this component based on metrics.\n" }, + "bitbucket": { + "$ref": "#/types/digitalocean:index/AppSpecWorkerBitbucket:AppSpecWorkerBitbucket", + "description": "A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" + }, "buildCommand": { "type": "string", "description": "An optional build command to run while building this component from source.\n" @@ -2200,6 +2288,23 @@ "percent" ] }, + "digitalocean:index/AppSpecWorkerBitbucket:AppSpecWorkerBitbucket": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the branch to use.\n" + }, + "deployOnPush": { + "type": "boolean", + "description": "Whether to automatically deploy new commits made to the repo.\n" + }, + "repo": { + "type": "string", + "description": "The name of the repo in the format `owner/repo`.\n" + } + }, + "type": "object" + }, "digitalocean:index/AppSpecWorkerEnv:AppSpecWorkerEnv": { "properties": { "key": { @@ -2470,11 +2575,11 @@ "properties": { "day": { "type": "string", - "description": "The day of the week on which to apply maintenance updates.\n" + "description": "The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`.\n" }, "hour": { "type": "string", - "description": "The hour in UTC at which maintenance updates will be applied in 24 hour format.\n" + "description": "The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`.\n" } }, "type": "object", @@ -3005,6 +3110,24 @@ }, "type": "object" }, + "digitalocean:index/KubernetesClusterControlPlaneFirewall:KubernetesClusterControlPlaneFirewall": { + "properties": { + "allowedAddresses": { + "type": "array", + "items": { + "type": "string" + } + }, + "enabled": { + "type": "boolean" + } + }, + "type": "object", + "required": [ + "allowedAddresses", + "enabled" + ] + }, "digitalocean:index/KubernetesClusterKubeConfig:KubernetesClusterKubeConfig": { "properties": { "clientCertificate": { @@ -3982,6 +4105,10 @@ }, "description": "Describes an alert policy for the component.\n" }, + "bitbucket": { + "$ref": "#/types/digitalocean:index/getAppSpecFunctionBitbucket:getAppSpecFunctionBitbucket", + "description": "A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" + }, "cors": { "$ref": "#/types/digitalocean:index/getAppSpecFunctionCors:getAppSpecFunctionCors", "description": "The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app.\n", @@ -4000,11 +4127,11 @@ }, "github": { "$ref": "#/types/digitalocean:index/getAppSpecFunctionGithub:getAppSpecFunctionGithub", - "description": "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.\n" + "description": "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`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "gitlab": { "$ref": "#/types/digitalocean:index/getAppSpecFunctionGitlab:getAppSpecFunctionGitlab", - "description": "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.\n" + "description": "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`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "logDestinations": { "type": "array", @@ -4076,6 +4203,23 @@ } } }, + "digitalocean:index/getAppSpecFunctionBitbucket:getAppSpecFunctionBitbucket": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the branch to use.\n" + }, + "deployOnPush": { + "type": "boolean", + "description": "Whether to automatically deploy new commits made to the repo.\n" + }, + "repo": { + "type": "string", + "description": "The name of the repo in the format `owner/repo`.\n" + } + }, + "type": "object" + }, "digitalocean:index/getAppSpecFunctionCors:getAppSpecFunctionCors": { "properties": { "allowCredentials": { @@ -4538,6 +4682,10 @@ }, "description": "Describes an alert policy for the component.\n" }, + "bitbucket": { + "$ref": "#/types/digitalocean:index/getAppSpecJobBitbucket:getAppSpecJobBitbucket", + "description": "A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" + }, "buildCommand": { "type": "string", "description": "An optional build command to run while building this component from source.\n" @@ -4563,15 +4711,15 @@ }, "github": { "$ref": "#/types/digitalocean:index/getAppSpecJobGithub:getAppSpecJobGithub", - "description": "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.\n" + "description": "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`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "gitlab": { "$ref": "#/types/digitalocean:index/getAppSpecJobGitlab:getAppSpecJobGitlab", - "description": "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.\n" + "description": "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`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "image": { "$ref": "#/types/digitalocean:index/getAppSpecJobImage:getAppSpecJobImage", - "description": "An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set.\n" + "description": "An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "instanceCount": { "type": "integer", @@ -4655,6 +4803,23 @@ } } }, + "digitalocean:index/getAppSpecJobBitbucket:getAppSpecJobBitbucket": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the branch to use.\n" + }, + "deployOnPush": { + "type": "boolean", + "description": "Whether to automatically deploy new commits made to the repo.\n" + }, + "repo": { + "type": "string", + "description": "The name of the repo in the format `owner/repo`.\n" + } + }, + "type": "object" + }, "digitalocean:index/getAppSpecJobEnv:getAppSpecJobEnv": { "properties": { "key": { @@ -4941,6 +5106,10 @@ "$ref": "#/types/digitalocean:index/getAppSpecServiceAutoscaling:getAppSpecServiceAutoscaling", "description": "Configuration for automatically scaling this component based on metrics.\n" }, + "bitbucket": { + "$ref": "#/types/digitalocean:index/getAppSpecServiceBitbucket:getAppSpecServiceBitbucket", + "description": "A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" + }, "buildCommand": { "type": "string", "description": "An optional build command to run while building this component from source.\n" @@ -4971,11 +5140,11 @@ }, "github": { "$ref": "#/types/digitalocean:index/getAppSpecServiceGithub:getAppSpecServiceGithub", - "description": "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.\n" + "description": "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`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "gitlab": { "$ref": "#/types/digitalocean:index/getAppSpecServiceGitlab:getAppSpecServiceGitlab", - "description": "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.\n" + "description": "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`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "healthCheck": { "$ref": "#/types/digitalocean:index/getAppSpecServiceHealthCheck:getAppSpecServiceHealthCheck", @@ -4987,7 +5156,7 @@ }, "image": { "$ref": "#/types/digitalocean:index/getAppSpecServiceImage:getAppSpecServiceImage", - "description": "An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set.\n" + "description": "An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "instanceCount": { "type": "integer", @@ -5138,6 +5307,23 @@ } } }, + "digitalocean:index/getAppSpecServiceBitbucket:getAppSpecServiceBitbucket": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the branch to use.\n" + }, + "deployOnPush": { + "type": "boolean", + "description": "Whether to automatically deploy new commits made to the repo.\n" + }, + "repo": { + "type": "string", + "description": "The name of the repo in the format `owner/repo`.\n" + } + }, + "type": "object" + }, "digitalocean:index/getAppSpecServiceCors:getAppSpecServiceCors": { "properties": { "allowCredentials": { @@ -5519,6 +5705,10 @@ }, "digitalocean:index/getAppSpecStaticSite:getAppSpecStaticSite": { "properties": { + "bitbucket": { + "$ref": "#/types/digitalocean:index/getAppSpecStaticSiteBitbucket:getAppSpecStaticSiteBitbucket", + "description": "A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" + }, "buildCommand": { "type": "string", "description": "An optional build command to run while building this component from source.\n" @@ -5557,11 +5747,11 @@ }, "github": { "$ref": "#/types/digitalocean:index/getAppSpecStaticSiteGithub:getAppSpecStaticSiteGithub", - "description": "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.\n" + "description": "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`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "gitlab": { "$ref": "#/types/digitalocean:index/getAppSpecStaticSiteGitlab:getAppSpecStaticSiteGitlab", - "description": "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.\n" + "description": "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`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "indexDocument": { "type": "string", @@ -5598,6 +5788,23 @@ } } }, + "digitalocean:index/getAppSpecStaticSiteBitbucket:getAppSpecStaticSiteBitbucket": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the branch to use.\n" + }, + "deployOnPush": { + "type": "boolean", + "description": "Whether to automatically deploy new commits made to the repo.\n" + }, + "repo": { + "type": "string", + "description": "The name of the repo in the format `owner/repo`.\n" + } + }, + "type": "object" + }, "digitalocean:index/getAppSpecStaticSiteCors:getAppSpecStaticSiteCors": { "properties": { "allowCredentials": { @@ -5757,6 +5964,10 @@ "$ref": "#/types/digitalocean:index/getAppSpecWorkerAutoscaling:getAppSpecWorkerAutoscaling", "description": "Configuration for automatically scaling this component based on metrics.\n" }, + "bitbucket": { + "$ref": "#/types/digitalocean:index/getAppSpecWorkerBitbucket:getAppSpecWorkerBitbucket", + "description": "A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" + }, "buildCommand": { "type": "string", "description": "An optional build command to run while building this component from source.\n" @@ -5782,15 +5993,15 @@ }, "github": { "$ref": "#/types/digitalocean:index/getAppSpecWorkerGithub:getAppSpecWorkerGithub", - "description": "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.\n" + "description": "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`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "gitlab": { "$ref": "#/types/digitalocean:index/getAppSpecWorkerGitlab:getAppSpecWorkerGitlab", - "description": "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.\n" + "description": "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`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "image": { "$ref": "#/types/digitalocean:index/getAppSpecWorkerImage:getAppSpecWorkerImage", - "description": "An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set.\n" + "description": "An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set.\n" }, "instanceCount": { "type": "integer", @@ -5923,6 +6134,23 @@ } } }, + "digitalocean:index/getAppSpecWorkerBitbucket:getAppSpecWorkerBitbucket": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the branch to use.\n" + }, + "deployOnPush": { + "type": "boolean", + "description": "Whether to automatically deploy new commits made to the repo.\n" + }, + "repo": { + "type": "string", + "description": "The name of the repo in the format `owner/repo`.\n" + } + }, + "type": "object" + }, "digitalocean:index/getAppSpecWorkerEnv:getAppSpecWorkerEnv": { "properties": { "key": { @@ -9026,7 +9254,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 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\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", + "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 .bitbucket(AppSpecStaticSiteBitbucketArgs.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 bitbucket:\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\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", @@ -14214,13 +14442,16 @@ "type": "string", "description": "The uniform resource name (URN) for the Kubernetes cluster.\n" }, + "controlPlaneFirewall": { + "$ref": "#/types/digitalocean:index/KubernetesClusterControlPlaneFirewall:KubernetesClusterControlPlaneFirewall" + }, "createdAt": { "type": "string", "description": "The date and time when the node was created.\n" }, "destroyAllAssociatedResources": { "type": "boolean", - "description": "**Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.\n\nThis resource supports customized create timeouts. The default timeout is 30 minutes.\n" + "description": "**Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.\n" }, "endpoint": { "type": "string", @@ -14242,6 +14473,10 @@ "description": "A representation of the Kubernetes cluster's kubeconfig with the following attributes:\n", "secret": true }, + "kubeconfigExpireSeconds": { + "type": "integer", + "description": "The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry.\n\nThis resource supports customized create timeouts. The default timeout is 30 minutes.\n" + }, "maintenancePolicy": { "$ref": "#/types/digitalocean:index/KubernetesClusterMaintenancePolicy:KubernetesClusterMaintenancePolicy", "description": "A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect.\n" @@ -14296,6 +14531,7 @@ }, "required": [ "clusterSubnet", + "controlPlaneFirewall", "createdAt", "endpoint", "ipv4Address", @@ -14321,14 +14557,21 @@ "description": "The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).\n", "willReplaceOnChanges": true }, + "controlPlaneFirewall": { + "$ref": "#/types/digitalocean:index/KubernetesClusterControlPlaneFirewall:KubernetesClusterControlPlaneFirewall" + }, "destroyAllAssociatedResources": { "type": "boolean", - "description": "**Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.\n\nThis resource supports customized create timeouts. The default timeout is 30 minutes.\n" + "description": "**Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.\n" }, "ha": { "type": "boolean", "description": "Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false\n" }, + "kubeconfigExpireSeconds": { + "type": "integer", + "description": "The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry.\n\nThis resource supports customized create timeouts. The default timeout is 30 minutes.\n" + }, "maintenancePolicy": { "$ref": "#/types/digitalocean:index/KubernetesClusterMaintenancePolicy:KubernetesClusterMaintenancePolicy", "description": "A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect.\n" @@ -14406,13 +14649,16 @@ "type": "string", "description": "The uniform resource name (URN) for the Kubernetes cluster.\n" }, + "controlPlaneFirewall": { + "$ref": "#/types/digitalocean:index/KubernetesClusterControlPlaneFirewall:KubernetesClusterControlPlaneFirewall" + }, "createdAt": { "type": "string", "description": "The date and time when the node was created.\n" }, "destroyAllAssociatedResources": { "type": "boolean", - "description": "**Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.\n\nThis resource supports customized create timeouts. The default timeout is 30 minutes.\n" + "description": "**Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.\n" }, "endpoint": { "type": "string", @@ -14434,6 +14680,10 @@ "description": "A representation of the Kubernetes cluster's kubeconfig with the following attributes:\n", "secret": true }, + "kubeconfigExpireSeconds": { + "type": "integer", + "description": "The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry.\n\nThis resource supports customized create timeouts. The default timeout is 30 minutes.\n" + }, "maintenancePolicy": { "$ref": "#/types/digitalocean:index/KubernetesClusterMaintenancePolicy:KubernetesClusterMaintenancePolicy", "description": "A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect.\n" @@ -14796,6 +15046,10 @@ "type": "string", "description": "The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`.\n" }, + "networkStack": { + "type": "string", + "description": "The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`.\n**NOTE**: this feature is in private preview, and may not be available for public use\n" + }, "projectId": { "type": "string", "description": "The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project.\n" @@ -14934,6 +15188,11 @@ "description": "The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`.\n", "willReplaceOnChanges": true }, + "networkStack": { + "type": "string", + "description": "The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`.\n**NOTE**: this feature is in private preview, and may not be available for public use\n", + "willReplaceOnChanges": true + }, "projectId": { "type": "string", "description": "The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project.\n" @@ -15076,6 +15335,11 @@ "description": "The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`.\n", "willReplaceOnChanges": true }, + "networkStack": { + "type": "string", + "description": "The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`.\n**NOTE**: this feature is in private preview, and may not be available for public use\n", + "willReplaceOnChanges": true + }, "projectId": { "type": "string", "description": "The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project.\n" diff --git a/provider/go.mod b/provider/go.mod index 0beccb99..3bca5e74 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -77,7 +77,7 @@ require ( github.com/cyphar/filepath-securejoin v0.3.6 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/deckarep/golang-set/v2 v2.5.0 // indirect - github.com/digitalocean/godo v1.131.1 // indirect + github.com/digitalocean/godo v1.135.0 // indirect github.com/djherbis/times v1.5.0 // indirect github.com/edsrzf/mmap-go v1.1.0 // indirect github.com/emirpasic/gods v1.18.1 // indirect @@ -233,12 +233,12 @@ require ( golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect golang.org/x/mod v0.21.0 // indirect golang.org/x/net v0.34.0 // indirect - golang.org/x/oauth2 v0.24.0 // indirect + golang.org/x/oauth2 v0.25.0 // indirect golang.org/x/sync v0.10.0 // indirect golang.org/x/sys v0.29.0 // indirect golang.org/x/term v0.28.0 // indirect golang.org/x/text v0.21.0 // indirect - golang.org/x/time v0.8.0 // indirect + golang.org/x/time v0.9.0 // indirect golang.org/x/tools v0.23.0 // indirect golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect google.golang.org/api v0.169.0 // indirect diff --git a/provider/go.sum b/provider/go.sum index afae8932..50acaa14 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1531,8 +1531,8 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/deckarep/golang-set/v2 v2.5.0 h1:hn6cEZtQ0h3J8kFrHR/NrzyOoTnjgW1+FmNJzQ7y/sA= github.com/deckarep/golang-set/v2 v2.5.0/go.mod h1:VAky9rY/yGXJOLEDv3OMci+7wtDpOF4IN+y82NBOac4= -github.com/digitalocean/godo v1.131.1 h1:2QsRwjNukKgOQbflMxOsTDoC05o5UKBpqQMFKXegYKE= -github.com/digitalocean/godo v1.131.1/go.mod h1:PU8JB6I1XYkQIdHFop8lLAY9ojp6M0XcU0TWaQSxbrc= +github.com/digitalocean/godo v1.135.0 h1:H/A2wFBLo3hUDAw0xjHayHaNxY2hRvM3xxa+lTpriT8= +github.com/digitalocean/godo v1.135.0/go.mod h1:PU8JB6I1XYkQIdHFop8lLAY9ojp6M0XcU0TWaQSxbrc= github.com/djherbis/times v1.5.0 h1:79myA211VwPhFTqUk8xehWrsEO+zcIZj0zT8mXPVARU= github.com/djherbis/times v1.5.0/go.mod h1:5q7FDLvbNg1L/KaBmPcWlVR9NmoKo3+ucqUA3ijQhA0= github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= @@ -2616,8 +2616,8 @@ golang.org/x/oauth2 v0.17.0/go.mod h1:OzPDGQiuQMguemayvdylqddI7qcD9lnSDb+1FiwQ5H golang.org/x/oauth2 v0.18.0/go.mod h1:Wf7knwG0MPoWIMMBgFlEaSUDaKskp0dCfrlJRJXbBi8= golang.org/x/oauth2 v0.20.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/oauth2 v0.22.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= -golang.org/x/oauth2 v0.24.0 h1:KTBBxWqUa0ykRPLtV69rRto9TLXcqYkeswu48x/gvNE= -golang.org/x/oauth2 v0.24.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= +golang.org/x/oauth2 v0.25.0 h1:CY4y7XT9v0cRI9oupztF8AgiIu99L/ksR/Xp/6jrZ70= +golang.org/x/oauth2 v0.25.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -2825,8 +2825,8 @@ golang.org/x/time v0.0.0-20220922220347-f3bd1da661af/go.mod h1:tRJNPiyCQ0inRvYxb golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= -golang.org/x/time v0.8.0 h1:9i3RxcPv3PZnitoVGMPDKZSq1xW1gK1Xy3ArNOGZfEg= -golang.org/x/time v0.8.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= +golang.org/x/time v0.9.0 h1:EsRrnYcQiGH+5FfbgvV4AP7qEZstoyrHB0DzarOQ4ZY= +golang.org/x/time v0.9.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= diff --git a/sdk/dotnet/Inputs/AppSpecFunctionArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionArgs.cs index 62ac066e..273dd562 100644 --- a/sdk/dotnet/Inputs/AppSpecFunctionArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecFunctionArgs.cs @@ -24,6 +24,12 @@ public InputList Alerts set => _alerts = value; } + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + [Input("bitbucket")] + public Input? Bitbucket { get; set; } + /// /// The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. /// diff --git a/sdk/dotnet/Inputs/AppSpecFunctionBitbucketArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionBitbucketArgs.cs new file mode 100644 index 00000000..296e7be2 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecFunctionBitbucketArgs.cs @@ -0,0 +1,38 @@ +// *** 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 AppSpecFunctionBitbucketArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the branch to use. + /// + [Input("branch")] + public Input? Branch { get; set; } + + /// + /// Whether to automatically deploy new commits made to the repo. + /// + [Input("deployOnPush")] + public Input? DeployOnPush { get; set; } + + /// + /// The name of the repo in the format `owner/repo`. + /// + [Input("repo")] + public Input? Repo { get; set; } + + public AppSpecFunctionBitbucketArgs() + { + } + public static new AppSpecFunctionBitbucketArgs Empty => new AppSpecFunctionBitbucketArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecFunctionBitbucketGetArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionBitbucketGetArgs.cs new file mode 100644 index 00000000..4d8e254f --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecFunctionBitbucketGetArgs.cs @@ -0,0 +1,38 @@ +// *** 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 AppSpecFunctionBitbucketGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the branch to use. + /// + [Input("branch")] + public Input? Branch { get; set; } + + /// + /// Whether to automatically deploy new commits made to the repo. + /// + [Input("deployOnPush")] + public Input? DeployOnPush { get; set; } + + /// + /// The name of the repo in the format `owner/repo`. + /// + [Input("repo")] + public Input? Repo { get; set; } + + public AppSpecFunctionBitbucketGetArgs() + { + } + public static new AppSpecFunctionBitbucketGetArgs Empty => new AppSpecFunctionBitbucketGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecFunctionGetArgs.cs b/sdk/dotnet/Inputs/AppSpecFunctionGetArgs.cs index fbf0d280..cec352d7 100644 --- a/sdk/dotnet/Inputs/AppSpecFunctionGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecFunctionGetArgs.cs @@ -24,6 +24,12 @@ public InputList Alerts set => _alerts = value; } + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + [Input("bitbucket")] + public Input? Bitbucket { get; set; } + /// /// The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. /// diff --git a/sdk/dotnet/Inputs/AppSpecJobArgs.cs b/sdk/dotnet/Inputs/AppSpecJobArgs.cs index 4fc777fd..793dc90a 100644 --- a/sdk/dotnet/Inputs/AppSpecJobArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecJobArgs.cs @@ -24,6 +24,12 @@ public InputList Alerts set => _alerts = value; } + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + [Input("bitbucket")] + public Input? Bitbucket { get; set; } + /// /// An optional build command to run while building this component from source. /// diff --git a/sdk/dotnet/Inputs/AppSpecJobBitbucketArgs.cs b/sdk/dotnet/Inputs/AppSpecJobBitbucketArgs.cs new file mode 100644 index 00000000..e6bb68c8 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecJobBitbucketArgs.cs @@ -0,0 +1,38 @@ +// *** 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 AppSpecJobBitbucketArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the branch to use. + /// + [Input("branch")] + public Input? Branch { get; set; } + + /// + /// Whether to automatically deploy new commits made to the repo. + /// + [Input("deployOnPush")] + public Input? DeployOnPush { get; set; } + + /// + /// The name of the repo in the format `owner/repo`. + /// + [Input("repo")] + public Input? Repo { get; set; } + + public AppSpecJobBitbucketArgs() + { + } + public static new AppSpecJobBitbucketArgs Empty => new AppSpecJobBitbucketArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecJobBitbucketGetArgs.cs b/sdk/dotnet/Inputs/AppSpecJobBitbucketGetArgs.cs new file mode 100644 index 00000000..a9de1ac7 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecJobBitbucketGetArgs.cs @@ -0,0 +1,38 @@ +// *** 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 AppSpecJobBitbucketGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the branch to use. + /// + [Input("branch")] + public Input? Branch { get; set; } + + /// + /// Whether to automatically deploy new commits made to the repo. + /// + [Input("deployOnPush")] + public Input? DeployOnPush { get; set; } + + /// + /// The name of the repo in the format `owner/repo`. + /// + [Input("repo")] + public Input? Repo { get; set; } + + public AppSpecJobBitbucketGetArgs() + { + } + public static new AppSpecJobBitbucketGetArgs Empty => new AppSpecJobBitbucketGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecJobGetArgs.cs b/sdk/dotnet/Inputs/AppSpecJobGetArgs.cs index e9b77820..ad0ed1b1 100644 --- a/sdk/dotnet/Inputs/AppSpecJobGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecJobGetArgs.cs @@ -24,6 +24,12 @@ public InputList Alerts set => _alerts = value; } + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + [Input("bitbucket")] + public Input? Bitbucket { get; set; } + /// /// An optional build command to run while building this component from source. /// diff --git a/sdk/dotnet/Inputs/AppSpecServiceArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceArgs.cs index 964d3849..7621f01a 100644 --- a/sdk/dotnet/Inputs/AppSpecServiceArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecServiceArgs.cs @@ -30,6 +30,12 @@ public InputList Alerts [Input("autoscaling")] public Input? Autoscaling { get; set; } + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + [Input("bitbucket")] + public Input? Bitbucket { get; set; } + /// /// An optional build command to run while building this component from source. /// diff --git a/sdk/dotnet/Inputs/AppSpecServiceBitbucketArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceBitbucketArgs.cs new file mode 100644 index 00000000..dec09c39 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecServiceBitbucketArgs.cs @@ -0,0 +1,38 @@ +// *** 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 AppSpecServiceBitbucketArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the branch to use. + /// + [Input("branch")] + public Input? Branch { get; set; } + + /// + /// Whether to automatically deploy new commits made to the repo. + /// + [Input("deployOnPush")] + public Input? DeployOnPush { get; set; } + + /// + /// The name of the repo in the format `owner/repo`. + /// + [Input("repo")] + public Input? Repo { get; set; } + + public AppSpecServiceBitbucketArgs() + { + } + public static new AppSpecServiceBitbucketArgs Empty => new AppSpecServiceBitbucketArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecServiceBitbucketGetArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceBitbucketGetArgs.cs new file mode 100644 index 00000000..3f1dbe70 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecServiceBitbucketGetArgs.cs @@ -0,0 +1,38 @@ +// *** 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 AppSpecServiceBitbucketGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the branch to use. + /// + [Input("branch")] + public Input? Branch { get; set; } + + /// + /// Whether to automatically deploy new commits made to the repo. + /// + [Input("deployOnPush")] + public Input? DeployOnPush { get; set; } + + /// + /// The name of the repo in the format `owner/repo`. + /// + [Input("repo")] + public Input? Repo { get; set; } + + public AppSpecServiceBitbucketGetArgs() + { + } + public static new AppSpecServiceBitbucketGetArgs Empty => new AppSpecServiceBitbucketGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecServiceGetArgs.cs b/sdk/dotnet/Inputs/AppSpecServiceGetArgs.cs index 99344a57..29c15622 100644 --- a/sdk/dotnet/Inputs/AppSpecServiceGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecServiceGetArgs.cs @@ -30,6 +30,12 @@ public InputList Alerts [Input("autoscaling")] public Input? Autoscaling { get; set; } + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + [Input("bitbucket")] + public Input? Bitbucket { get; set; } + /// /// An optional build command to run while building this component from source. /// diff --git a/sdk/dotnet/Inputs/AppSpecStaticSiteArgs.cs b/sdk/dotnet/Inputs/AppSpecStaticSiteArgs.cs index 2f28d162..7180c381 100644 --- a/sdk/dotnet/Inputs/AppSpecStaticSiteArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecStaticSiteArgs.cs @@ -12,6 +12,12 @@ namespace Pulumi.DigitalOcean.Inputs public sealed class AppSpecStaticSiteArgs : global::Pulumi.ResourceArgs { + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + [Input("bitbucket")] + public Input? Bitbucket { get; set; } + /// /// An optional build command to run while building this component from source. /// diff --git a/sdk/dotnet/Inputs/AppSpecStaticSiteBitbucketArgs.cs b/sdk/dotnet/Inputs/AppSpecStaticSiteBitbucketArgs.cs new file mode 100644 index 00000000..9e4896c1 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecStaticSiteBitbucketArgs.cs @@ -0,0 +1,38 @@ +// *** 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 AppSpecStaticSiteBitbucketArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the branch to use. + /// + [Input("branch")] + public Input? Branch { get; set; } + + /// + /// Whether to automatically deploy new commits made to the repo. + /// + [Input("deployOnPush")] + public Input? DeployOnPush { get; set; } + + /// + /// The name of the repo in the format `owner/repo`. + /// + [Input("repo")] + public Input? Repo { get; set; } + + public AppSpecStaticSiteBitbucketArgs() + { + } + public static new AppSpecStaticSiteBitbucketArgs Empty => new AppSpecStaticSiteBitbucketArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecStaticSiteBitbucketGetArgs.cs b/sdk/dotnet/Inputs/AppSpecStaticSiteBitbucketGetArgs.cs new file mode 100644 index 00000000..3917c470 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecStaticSiteBitbucketGetArgs.cs @@ -0,0 +1,38 @@ +// *** 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 AppSpecStaticSiteBitbucketGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the branch to use. + /// + [Input("branch")] + public Input? Branch { get; set; } + + /// + /// Whether to automatically deploy new commits made to the repo. + /// + [Input("deployOnPush")] + public Input? DeployOnPush { get; set; } + + /// + /// The name of the repo in the format `owner/repo`. + /// + [Input("repo")] + public Input? Repo { get; set; } + + public AppSpecStaticSiteBitbucketGetArgs() + { + } + public static new AppSpecStaticSiteBitbucketGetArgs Empty => new AppSpecStaticSiteBitbucketGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecStaticSiteGetArgs.cs b/sdk/dotnet/Inputs/AppSpecStaticSiteGetArgs.cs index ad345333..03072fc1 100644 --- a/sdk/dotnet/Inputs/AppSpecStaticSiteGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecStaticSiteGetArgs.cs @@ -12,6 +12,12 @@ namespace Pulumi.DigitalOcean.Inputs public sealed class AppSpecStaticSiteGetArgs : global::Pulumi.ResourceArgs { + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + [Input("bitbucket")] + public Input? Bitbucket { get; set; } + /// /// An optional build command to run while building this component from source. /// diff --git a/sdk/dotnet/Inputs/AppSpecWorkerArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerArgs.cs index 1dc48f20..b981cb34 100644 --- a/sdk/dotnet/Inputs/AppSpecWorkerArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecWorkerArgs.cs @@ -30,6 +30,12 @@ public InputList Alerts [Input("autoscaling")] public Input? Autoscaling { get; set; } + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + [Input("bitbucket")] + public Input? Bitbucket { get; set; } + /// /// An optional build command to run while building this component from source. /// diff --git a/sdk/dotnet/Inputs/AppSpecWorkerBitbucketArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerBitbucketArgs.cs new file mode 100644 index 00000000..f53d5c23 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecWorkerBitbucketArgs.cs @@ -0,0 +1,38 @@ +// *** 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 AppSpecWorkerBitbucketArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the branch to use. + /// + [Input("branch")] + public Input? Branch { get; set; } + + /// + /// Whether to automatically deploy new commits made to the repo. + /// + [Input("deployOnPush")] + public Input? DeployOnPush { get; set; } + + /// + /// The name of the repo in the format `owner/repo`. + /// + [Input("repo")] + public Input? Repo { get; set; } + + public AppSpecWorkerBitbucketArgs() + { + } + public static new AppSpecWorkerBitbucketArgs Empty => new AppSpecWorkerBitbucketArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecWorkerBitbucketGetArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerBitbucketGetArgs.cs new file mode 100644 index 00000000..3ccaafb9 --- /dev/null +++ b/sdk/dotnet/Inputs/AppSpecWorkerBitbucketGetArgs.cs @@ -0,0 +1,38 @@ +// *** 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 AppSpecWorkerBitbucketGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the branch to use. + /// + [Input("branch")] + public Input? Branch { get; set; } + + /// + /// Whether to automatically deploy new commits made to the repo. + /// + [Input("deployOnPush")] + public Input? DeployOnPush { get; set; } + + /// + /// The name of the repo in the format `owner/repo`. + /// + [Input("repo")] + public Input? Repo { get; set; } + + public AppSpecWorkerBitbucketGetArgs() + { + } + public static new AppSpecWorkerBitbucketGetArgs Empty => new AppSpecWorkerBitbucketGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AppSpecWorkerGetArgs.cs b/sdk/dotnet/Inputs/AppSpecWorkerGetArgs.cs index 71af94d7..d5a17187 100644 --- a/sdk/dotnet/Inputs/AppSpecWorkerGetArgs.cs +++ b/sdk/dotnet/Inputs/AppSpecWorkerGetArgs.cs @@ -30,6 +30,12 @@ public InputList Alerts [Input("autoscaling")] public Input? Autoscaling { get; set; } + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + [Input("bitbucket")] + public Input? Bitbucket { get; set; } + /// /// An optional build command to run while building this component from source. /// diff --git a/sdk/dotnet/Inputs/DatabaseClusterMaintenanceWindowArgs.cs b/sdk/dotnet/Inputs/DatabaseClusterMaintenanceWindowArgs.cs index bb692a39..f6bb3352 100644 --- a/sdk/dotnet/Inputs/DatabaseClusterMaintenanceWindowArgs.cs +++ b/sdk/dotnet/Inputs/DatabaseClusterMaintenanceWindowArgs.cs @@ -13,13 +13,13 @@ namespace Pulumi.DigitalOcean.Inputs public sealed class DatabaseClusterMaintenanceWindowArgs : global::Pulumi.ResourceArgs { /// - /// The day of the week on which to apply maintenance updates. + /// The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. /// [Input("day", required: true)] public Input Day { get; set; } = null!; /// - /// The hour in UTC at which maintenance updates will be applied in 24 hour format. + /// The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. /// [Input("hour", required: true)] public Input Hour { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DatabaseClusterMaintenanceWindowGetArgs.cs b/sdk/dotnet/Inputs/DatabaseClusterMaintenanceWindowGetArgs.cs index 2ae306b6..811c940e 100644 --- a/sdk/dotnet/Inputs/DatabaseClusterMaintenanceWindowGetArgs.cs +++ b/sdk/dotnet/Inputs/DatabaseClusterMaintenanceWindowGetArgs.cs @@ -13,13 +13,13 @@ namespace Pulumi.DigitalOcean.Inputs public sealed class DatabaseClusterMaintenanceWindowGetArgs : global::Pulumi.ResourceArgs { /// - /// The day of the week on which to apply maintenance updates. + /// The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. /// [Input("day", required: true)] public Input Day { get; set; } = null!; /// - /// The hour in UTC at which maintenance updates will be applied in 24 hour format. + /// The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. /// [Input("hour", required: true)] public Input Hour { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/KubernetesClusterControlPlaneFirewallArgs.cs b/sdk/dotnet/Inputs/KubernetesClusterControlPlaneFirewallArgs.cs new file mode 100644 index 00000000..fb94995b --- /dev/null +++ b/sdk/dotnet/Inputs/KubernetesClusterControlPlaneFirewallArgs.cs @@ -0,0 +1,31 @@ +// *** 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 KubernetesClusterControlPlaneFirewallArgs : global::Pulumi.ResourceArgs + { + [Input("allowedAddresses", required: true)] + private InputList? _allowedAddresses; + public InputList AllowedAddresses + { + get => _allowedAddresses ?? (_allowedAddresses = new InputList()); + set => _allowedAddresses = value; + } + + [Input("enabled", required: true)] + public Input Enabled { get; set; } = null!; + + public KubernetesClusterControlPlaneFirewallArgs() + { + } + public static new KubernetesClusterControlPlaneFirewallArgs Empty => new KubernetesClusterControlPlaneFirewallArgs(); + } +} diff --git a/sdk/dotnet/Inputs/KubernetesClusterControlPlaneFirewallGetArgs.cs b/sdk/dotnet/Inputs/KubernetesClusterControlPlaneFirewallGetArgs.cs new file mode 100644 index 00000000..87a8ca7b --- /dev/null +++ b/sdk/dotnet/Inputs/KubernetesClusterControlPlaneFirewallGetArgs.cs @@ -0,0 +1,31 @@ +// *** 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 KubernetesClusterControlPlaneFirewallGetArgs : global::Pulumi.ResourceArgs + { + [Input("allowedAddresses", required: true)] + private InputList? _allowedAddresses; + public InputList AllowedAddresses + { + get => _allowedAddresses ?? (_allowedAddresses = new InputList()); + set => _allowedAddresses = value; + } + + [Input("enabled", required: true)] + public Input Enabled { get; set; } = null!; + + public KubernetesClusterControlPlaneFirewallGetArgs() + { + } + public static new KubernetesClusterControlPlaneFirewallGetArgs Empty => new KubernetesClusterControlPlaneFirewallGetArgs(); + } +} diff --git a/sdk/dotnet/KubernetesCluster.cs b/sdk/dotnet/KubernetesCluster.cs index 6d947baf..3416e219 100644 --- a/sdk/dotnet/KubernetesCluster.cs +++ b/sdk/dotnet/KubernetesCluster.cs @@ -57,6 +57,9 @@ public partial class KubernetesCluster : global::Pulumi.CustomResource [Output("clusterUrn")] public Output ClusterUrn { get; private set; } = null!; + [Output("controlPlaneFirewall")] + public Output ControlPlaneFirewall { get; private set; } = null!; + /// /// The date and time when the node was created. /// @@ -65,8 +68,6 @@ public partial class KubernetesCluster : global::Pulumi.CustomResource /// /// **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - /// - /// This resource supports customized create timeouts. The default timeout is 30 minutes. /// [Output("destroyAllAssociatedResources")] public Output DestroyAllAssociatedResources { get; private set; } = null!; @@ -95,6 +96,14 @@ public partial class KubernetesCluster : global::Pulumi.CustomResource [Output("kubeConfigs")] public Output> KubeConfigs { get; private set; } = null!; + /// + /// The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + /// + /// This resource supports customized create timeouts. The default timeout is 30 minutes. + /// + [Output("kubeconfigExpireSeconds")] + public Output KubeconfigExpireSeconds { get; private set; } = null!; + /// /// A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. /// @@ -229,10 +238,11 @@ public sealed class KubernetesClusterArgs : global::Pulumi.ResourceArgs [Input("clusterSubnet")] public Input? ClusterSubnet { get; set; } + [Input("controlPlaneFirewall")] + public Input? ControlPlaneFirewall { get; set; } + /// /// **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - /// - /// This resource supports customized create timeouts. The default timeout is 30 minutes. /// [Input("destroyAllAssociatedResources")] public Input? DestroyAllAssociatedResources { get; set; } @@ -243,6 +253,14 @@ public sealed class KubernetesClusterArgs : global::Pulumi.ResourceArgs [Input("ha")] public Input? Ha { get; set; } + /// + /// The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + /// + /// This resource supports customized create timeouts. The default timeout is 30 minutes. + /// + [Input("kubeconfigExpireSeconds")] + public Input? KubeconfigExpireSeconds { get; set; } + /// /// A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. /// @@ -335,6 +353,9 @@ public sealed class KubernetesClusterState : global::Pulumi.ResourceArgs [Input("clusterUrn")] public Input? ClusterUrn { get; set; } + [Input("controlPlaneFirewall")] + public Input? ControlPlaneFirewall { get; set; } + /// /// The date and time when the node was created. /// @@ -343,8 +364,6 @@ public sealed class KubernetesClusterState : global::Pulumi.ResourceArgs /// /// **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - /// - /// This resource supports customized create timeouts. The default timeout is 30 minutes. /// [Input("destroyAllAssociatedResources")] public Input? DestroyAllAssociatedResources { get; set; } @@ -383,6 +402,14 @@ public InputList KubeConfigs } } + /// + /// The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + /// + /// This resource supports customized create timeouts. The default timeout is 30 minutes. + /// + [Input("kubeconfigExpireSeconds")] + public Input? KubeconfigExpireSeconds { get; set; } + /// /// A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. /// diff --git a/sdk/dotnet/LoadBalancer.cs b/sdk/dotnet/LoadBalancer.cs index a50a76be..99cee8ae 100644 --- a/sdk/dotnet/LoadBalancer.cs +++ b/sdk/dotnet/LoadBalancer.cs @@ -180,6 +180,13 @@ public partial class LoadBalancer : global::Pulumi.CustomResource [Output("network")] public Output Network { get; private set; } = null!; + /// + /// The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + /// **NOTE**: this feature is in private preview, and may not be available for public use + /// + [Output("networkStack")] + public Output NetworkStack { get; private set; } = null!; + /// /// The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. /// @@ -394,6 +401,13 @@ public InputList ForwardingRules [Input("network")] public Input? Network { get; set; } + /// + /// The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + /// **NOTE**: this feature is in private preview, and may not be available for public use + /// + [Input("networkStack")] + public Input? NetworkStack { get; set; } + /// /// The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. /// @@ -588,6 +602,13 @@ public InputList ForwardingRules [Input("network")] public Input? Network { get; set; } + /// + /// The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + /// **NOTE**: this feature is in private preview, and may not be available for public use + /// + [Input("networkStack")] + public Input? NetworkStack { get; set; } + /// /// The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. /// diff --git a/sdk/dotnet/Outputs/AppSpecFunction.cs b/sdk/dotnet/Outputs/AppSpecFunction.cs index 876289f6..1c77e952 100644 --- a/sdk/dotnet/Outputs/AppSpecFunction.cs +++ b/sdk/dotnet/Outputs/AppSpecFunction.cs @@ -18,6 +18,10 @@ public sealed class AppSpecFunction /// public readonly ImmutableArray Alerts; /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + public readonly Outputs.AppSpecFunctionBitbucket? Bitbucket; + /// /// The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. /// public readonly Outputs.AppSpecFunctionCors? Cors; @@ -58,6 +62,8 @@ public sealed class AppSpecFunction private AppSpecFunction( ImmutableArray alerts, + Outputs.AppSpecFunctionBitbucket? bitbucket, + Outputs.AppSpecFunctionCors? cors, ImmutableArray envs, @@ -77,6 +83,7 @@ private AppSpecFunction( string? sourceDir) { Alerts = alerts; + Bitbucket = bitbucket; Cors = cors; Envs = envs; Git = git; diff --git a/sdk/dotnet/Outputs/AppSpecFunctionBitbucket.cs b/sdk/dotnet/Outputs/AppSpecFunctionBitbucket.cs new file mode 100644 index 00000000..3119c176 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecFunctionBitbucket.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.Outputs +{ + + [OutputType] + public sealed class AppSpecFunctionBitbucket + { + /// + /// The name of the branch to use. + /// + public readonly string? Branch; + /// + /// Whether to automatically deploy new commits made to the repo. + /// + public readonly bool? DeployOnPush; + /// + /// The name of the repo in the format `owner/repo`. + /// + public readonly string? Repo; + + [OutputConstructor] + private AppSpecFunctionBitbucket( + string? branch, + + bool? deployOnPush, + + string? repo) + { + Branch = branch; + DeployOnPush = deployOnPush; + Repo = repo; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecJob.cs b/sdk/dotnet/Outputs/AppSpecJob.cs index 5eb57f39..88cf9d24 100644 --- a/sdk/dotnet/Outputs/AppSpecJob.cs +++ b/sdk/dotnet/Outputs/AppSpecJob.cs @@ -18,6 +18,10 @@ public sealed class AppSpecJob /// public readonly ImmutableArray Alerts; /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + public readonly Outputs.AppSpecJobBitbucket? Bitbucket; + /// /// An optional build command to run while building this component from source. /// public readonly string? BuildCommand; @@ -90,6 +94,8 @@ public sealed class AppSpecJob private AppSpecJob( ImmutableArray alerts, + Outputs.AppSpecJobBitbucket? bitbucket, + string? buildCommand, string? dockerfilePath, @@ -123,6 +129,7 @@ private AppSpecJob( Outputs.AppSpecJobTermination? termination) { Alerts = alerts; + Bitbucket = bitbucket; BuildCommand = buildCommand; DockerfilePath = dockerfilePath; EnvironmentSlug = environmentSlug; diff --git a/sdk/dotnet/Outputs/AppSpecJobBitbucket.cs b/sdk/dotnet/Outputs/AppSpecJobBitbucket.cs new file mode 100644 index 00000000..903bbb45 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecJobBitbucket.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.Outputs +{ + + [OutputType] + public sealed class AppSpecJobBitbucket + { + /// + /// The name of the branch to use. + /// + public readonly string? Branch; + /// + /// Whether to automatically deploy new commits made to the repo. + /// + public readonly bool? DeployOnPush; + /// + /// The name of the repo in the format `owner/repo`. + /// + public readonly string? Repo; + + [OutputConstructor] + private AppSpecJobBitbucket( + string? branch, + + bool? deployOnPush, + + string? repo) + { + Branch = branch; + DeployOnPush = deployOnPush; + Repo = repo; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecService.cs b/sdk/dotnet/Outputs/AppSpecService.cs index 65c85715..511c02f0 100644 --- a/sdk/dotnet/Outputs/AppSpecService.cs +++ b/sdk/dotnet/Outputs/AppSpecService.cs @@ -22,6 +22,10 @@ public sealed class AppSpecService /// public readonly Outputs.AppSpecServiceAutoscaling? Autoscaling; /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + public readonly Outputs.AppSpecServiceBitbucket? Bitbucket; + /// /// An optional build command to run while building this component from source. /// public readonly string? BuildCommand; @@ -108,6 +112,8 @@ private AppSpecService( Outputs.AppSpecServiceAutoscaling? autoscaling, + Outputs.AppSpecServiceBitbucket? bitbucket, + string? buildCommand, Outputs.AppSpecServiceCors? cors, @@ -150,6 +156,7 @@ private AppSpecService( { Alerts = alerts; Autoscaling = autoscaling; + Bitbucket = bitbucket; BuildCommand = buildCommand; Cors = cors; DockerfilePath = dockerfilePath; diff --git a/sdk/dotnet/Outputs/AppSpecServiceBitbucket.cs b/sdk/dotnet/Outputs/AppSpecServiceBitbucket.cs new file mode 100644 index 00000000..a7dfd4a7 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecServiceBitbucket.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.Outputs +{ + + [OutputType] + public sealed class AppSpecServiceBitbucket + { + /// + /// The name of the branch to use. + /// + public readonly string? Branch; + /// + /// Whether to automatically deploy new commits made to the repo. + /// + public readonly bool? DeployOnPush; + /// + /// The name of the repo in the format `owner/repo`. + /// + public readonly string? Repo; + + [OutputConstructor] + private AppSpecServiceBitbucket( + string? branch, + + bool? deployOnPush, + + string? repo) + { + Branch = branch; + DeployOnPush = deployOnPush; + Repo = repo; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecStaticSite.cs b/sdk/dotnet/Outputs/AppSpecStaticSite.cs index 92763dc4..4ad029e3 100644 --- a/sdk/dotnet/Outputs/AppSpecStaticSite.cs +++ b/sdk/dotnet/Outputs/AppSpecStaticSite.cs @@ -13,6 +13,10 @@ namespace Pulumi.DigitalOcean.Outputs [OutputType] public sealed class AppSpecStaticSite { + /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + public readonly Outputs.AppSpecStaticSiteBitbucket? Bitbucket; /// /// An optional build command to run while building this component from source. /// @@ -76,6 +80,8 @@ public sealed class AppSpecStaticSite [OutputConstructor] private AppSpecStaticSite( + Outputs.AppSpecStaticSiteBitbucket? bitbucket, + string? buildCommand, string? catchallDocument, @@ -106,6 +112,7 @@ private AppSpecStaticSite( string? sourceDir) { + Bitbucket = bitbucket; BuildCommand = buildCommand; CatchallDocument = catchallDocument; Cors = cors; diff --git a/sdk/dotnet/Outputs/AppSpecStaticSiteBitbucket.cs b/sdk/dotnet/Outputs/AppSpecStaticSiteBitbucket.cs new file mode 100644 index 00000000..953c5752 --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecStaticSiteBitbucket.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.Outputs +{ + + [OutputType] + public sealed class AppSpecStaticSiteBitbucket + { + /// + /// The name of the branch to use. + /// + public readonly string? Branch; + /// + /// Whether to automatically deploy new commits made to the repo. + /// + public readonly bool? DeployOnPush; + /// + /// The name of the repo in the format `owner/repo`. + /// + public readonly string? Repo; + + [OutputConstructor] + private AppSpecStaticSiteBitbucket( + string? branch, + + bool? deployOnPush, + + string? repo) + { + Branch = branch; + DeployOnPush = deployOnPush; + Repo = repo; + } + } +} diff --git a/sdk/dotnet/Outputs/AppSpecWorker.cs b/sdk/dotnet/Outputs/AppSpecWorker.cs index e3b92407..772387e1 100644 --- a/sdk/dotnet/Outputs/AppSpecWorker.cs +++ b/sdk/dotnet/Outputs/AppSpecWorker.cs @@ -22,6 +22,10 @@ public sealed class AppSpecWorker /// public readonly Outputs.AppSpecWorkerAutoscaling? Autoscaling; /// + /// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + public readonly Outputs.AppSpecWorkerBitbucket? Bitbucket; + /// /// An optional build command to run while building this component from source. /// public readonly string? BuildCommand; @@ -88,6 +92,8 @@ private AppSpecWorker( Outputs.AppSpecWorkerAutoscaling? autoscaling, + Outputs.AppSpecWorkerBitbucket? bitbucket, + string? buildCommand, string? dockerfilePath, @@ -120,6 +126,7 @@ private AppSpecWorker( { Alerts = alerts; Autoscaling = autoscaling; + Bitbucket = bitbucket; BuildCommand = buildCommand; DockerfilePath = dockerfilePath; EnvironmentSlug = environmentSlug; diff --git a/sdk/dotnet/Outputs/AppSpecWorkerBitbucket.cs b/sdk/dotnet/Outputs/AppSpecWorkerBitbucket.cs new file mode 100644 index 00000000..7538321d --- /dev/null +++ b/sdk/dotnet/Outputs/AppSpecWorkerBitbucket.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.Outputs +{ + + [OutputType] + public sealed class AppSpecWorkerBitbucket + { + /// + /// The name of the branch to use. + /// + public readonly string? Branch; + /// + /// Whether to automatically deploy new commits made to the repo. + /// + public readonly bool? DeployOnPush; + /// + /// The name of the repo in the format `owner/repo`. + /// + public readonly string? Repo; + + [OutputConstructor] + private AppSpecWorkerBitbucket( + string? branch, + + bool? deployOnPush, + + string? repo) + { + Branch = branch; + DeployOnPush = deployOnPush; + Repo = repo; + } + } +} diff --git a/sdk/dotnet/Outputs/DatabaseClusterMaintenanceWindow.cs b/sdk/dotnet/Outputs/DatabaseClusterMaintenanceWindow.cs index 9b7a7fb5..a5b75045 100644 --- a/sdk/dotnet/Outputs/DatabaseClusterMaintenanceWindow.cs +++ b/sdk/dotnet/Outputs/DatabaseClusterMaintenanceWindow.cs @@ -14,11 +14,11 @@ namespace Pulumi.DigitalOcean.Outputs public sealed class DatabaseClusterMaintenanceWindow { /// - /// The day of the week on which to apply maintenance updates. + /// The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. /// public readonly string Day; /// - /// The hour in UTC at which maintenance updates will be applied in 24 hour format. + /// The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. /// public readonly string Hour; diff --git a/sdk/dotnet/Outputs/GetAppSpecFunctionBitbucketResult.cs b/sdk/dotnet/Outputs/GetAppSpecFunctionBitbucketResult.cs new file mode 100644 index 00000000..11c1776f --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecFunctionBitbucketResult.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.Outputs +{ + + [OutputType] + public sealed class GetAppSpecFunctionBitbucketResult + { + /// + /// The name of the branch to use. + /// + public readonly string? Branch; + /// + /// Whether to automatically deploy new commits made to the repo. + /// + public readonly bool? DeployOnPush; + /// + /// The name of the repo in the format `owner/repo`. + /// + public readonly string? Repo; + + [OutputConstructor] + private GetAppSpecFunctionBitbucketResult( + string? branch, + + bool? deployOnPush, + + string? repo) + { + Branch = branch; + DeployOnPush = deployOnPush; + Repo = repo; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecFunctionResult.cs b/sdk/dotnet/Outputs/GetAppSpecFunctionResult.cs index db8aa70f..3a62a91b 100644 --- a/sdk/dotnet/Outputs/GetAppSpecFunctionResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecFunctionResult.cs @@ -18,6 +18,10 @@ public sealed class GetAppSpecFunctionResult /// public readonly ImmutableArray Alerts; /// + /// A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + public readonly Outputs.GetAppSpecFunctionBitbucketResult? Bitbucket; + /// /// The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. /// public readonly Outputs.GetAppSpecFunctionCorsResult? Cors; @@ -30,11 +34,11 @@ public sealed class GetAppSpecFunctionResult /// public readonly Outputs.GetAppSpecFunctionGitResult? 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. + /// 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`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecFunctionGithubResult? Github; /// - /// 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. + /// 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`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecFunctionGitlabResult? Gitlab; /// @@ -55,6 +59,8 @@ public sealed class GetAppSpecFunctionResult private GetAppSpecFunctionResult( ImmutableArray alerts, + Outputs.GetAppSpecFunctionBitbucketResult? bitbucket, + Outputs.GetAppSpecFunctionCorsResult? cors, ImmutableArray envs, @@ -74,6 +80,7 @@ private GetAppSpecFunctionResult( string? sourceDir) { Alerts = alerts; + Bitbucket = bitbucket; Cors = cors; Envs = envs; Git = git; diff --git a/sdk/dotnet/Outputs/GetAppSpecJobBitbucketResult.cs b/sdk/dotnet/Outputs/GetAppSpecJobBitbucketResult.cs new file mode 100644 index 00000000..6d1e1e45 --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecJobBitbucketResult.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.Outputs +{ + + [OutputType] + public sealed class GetAppSpecJobBitbucketResult + { + /// + /// The name of the branch to use. + /// + public readonly string? Branch; + /// + /// Whether to automatically deploy new commits made to the repo. + /// + public readonly bool? DeployOnPush; + /// + /// The name of the repo in the format `owner/repo`. + /// + public readonly string? Repo; + + [OutputConstructor] + private GetAppSpecJobBitbucketResult( + string? branch, + + bool? deployOnPush, + + string? repo) + { + Branch = branch; + DeployOnPush = deployOnPush; + Repo = repo; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecJobResult.cs b/sdk/dotnet/Outputs/GetAppSpecJobResult.cs index bfb2939c..a744790e 100644 --- a/sdk/dotnet/Outputs/GetAppSpecJobResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecJobResult.cs @@ -18,6 +18,10 @@ public sealed class GetAppSpecJobResult /// public readonly ImmutableArray Alerts; /// + /// A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + public readonly Outputs.GetAppSpecJobBitbucketResult? Bitbucket; + /// /// An optional build command to run while building this component from source. /// public readonly string? BuildCommand; @@ -38,15 +42,15 @@ public sealed class GetAppSpecJobResult /// public readonly Outputs.GetAppSpecJobGitResult? 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. + /// 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`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecJobGithubResult? Github; /// - /// 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. + /// 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`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecJobGitlabResult? Gitlab; /// - /// An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + /// An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecJobImageResult? Image; /// @@ -90,6 +94,8 @@ public sealed class GetAppSpecJobResult private GetAppSpecJobResult( ImmutableArray alerts, + Outputs.GetAppSpecJobBitbucketResult? bitbucket, + string? buildCommand, string? dockerfilePath, @@ -123,6 +129,7 @@ private GetAppSpecJobResult( Outputs.GetAppSpecJobTerminationResult? termination) { Alerts = alerts; + Bitbucket = bitbucket; BuildCommand = buildCommand; DockerfilePath = dockerfilePath; EnvironmentSlug = environmentSlug; diff --git a/sdk/dotnet/Outputs/GetAppSpecServiceBitbucketResult.cs b/sdk/dotnet/Outputs/GetAppSpecServiceBitbucketResult.cs new file mode 100644 index 00000000..2e647fbe --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecServiceBitbucketResult.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.Outputs +{ + + [OutputType] + public sealed class GetAppSpecServiceBitbucketResult + { + /// + /// The name of the branch to use. + /// + public readonly string? Branch; + /// + /// Whether to automatically deploy new commits made to the repo. + /// + public readonly bool? DeployOnPush; + /// + /// The name of the repo in the format `owner/repo`. + /// + public readonly string? Repo; + + [OutputConstructor] + private GetAppSpecServiceBitbucketResult( + string? branch, + + bool? deployOnPush, + + string? repo) + { + Branch = branch; + DeployOnPush = deployOnPush; + Repo = repo; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecServiceResult.cs b/sdk/dotnet/Outputs/GetAppSpecServiceResult.cs index 200344dd..293517e8 100644 --- a/sdk/dotnet/Outputs/GetAppSpecServiceResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecServiceResult.cs @@ -22,6 +22,10 @@ public sealed class GetAppSpecServiceResult /// public readonly Outputs.GetAppSpecServiceAutoscalingResult? Autoscaling; /// + /// A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + public readonly Outputs.GetAppSpecServiceBitbucketResult? Bitbucket; + /// /// An optional build command to run while building this component from source. /// public readonly string? BuildCommand; @@ -46,11 +50,11 @@ public sealed class GetAppSpecServiceResult /// public readonly Outputs.GetAppSpecServiceGitResult? 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. + /// 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`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecServiceGithubResult? Github; /// - /// 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. + /// 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`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecServiceGitlabResult? Gitlab; /// @@ -62,7 +66,7 @@ public sealed class GetAppSpecServiceResult /// public readonly int HttpPort; /// - /// An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + /// An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecServiceImageResult? Image; /// @@ -105,6 +109,8 @@ private GetAppSpecServiceResult( Outputs.GetAppSpecServiceAutoscalingResult? autoscaling, + Outputs.GetAppSpecServiceBitbucketResult? bitbucket, + string? buildCommand, Outputs.GetAppSpecServiceCorsResult? cors, @@ -147,6 +153,7 @@ private GetAppSpecServiceResult( { Alerts = alerts; Autoscaling = autoscaling; + Bitbucket = bitbucket; BuildCommand = buildCommand; Cors = cors; DockerfilePath = dockerfilePath; diff --git a/sdk/dotnet/Outputs/GetAppSpecStaticSiteBitbucketResult.cs b/sdk/dotnet/Outputs/GetAppSpecStaticSiteBitbucketResult.cs new file mode 100644 index 00000000..db7484d8 --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecStaticSiteBitbucketResult.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.Outputs +{ + + [OutputType] + public sealed class GetAppSpecStaticSiteBitbucketResult + { + /// + /// The name of the branch to use. + /// + public readonly string? Branch; + /// + /// Whether to automatically deploy new commits made to the repo. + /// + public readonly bool? DeployOnPush; + /// + /// The name of the repo in the format `owner/repo`. + /// + public readonly string? Repo; + + [OutputConstructor] + private GetAppSpecStaticSiteBitbucketResult( + string? branch, + + bool? deployOnPush, + + string? repo) + { + Branch = branch; + DeployOnPush = deployOnPush; + Repo = repo; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecStaticSiteResult.cs b/sdk/dotnet/Outputs/GetAppSpecStaticSiteResult.cs index 425bdf41..281b835c 100644 --- a/sdk/dotnet/Outputs/GetAppSpecStaticSiteResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecStaticSiteResult.cs @@ -13,6 +13,10 @@ namespace Pulumi.DigitalOcean.Outputs [OutputType] public sealed class GetAppSpecStaticSiteResult { + /// + /// A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + public readonly Outputs.GetAppSpecStaticSiteBitbucketResult? Bitbucket; /// /// An optional build command to run while building this component from source. /// @@ -46,11 +50,11 @@ public sealed class GetAppSpecStaticSiteResult /// public readonly Outputs.GetAppSpecStaticSiteGitResult? 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. + /// 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`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecStaticSiteGithubResult? Github; /// - /// 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. + /// 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`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecStaticSiteGitlabResult? Gitlab; /// @@ -73,6 +77,8 @@ public sealed class GetAppSpecStaticSiteResult [OutputConstructor] private GetAppSpecStaticSiteResult( + Outputs.GetAppSpecStaticSiteBitbucketResult? bitbucket, + string? buildCommand, string? catchallDocument, @@ -103,6 +109,7 @@ private GetAppSpecStaticSiteResult( string? sourceDir) { + Bitbucket = bitbucket; BuildCommand = buildCommand; CatchallDocument = catchallDocument; Cors = cors; diff --git a/sdk/dotnet/Outputs/GetAppSpecWorkerBitbucketResult.cs b/sdk/dotnet/Outputs/GetAppSpecWorkerBitbucketResult.cs new file mode 100644 index 00000000..50c3792b --- /dev/null +++ b/sdk/dotnet/Outputs/GetAppSpecWorkerBitbucketResult.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.Outputs +{ + + [OutputType] + public sealed class GetAppSpecWorkerBitbucketResult + { + /// + /// The name of the branch to use. + /// + public readonly string? Branch; + /// + /// Whether to automatically deploy new commits made to the repo. + /// + public readonly bool? DeployOnPush; + /// + /// The name of the repo in the format `owner/repo`. + /// + public readonly string? Repo; + + [OutputConstructor] + private GetAppSpecWorkerBitbucketResult( + string? branch, + + bool? deployOnPush, + + string? repo) + { + Branch = branch; + DeployOnPush = deployOnPush; + Repo = repo; + } + } +} diff --git a/sdk/dotnet/Outputs/GetAppSpecWorkerResult.cs b/sdk/dotnet/Outputs/GetAppSpecWorkerResult.cs index ae04956e..60a23c7b 100644 --- a/sdk/dotnet/Outputs/GetAppSpecWorkerResult.cs +++ b/sdk/dotnet/Outputs/GetAppSpecWorkerResult.cs @@ -22,6 +22,10 @@ public sealed class GetAppSpecWorkerResult /// public readonly Outputs.GetAppSpecWorkerAutoscalingResult? Autoscaling; /// + /// A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + /// + public readonly Outputs.GetAppSpecWorkerBitbucketResult? Bitbucket; + /// /// An optional build command to run while building this component from source. /// public readonly string? BuildCommand; @@ -42,15 +46,15 @@ public sealed class GetAppSpecWorkerResult /// public readonly Outputs.GetAppSpecWorkerGitResult? 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. + /// 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`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecWorkerGithubResult? Github; /// - /// 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. + /// 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`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecWorkerGitlabResult? Gitlab; /// - /// An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + /// An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. /// public readonly Outputs.GetAppSpecWorkerImageResult? Image; /// @@ -88,6 +92,8 @@ private GetAppSpecWorkerResult( Outputs.GetAppSpecWorkerAutoscalingResult? autoscaling, + Outputs.GetAppSpecWorkerBitbucketResult? bitbucket, + string? buildCommand, string? dockerfilePath, @@ -120,6 +126,7 @@ private GetAppSpecWorkerResult( { Alerts = alerts; Autoscaling = autoscaling; + Bitbucket = bitbucket; BuildCommand = buildCommand; DockerfilePath = dockerfilePath; EnvironmentSlug = environmentSlug; diff --git a/sdk/dotnet/Outputs/KubernetesClusterControlPlaneFirewall.cs b/sdk/dotnet/Outputs/KubernetesClusterControlPlaneFirewall.cs new file mode 100644 index 00000000..80d7f868 --- /dev/null +++ b/sdk/dotnet/Outputs/KubernetesClusterControlPlaneFirewall.cs @@ -0,0 +1,29 @@ +// *** 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 KubernetesClusterControlPlaneFirewall + { + public readonly ImmutableArray AllowedAddresses; + public readonly bool Enabled; + + [OutputConstructor] + private KubernetesClusterControlPlaneFirewall( + ImmutableArray allowedAddresses, + + bool enabled) + { + AllowedAddresses = allowedAddresses; + Enabled = enabled; + } + } +} diff --git a/sdk/go/digitalocean/kubernetesCluster.go b/sdk/go/digitalocean/kubernetesCluster.go index 6cbe5e64..53ddb6c0 100644 --- a/sdk/go/digitalocean/kubernetesCluster.go +++ b/sdk/go/digitalocean/kubernetesCluster.go @@ -45,12 +45,11 @@ type KubernetesCluster struct { // The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native). ClusterSubnet pulumi.StringOutput `pulumi:"clusterSubnet"` // The uniform resource name (URN) for the Kubernetes cluster. - ClusterUrn pulumi.StringOutput `pulumi:"clusterUrn"` + ClusterUrn pulumi.StringOutput `pulumi:"clusterUrn"` + ControlPlaneFirewall KubernetesClusterControlPlaneFirewallOutput `pulumi:"controlPlaneFirewall"` // The date and time when the node was created. CreatedAt pulumi.StringOutput `pulumi:"createdAt"` // **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - // - // This resource supports customized create timeouts. The default timeout is 30 minutes. DestroyAllAssociatedResources pulumi.BoolPtrOutput `pulumi:"destroyAllAssociatedResources"` // The base URL of the API server on the Kubernetes master node. Endpoint pulumi.StringOutput `pulumi:"endpoint"` @@ -60,6 +59,10 @@ type KubernetesCluster struct { Ipv4Address pulumi.StringOutput `pulumi:"ipv4Address"` // A representation of the Kubernetes cluster's kubeconfig with the following attributes: KubeConfigs KubernetesClusterKubeConfigArrayOutput `pulumi:"kubeConfigs"` + // The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + // + // This resource supports customized create timeouts. The default timeout is 30 minutes. + KubeconfigExpireSeconds pulumi.IntPtrOutput `pulumi:"kubeconfigExpireSeconds"` // A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `autoUpgrade` must be set to `true` for this to have an effect. MaintenancePolicy KubernetesClusterMaintenancePolicyOutput `pulumi:"maintenancePolicy"` // A name for the Kubernetes cluster. @@ -134,12 +137,11 @@ type kubernetesClusterState struct { // The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native). ClusterSubnet *string `pulumi:"clusterSubnet"` // The uniform resource name (URN) for the Kubernetes cluster. - ClusterUrn *string `pulumi:"clusterUrn"` + ClusterUrn *string `pulumi:"clusterUrn"` + ControlPlaneFirewall *KubernetesClusterControlPlaneFirewall `pulumi:"controlPlaneFirewall"` // The date and time when the node was created. CreatedAt *string `pulumi:"createdAt"` // **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - // - // This resource supports customized create timeouts. The default timeout is 30 minutes. DestroyAllAssociatedResources *bool `pulumi:"destroyAllAssociatedResources"` // The base URL of the API server on the Kubernetes master node. Endpoint *string `pulumi:"endpoint"` @@ -149,6 +151,10 @@ type kubernetesClusterState struct { Ipv4Address *string `pulumi:"ipv4Address"` // A representation of the Kubernetes cluster's kubeconfig with the following attributes: KubeConfigs []KubernetesClusterKubeConfig `pulumi:"kubeConfigs"` + // The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + // + // This resource supports customized create timeouts. The default timeout is 30 minutes. + KubeconfigExpireSeconds *int `pulumi:"kubeconfigExpireSeconds"` // A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `autoUpgrade` must be set to `true` for this to have an effect. MaintenancePolicy *KubernetesClusterMaintenancePolicy `pulumi:"maintenancePolicy"` // A name for the Kubernetes cluster. @@ -181,12 +187,11 @@ type KubernetesClusterState struct { // The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native). ClusterSubnet pulumi.StringPtrInput // The uniform resource name (URN) for the Kubernetes cluster. - ClusterUrn pulumi.StringPtrInput + ClusterUrn pulumi.StringPtrInput + ControlPlaneFirewall KubernetesClusterControlPlaneFirewallPtrInput // The date and time when the node was created. CreatedAt pulumi.StringPtrInput // **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - // - // This resource supports customized create timeouts. The default timeout is 30 minutes. DestroyAllAssociatedResources pulumi.BoolPtrInput // The base URL of the API server on the Kubernetes master node. Endpoint pulumi.StringPtrInput @@ -196,6 +201,10 @@ type KubernetesClusterState struct { Ipv4Address pulumi.StringPtrInput // A representation of the Kubernetes cluster's kubeconfig with the following attributes: KubeConfigs KubernetesClusterKubeConfigArrayInput + // The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + // + // This resource supports customized create timeouts. The default timeout is 30 minutes. + KubeconfigExpireSeconds pulumi.IntPtrInput // A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `autoUpgrade` must be set to `true` for this to have an effect. MaintenancePolicy KubernetesClusterMaintenancePolicyPtrInput // A name for the Kubernetes cluster. @@ -230,13 +239,16 @@ type kubernetesClusterArgs struct { // A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window. AutoUpgrade *bool `pulumi:"autoUpgrade"` // The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native). - ClusterSubnet *string `pulumi:"clusterSubnet"` + ClusterSubnet *string `pulumi:"clusterSubnet"` + ControlPlaneFirewall *KubernetesClusterControlPlaneFirewall `pulumi:"controlPlaneFirewall"` // **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - // - // This resource supports customized create timeouts. The default timeout is 30 minutes. DestroyAllAssociatedResources *bool `pulumi:"destroyAllAssociatedResources"` // Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false Ha *bool `pulumi:"ha"` + // The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + // + // This resource supports customized create timeouts. The default timeout is 30 minutes. + KubeconfigExpireSeconds *int `pulumi:"kubeconfigExpireSeconds"` // A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `autoUpgrade` must be set to `true` for this to have an effect. MaintenancePolicy *KubernetesClusterMaintenancePolicy `pulumi:"maintenancePolicy"` // A name for the Kubernetes cluster. @@ -264,13 +276,16 @@ type KubernetesClusterArgs struct { // A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window. AutoUpgrade pulumi.BoolPtrInput // The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native). - ClusterSubnet pulumi.StringPtrInput + ClusterSubnet pulumi.StringPtrInput + ControlPlaneFirewall KubernetesClusterControlPlaneFirewallPtrInput // **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - // - // This resource supports customized create timeouts. The default timeout is 30 minutes. DestroyAllAssociatedResources pulumi.BoolPtrInput // Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false Ha pulumi.BoolPtrInput + // The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + // + // This resource supports customized create timeouts. The default timeout is 30 minutes. + KubeconfigExpireSeconds pulumi.IntPtrInput // A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `autoUpgrade` must be set to `true` for this to have an effect. MaintenancePolicy KubernetesClusterMaintenancePolicyPtrInput // A name for the Kubernetes cluster. @@ -395,14 +410,16 @@ func (o KubernetesClusterOutput) ClusterUrn() pulumi.StringOutput { return o.ApplyT(func(v *KubernetesCluster) pulumi.StringOutput { return v.ClusterUrn }).(pulumi.StringOutput) } +func (o KubernetesClusterOutput) ControlPlaneFirewall() KubernetesClusterControlPlaneFirewallOutput { + return o.ApplyT(func(v *KubernetesCluster) KubernetesClusterControlPlaneFirewallOutput { return v.ControlPlaneFirewall }).(KubernetesClusterControlPlaneFirewallOutput) +} + // The date and time when the node was created. func (o KubernetesClusterOutput) CreatedAt() pulumi.StringOutput { return o.ApplyT(func(v *KubernetesCluster) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) } // **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. -// -// This resource supports customized create timeouts. The default timeout is 30 minutes. func (o KubernetesClusterOutput) DestroyAllAssociatedResources() pulumi.BoolPtrOutput { return o.ApplyT(func(v *KubernetesCluster) pulumi.BoolPtrOutput { return v.DestroyAllAssociatedResources }).(pulumi.BoolPtrOutput) } @@ -427,6 +444,13 @@ func (o KubernetesClusterOutput) KubeConfigs() KubernetesClusterKubeConfigArrayO return o.ApplyT(func(v *KubernetesCluster) KubernetesClusterKubeConfigArrayOutput { return v.KubeConfigs }).(KubernetesClusterKubeConfigArrayOutput) } +// The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. +// +// This resource supports customized create timeouts. The default timeout is 30 minutes. +func (o KubernetesClusterOutput) KubeconfigExpireSeconds() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubernetesCluster) pulumi.IntPtrOutput { return v.KubeconfigExpireSeconds }).(pulumi.IntPtrOutput) +} + // A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `autoUpgrade` must be set to `true` for this to have an effect. func (o KubernetesClusterOutput) MaintenancePolicy() KubernetesClusterMaintenancePolicyOutput { return o.ApplyT(func(v *KubernetesCluster) KubernetesClusterMaintenancePolicyOutput { return v.MaintenancePolicy }).(KubernetesClusterMaintenancePolicyOutput) diff --git a/sdk/go/digitalocean/loadBalancer.go b/sdk/go/digitalocean/loadBalancer.go index b25840d6..01071bba 100644 --- a/sdk/go/digitalocean/loadBalancer.go +++ b/sdk/go/digitalocean/loadBalancer.go @@ -121,6 +121,9 @@ type LoadBalancer struct { Name pulumi.StringOutput `pulumi:"name"` // The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. Network pulumi.StringPtrOutput `pulumi:"network"` + // The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + // **NOTE**: this feature is in private preview, and may not be available for public use + NetworkStack pulumi.StringPtrOutput `pulumi:"networkStack"` // The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. ProjectId pulumi.StringOutput `pulumi:"projectId"` // A boolean value indicating whether @@ -216,6 +219,9 @@ type loadBalancerState struct { Name *string `pulumi:"name"` // The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. Network *string `pulumi:"network"` + // The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + // **NOTE**: this feature is in private preview, and may not be available for public use + NetworkStack *string `pulumi:"networkStack"` // The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. ProjectId *string `pulumi:"projectId"` // A boolean value indicating whether @@ -282,6 +288,9 @@ type LoadBalancerState struct { Name pulumi.StringPtrInput // The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. Network pulumi.StringPtrInput + // The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + // **NOTE**: this feature is in private preview, and may not be available for public use + NetworkStack pulumi.StringPtrInput // The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. ProjectId pulumi.StringPtrInput // A boolean value indicating whether @@ -347,6 +356,9 @@ type loadBalancerArgs struct { Name *string `pulumi:"name"` // The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. Network *string `pulumi:"network"` + // The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + // **NOTE**: this feature is in private preview, and may not be available for public use + NetworkStack *string `pulumi:"networkStack"` // The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. ProjectId *string `pulumi:"projectId"` // A boolean value indicating whether @@ -408,6 +420,9 @@ type LoadBalancerArgs struct { Name pulumi.StringPtrInput // The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. Network pulumi.StringPtrInput + // The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + // **NOTE**: this feature is in private preview, and may not be available for public use + NetworkStack pulumi.StringPtrInput // The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. ProjectId pulumi.StringPtrInput // A boolean value indicating whether @@ -610,6 +625,12 @@ func (o LoadBalancerOutput) Network() pulumi.StringPtrOutput { return o.ApplyT(func(v *LoadBalancer) pulumi.StringPtrOutput { return v.Network }).(pulumi.StringPtrOutput) } +// The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. +// **NOTE**: this feature is in private preview, and may not be available for public use +func (o LoadBalancerOutput) NetworkStack() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringPtrOutput { return v.NetworkStack }).(pulumi.StringPtrOutput) +} + // The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. func (o LoadBalancerOutput) ProjectId() pulumi.StringOutput { return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.ProjectId }).(pulumi.StringOutput) diff --git a/sdk/go/digitalocean/pulumiTypes.go b/sdk/go/digitalocean/pulumiTypes.go index fdc877da..fd55d777 100644 --- a/sdk/go/digitalocean/pulumiTypes.go +++ b/sdk/go/digitalocean/pulumiTypes.go @@ -1127,6 +1127,8 @@ func (o AppSpecEnvArrayOutput) Index(i pulumi.IntInput) AppSpecEnvOutput { type AppSpecFunction struct { // Describes an alert policy for the component. Alerts []AppSpecFunctionAlert `pulumi:"alerts"` + // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket *AppSpecFunctionBitbucket `pulumi:"bitbucket"` // The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. // // Deprecated: Service level CORS rules are deprecated in favor of ingresses @@ -1165,6 +1167,8 @@ type AppSpecFunctionInput interface { type AppSpecFunctionArgs struct { // Describes an alert policy for the component. Alerts AppSpecFunctionAlertArrayInput `pulumi:"alerts"` + // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket AppSpecFunctionBitbucketPtrInput `pulumi:"bitbucket"` // The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. // // Deprecated: Service level CORS rules are deprecated in favor of ingresses @@ -1245,6 +1249,11 @@ func (o AppSpecFunctionOutput) Alerts() AppSpecFunctionAlertArrayOutput { return o.ApplyT(func(v AppSpecFunction) []AppSpecFunctionAlert { return v.Alerts }).(AppSpecFunctionAlertArrayOutput) } +// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. +func (o AppSpecFunctionOutput) Bitbucket() AppSpecFunctionBitbucketPtrOutput { + return o.ApplyT(func(v AppSpecFunction) *AppSpecFunctionBitbucket { return v.Bitbucket }).(AppSpecFunctionBitbucketPtrOutput) +} + // The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. // // Deprecated: Service level CORS rules are deprecated in favor of ingresses @@ -1447,6 +1456,181 @@ func (o AppSpecFunctionAlertArrayOutput) Index(i pulumi.IntInput) AppSpecFunctio }).(AppSpecFunctionAlertOutput) } +type AppSpecFunctionBitbucket struct { + // The name of the branch to use. + Branch *string `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush *bool `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo *string `pulumi:"repo"` +} + +// AppSpecFunctionBitbucketInput is an input type that accepts AppSpecFunctionBitbucketArgs and AppSpecFunctionBitbucketOutput values. +// You can construct a concrete instance of `AppSpecFunctionBitbucketInput` via: +// +// AppSpecFunctionBitbucketArgs{...} +type AppSpecFunctionBitbucketInput interface { + pulumi.Input + + ToAppSpecFunctionBitbucketOutput() AppSpecFunctionBitbucketOutput + ToAppSpecFunctionBitbucketOutputWithContext(context.Context) AppSpecFunctionBitbucketOutput +} + +type AppSpecFunctionBitbucketArgs struct { + // The name of the branch to use. + Branch pulumi.StringPtrInput `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush pulumi.BoolPtrInput `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo pulumi.StringPtrInput `pulumi:"repo"` +} + +func (AppSpecFunctionBitbucketArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecFunctionBitbucket)(nil)).Elem() +} + +func (i AppSpecFunctionBitbucketArgs) ToAppSpecFunctionBitbucketOutput() AppSpecFunctionBitbucketOutput { + return i.ToAppSpecFunctionBitbucketOutputWithContext(context.Background()) +} + +func (i AppSpecFunctionBitbucketArgs) ToAppSpecFunctionBitbucketOutputWithContext(ctx context.Context) AppSpecFunctionBitbucketOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecFunctionBitbucketOutput) +} + +func (i AppSpecFunctionBitbucketArgs) ToAppSpecFunctionBitbucketPtrOutput() AppSpecFunctionBitbucketPtrOutput { + return i.ToAppSpecFunctionBitbucketPtrOutputWithContext(context.Background()) +} + +func (i AppSpecFunctionBitbucketArgs) ToAppSpecFunctionBitbucketPtrOutputWithContext(ctx context.Context) AppSpecFunctionBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecFunctionBitbucketOutput).ToAppSpecFunctionBitbucketPtrOutputWithContext(ctx) +} + +// AppSpecFunctionBitbucketPtrInput is an input type that accepts AppSpecFunctionBitbucketArgs, AppSpecFunctionBitbucketPtr and AppSpecFunctionBitbucketPtrOutput values. +// You can construct a concrete instance of `AppSpecFunctionBitbucketPtrInput` via: +// +// AppSpecFunctionBitbucketArgs{...} +// +// or: +// +// nil +type AppSpecFunctionBitbucketPtrInput interface { + pulumi.Input + + ToAppSpecFunctionBitbucketPtrOutput() AppSpecFunctionBitbucketPtrOutput + ToAppSpecFunctionBitbucketPtrOutputWithContext(context.Context) AppSpecFunctionBitbucketPtrOutput +} + +type appSpecFunctionBitbucketPtrType AppSpecFunctionBitbucketArgs + +func AppSpecFunctionBitbucketPtr(v *AppSpecFunctionBitbucketArgs) AppSpecFunctionBitbucketPtrInput { + return (*appSpecFunctionBitbucketPtrType)(v) +} + +func (*appSpecFunctionBitbucketPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecFunctionBitbucket)(nil)).Elem() +} + +func (i *appSpecFunctionBitbucketPtrType) ToAppSpecFunctionBitbucketPtrOutput() AppSpecFunctionBitbucketPtrOutput { + return i.ToAppSpecFunctionBitbucketPtrOutputWithContext(context.Background()) +} + +func (i *appSpecFunctionBitbucketPtrType) ToAppSpecFunctionBitbucketPtrOutputWithContext(ctx context.Context) AppSpecFunctionBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecFunctionBitbucketPtrOutput) +} + +type AppSpecFunctionBitbucketOutput struct{ *pulumi.OutputState } + +func (AppSpecFunctionBitbucketOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecFunctionBitbucket)(nil)).Elem() +} + +func (o AppSpecFunctionBitbucketOutput) ToAppSpecFunctionBitbucketOutput() AppSpecFunctionBitbucketOutput { + return o +} + +func (o AppSpecFunctionBitbucketOutput) ToAppSpecFunctionBitbucketOutputWithContext(ctx context.Context) AppSpecFunctionBitbucketOutput { + return o +} + +func (o AppSpecFunctionBitbucketOutput) ToAppSpecFunctionBitbucketPtrOutput() AppSpecFunctionBitbucketPtrOutput { + return o.ToAppSpecFunctionBitbucketPtrOutputWithContext(context.Background()) +} + +func (o AppSpecFunctionBitbucketOutput) ToAppSpecFunctionBitbucketPtrOutputWithContext(ctx context.Context) AppSpecFunctionBitbucketPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecFunctionBitbucket) *AppSpecFunctionBitbucket { + return &v + }).(AppSpecFunctionBitbucketPtrOutput) +} + +// The name of the branch to use. +func (o AppSpecFunctionBitbucketOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecFunctionBitbucket) *string { return v.Branch }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o AppSpecFunctionBitbucketOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AppSpecFunctionBitbucket) *bool { return v.DeployOnPush }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o AppSpecFunctionBitbucketOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecFunctionBitbucket) *string { return v.Repo }).(pulumi.StringPtrOutput) +} + +type AppSpecFunctionBitbucketPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecFunctionBitbucketPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecFunctionBitbucket)(nil)).Elem() +} + +func (o AppSpecFunctionBitbucketPtrOutput) ToAppSpecFunctionBitbucketPtrOutput() AppSpecFunctionBitbucketPtrOutput { + return o +} + +func (o AppSpecFunctionBitbucketPtrOutput) ToAppSpecFunctionBitbucketPtrOutputWithContext(ctx context.Context) AppSpecFunctionBitbucketPtrOutput { + return o +} + +func (o AppSpecFunctionBitbucketPtrOutput) Elem() AppSpecFunctionBitbucketOutput { + return o.ApplyT(func(v *AppSpecFunctionBitbucket) AppSpecFunctionBitbucket { + if v != nil { + return *v + } + var ret AppSpecFunctionBitbucket + return ret + }).(AppSpecFunctionBitbucketOutput) +} + +// The name of the branch to use. +func (o AppSpecFunctionBitbucketPtrOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecFunctionBitbucket) *string { + if v == nil { + return nil + } + return v.Branch + }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o AppSpecFunctionBitbucketPtrOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AppSpecFunctionBitbucket) *bool { + if v == nil { + return nil + } + return v.DeployOnPush + }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o AppSpecFunctionBitbucketPtrOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecFunctionBitbucket) *string { + if v == nil { + return nil + } + return v.Repo + }).(pulumi.StringPtrOutput) +} + type AppSpecFunctionCors 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. AllowCredentials *bool `pulumi:"allowCredentials"` @@ -4854,6 +5038,8 @@ func (o AppSpecIngressRuleRedirectPtrOutput) Uri() pulumi.StringPtrOutput { type AppSpecJob struct { // Describes an alert policy for the component. Alerts []AppSpecJobAlert `pulumi:"alerts"` + // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket *AppSpecJobBitbucket `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand *string `pulumi:"buildCommand"` // The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. @@ -4906,6 +5092,8 @@ type AppSpecJobInput interface { type AppSpecJobArgs struct { // Describes an alert policy for the component. Alerts AppSpecJobAlertArrayInput `pulumi:"alerts"` + // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket AppSpecJobBitbucketPtrInput `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand pulumi.StringPtrInput `pulumi:"buildCommand"` // The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. @@ -5000,6 +5188,11 @@ func (o AppSpecJobOutput) Alerts() AppSpecJobAlertArrayOutput { return o.ApplyT(func(v AppSpecJob) []AppSpecJobAlert { return v.Alerts }).(AppSpecJobAlertArrayOutput) } +// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. +func (o AppSpecJobOutput) Bitbucket() AppSpecJobBitbucketPtrOutput { + return o.ApplyT(func(v AppSpecJob) *AppSpecJobBitbucket { return v.Bitbucket }).(AppSpecJobBitbucketPtrOutput) +} + // An optional build command to run while building this component from source. func (o AppSpecJobOutput) BuildCommand() pulumi.StringPtrOutput { return o.ApplyT(func(v AppSpecJob) *string { return v.BuildCommand }).(pulumi.StringPtrOutput) @@ -5237,6 +5430,181 @@ func (o AppSpecJobAlertArrayOutput) Index(i pulumi.IntInput) AppSpecJobAlertOutp }).(AppSpecJobAlertOutput) } +type AppSpecJobBitbucket struct { + // The name of the branch to use. + Branch *string `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush *bool `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo *string `pulumi:"repo"` +} + +// AppSpecJobBitbucketInput is an input type that accepts AppSpecJobBitbucketArgs and AppSpecJobBitbucketOutput values. +// You can construct a concrete instance of `AppSpecJobBitbucketInput` via: +// +// AppSpecJobBitbucketArgs{...} +type AppSpecJobBitbucketInput interface { + pulumi.Input + + ToAppSpecJobBitbucketOutput() AppSpecJobBitbucketOutput + ToAppSpecJobBitbucketOutputWithContext(context.Context) AppSpecJobBitbucketOutput +} + +type AppSpecJobBitbucketArgs struct { + // The name of the branch to use. + Branch pulumi.StringPtrInput `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush pulumi.BoolPtrInput `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo pulumi.StringPtrInput `pulumi:"repo"` +} + +func (AppSpecJobBitbucketArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecJobBitbucket)(nil)).Elem() +} + +func (i AppSpecJobBitbucketArgs) ToAppSpecJobBitbucketOutput() AppSpecJobBitbucketOutput { + return i.ToAppSpecJobBitbucketOutputWithContext(context.Background()) +} + +func (i AppSpecJobBitbucketArgs) ToAppSpecJobBitbucketOutputWithContext(ctx context.Context) AppSpecJobBitbucketOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecJobBitbucketOutput) +} + +func (i AppSpecJobBitbucketArgs) ToAppSpecJobBitbucketPtrOutput() AppSpecJobBitbucketPtrOutput { + return i.ToAppSpecJobBitbucketPtrOutputWithContext(context.Background()) +} + +func (i AppSpecJobBitbucketArgs) ToAppSpecJobBitbucketPtrOutputWithContext(ctx context.Context) AppSpecJobBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecJobBitbucketOutput).ToAppSpecJobBitbucketPtrOutputWithContext(ctx) +} + +// AppSpecJobBitbucketPtrInput is an input type that accepts AppSpecJobBitbucketArgs, AppSpecJobBitbucketPtr and AppSpecJobBitbucketPtrOutput values. +// You can construct a concrete instance of `AppSpecJobBitbucketPtrInput` via: +// +// AppSpecJobBitbucketArgs{...} +// +// or: +// +// nil +type AppSpecJobBitbucketPtrInput interface { + pulumi.Input + + ToAppSpecJobBitbucketPtrOutput() AppSpecJobBitbucketPtrOutput + ToAppSpecJobBitbucketPtrOutputWithContext(context.Context) AppSpecJobBitbucketPtrOutput +} + +type appSpecJobBitbucketPtrType AppSpecJobBitbucketArgs + +func AppSpecJobBitbucketPtr(v *AppSpecJobBitbucketArgs) AppSpecJobBitbucketPtrInput { + return (*appSpecJobBitbucketPtrType)(v) +} + +func (*appSpecJobBitbucketPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecJobBitbucket)(nil)).Elem() +} + +func (i *appSpecJobBitbucketPtrType) ToAppSpecJobBitbucketPtrOutput() AppSpecJobBitbucketPtrOutput { + return i.ToAppSpecJobBitbucketPtrOutputWithContext(context.Background()) +} + +func (i *appSpecJobBitbucketPtrType) ToAppSpecJobBitbucketPtrOutputWithContext(ctx context.Context) AppSpecJobBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecJobBitbucketPtrOutput) +} + +type AppSpecJobBitbucketOutput struct{ *pulumi.OutputState } + +func (AppSpecJobBitbucketOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecJobBitbucket)(nil)).Elem() +} + +func (o AppSpecJobBitbucketOutput) ToAppSpecJobBitbucketOutput() AppSpecJobBitbucketOutput { + return o +} + +func (o AppSpecJobBitbucketOutput) ToAppSpecJobBitbucketOutputWithContext(ctx context.Context) AppSpecJobBitbucketOutput { + return o +} + +func (o AppSpecJobBitbucketOutput) ToAppSpecJobBitbucketPtrOutput() AppSpecJobBitbucketPtrOutput { + return o.ToAppSpecJobBitbucketPtrOutputWithContext(context.Background()) +} + +func (o AppSpecJobBitbucketOutput) ToAppSpecJobBitbucketPtrOutputWithContext(ctx context.Context) AppSpecJobBitbucketPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecJobBitbucket) *AppSpecJobBitbucket { + return &v + }).(AppSpecJobBitbucketPtrOutput) +} + +// The name of the branch to use. +func (o AppSpecJobBitbucketOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecJobBitbucket) *string { return v.Branch }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o AppSpecJobBitbucketOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AppSpecJobBitbucket) *bool { return v.DeployOnPush }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o AppSpecJobBitbucketOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecJobBitbucket) *string { return v.Repo }).(pulumi.StringPtrOutput) +} + +type AppSpecJobBitbucketPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecJobBitbucketPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecJobBitbucket)(nil)).Elem() +} + +func (o AppSpecJobBitbucketPtrOutput) ToAppSpecJobBitbucketPtrOutput() AppSpecJobBitbucketPtrOutput { + return o +} + +func (o AppSpecJobBitbucketPtrOutput) ToAppSpecJobBitbucketPtrOutputWithContext(ctx context.Context) AppSpecJobBitbucketPtrOutput { + return o +} + +func (o AppSpecJobBitbucketPtrOutput) Elem() AppSpecJobBitbucketOutput { + return o.ApplyT(func(v *AppSpecJobBitbucket) AppSpecJobBitbucket { + if v != nil { + return *v + } + var ret AppSpecJobBitbucket + return ret + }).(AppSpecJobBitbucketOutput) +} + +// The name of the branch to use. +func (o AppSpecJobBitbucketPtrOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecJobBitbucket) *string { + if v == nil { + return nil + } + return v.Branch + }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o AppSpecJobBitbucketPtrOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AppSpecJobBitbucket) *bool { + if v == nil { + return nil + } + return v.DeployOnPush + }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o AppSpecJobBitbucketPtrOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecJobBitbucket) *string { + if v == nil { + return nil + } + return v.Repo + }).(pulumi.StringPtrOutput) +} + type AppSpecJobEnv struct { // The name of the environment variable. Key *string `pulumi:"key"` @@ -7280,6 +7648,8 @@ type AppSpecService struct { Alerts []AppSpecServiceAlert `pulumi:"alerts"` // Configuration for automatically scaling this component based on metrics. Autoscaling *AppSpecServiceAutoscaling `pulumi:"autoscaling"` + // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket *AppSpecServiceBitbucket `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand *string `pulumi:"buildCommand"` // The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. @@ -7342,6 +7712,8 @@ type AppSpecServiceArgs struct { Alerts AppSpecServiceAlertArrayInput `pulumi:"alerts"` // Configuration for automatically scaling this component based on metrics. Autoscaling AppSpecServiceAutoscalingPtrInput `pulumi:"autoscaling"` + // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket AppSpecServiceBitbucketPtrInput `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand pulumi.StringPtrInput `pulumi:"buildCommand"` // The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. @@ -7449,6 +7821,11 @@ func (o AppSpecServiceOutput) Autoscaling() AppSpecServiceAutoscalingPtrOutput { return o.ApplyT(func(v AppSpecService) *AppSpecServiceAutoscaling { return v.Autoscaling }).(AppSpecServiceAutoscalingPtrOutput) } +// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. +func (o AppSpecServiceOutput) Bitbucket() AppSpecServiceBitbucketPtrOutput { + return o.ApplyT(func(v AppSpecService) *AppSpecServiceBitbucket { return v.Bitbucket }).(AppSpecServiceBitbucketPtrOutput) +} + // An optional build command to run while building this component from source. func (o AppSpecServiceOutput) BuildCommand() pulumi.StringPtrOutput { return o.ApplyT(func(v AppSpecService) *string { return v.BuildCommand }).(pulumi.StringPtrOutput) @@ -8155,6 +8532,181 @@ func (o AppSpecServiceAutoscalingMetricsCpuPtrOutput) Percent() pulumi.IntPtrOut }).(pulumi.IntPtrOutput) } +type AppSpecServiceBitbucket struct { + // The name of the branch to use. + Branch *string `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush *bool `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo *string `pulumi:"repo"` +} + +// AppSpecServiceBitbucketInput is an input type that accepts AppSpecServiceBitbucketArgs and AppSpecServiceBitbucketOutput values. +// You can construct a concrete instance of `AppSpecServiceBitbucketInput` via: +// +// AppSpecServiceBitbucketArgs{...} +type AppSpecServiceBitbucketInput interface { + pulumi.Input + + ToAppSpecServiceBitbucketOutput() AppSpecServiceBitbucketOutput + ToAppSpecServiceBitbucketOutputWithContext(context.Context) AppSpecServiceBitbucketOutput +} + +type AppSpecServiceBitbucketArgs struct { + // The name of the branch to use. + Branch pulumi.StringPtrInput `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush pulumi.BoolPtrInput `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo pulumi.StringPtrInput `pulumi:"repo"` +} + +func (AppSpecServiceBitbucketArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecServiceBitbucket)(nil)).Elem() +} + +func (i AppSpecServiceBitbucketArgs) ToAppSpecServiceBitbucketOutput() AppSpecServiceBitbucketOutput { + return i.ToAppSpecServiceBitbucketOutputWithContext(context.Background()) +} + +func (i AppSpecServiceBitbucketArgs) ToAppSpecServiceBitbucketOutputWithContext(ctx context.Context) AppSpecServiceBitbucketOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecServiceBitbucketOutput) +} + +func (i AppSpecServiceBitbucketArgs) ToAppSpecServiceBitbucketPtrOutput() AppSpecServiceBitbucketPtrOutput { + return i.ToAppSpecServiceBitbucketPtrOutputWithContext(context.Background()) +} + +func (i AppSpecServiceBitbucketArgs) ToAppSpecServiceBitbucketPtrOutputWithContext(ctx context.Context) AppSpecServiceBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecServiceBitbucketOutput).ToAppSpecServiceBitbucketPtrOutputWithContext(ctx) +} + +// AppSpecServiceBitbucketPtrInput is an input type that accepts AppSpecServiceBitbucketArgs, AppSpecServiceBitbucketPtr and AppSpecServiceBitbucketPtrOutput values. +// You can construct a concrete instance of `AppSpecServiceBitbucketPtrInput` via: +// +// AppSpecServiceBitbucketArgs{...} +// +// or: +// +// nil +type AppSpecServiceBitbucketPtrInput interface { + pulumi.Input + + ToAppSpecServiceBitbucketPtrOutput() AppSpecServiceBitbucketPtrOutput + ToAppSpecServiceBitbucketPtrOutputWithContext(context.Context) AppSpecServiceBitbucketPtrOutput +} + +type appSpecServiceBitbucketPtrType AppSpecServiceBitbucketArgs + +func AppSpecServiceBitbucketPtr(v *AppSpecServiceBitbucketArgs) AppSpecServiceBitbucketPtrInput { + return (*appSpecServiceBitbucketPtrType)(v) +} + +func (*appSpecServiceBitbucketPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecServiceBitbucket)(nil)).Elem() +} + +func (i *appSpecServiceBitbucketPtrType) ToAppSpecServiceBitbucketPtrOutput() AppSpecServiceBitbucketPtrOutput { + return i.ToAppSpecServiceBitbucketPtrOutputWithContext(context.Background()) +} + +func (i *appSpecServiceBitbucketPtrType) ToAppSpecServiceBitbucketPtrOutputWithContext(ctx context.Context) AppSpecServiceBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecServiceBitbucketPtrOutput) +} + +type AppSpecServiceBitbucketOutput struct{ *pulumi.OutputState } + +func (AppSpecServiceBitbucketOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecServiceBitbucket)(nil)).Elem() +} + +func (o AppSpecServiceBitbucketOutput) ToAppSpecServiceBitbucketOutput() AppSpecServiceBitbucketOutput { + return o +} + +func (o AppSpecServiceBitbucketOutput) ToAppSpecServiceBitbucketOutputWithContext(ctx context.Context) AppSpecServiceBitbucketOutput { + return o +} + +func (o AppSpecServiceBitbucketOutput) ToAppSpecServiceBitbucketPtrOutput() AppSpecServiceBitbucketPtrOutput { + return o.ToAppSpecServiceBitbucketPtrOutputWithContext(context.Background()) +} + +func (o AppSpecServiceBitbucketOutput) ToAppSpecServiceBitbucketPtrOutputWithContext(ctx context.Context) AppSpecServiceBitbucketPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecServiceBitbucket) *AppSpecServiceBitbucket { + return &v + }).(AppSpecServiceBitbucketPtrOutput) +} + +// The name of the branch to use. +func (o AppSpecServiceBitbucketOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecServiceBitbucket) *string { return v.Branch }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o AppSpecServiceBitbucketOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AppSpecServiceBitbucket) *bool { return v.DeployOnPush }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o AppSpecServiceBitbucketOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecServiceBitbucket) *string { return v.Repo }).(pulumi.StringPtrOutput) +} + +type AppSpecServiceBitbucketPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecServiceBitbucketPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecServiceBitbucket)(nil)).Elem() +} + +func (o AppSpecServiceBitbucketPtrOutput) ToAppSpecServiceBitbucketPtrOutput() AppSpecServiceBitbucketPtrOutput { + return o +} + +func (o AppSpecServiceBitbucketPtrOutput) ToAppSpecServiceBitbucketPtrOutputWithContext(ctx context.Context) AppSpecServiceBitbucketPtrOutput { + return o +} + +func (o AppSpecServiceBitbucketPtrOutput) Elem() AppSpecServiceBitbucketOutput { + return o.ApplyT(func(v *AppSpecServiceBitbucket) AppSpecServiceBitbucket { + if v != nil { + return *v + } + var ret AppSpecServiceBitbucket + return ret + }).(AppSpecServiceBitbucketOutput) +} + +// The name of the branch to use. +func (o AppSpecServiceBitbucketPtrOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecServiceBitbucket) *string { + if v == nil { + return nil + } + return v.Branch + }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o AppSpecServiceBitbucketPtrOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AppSpecServiceBitbucket) *bool { + if v == nil { + return nil + } + return v.DeployOnPush + }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o AppSpecServiceBitbucketPtrOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecServiceBitbucket) *string { + if v == nil { + return nil + } + return v.Repo + }).(pulumi.StringPtrOutput) +} + type AppSpecServiceCors 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. AllowCredentials *bool `pulumi:"allowCredentials"` @@ -10993,6 +11545,8 @@ func (o AppSpecServiceTerminationPtrOutput) GracePeriodSeconds() pulumi.IntPtrOu } type AppSpecStaticSite struct { + // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket *AppSpecStaticSiteBitbucket `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand *string `pulumi:"buildCommand"` // The name of the document to use as the fallback for any requests to documents that are not found when serving this static site. @@ -11041,6 +11595,8 @@ type AppSpecStaticSiteInput interface { } type AppSpecStaticSiteArgs struct { + // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket AppSpecStaticSiteBitbucketPtrInput `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand pulumi.StringPtrInput `pulumi:"buildCommand"` // The name of the document to use as the fallback for any requests to documents that are not found when serving this static site. @@ -11128,6 +11684,11 @@ func (o AppSpecStaticSiteOutput) ToAppSpecStaticSiteOutputWithContext(ctx contex return o } +// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. +func (o AppSpecStaticSiteOutput) Bitbucket() AppSpecStaticSiteBitbucketPtrOutput { + return o.ApplyT(func(v AppSpecStaticSite) *AppSpecStaticSiteBitbucket { return v.Bitbucket }).(AppSpecStaticSiteBitbucketPtrOutput) +} + // An optional build command to run while building this component from source. func (o AppSpecStaticSiteOutput) BuildCommand() pulumi.StringPtrOutput { return o.ApplyT(func(v AppSpecStaticSite) *string { return v.BuildCommand }).(pulumi.StringPtrOutput) @@ -11227,6 +11788,181 @@ func (o AppSpecStaticSiteArrayOutput) Index(i pulumi.IntInput) AppSpecStaticSite }).(AppSpecStaticSiteOutput) } +type AppSpecStaticSiteBitbucket struct { + // The name of the branch to use. + Branch *string `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush *bool `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo *string `pulumi:"repo"` +} + +// AppSpecStaticSiteBitbucketInput is an input type that accepts AppSpecStaticSiteBitbucketArgs and AppSpecStaticSiteBitbucketOutput values. +// You can construct a concrete instance of `AppSpecStaticSiteBitbucketInput` via: +// +// AppSpecStaticSiteBitbucketArgs{...} +type AppSpecStaticSiteBitbucketInput interface { + pulumi.Input + + ToAppSpecStaticSiteBitbucketOutput() AppSpecStaticSiteBitbucketOutput + ToAppSpecStaticSiteBitbucketOutputWithContext(context.Context) AppSpecStaticSiteBitbucketOutput +} + +type AppSpecStaticSiteBitbucketArgs struct { + // The name of the branch to use. + Branch pulumi.StringPtrInput `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush pulumi.BoolPtrInput `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo pulumi.StringPtrInput `pulumi:"repo"` +} + +func (AppSpecStaticSiteBitbucketArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecStaticSiteBitbucket)(nil)).Elem() +} + +func (i AppSpecStaticSiteBitbucketArgs) ToAppSpecStaticSiteBitbucketOutput() AppSpecStaticSiteBitbucketOutput { + return i.ToAppSpecStaticSiteBitbucketOutputWithContext(context.Background()) +} + +func (i AppSpecStaticSiteBitbucketArgs) ToAppSpecStaticSiteBitbucketOutputWithContext(ctx context.Context) AppSpecStaticSiteBitbucketOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecStaticSiteBitbucketOutput) +} + +func (i AppSpecStaticSiteBitbucketArgs) ToAppSpecStaticSiteBitbucketPtrOutput() AppSpecStaticSiteBitbucketPtrOutput { + return i.ToAppSpecStaticSiteBitbucketPtrOutputWithContext(context.Background()) +} + +func (i AppSpecStaticSiteBitbucketArgs) ToAppSpecStaticSiteBitbucketPtrOutputWithContext(ctx context.Context) AppSpecStaticSiteBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecStaticSiteBitbucketOutput).ToAppSpecStaticSiteBitbucketPtrOutputWithContext(ctx) +} + +// AppSpecStaticSiteBitbucketPtrInput is an input type that accepts AppSpecStaticSiteBitbucketArgs, AppSpecStaticSiteBitbucketPtr and AppSpecStaticSiteBitbucketPtrOutput values. +// You can construct a concrete instance of `AppSpecStaticSiteBitbucketPtrInput` via: +// +// AppSpecStaticSiteBitbucketArgs{...} +// +// or: +// +// nil +type AppSpecStaticSiteBitbucketPtrInput interface { + pulumi.Input + + ToAppSpecStaticSiteBitbucketPtrOutput() AppSpecStaticSiteBitbucketPtrOutput + ToAppSpecStaticSiteBitbucketPtrOutputWithContext(context.Context) AppSpecStaticSiteBitbucketPtrOutput +} + +type appSpecStaticSiteBitbucketPtrType AppSpecStaticSiteBitbucketArgs + +func AppSpecStaticSiteBitbucketPtr(v *AppSpecStaticSiteBitbucketArgs) AppSpecStaticSiteBitbucketPtrInput { + return (*appSpecStaticSiteBitbucketPtrType)(v) +} + +func (*appSpecStaticSiteBitbucketPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecStaticSiteBitbucket)(nil)).Elem() +} + +func (i *appSpecStaticSiteBitbucketPtrType) ToAppSpecStaticSiteBitbucketPtrOutput() AppSpecStaticSiteBitbucketPtrOutput { + return i.ToAppSpecStaticSiteBitbucketPtrOutputWithContext(context.Background()) +} + +func (i *appSpecStaticSiteBitbucketPtrType) ToAppSpecStaticSiteBitbucketPtrOutputWithContext(ctx context.Context) AppSpecStaticSiteBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecStaticSiteBitbucketPtrOutput) +} + +type AppSpecStaticSiteBitbucketOutput struct{ *pulumi.OutputState } + +func (AppSpecStaticSiteBitbucketOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecStaticSiteBitbucket)(nil)).Elem() +} + +func (o AppSpecStaticSiteBitbucketOutput) ToAppSpecStaticSiteBitbucketOutput() AppSpecStaticSiteBitbucketOutput { + return o +} + +func (o AppSpecStaticSiteBitbucketOutput) ToAppSpecStaticSiteBitbucketOutputWithContext(ctx context.Context) AppSpecStaticSiteBitbucketOutput { + return o +} + +func (o AppSpecStaticSiteBitbucketOutput) ToAppSpecStaticSiteBitbucketPtrOutput() AppSpecStaticSiteBitbucketPtrOutput { + return o.ToAppSpecStaticSiteBitbucketPtrOutputWithContext(context.Background()) +} + +func (o AppSpecStaticSiteBitbucketOutput) ToAppSpecStaticSiteBitbucketPtrOutputWithContext(ctx context.Context) AppSpecStaticSiteBitbucketPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecStaticSiteBitbucket) *AppSpecStaticSiteBitbucket { + return &v + }).(AppSpecStaticSiteBitbucketPtrOutput) +} + +// The name of the branch to use. +func (o AppSpecStaticSiteBitbucketOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecStaticSiteBitbucket) *string { return v.Branch }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o AppSpecStaticSiteBitbucketOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AppSpecStaticSiteBitbucket) *bool { return v.DeployOnPush }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o AppSpecStaticSiteBitbucketOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecStaticSiteBitbucket) *string { return v.Repo }).(pulumi.StringPtrOutput) +} + +type AppSpecStaticSiteBitbucketPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecStaticSiteBitbucketPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecStaticSiteBitbucket)(nil)).Elem() +} + +func (o AppSpecStaticSiteBitbucketPtrOutput) ToAppSpecStaticSiteBitbucketPtrOutput() AppSpecStaticSiteBitbucketPtrOutput { + return o +} + +func (o AppSpecStaticSiteBitbucketPtrOutput) ToAppSpecStaticSiteBitbucketPtrOutputWithContext(ctx context.Context) AppSpecStaticSiteBitbucketPtrOutput { + return o +} + +func (o AppSpecStaticSiteBitbucketPtrOutput) Elem() AppSpecStaticSiteBitbucketOutput { + return o.ApplyT(func(v *AppSpecStaticSiteBitbucket) AppSpecStaticSiteBitbucket { + if v != nil { + return *v + } + var ret AppSpecStaticSiteBitbucket + return ret + }).(AppSpecStaticSiteBitbucketOutput) +} + +// The name of the branch to use. +func (o AppSpecStaticSiteBitbucketPtrOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecStaticSiteBitbucket) *string { + if v == nil { + return nil + } + return v.Branch + }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o AppSpecStaticSiteBitbucketPtrOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AppSpecStaticSiteBitbucket) *bool { + if v == nil { + return nil + } + return v.DeployOnPush + }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o AppSpecStaticSiteBitbucketPtrOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecStaticSiteBitbucket) *string { + if v == nil { + return nil + } + return v.Repo + }).(pulumi.StringPtrOutput) +} + type AppSpecStaticSiteCors 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. AllowCredentials *bool `pulumi:"allowCredentials"` @@ -12383,6 +13119,8 @@ type AppSpecWorker struct { Alerts []AppSpecWorkerAlert `pulumi:"alerts"` // Configuration for automatically scaling this component based on metrics. Autoscaling *AppSpecWorkerAutoscaling `pulumi:"autoscaling"` + // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket *AppSpecWorkerBitbucket `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand *string `pulumi:"buildCommand"` // The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. @@ -12431,6 +13169,8 @@ type AppSpecWorkerArgs struct { Alerts AppSpecWorkerAlertArrayInput `pulumi:"alerts"` // Configuration for automatically scaling this component based on metrics. Autoscaling AppSpecWorkerAutoscalingPtrInput `pulumi:"autoscaling"` + // A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket AppSpecWorkerBitbucketPtrInput `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand pulumi.StringPtrInput `pulumi:"buildCommand"` // The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. @@ -12524,6 +13264,11 @@ func (o AppSpecWorkerOutput) Autoscaling() AppSpecWorkerAutoscalingPtrOutput { return o.ApplyT(func(v AppSpecWorker) *AppSpecWorkerAutoscaling { return v.Autoscaling }).(AppSpecWorkerAutoscalingPtrOutput) } +// A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. +func (o AppSpecWorkerOutput) Bitbucket() AppSpecWorkerBitbucketPtrOutput { + return o.ApplyT(func(v AppSpecWorker) *AppSpecWorkerBitbucket { return v.Bitbucket }).(AppSpecWorkerBitbucketPtrOutput) +} + // An optional build command to run while building this component from source. func (o AppSpecWorkerOutput) BuildCommand() pulumi.StringPtrOutput { return o.ApplyT(func(v AppSpecWorker) *string { return v.BuildCommand }).(pulumi.StringPtrOutput) @@ -13201,6 +13946,181 @@ func (o AppSpecWorkerAutoscalingMetricsCpuPtrOutput) Percent() pulumi.IntPtrOutp }).(pulumi.IntPtrOutput) } +type AppSpecWorkerBitbucket struct { + // The name of the branch to use. + Branch *string `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush *bool `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo *string `pulumi:"repo"` +} + +// AppSpecWorkerBitbucketInput is an input type that accepts AppSpecWorkerBitbucketArgs and AppSpecWorkerBitbucketOutput values. +// You can construct a concrete instance of `AppSpecWorkerBitbucketInput` via: +// +// AppSpecWorkerBitbucketArgs{...} +type AppSpecWorkerBitbucketInput interface { + pulumi.Input + + ToAppSpecWorkerBitbucketOutput() AppSpecWorkerBitbucketOutput + ToAppSpecWorkerBitbucketOutputWithContext(context.Context) AppSpecWorkerBitbucketOutput +} + +type AppSpecWorkerBitbucketArgs struct { + // The name of the branch to use. + Branch pulumi.StringPtrInput `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush pulumi.BoolPtrInput `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo pulumi.StringPtrInput `pulumi:"repo"` +} + +func (AppSpecWorkerBitbucketArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecWorkerBitbucket)(nil)).Elem() +} + +func (i AppSpecWorkerBitbucketArgs) ToAppSpecWorkerBitbucketOutput() AppSpecWorkerBitbucketOutput { + return i.ToAppSpecWorkerBitbucketOutputWithContext(context.Background()) +} + +func (i AppSpecWorkerBitbucketArgs) ToAppSpecWorkerBitbucketOutputWithContext(ctx context.Context) AppSpecWorkerBitbucketOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecWorkerBitbucketOutput) +} + +func (i AppSpecWorkerBitbucketArgs) ToAppSpecWorkerBitbucketPtrOutput() AppSpecWorkerBitbucketPtrOutput { + return i.ToAppSpecWorkerBitbucketPtrOutputWithContext(context.Background()) +} + +func (i AppSpecWorkerBitbucketArgs) ToAppSpecWorkerBitbucketPtrOutputWithContext(ctx context.Context) AppSpecWorkerBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecWorkerBitbucketOutput).ToAppSpecWorkerBitbucketPtrOutputWithContext(ctx) +} + +// AppSpecWorkerBitbucketPtrInput is an input type that accepts AppSpecWorkerBitbucketArgs, AppSpecWorkerBitbucketPtr and AppSpecWorkerBitbucketPtrOutput values. +// You can construct a concrete instance of `AppSpecWorkerBitbucketPtrInput` via: +// +// AppSpecWorkerBitbucketArgs{...} +// +// or: +// +// nil +type AppSpecWorkerBitbucketPtrInput interface { + pulumi.Input + + ToAppSpecWorkerBitbucketPtrOutput() AppSpecWorkerBitbucketPtrOutput + ToAppSpecWorkerBitbucketPtrOutputWithContext(context.Context) AppSpecWorkerBitbucketPtrOutput +} + +type appSpecWorkerBitbucketPtrType AppSpecWorkerBitbucketArgs + +func AppSpecWorkerBitbucketPtr(v *AppSpecWorkerBitbucketArgs) AppSpecWorkerBitbucketPtrInput { + return (*appSpecWorkerBitbucketPtrType)(v) +} + +func (*appSpecWorkerBitbucketPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecWorkerBitbucket)(nil)).Elem() +} + +func (i *appSpecWorkerBitbucketPtrType) ToAppSpecWorkerBitbucketPtrOutput() AppSpecWorkerBitbucketPtrOutput { + return i.ToAppSpecWorkerBitbucketPtrOutputWithContext(context.Background()) +} + +func (i *appSpecWorkerBitbucketPtrType) ToAppSpecWorkerBitbucketPtrOutputWithContext(ctx context.Context) AppSpecWorkerBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AppSpecWorkerBitbucketPtrOutput) +} + +type AppSpecWorkerBitbucketOutput struct{ *pulumi.OutputState } + +func (AppSpecWorkerBitbucketOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AppSpecWorkerBitbucket)(nil)).Elem() +} + +func (o AppSpecWorkerBitbucketOutput) ToAppSpecWorkerBitbucketOutput() AppSpecWorkerBitbucketOutput { + return o +} + +func (o AppSpecWorkerBitbucketOutput) ToAppSpecWorkerBitbucketOutputWithContext(ctx context.Context) AppSpecWorkerBitbucketOutput { + return o +} + +func (o AppSpecWorkerBitbucketOutput) ToAppSpecWorkerBitbucketPtrOutput() AppSpecWorkerBitbucketPtrOutput { + return o.ToAppSpecWorkerBitbucketPtrOutputWithContext(context.Background()) +} + +func (o AppSpecWorkerBitbucketOutput) ToAppSpecWorkerBitbucketPtrOutputWithContext(ctx context.Context) AppSpecWorkerBitbucketPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AppSpecWorkerBitbucket) *AppSpecWorkerBitbucket { + return &v + }).(AppSpecWorkerBitbucketPtrOutput) +} + +// The name of the branch to use. +func (o AppSpecWorkerBitbucketOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecWorkerBitbucket) *string { return v.Branch }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o AppSpecWorkerBitbucketOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AppSpecWorkerBitbucket) *bool { return v.DeployOnPush }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o AppSpecWorkerBitbucketOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v AppSpecWorkerBitbucket) *string { return v.Repo }).(pulumi.StringPtrOutput) +} + +type AppSpecWorkerBitbucketPtrOutput struct{ *pulumi.OutputState } + +func (AppSpecWorkerBitbucketPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AppSpecWorkerBitbucket)(nil)).Elem() +} + +func (o AppSpecWorkerBitbucketPtrOutput) ToAppSpecWorkerBitbucketPtrOutput() AppSpecWorkerBitbucketPtrOutput { + return o +} + +func (o AppSpecWorkerBitbucketPtrOutput) ToAppSpecWorkerBitbucketPtrOutputWithContext(ctx context.Context) AppSpecWorkerBitbucketPtrOutput { + return o +} + +func (o AppSpecWorkerBitbucketPtrOutput) Elem() AppSpecWorkerBitbucketOutput { + return o.ApplyT(func(v *AppSpecWorkerBitbucket) AppSpecWorkerBitbucket { + if v != nil { + return *v + } + var ret AppSpecWorkerBitbucket + return ret + }).(AppSpecWorkerBitbucketOutput) +} + +// The name of the branch to use. +func (o AppSpecWorkerBitbucketPtrOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecWorkerBitbucket) *string { + if v == nil { + return nil + } + return v.Branch + }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o AppSpecWorkerBitbucketPtrOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AppSpecWorkerBitbucket) *bool { + if v == nil { + return nil + } + return v.DeployOnPush + }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o AppSpecWorkerBitbucketPtrOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AppSpecWorkerBitbucket) *string { + if v == nil { + return nil + } + return v.Repo + }).(pulumi.StringPtrOutput) +} + type AppSpecWorkerEnv struct { // The name of the environment variable. Key *string `pulumi:"key"` @@ -15404,9 +16324,9 @@ func (o DatabaseClusterBackupRestorePtrOutput) DatabaseName() pulumi.StringPtrOu } type DatabaseClusterMaintenanceWindow struct { - // The day of the week on which to apply maintenance updates. + // The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. Day string `pulumi:"day"` - // The hour in UTC at which maintenance updates will be applied in 24 hour format. + // The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. Hour string `pulumi:"hour"` } @@ -15422,9 +16342,9 @@ type DatabaseClusterMaintenanceWindowInput interface { } type DatabaseClusterMaintenanceWindowArgs struct { - // The day of the week on which to apply maintenance updates. + // The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. Day pulumi.StringInput `pulumi:"day"` - // The hour in UTC at which maintenance updates will be applied in 24 hour format. + // The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. Hour pulumi.StringInput `pulumi:"hour"` } @@ -15479,12 +16399,12 @@ func (o DatabaseClusterMaintenanceWindowOutput) ToDatabaseClusterMaintenanceWind return o } -// The day of the week on which to apply maintenance updates. +// The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. func (o DatabaseClusterMaintenanceWindowOutput) Day() pulumi.StringOutput { return o.ApplyT(func(v DatabaseClusterMaintenanceWindow) string { return v.Day }).(pulumi.StringOutput) } -// The hour in UTC at which maintenance updates will be applied in 24 hour format. +// The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. func (o DatabaseClusterMaintenanceWindowOutput) Hour() pulumi.StringOutput { return o.ApplyT(func(v DatabaseClusterMaintenanceWindow) string { return v.Hour }).(pulumi.StringOutput) } @@ -17815,6 +18735,154 @@ func (o FirewallPendingChangeArrayOutput) Index(i pulumi.IntInput) FirewallPendi }).(FirewallPendingChangeOutput) } +type KubernetesClusterControlPlaneFirewall struct { + AllowedAddresses []string `pulumi:"allowedAddresses"` + Enabled bool `pulumi:"enabled"` +} + +// KubernetesClusterControlPlaneFirewallInput is an input type that accepts KubernetesClusterControlPlaneFirewallArgs and KubernetesClusterControlPlaneFirewallOutput values. +// You can construct a concrete instance of `KubernetesClusterControlPlaneFirewallInput` via: +// +// KubernetesClusterControlPlaneFirewallArgs{...} +type KubernetesClusterControlPlaneFirewallInput interface { + pulumi.Input + + ToKubernetesClusterControlPlaneFirewallOutput() KubernetesClusterControlPlaneFirewallOutput + ToKubernetesClusterControlPlaneFirewallOutputWithContext(context.Context) KubernetesClusterControlPlaneFirewallOutput +} + +type KubernetesClusterControlPlaneFirewallArgs struct { + AllowedAddresses pulumi.StringArrayInput `pulumi:"allowedAddresses"` + Enabled pulumi.BoolInput `pulumi:"enabled"` +} + +func (KubernetesClusterControlPlaneFirewallArgs) ElementType() reflect.Type { + return reflect.TypeOf((*KubernetesClusterControlPlaneFirewall)(nil)).Elem() +} + +func (i KubernetesClusterControlPlaneFirewallArgs) ToKubernetesClusterControlPlaneFirewallOutput() KubernetesClusterControlPlaneFirewallOutput { + return i.ToKubernetesClusterControlPlaneFirewallOutputWithContext(context.Background()) +} + +func (i KubernetesClusterControlPlaneFirewallArgs) ToKubernetesClusterControlPlaneFirewallOutputWithContext(ctx context.Context) KubernetesClusterControlPlaneFirewallOutput { + return pulumi.ToOutputWithContext(ctx, i).(KubernetesClusterControlPlaneFirewallOutput) +} + +func (i KubernetesClusterControlPlaneFirewallArgs) ToKubernetesClusterControlPlaneFirewallPtrOutput() KubernetesClusterControlPlaneFirewallPtrOutput { + return i.ToKubernetesClusterControlPlaneFirewallPtrOutputWithContext(context.Background()) +} + +func (i KubernetesClusterControlPlaneFirewallArgs) ToKubernetesClusterControlPlaneFirewallPtrOutputWithContext(ctx context.Context) KubernetesClusterControlPlaneFirewallPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(KubernetesClusterControlPlaneFirewallOutput).ToKubernetesClusterControlPlaneFirewallPtrOutputWithContext(ctx) +} + +// KubernetesClusterControlPlaneFirewallPtrInput is an input type that accepts KubernetesClusterControlPlaneFirewallArgs, KubernetesClusterControlPlaneFirewallPtr and KubernetesClusterControlPlaneFirewallPtrOutput values. +// You can construct a concrete instance of `KubernetesClusterControlPlaneFirewallPtrInput` via: +// +// KubernetesClusterControlPlaneFirewallArgs{...} +// +// or: +// +// nil +type KubernetesClusterControlPlaneFirewallPtrInput interface { + pulumi.Input + + ToKubernetesClusterControlPlaneFirewallPtrOutput() KubernetesClusterControlPlaneFirewallPtrOutput + ToKubernetesClusterControlPlaneFirewallPtrOutputWithContext(context.Context) KubernetesClusterControlPlaneFirewallPtrOutput +} + +type kubernetesClusterControlPlaneFirewallPtrType KubernetesClusterControlPlaneFirewallArgs + +func KubernetesClusterControlPlaneFirewallPtr(v *KubernetesClusterControlPlaneFirewallArgs) KubernetesClusterControlPlaneFirewallPtrInput { + return (*kubernetesClusterControlPlaneFirewallPtrType)(v) +} + +func (*kubernetesClusterControlPlaneFirewallPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**KubernetesClusterControlPlaneFirewall)(nil)).Elem() +} + +func (i *kubernetesClusterControlPlaneFirewallPtrType) ToKubernetesClusterControlPlaneFirewallPtrOutput() KubernetesClusterControlPlaneFirewallPtrOutput { + return i.ToKubernetesClusterControlPlaneFirewallPtrOutputWithContext(context.Background()) +} + +func (i *kubernetesClusterControlPlaneFirewallPtrType) ToKubernetesClusterControlPlaneFirewallPtrOutputWithContext(ctx context.Context) KubernetesClusterControlPlaneFirewallPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(KubernetesClusterControlPlaneFirewallPtrOutput) +} + +type KubernetesClusterControlPlaneFirewallOutput struct{ *pulumi.OutputState } + +func (KubernetesClusterControlPlaneFirewallOutput) ElementType() reflect.Type { + return reflect.TypeOf((*KubernetesClusterControlPlaneFirewall)(nil)).Elem() +} + +func (o KubernetesClusterControlPlaneFirewallOutput) ToKubernetesClusterControlPlaneFirewallOutput() KubernetesClusterControlPlaneFirewallOutput { + return o +} + +func (o KubernetesClusterControlPlaneFirewallOutput) ToKubernetesClusterControlPlaneFirewallOutputWithContext(ctx context.Context) KubernetesClusterControlPlaneFirewallOutput { + return o +} + +func (o KubernetesClusterControlPlaneFirewallOutput) ToKubernetesClusterControlPlaneFirewallPtrOutput() KubernetesClusterControlPlaneFirewallPtrOutput { + return o.ToKubernetesClusterControlPlaneFirewallPtrOutputWithContext(context.Background()) +} + +func (o KubernetesClusterControlPlaneFirewallOutput) ToKubernetesClusterControlPlaneFirewallPtrOutputWithContext(ctx context.Context) KubernetesClusterControlPlaneFirewallPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v KubernetesClusterControlPlaneFirewall) *KubernetesClusterControlPlaneFirewall { + return &v + }).(KubernetesClusterControlPlaneFirewallPtrOutput) +} + +func (o KubernetesClusterControlPlaneFirewallOutput) AllowedAddresses() pulumi.StringArrayOutput { + return o.ApplyT(func(v KubernetesClusterControlPlaneFirewall) []string { return v.AllowedAddresses }).(pulumi.StringArrayOutput) +} + +func (o KubernetesClusterControlPlaneFirewallOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v KubernetesClusterControlPlaneFirewall) bool { return v.Enabled }).(pulumi.BoolOutput) +} + +type KubernetesClusterControlPlaneFirewallPtrOutput struct{ *pulumi.OutputState } + +func (KubernetesClusterControlPlaneFirewallPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**KubernetesClusterControlPlaneFirewall)(nil)).Elem() +} + +func (o KubernetesClusterControlPlaneFirewallPtrOutput) ToKubernetesClusterControlPlaneFirewallPtrOutput() KubernetesClusterControlPlaneFirewallPtrOutput { + return o +} + +func (o KubernetesClusterControlPlaneFirewallPtrOutput) ToKubernetesClusterControlPlaneFirewallPtrOutputWithContext(ctx context.Context) KubernetesClusterControlPlaneFirewallPtrOutput { + return o +} + +func (o KubernetesClusterControlPlaneFirewallPtrOutput) Elem() KubernetesClusterControlPlaneFirewallOutput { + return o.ApplyT(func(v *KubernetesClusterControlPlaneFirewall) KubernetesClusterControlPlaneFirewall { + if v != nil { + return *v + } + var ret KubernetesClusterControlPlaneFirewall + return ret + }).(KubernetesClusterControlPlaneFirewallOutput) +} + +func (o KubernetesClusterControlPlaneFirewallPtrOutput) AllowedAddresses() pulumi.StringArrayOutput { + return o.ApplyT(func(v *KubernetesClusterControlPlaneFirewall) []string { + if v == nil { + return nil + } + return v.AllowedAddresses + }).(pulumi.StringArrayOutput) +} + +func (o KubernetesClusterControlPlaneFirewallPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *KubernetesClusterControlPlaneFirewall) *bool { + if v == nil { + return nil + } + return &v.Enabled + }).(pulumi.BoolPtrOutput) +} + type KubernetesClusterKubeConfig struct { // The base64 encoded public certificate used by clients to access the cluster. Only available if token authentication is not supported on your cluster. ClientCertificate *string `pulumi:"clientCertificate"` @@ -22490,6 +23558,8 @@ func (o GetAppSpecEnvArrayOutput) Index(i pulumi.IntInput) GetAppSpecEnvOutput { type GetAppSpecFunction struct { // Describes an alert policy for the component. Alerts []GetAppSpecFunctionAlert `pulumi:"alerts"` + // A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket *GetAppSpecFunctionBitbucket `pulumi:"bitbucket"` // The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. // // Deprecated: Service level CORS rules are deprecated in favor of ingresses @@ -22498,9 +23568,9 @@ type GetAppSpecFunction struct { Envs []GetAppSpecFunctionEnv `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. Git *GetAppSpecFunctionGit `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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Github *GetAppSpecFunctionGithub `pulumi:"github"` - // 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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Gitlab *GetAppSpecFunctionGitlab `pulumi:"gitlab"` // Describes a log forwarding destination. LogDestinations []GetAppSpecFunctionLogDestination `pulumi:"logDestinations"` @@ -22526,6 +23596,8 @@ type GetAppSpecFunctionInput interface { type GetAppSpecFunctionArgs struct { // Describes an alert policy for the component. Alerts GetAppSpecFunctionAlertArrayInput `pulumi:"alerts"` + // A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket GetAppSpecFunctionBitbucketPtrInput `pulumi:"bitbucket"` // The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. // // Deprecated: Service level CORS rules are deprecated in favor of ingresses @@ -22534,9 +23606,9 @@ type GetAppSpecFunctionArgs struct { Envs GetAppSpecFunctionEnvArrayInput `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. Git GetAppSpecFunctionGitPtrInput `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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Github GetAppSpecFunctionGithubPtrInput `pulumi:"github"` - // 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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Gitlab GetAppSpecFunctionGitlabPtrInput `pulumi:"gitlab"` // Describes a log forwarding destination. LogDestinations GetAppSpecFunctionLogDestinationArrayInput `pulumi:"logDestinations"` @@ -22604,6 +23676,11 @@ func (o GetAppSpecFunctionOutput) Alerts() GetAppSpecFunctionAlertArrayOutput { return o.ApplyT(func(v GetAppSpecFunction) []GetAppSpecFunctionAlert { return v.Alerts }).(GetAppSpecFunctionAlertArrayOutput) } +// A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. +func (o GetAppSpecFunctionOutput) Bitbucket() GetAppSpecFunctionBitbucketPtrOutput { + return o.ApplyT(func(v GetAppSpecFunction) *GetAppSpecFunctionBitbucket { return v.Bitbucket }).(GetAppSpecFunctionBitbucketPtrOutput) +} + // The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. // // Deprecated: Service level CORS rules are deprecated in favor of ingresses @@ -22621,12 +23698,12 @@ func (o GetAppSpecFunctionOutput) Git() GetAppSpecFunctionGitPtrOutput { return o.ApplyT(func(v GetAppSpecFunction) *GetAppSpecFunctionGit { return v.Git }).(GetAppSpecFunctionGitPtrOutput) } -// 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. +// 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`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecFunctionOutput) Github() GetAppSpecFunctionGithubPtrOutput { return o.ApplyT(func(v GetAppSpecFunction) *GetAppSpecFunctionGithub { return v.Github }).(GetAppSpecFunctionGithubPtrOutput) } -// 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. +// 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`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecFunctionOutput) Gitlab() GetAppSpecFunctionGitlabPtrOutput { return o.ApplyT(func(v GetAppSpecFunction) *GetAppSpecFunctionGitlab { return v.Gitlab }).(GetAppSpecFunctionGitlabPtrOutput) } @@ -22804,6 +23881,181 @@ func (o GetAppSpecFunctionAlertArrayOutput) Index(i pulumi.IntInput) GetAppSpecF }).(GetAppSpecFunctionAlertOutput) } +type GetAppSpecFunctionBitbucket struct { + // The name of the branch to use. + Branch *string `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush *bool `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo *string `pulumi:"repo"` +} + +// GetAppSpecFunctionBitbucketInput is an input type that accepts GetAppSpecFunctionBitbucketArgs and GetAppSpecFunctionBitbucketOutput values. +// You can construct a concrete instance of `GetAppSpecFunctionBitbucketInput` via: +// +// GetAppSpecFunctionBitbucketArgs{...} +type GetAppSpecFunctionBitbucketInput interface { + pulumi.Input + + ToGetAppSpecFunctionBitbucketOutput() GetAppSpecFunctionBitbucketOutput + ToGetAppSpecFunctionBitbucketOutputWithContext(context.Context) GetAppSpecFunctionBitbucketOutput +} + +type GetAppSpecFunctionBitbucketArgs struct { + // The name of the branch to use. + Branch pulumi.StringPtrInput `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush pulumi.BoolPtrInput `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo pulumi.StringPtrInput `pulumi:"repo"` +} + +func (GetAppSpecFunctionBitbucketArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecFunctionBitbucket)(nil)).Elem() +} + +func (i GetAppSpecFunctionBitbucketArgs) ToGetAppSpecFunctionBitbucketOutput() GetAppSpecFunctionBitbucketOutput { + return i.ToGetAppSpecFunctionBitbucketOutputWithContext(context.Background()) +} + +func (i GetAppSpecFunctionBitbucketArgs) ToGetAppSpecFunctionBitbucketOutputWithContext(ctx context.Context) GetAppSpecFunctionBitbucketOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecFunctionBitbucketOutput) +} + +func (i GetAppSpecFunctionBitbucketArgs) ToGetAppSpecFunctionBitbucketPtrOutput() GetAppSpecFunctionBitbucketPtrOutput { + return i.ToGetAppSpecFunctionBitbucketPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecFunctionBitbucketArgs) ToGetAppSpecFunctionBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecFunctionBitbucketOutput).ToGetAppSpecFunctionBitbucketPtrOutputWithContext(ctx) +} + +// GetAppSpecFunctionBitbucketPtrInput is an input type that accepts GetAppSpecFunctionBitbucketArgs, GetAppSpecFunctionBitbucketPtr and GetAppSpecFunctionBitbucketPtrOutput values. +// You can construct a concrete instance of `GetAppSpecFunctionBitbucketPtrInput` via: +// +// GetAppSpecFunctionBitbucketArgs{...} +// +// or: +// +// nil +type GetAppSpecFunctionBitbucketPtrInput interface { + pulumi.Input + + ToGetAppSpecFunctionBitbucketPtrOutput() GetAppSpecFunctionBitbucketPtrOutput + ToGetAppSpecFunctionBitbucketPtrOutputWithContext(context.Context) GetAppSpecFunctionBitbucketPtrOutput +} + +type getAppSpecFunctionBitbucketPtrType GetAppSpecFunctionBitbucketArgs + +func GetAppSpecFunctionBitbucketPtr(v *GetAppSpecFunctionBitbucketArgs) GetAppSpecFunctionBitbucketPtrInput { + return (*getAppSpecFunctionBitbucketPtrType)(v) +} + +func (*getAppSpecFunctionBitbucketPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecFunctionBitbucket)(nil)).Elem() +} + +func (i *getAppSpecFunctionBitbucketPtrType) ToGetAppSpecFunctionBitbucketPtrOutput() GetAppSpecFunctionBitbucketPtrOutput { + return i.ToGetAppSpecFunctionBitbucketPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecFunctionBitbucketPtrType) ToGetAppSpecFunctionBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecFunctionBitbucketPtrOutput) +} + +type GetAppSpecFunctionBitbucketOutput struct{ *pulumi.OutputState } + +func (GetAppSpecFunctionBitbucketOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecFunctionBitbucket)(nil)).Elem() +} + +func (o GetAppSpecFunctionBitbucketOutput) ToGetAppSpecFunctionBitbucketOutput() GetAppSpecFunctionBitbucketOutput { + return o +} + +func (o GetAppSpecFunctionBitbucketOutput) ToGetAppSpecFunctionBitbucketOutputWithContext(ctx context.Context) GetAppSpecFunctionBitbucketOutput { + return o +} + +func (o GetAppSpecFunctionBitbucketOutput) ToGetAppSpecFunctionBitbucketPtrOutput() GetAppSpecFunctionBitbucketPtrOutput { + return o.ToGetAppSpecFunctionBitbucketPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecFunctionBitbucketOutput) ToGetAppSpecFunctionBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionBitbucketPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecFunctionBitbucket) *GetAppSpecFunctionBitbucket { + return &v + }).(GetAppSpecFunctionBitbucketPtrOutput) +} + +// The name of the branch to use. +func (o GetAppSpecFunctionBitbucketOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecFunctionBitbucket) *string { return v.Branch }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o GetAppSpecFunctionBitbucketOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GetAppSpecFunctionBitbucket) *bool { return v.DeployOnPush }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o GetAppSpecFunctionBitbucketOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecFunctionBitbucket) *string { return v.Repo }).(pulumi.StringPtrOutput) +} + +type GetAppSpecFunctionBitbucketPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecFunctionBitbucketPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecFunctionBitbucket)(nil)).Elem() +} + +func (o GetAppSpecFunctionBitbucketPtrOutput) ToGetAppSpecFunctionBitbucketPtrOutput() GetAppSpecFunctionBitbucketPtrOutput { + return o +} + +func (o GetAppSpecFunctionBitbucketPtrOutput) ToGetAppSpecFunctionBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecFunctionBitbucketPtrOutput { + return o +} + +func (o GetAppSpecFunctionBitbucketPtrOutput) Elem() GetAppSpecFunctionBitbucketOutput { + return o.ApplyT(func(v *GetAppSpecFunctionBitbucket) GetAppSpecFunctionBitbucket { + if v != nil { + return *v + } + var ret GetAppSpecFunctionBitbucket + return ret + }).(GetAppSpecFunctionBitbucketOutput) +} + +// The name of the branch to use. +func (o GetAppSpecFunctionBitbucketPtrOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecFunctionBitbucket) *string { + if v == nil { + return nil + } + return v.Branch + }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o GetAppSpecFunctionBitbucketPtrOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GetAppSpecFunctionBitbucket) *bool { + if v == nil { + return nil + } + return v.DeployOnPush + }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o GetAppSpecFunctionBitbucketPtrOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecFunctionBitbucket) *string { + if v == nil { + return nil + } + return v.Repo + }).(pulumi.StringPtrOutput) +} + type GetAppSpecFunctionCors 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. AllowCredentials *bool `pulumi:"allowCredentials"` @@ -25688,6 +26940,8 @@ func (o GetAppSpecIngressRuleRedirectPtrOutput) Uri() pulumi.StringPtrOutput { type GetAppSpecJob struct { // Describes an alert policy for the component. Alerts []GetAppSpecJobAlert `pulumi:"alerts"` + // A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket *GetAppSpecJobBitbucket `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand *string `pulumi:"buildCommand"` // The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. @@ -25698,11 +26952,11 @@ type GetAppSpecJob struct { Envs []GetAppSpecJobEnv `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. Git *GetAppSpecJobGit `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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Github *GetAppSpecJobGithub `pulumi:"github"` - // 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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Gitlab *GetAppSpecJobGitlab `pulumi:"gitlab"` - // An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + // An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. Image *GetAppSpecJobImage `pulumi:"image"` // The amount of instances that this component should be scaled to. InstanceCount *int `pulumi:"instanceCount"` @@ -25740,6 +26994,8 @@ type GetAppSpecJobInput interface { type GetAppSpecJobArgs struct { // Describes an alert policy for the component. Alerts GetAppSpecJobAlertArrayInput `pulumi:"alerts"` + // A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket GetAppSpecJobBitbucketPtrInput `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand pulumi.StringPtrInput `pulumi:"buildCommand"` // The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. @@ -25750,11 +27006,11 @@ type GetAppSpecJobArgs struct { Envs GetAppSpecJobEnvArrayInput `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. Git GetAppSpecJobGitPtrInput `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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Github GetAppSpecJobGithubPtrInput `pulumi:"github"` - // 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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Gitlab GetAppSpecJobGitlabPtrInput `pulumi:"gitlab"` - // An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + // An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. Image GetAppSpecJobImagePtrInput `pulumi:"image"` // The amount of instances that this component should be scaled to. InstanceCount pulumi.IntPtrInput `pulumi:"instanceCount"` @@ -25834,6 +27090,11 @@ func (o GetAppSpecJobOutput) Alerts() GetAppSpecJobAlertArrayOutput { return o.ApplyT(func(v GetAppSpecJob) []GetAppSpecJobAlert { return v.Alerts }).(GetAppSpecJobAlertArrayOutput) } +// A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. +func (o GetAppSpecJobOutput) Bitbucket() GetAppSpecJobBitbucketPtrOutput { + return o.ApplyT(func(v GetAppSpecJob) *GetAppSpecJobBitbucket { return v.Bitbucket }).(GetAppSpecJobBitbucketPtrOutput) +} + // An optional build command to run while building this component from source. func (o GetAppSpecJobOutput) BuildCommand() pulumi.StringPtrOutput { return o.ApplyT(func(v GetAppSpecJob) *string { return v.BuildCommand }).(pulumi.StringPtrOutput) @@ -25859,17 +27120,17 @@ func (o GetAppSpecJobOutput) Git() GetAppSpecJobGitPtrOutput { return o.ApplyT(func(v GetAppSpecJob) *GetAppSpecJobGit { return v.Git }).(GetAppSpecJobGitPtrOutput) } -// 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. +// 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`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecJobOutput) Github() GetAppSpecJobGithubPtrOutput { return o.ApplyT(func(v GetAppSpecJob) *GetAppSpecJobGithub { return v.Github }).(GetAppSpecJobGithubPtrOutput) } -// 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. +// 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`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecJobOutput) Gitlab() GetAppSpecJobGitlabPtrOutput { return o.ApplyT(func(v GetAppSpecJob) *GetAppSpecJobGitlab { return v.Gitlab }).(GetAppSpecJobGitlabPtrOutput) } -// An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. +// An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecJobOutput) Image() GetAppSpecJobImagePtrOutput { return o.ApplyT(func(v GetAppSpecJob) *GetAppSpecJobImage { return v.Image }).(GetAppSpecJobImagePtrOutput) } @@ -26071,6 +27332,181 @@ func (o GetAppSpecJobAlertArrayOutput) Index(i pulumi.IntInput) GetAppSpecJobAle }).(GetAppSpecJobAlertOutput) } +type GetAppSpecJobBitbucket struct { + // The name of the branch to use. + Branch *string `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush *bool `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo *string `pulumi:"repo"` +} + +// GetAppSpecJobBitbucketInput is an input type that accepts GetAppSpecJobBitbucketArgs and GetAppSpecJobBitbucketOutput values. +// You can construct a concrete instance of `GetAppSpecJobBitbucketInput` via: +// +// GetAppSpecJobBitbucketArgs{...} +type GetAppSpecJobBitbucketInput interface { + pulumi.Input + + ToGetAppSpecJobBitbucketOutput() GetAppSpecJobBitbucketOutput + ToGetAppSpecJobBitbucketOutputWithContext(context.Context) GetAppSpecJobBitbucketOutput +} + +type GetAppSpecJobBitbucketArgs struct { + // The name of the branch to use. + Branch pulumi.StringPtrInput `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush pulumi.BoolPtrInput `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo pulumi.StringPtrInput `pulumi:"repo"` +} + +func (GetAppSpecJobBitbucketArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecJobBitbucket)(nil)).Elem() +} + +func (i GetAppSpecJobBitbucketArgs) ToGetAppSpecJobBitbucketOutput() GetAppSpecJobBitbucketOutput { + return i.ToGetAppSpecJobBitbucketOutputWithContext(context.Background()) +} + +func (i GetAppSpecJobBitbucketArgs) ToGetAppSpecJobBitbucketOutputWithContext(ctx context.Context) GetAppSpecJobBitbucketOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecJobBitbucketOutput) +} + +func (i GetAppSpecJobBitbucketArgs) ToGetAppSpecJobBitbucketPtrOutput() GetAppSpecJobBitbucketPtrOutput { + return i.ToGetAppSpecJobBitbucketPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecJobBitbucketArgs) ToGetAppSpecJobBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecJobBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecJobBitbucketOutput).ToGetAppSpecJobBitbucketPtrOutputWithContext(ctx) +} + +// GetAppSpecJobBitbucketPtrInput is an input type that accepts GetAppSpecJobBitbucketArgs, GetAppSpecJobBitbucketPtr and GetAppSpecJobBitbucketPtrOutput values. +// You can construct a concrete instance of `GetAppSpecJobBitbucketPtrInput` via: +// +// GetAppSpecJobBitbucketArgs{...} +// +// or: +// +// nil +type GetAppSpecJobBitbucketPtrInput interface { + pulumi.Input + + ToGetAppSpecJobBitbucketPtrOutput() GetAppSpecJobBitbucketPtrOutput + ToGetAppSpecJobBitbucketPtrOutputWithContext(context.Context) GetAppSpecJobBitbucketPtrOutput +} + +type getAppSpecJobBitbucketPtrType GetAppSpecJobBitbucketArgs + +func GetAppSpecJobBitbucketPtr(v *GetAppSpecJobBitbucketArgs) GetAppSpecJobBitbucketPtrInput { + return (*getAppSpecJobBitbucketPtrType)(v) +} + +func (*getAppSpecJobBitbucketPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecJobBitbucket)(nil)).Elem() +} + +func (i *getAppSpecJobBitbucketPtrType) ToGetAppSpecJobBitbucketPtrOutput() GetAppSpecJobBitbucketPtrOutput { + return i.ToGetAppSpecJobBitbucketPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecJobBitbucketPtrType) ToGetAppSpecJobBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecJobBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecJobBitbucketPtrOutput) +} + +type GetAppSpecJobBitbucketOutput struct{ *pulumi.OutputState } + +func (GetAppSpecJobBitbucketOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecJobBitbucket)(nil)).Elem() +} + +func (o GetAppSpecJobBitbucketOutput) ToGetAppSpecJobBitbucketOutput() GetAppSpecJobBitbucketOutput { + return o +} + +func (o GetAppSpecJobBitbucketOutput) ToGetAppSpecJobBitbucketOutputWithContext(ctx context.Context) GetAppSpecJobBitbucketOutput { + return o +} + +func (o GetAppSpecJobBitbucketOutput) ToGetAppSpecJobBitbucketPtrOutput() GetAppSpecJobBitbucketPtrOutput { + return o.ToGetAppSpecJobBitbucketPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecJobBitbucketOutput) ToGetAppSpecJobBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecJobBitbucketPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecJobBitbucket) *GetAppSpecJobBitbucket { + return &v + }).(GetAppSpecJobBitbucketPtrOutput) +} + +// The name of the branch to use. +func (o GetAppSpecJobBitbucketOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecJobBitbucket) *string { return v.Branch }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o GetAppSpecJobBitbucketOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GetAppSpecJobBitbucket) *bool { return v.DeployOnPush }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o GetAppSpecJobBitbucketOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecJobBitbucket) *string { return v.Repo }).(pulumi.StringPtrOutput) +} + +type GetAppSpecJobBitbucketPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecJobBitbucketPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecJobBitbucket)(nil)).Elem() +} + +func (o GetAppSpecJobBitbucketPtrOutput) ToGetAppSpecJobBitbucketPtrOutput() GetAppSpecJobBitbucketPtrOutput { + return o +} + +func (o GetAppSpecJobBitbucketPtrOutput) ToGetAppSpecJobBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecJobBitbucketPtrOutput { + return o +} + +func (o GetAppSpecJobBitbucketPtrOutput) Elem() GetAppSpecJobBitbucketOutput { + return o.ApplyT(func(v *GetAppSpecJobBitbucket) GetAppSpecJobBitbucket { + if v != nil { + return *v + } + var ret GetAppSpecJobBitbucket + return ret + }).(GetAppSpecJobBitbucketOutput) +} + +// The name of the branch to use. +func (o GetAppSpecJobBitbucketPtrOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecJobBitbucket) *string { + if v == nil { + return nil + } + return v.Branch + }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o GetAppSpecJobBitbucketPtrOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GetAppSpecJobBitbucket) *bool { + if v == nil { + return nil + } + return v.DeployOnPush + }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o GetAppSpecJobBitbucketPtrOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecJobBitbucket) *string { + if v == nil { + return nil + } + return v.Repo + }).(pulumi.StringPtrOutput) +} + type GetAppSpecJobEnv struct { // The name of the environment variable. Key *string `pulumi:"key"` @@ -28106,6 +29542,8 @@ type GetAppSpecService struct { Alerts []GetAppSpecServiceAlert `pulumi:"alerts"` // Configuration for automatically scaling this component based on metrics. Autoscaling *GetAppSpecServiceAutoscaling `pulumi:"autoscaling"` + // A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket *GetAppSpecServiceBitbucket `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand *string `pulumi:"buildCommand"` // The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. @@ -28120,15 +29558,15 @@ type GetAppSpecService struct { Envs []GetAppSpecServiceEnv `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. Git *GetAppSpecServiceGit `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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Github *GetAppSpecServiceGithub `pulumi:"github"` - // 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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Gitlab *GetAppSpecServiceGitlab `pulumi:"gitlab"` // A health check to determine the availability of this component. HealthCheck *GetAppSpecServiceHealthCheck `pulumi:"healthCheck"` // The internal port on which this service's run command will listen. HttpPort int `pulumi:"httpPort"` - // An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + // An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. Image *GetAppSpecServiceImage `pulumi:"image"` // The amount of instances that this component should be scaled to. InstanceCount *int `pulumi:"instanceCount"` @@ -28166,6 +29604,8 @@ type GetAppSpecServiceArgs struct { Alerts GetAppSpecServiceAlertArrayInput `pulumi:"alerts"` // Configuration for automatically scaling this component based on metrics. Autoscaling GetAppSpecServiceAutoscalingPtrInput `pulumi:"autoscaling"` + // A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket GetAppSpecServiceBitbucketPtrInput `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand pulumi.StringPtrInput `pulumi:"buildCommand"` // The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. @@ -28180,15 +29620,15 @@ type GetAppSpecServiceArgs struct { Envs GetAppSpecServiceEnvArrayInput `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. Git GetAppSpecServiceGitPtrInput `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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Github GetAppSpecServiceGithubPtrInput `pulumi:"github"` - // 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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Gitlab GetAppSpecServiceGitlabPtrInput `pulumi:"gitlab"` // A health check to determine the availability of this component. HealthCheck GetAppSpecServiceHealthCheckPtrInput `pulumi:"healthCheck"` // The internal port on which this service's run command will listen. HttpPort pulumi.IntInput `pulumi:"httpPort"` - // An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + // An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. Image GetAppSpecServiceImagePtrInput `pulumi:"image"` // The amount of instances that this component should be scaled to. InstanceCount pulumi.IntPtrInput `pulumi:"instanceCount"` @@ -28271,6 +29711,11 @@ func (o GetAppSpecServiceOutput) Autoscaling() GetAppSpecServiceAutoscalingPtrOu return o.ApplyT(func(v GetAppSpecService) *GetAppSpecServiceAutoscaling { return v.Autoscaling }).(GetAppSpecServiceAutoscalingPtrOutput) } +// A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. +func (o GetAppSpecServiceOutput) Bitbucket() GetAppSpecServiceBitbucketPtrOutput { + return o.ApplyT(func(v GetAppSpecService) *GetAppSpecServiceBitbucket { return v.Bitbucket }).(GetAppSpecServiceBitbucketPtrOutput) +} + // An optional build command to run while building this component from source. func (o GetAppSpecServiceOutput) BuildCommand() pulumi.StringPtrOutput { return o.ApplyT(func(v GetAppSpecService) *string { return v.BuildCommand }).(pulumi.StringPtrOutput) @@ -28303,12 +29748,12 @@ func (o GetAppSpecServiceOutput) Git() GetAppSpecServiceGitPtrOutput { return o.ApplyT(func(v GetAppSpecService) *GetAppSpecServiceGit { return v.Git }).(GetAppSpecServiceGitPtrOutput) } -// 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. +// 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`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecServiceOutput) Github() GetAppSpecServiceGithubPtrOutput { return o.ApplyT(func(v GetAppSpecService) *GetAppSpecServiceGithub { return v.Github }).(GetAppSpecServiceGithubPtrOutput) } -// 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. +// 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`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecServiceOutput) Gitlab() GetAppSpecServiceGitlabPtrOutput { return o.ApplyT(func(v GetAppSpecService) *GetAppSpecServiceGitlab { return v.Gitlab }).(GetAppSpecServiceGitlabPtrOutput) } @@ -28323,7 +29768,7 @@ func (o GetAppSpecServiceOutput) HttpPort() pulumi.IntOutput { return o.ApplyT(func(v GetAppSpecService) int { return v.HttpPort }).(pulumi.IntOutput) } -// An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. +// An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecServiceOutput) Image() GetAppSpecServiceImagePtrOutput { return o.ApplyT(func(v GetAppSpecService) *GetAppSpecServiceImage { return v.Image }).(GetAppSpecServiceImagePtrOutput) } @@ -28975,6 +30420,181 @@ func (o GetAppSpecServiceAutoscalingMetricsCpuPtrOutput) Percent() pulumi.IntPtr }).(pulumi.IntPtrOutput) } +type GetAppSpecServiceBitbucket struct { + // The name of the branch to use. + Branch *string `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush *bool `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo *string `pulumi:"repo"` +} + +// GetAppSpecServiceBitbucketInput is an input type that accepts GetAppSpecServiceBitbucketArgs and GetAppSpecServiceBitbucketOutput values. +// You can construct a concrete instance of `GetAppSpecServiceBitbucketInput` via: +// +// GetAppSpecServiceBitbucketArgs{...} +type GetAppSpecServiceBitbucketInput interface { + pulumi.Input + + ToGetAppSpecServiceBitbucketOutput() GetAppSpecServiceBitbucketOutput + ToGetAppSpecServiceBitbucketOutputWithContext(context.Context) GetAppSpecServiceBitbucketOutput +} + +type GetAppSpecServiceBitbucketArgs struct { + // The name of the branch to use. + Branch pulumi.StringPtrInput `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush pulumi.BoolPtrInput `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo pulumi.StringPtrInput `pulumi:"repo"` +} + +func (GetAppSpecServiceBitbucketArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecServiceBitbucket)(nil)).Elem() +} + +func (i GetAppSpecServiceBitbucketArgs) ToGetAppSpecServiceBitbucketOutput() GetAppSpecServiceBitbucketOutput { + return i.ToGetAppSpecServiceBitbucketOutputWithContext(context.Background()) +} + +func (i GetAppSpecServiceBitbucketArgs) ToGetAppSpecServiceBitbucketOutputWithContext(ctx context.Context) GetAppSpecServiceBitbucketOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecServiceBitbucketOutput) +} + +func (i GetAppSpecServiceBitbucketArgs) ToGetAppSpecServiceBitbucketPtrOutput() GetAppSpecServiceBitbucketPtrOutput { + return i.ToGetAppSpecServiceBitbucketPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecServiceBitbucketArgs) ToGetAppSpecServiceBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecServiceBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecServiceBitbucketOutput).ToGetAppSpecServiceBitbucketPtrOutputWithContext(ctx) +} + +// GetAppSpecServiceBitbucketPtrInput is an input type that accepts GetAppSpecServiceBitbucketArgs, GetAppSpecServiceBitbucketPtr and GetAppSpecServiceBitbucketPtrOutput values. +// You can construct a concrete instance of `GetAppSpecServiceBitbucketPtrInput` via: +// +// GetAppSpecServiceBitbucketArgs{...} +// +// or: +// +// nil +type GetAppSpecServiceBitbucketPtrInput interface { + pulumi.Input + + ToGetAppSpecServiceBitbucketPtrOutput() GetAppSpecServiceBitbucketPtrOutput + ToGetAppSpecServiceBitbucketPtrOutputWithContext(context.Context) GetAppSpecServiceBitbucketPtrOutput +} + +type getAppSpecServiceBitbucketPtrType GetAppSpecServiceBitbucketArgs + +func GetAppSpecServiceBitbucketPtr(v *GetAppSpecServiceBitbucketArgs) GetAppSpecServiceBitbucketPtrInput { + return (*getAppSpecServiceBitbucketPtrType)(v) +} + +func (*getAppSpecServiceBitbucketPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecServiceBitbucket)(nil)).Elem() +} + +func (i *getAppSpecServiceBitbucketPtrType) ToGetAppSpecServiceBitbucketPtrOutput() GetAppSpecServiceBitbucketPtrOutput { + return i.ToGetAppSpecServiceBitbucketPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecServiceBitbucketPtrType) ToGetAppSpecServiceBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecServiceBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecServiceBitbucketPtrOutput) +} + +type GetAppSpecServiceBitbucketOutput struct{ *pulumi.OutputState } + +func (GetAppSpecServiceBitbucketOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecServiceBitbucket)(nil)).Elem() +} + +func (o GetAppSpecServiceBitbucketOutput) ToGetAppSpecServiceBitbucketOutput() GetAppSpecServiceBitbucketOutput { + return o +} + +func (o GetAppSpecServiceBitbucketOutput) ToGetAppSpecServiceBitbucketOutputWithContext(ctx context.Context) GetAppSpecServiceBitbucketOutput { + return o +} + +func (o GetAppSpecServiceBitbucketOutput) ToGetAppSpecServiceBitbucketPtrOutput() GetAppSpecServiceBitbucketPtrOutput { + return o.ToGetAppSpecServiceBitbucketPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecServiceBitbucketOutput) ToGetAppSpecServiceBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecServiceBitbucketPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecServiceBitbucket) *GetAppSpecServiceBitbucket { + return &v + }).(GetAppSpecServiceBitbucketPtrOutput) +} + +// The name of the branch to use. +func (o GetAppSpecServiceBitbucketOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecServiceBitbucket) *string { return v.Branch }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o GetAppSpecServiceBitbucketOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GetAppSpecServiceBitbucket) *bool { return v.DeployOnPush }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o GetAppSpecServiceBitbucketOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecServiceBitbucket) *string { return v.Repo }).(pulumi.StringPtrOutput) +} + +type GetAppSpecServiceBitbucketPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecServiceBitbucketPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecServiceBitbucket)(nil)).Elem() +} + +func (o GetAppSpecServiceBitbucketPtrOutput) ToGetAppSpecServiceBitbucketPtrOutput() GetAppSpecServiceBitbucketPtrOutput { + return o +} + +func (o GetAppSpecServiceBitbucketPtrOutput) ToGetAppSpecServiceBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecServiceBitbucketPtrOutput { + return o +} + +func (o GetAppSpecServiceBitbucketPtrOutput) Elem() GetAppSpecServiceBitbucketOutput { + return o.ApplyT(func(v *GetAppSpecServiceBitbucket) GetAppSpecServiceBitbucket { + if v != nil { + return *v + } + var ret GetAppSpecServiceBitbucket + return ret + }).(GetAppSpecServiceBitbucketOutput) +} + +// The name of the branch to use. +func (o GetAppSpecServiceBitbucketPtrOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecServiceBitbucket) *string { + if v == nil { + return nil + } + return v.Branch + }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o GetAppSpecServiceBitbucketPtrOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GetAppSpecServiceBitbucket) *bool { + if v == nil { + return nil + } + return v.DeployOnPush + }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o GetAppSpecServiceBitbucketPtrOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecServiceBitbucket) *string { + if v == nil { + return nil + } + return v.Repo + }).(pulumi.StringPtrOutput) +} + type GetAppSpecServiceCors 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. AllowCredentials *bool `pulumi:"allowCredentials"` @@ -31801,6 +33421,8 @@ func (o GetAppSpecServiceTerminationPtrOutput) GracePeriodSeconds() pulumi.IntPt } type GetAppSpecStaticSite struct { + // A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket *GetAppSpecStaticSiteBitbucket `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand *string `pulumi:"buildCommand"` // The name of the document to use as the fallback for any requests to documents that are not found when serving this static site. @@ -31819,9 +33441,9 @@ type GetAppSpecStaticSite struct { 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. Git *GetAppSpecStaticSiteGit `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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Github *GetAppSpecStaticSiteGithub `pulumi:"github"` - // 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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Gitlab *GetAppSpecStaticSiteGitlab `pulumi:"gitlab"` // The name of the index document to use when serving this static site. IndexDocument *string `pulumi:"indexDocument"` @@ -31847,6 +33469,8 @@ type GetAppSpecStaticSiteInput interface { } type GetAppSpecStaticSiteArgs struct { + // A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket GetAppSpecStaticSiteBitbucketPtrInput `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand pulumi.StringPtrInput `pulumi:"buildCommand"` // The name of the document to use as the fallback for any requests to documents that are not found when serving this static site. @@ -31865,9 +33489,9 @@ type GetAppSpecStaticSiteArgs struct { 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. Git GetAppSpecStaticSiteGitPtrInput `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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Github GetAppSpecStaticSiteGithubPtrInput `pulumi:"github"` - // 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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Gitlab GetAppSpecStaticSiteGitlabPtrInput `pulumi:"gitlab"` // The name of the index document to use when serving this static site. IndexDocument pulumi.StringPtrInput `pulumi:"indexDocument"` @@ -31932,6 +33556,11 @@ func (o GetAppSpecStaticSiteOutput) ToGetAppSpecStaticSiteOutputWithContext(ctx return o } +// A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. +func (o GetAppSpecStaticSiteOutput) Bitbucket() GetAppSpecStaticSiteBitbucketPtrOutput { + return o.ApplyT(func(v GetAppSpecStaticSite) *GetAppSpecStaticSiteBitbucket { return v.Bitbucket }).(GetAppSpecStaticSiteBitbucketPtrOutput) +} + // An optional build command to run while building this component from source. func (o GetAppSpecStaticSiteOutput) BuildCommand() pulumi.StringPtrOutput { return o.ApplyT(func(v GetAppSpecStaticSite) *string { return v.BuildCommand }).(pulumi.StringPtrOutput) @@ -31974,12 +33603,12 @@ func (o GetAppSpecStaticSiteOutput) Git() GetAppSpecStaticSiteGitPtrOutput { return o.ApplyT(func(v GetAppSpecStaticSite) *GetAppSpecStaticSiteGit { return v.Git }).(GetAppSpecStaticSiteGitPtrOutput) } -// 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. +// 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`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecStaticSiteOutput) Github() GetAppSpecStaticSiteGithubPtrOutput { return o.ApplyT(func(v GetAppSpecStaticSite) *GetAppSpecStaticSiteGithub { return v.Github }).(GetAppSpecStaticSiteGithubPtrOutput) } -// 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. +// 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`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecStaticSiteOutput) Gitlab() GetAppSpecStaticSiteGitlabPtrOutput { return o.ApplyT(func(v GetAppSpecStaticSite) *GetAppSpecStaticSiteGitlab { return v.Gitlab }).(GetAppSpecStaticSiteGitlabPtrOutput) } @@ -32029,6 +33658,181 @@ func (o GetAppSpecStaticSiteArrayOutput) Index(i pulumi.IntInput) GetAppSpecStat }).(GetAppSpecStaticSiteOutput) } +type GetAppSpecStaticSiteBitbucket struct { + // The name of the branch to use. + Branch *string `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush *bool `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo *string `pulumi:"repo"` +} + +// GetAppSpecStaticSiteBitbucketInput is an input type that accepts GetAppSpecStaticSiteBitbucketArgs and GetAppSpecStaticSiteBitbucketOutput values. +// You can construct a concrete instance of `GetAppSpecStaticSiteBitbucketInput` via: +// +// GetAppSpecStaticSiteBitbucketArgs{...} +type GetAppSpecStaticSiteBitbucketInput interface { + pulumi.Input + + ToGetAppSpecStaticSiteBitbucketOutput() GetAppSpecStaticSiteBitbucketOutput + ToGetAppSpecStaticSiteBitbucketOutputWithContext(context.Context) GetAppSpecStaticSiteBitbucketOutput +} + +type GetAppSpecStaticSiteBitbucketArgs struct { + // The name of the branch to use. + Branch pulumi.StringPtrInput `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush pulumi.BoolPtrInput `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo pulumi.StringPtrInput `pulumi:"repo"` +} + +func (GetAppSpecStaticSiteBitbucketArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecStaticSiteBitbucket)(nil)).Elem() +} + +func (i GetAppSpecStaticSiteBitbucketArgs) ToGetAppSpecStaticSiteBitbucketOutput() GetAppSpecStaticSiteBitbucketOutput { + return i.ToGetAppSpecStaticSiteBitbucketOutputWithContext(context.Background()) +} + +func (i GetAppSpecStaticSiteBitbucketArgs) ToGetAppSpecStaticSiteBitbucketOutputWithContext(ctx context.Context) GetAppSpecStaticSiteBitbucketOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecStaticSiteBitbucketOutput) +} + +func (i GetAppSpecStaticSiteBitbucketArgs) ToGetAppSpecStaticSiteBitbucketPtrOutput() GetAppSpecStaticSiteBitbucketPtrOutput { + return i.ToGetAppSpecStaticSiteBitbucketPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecStaticSiteBitbucketArgs) ToGetAppSpecStaticSiteBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecStaticSiteBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecStaticSiteBitbucketOutput).ToGetAppSpecStaticSiteBitbucketPtrOutputWithContext(ctx) +} + +// GetAppSpecStaticSiteBitbucketPtrInput is an input type that accepts GetAppSpecStaticSiteBitbucketArgs, GetAppSpecStaticSiteBitbucketPtr and GetAppSpecStaticSiteBitbucketPtrOutput values. +// You can construct a concrete instance of `GetAppSpecStaticSiteBitbucketPtrInput` via: +// +// GetAppSpecStaticSiteBitbucketArgs{...} +// +// or: +// +// nil +type GetAppSpecStaticSiteBitbucketPtrInput interface { + pulumi.Input + + ToGetAppSpecStaticSiteBitbucketPtrOutput() GetAppSpecStaticSiteBitbucketPtrOutput + ToGetAppSpecStaticSiteBitbucketPtrOutputWithContext(context.Context) GetAppSpecStaticSiteBitbucketPtrOutput +} + +type getAppSpecStaticSiteBitbucketPtrType GetAppSpecStaticSiteBitbucketArgs + +func GetAppSpecStaticSiteBitbucketPtr(v *GetAppSpecStaticSiteBitbucketArgs) GetAppSpecStaticSiteBitbucketPtrInput { + return (*getAppSpecStaticSiteBitbucketPtrType)(v) +} + +func (*getAppSpecStaticSiteBitbucketPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecStaticSiteBitbucket)(nil)).Elem() +} + +func (i *getAppSpecStaticSiteBitbucketPtrType) ToGetAppSpecStaticSiteBitbucketPtrOutput() GetAppSpecStaticSiteBitbucketPtrOutput { + return i.ToGetAppSpecStaticSiteBitbucketPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecStaticSiteBitbucketPtrType) ToGetAppSpecStaticSiteBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecStaticSiteBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecStaticSiteBitbucketPtrOutput) +} + +type GetAppSpecStaticSiteBitbucketOutput struct{ *pulumi.OutputState } + +func (GetAppSpecStaticSiteBitbucketOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecStaticSiteBitbucket)(nil)).Elem() +} + +func (o GetAppSpecStaticSiteBitbucketOutput) ToGetAppSpecStaticSiteBitbucketOutput() GetAppSpecStaticSiteBitbucketOutput { + return o +} + +func (o GetAppSpecStaticSiteBitbucketOutput) ToGetAppSpecStaticSiteBitbucketOutputWithContext(ctx context.Context) GetAppSpecStaticSiteBitbucketOutput { + return o +} + +func (o GetAppSpecStaticSiteBitbucketOutput) ToGetAppSpecStaticSiteBitbucketPtrOutput() GetAppSpecStaticSiteBitbucketPtrOutput { + return o.ToGetAppSpecStaticSiteBitbucketPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecStaticSiteBitbucketOutput) ToGetAppSpecStaticSiteBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecStaticSiteBitbucketPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecStaticSiteBitbucket) *GetAppSpecStaticSiteBitbucket { + return &v + }).(GetAppSpecStaticSiteBitbucketPtrOutput) +} + +// The name of the branch to use. +func (o GetAppSpecStaticSiteBitbucketOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecStaticSiteBitbucket) *string { return v.Branch }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o GetAppSpecStaticSiteBitbucketOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GetAppSpecStaticSiteBitbucket) *bool { return v.DeployOnPush }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o GetAppSpecStaticSiteBitbucketOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecStaticSiteBitbucket) *string { return v.Repo }).(pulumi.StringPtrOutput) +} + +type GetAppSpecStaticSiteBitbucketPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecStaticSiteBitbucketPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecStaticSiteBitbucket)(nil)).Elem() +} + +func (o GetAppSpecStaticSiteBitbucketPtrOutput) ToGetAppSpecStaticSiteBitbucketPtrOutput() GetAppSpecStaticSiteBitbucketPtrOutput { + return o +} + +func (o GetAppSpecStaticSiteBitbucketPtrOutput) ToGetAppSpecStaticSiteBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecStaticSiteBitbucketPtrOutput { + return o +} + +func (o GetAppSpecStaticSiteBitbucketPtrOutput) Elem() GetAppSpecStaticSiteBitbucketOutput { + return o.ApplyT(func(v *GetAppSpecStaticSiteBitbucket) GetAppSpecStaticSiteBitbucket { + if v != nil { + return *v + } + var ret GetAppSpecStaticSiteBitbucket + return ret + }).(GetAppSpecStaticSiteBitbucketOutput) +} + +// The name of the branch to use. +func (o GetAppSpecStaticSiteBitbucketPtrOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecStaticSiteBitbucket) *string { + if v == nil { + return nil + } + return v.Branch + }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o GetAppSpecStaticSiteBitbucketPtrOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GetAppSpecStaticSiteBitbucket) *bool { + if v == nil { + return nil + } + return v.DeployOnPush + }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o GetAppSpecStaticSiteBitbucketPtrOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecStaticSiteBitbucket) *string { + if v == nil { + return nil + } + return v.Repo + }).(pulumi.StringPtrOutput) +} + type GetAppSpecStaticSiteCors 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. AllowCredentials *bool `pulumi:"allowCredentials"` @@ -33185,6 +34989,8 @@ type GetAppSpecWorker struct { Alerts []GetAppSpecWorkerAlert `pulumi:"alerts"` // Configuration for automatically scaling this component based on metrics. Autoscaling *GetAppSpecWorkerAutoscaling `pulumi:"autoscaling"` + // A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket *GetAppSpecWorkerBitbucket `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand *string `pulumi:"buildCommand"` // The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. @@ -33195,11 +35001,11 @@ type GetAppSpecWorker struct { Envs []GetAppSpecWorkerEnv `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. Git *GetAppSpecWorkerGit `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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Github *GetAppSpecWorkerGithub `pulumi:"github"` - // 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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Gitlab *GetAppSpecWorkerGitlab `pulumi:"gitlab"` - // An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + // An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. Image *GetAppSpecWorkerImage `pulumi:"image"` // The amount of instances that this component should be scaled to. InstanceCount *int `pulumi:"instanceCount"` @@ -33233,6 +35039,8 @@ type GetAppSpecWorkerArgs struct { Alerts GetAppSpecWorkerAlertArrayInput `pulumi:"alerts"` // Configuration for automatically scaling this component based on metrics. Autoscaling GetAppSpecWorkerAutoscalingPtrInput `pulumi:"autoscaling"` + // A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + Bitbucket GetAppSpecWorkerBitbucketPtrInput `pulumi:"bitbucket"` // An optional build command to run while building this component from source. BuildCommand pulumi.StringPtrInput `pulumi:"buildCommand"` // The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. @@ -33243,11 +35051,11 @@ type GetAppSpecWorkerArgs struct { Envs GetAppSpecWorkerEnvArrayInput `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. Git GetAppSpecWorkerGitPtrInput `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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Github GetAppSpecWorkerGithubPtrInput `pulumi:"github"` - // 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. + // 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`, `bitbucket`, `gitlab`, or `image` may be set. Gitlab GetAppSpecWorkerGitlabPtrInput `pulumi:"gitlab"` - // An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + // An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. Image GetAppSpecWorkerImagePtrInput `pulumi:"image"` // The amount of instances that this component should be scaled to. InstanceCount pulumi.IntPtrInput `pulumi:"instanceCount"` @@ -33326,6 +35134,11 @@ func (o GetAppSpecWorkerOutput) Autoscaling() GetAppSpecWorkerAutoscalingPtrOutp return o.ApplyT(func(v GetAppSpecWorker) *GetAppSpecWorkerAutoscaling { return v.Autoscaling }).(GetAppSpecWorkerAutoscalingPtrOutput) } +// A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. +func (o GetAppSpecWorkerOutput) Bitbucket() GetAppSpecWorkerBitbucketPtrOutput { + return o.ApplyT(func(v GetAppSpecWorker) *GetAppSpecWorkerBitbucket { return v.Bitbucket }).(GetAppSpecWorkerBitbucketPtrOutput) +} + // An optional build command to run while building this component from source. func (o GetAppSpecWorkerOutput) BuildCommand() pulumi.StringPtrOutput { return o.ApplyT(func(v GetAppSpecWorker) *string { return v.BuildCommand }).(pulumi.StringPtrOutput) @@ -33351,17 +35164,17 @@ func (o GetAppSpecWorkerOutput) Git() GetAppSpecWorkerGitPtrOutput { return o.ApplyT(func(v GetAppSpecWorker) *GetAppSpecWorkerGit { return v.Git }).(GetAppSpecWorkerGitPtrOutput) } -// 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. +// 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`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecWorkerOutput) Github() GetAppSpecWorkerGithubPtrOutput { return o.ApplyT(func(v GetAppSpecWorker) *GetAppSpecWorkerGithub { return v.Github }).(GetAppSpecWorkerGithubPtrOutput) } -// 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. +// 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`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecWorkerOutput) Gitlab() GetAppSpecWorkerGitlabPtrOutput { return o.ApplyT(func(v GetAppSpecWorker) *GetAppSpecWorkerGitlab { return v.Gitlab }).(GetAppSpecWorkerGitlabPtrOutput) } -// An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. +// An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. func (o GetAppSpecWorkerOutput) Image() GetAppSpecWorkerImagePtrOutput { return o.ApplyT(func(v GetAppSpecWorker) *GetAppSpecWorkerImage { return v.Image }).(GetAppSpecWorkerImagePtrOutput) } @@ -34003,6 +35816,181 @@ func (o GetAppSpecWorkerAutoscalingMetricsCpuPtrOutput) Percent() pulumi.IntPtrO }).(pulumi.IntPtrOutput) } +type GetAppSpecWorkerBitbucket struct { + // The name of the branch to use. + Branch *string `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush *bool `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo *string `pulumi:"repo"` +} + +// GetAppSpecWorkerBitbucketInput is an input type that accepts GetAppSpecWorkerBitbucketArgs and GetAppSpecWorkerBitbucketOutput values. +// You can construct a concrete instance of `GetAppSpecWorkerBitbucketInput` via: +// +// GetAppSpecWorkerBitbucketArgs{...} +type GetAppSpecWorkerBitbucketInput interface { + pulumi.Input + + ToGetAppSpecWorkerBitbucketOutput() GetAppSpecWorkerBitbucketOutput + ToGetAppSpecWorkerBitbucketOutputWithContext(context.Context) GetAppSpecWorkerBitbucketOutput +} + +type GetAppSpecWorkerBitbucketArgs struct { + // The name of the branch to use. + Branch pulumi.StringPtrInput `pulumi:"branch"` + // Whether to automatically deploy new commits made to the repo. + DeployOnPush pulumi.BoolPtrInput `pulumi:"deployOnPush"` + // The name of the repo in the format `owner/repo`. + Repo pulumi.StringPtrInput `pulumi:"repo"` +} + +func (GetAppSpecWorkerBitbucketArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecWorkerBitbucket)(nil)).Elem() +} + +func (i GetAppSpecWorkerBitbucketArgs) ToGetAppSpecWorkerBitbucketOutput() GetAppSpecWorkerBitbucketOutput { + return i.ToGetAppSpecWorkerBitbucketOutputWithContext(context.Background()) +} + +func (i GetAppSpecWorkerBitbucketArgs) ToGetAppSpecWorkerBitbucketOutputWithContext(ctx context.Context) GetAppSpecWorkerBitbucketOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecWorkerBitbucketOutput) +} + +func (i GetAppSpecWorkerBitbucketArgs) ToGetAppSpecWorkerBitbucketPtrOutput() GetAppSpecWorkerBitbucketPtrOutput { + return i.ToGetAppSpecWorkerBitbucketPtrOutputWithContext(context.Background()) +} + +func (i GetAppSpecWorkerBitbucketArgs) ToGetAppSpecWorkerBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecWorkerBitbucketOutput).ToGetAppSpecWorkerBitbucketPtrOutputWithContext(ctx) +} + +// GetAppSpecWorkerBitbucketPtrInput is an input type that accepts GetAppSpecWorkerBitbucketArgs, GetAppSpecWorkerBitbucketPtr and GetAppSpecWorkerBitbucketPtrOutput values. +// You can construct a concrete instance of `GetAppSpecWorkerBitbucketPtrInput` via: +// +// GetAppSpecWorkerBitbucketArgs{...} +// +// or: +// +// nil +type GetAppSpecWorkerBitbucketPtrInput interface { + pulumi.Input + + ToGetAppSpecWorkerBitbucketPtrOutput() GetAppSpecWorkerBitbucketPtrOutput + ToGetAppSpecWorkerBitbucketPtrOutputWithContext(context.Context) GetAppSpecWorkerBitbucketPtrOutput +} + +type getAppSpecWorkerBitbucketPtrType GetAppSpecWorkerBitbucketArgs + +func GetAppSpecWorkerBitbucketPtr(v *GetAppSpecWorkerBitbucketArgs) GetAppSpecWorkerBitbucketPtrInput { + return (*getAppSpecWorkerBitbucketPtrType)(v) +} + +func (*getAppSpecWorkerBitbucketPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecWorkerBitbucket)(nil)).Elem() +} + +func (i *getAppSpecWorkerBitbucketPtrType) ToGetAppSpecWorkerBitbucketPtrOutput() GetAppSpecWorkerBitbucketPtrOutput { + return i.ToGetAppSpecWorkerBitbucketPtrOutputWithContext(context.Background()) +} + +func (i *getAppSpecWorkerBitbucketPtrType) ToGetAppSpecWorkerBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerBitbucketPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetAppSpecWorkerBitbucketPtrOutput) +} + +type GetAppSpecWorkerBitbucketOutput struct{ *pulumi.OutputState } + +func (GetAppSpecWorkerBitbucketOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAppSpecWorkerBitbucket)(nil)).Elem() +} + +func (o GetAppSpecWorkerBitbucketOutput) ToGetAppSpecWorkerBitbucketOutput() GetAppSpecWorkerBitbucketOutput { + return o +} + +func (o GetAppSpecWorkerBitbucketOutput) ToGetAppSpecWorkerBitbucketOutputWithContext(ctx context.Context) GetAppSpecWorkerBitbucketOutput { + return o +} + +func (o GetAppSpecWorkerBitbucketOutput) ToGetAppSpecWorkerBitbucketPtrOutput() GetAppSpecWorkerBitbucketPtrOutput { + return o.ToGetAppSpecWorkerBitbucketPtrOutputWithContext(context.Background()) +} + +func (o GetAppSpecWorkerBitbucketOutput) ToGetAppSpecWorkerBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerBitbucketPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetAppSpecWorkerBitbucket) *GetAppSpecWorkerBitbucket { + return &v + }).(GetAppSpecWorkerBitbucketPtrOutput) +} + +// The name of the branch to use. +func (o GetAppSpecWorkerBitbucketOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecWorkerBitbucket) *string { return v.Branch }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o GetAppSpecWorkerBitbucketOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GetAppSpecWorkerBitbucket) *bool { return v.DeployOnPush }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o GetAppSpecWorkerBitbucketOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetAppSpecWorkerBitbucket) *string { return v.Repo }).(pulumi.StringPtrOutput) +} + +type GetAppSpecWorkerBitbucketPtrOutput struct{ *pulumi.OutputState } + +func (GetAppSpecWorkerBitbucketPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetAppSpecWorkerBitbucket)(nil)).Elem() +} + +func (o GetAppSpecWorkerBitbucketPtrOutput) ToGetAppSpecWorkerBitbucketPtrOutput() GetAppSpecWorkerBitbucketPtrOutput { + return o +} + +func (o GetAppSpecWorkerBitbucketPtrOutput) ToGetAppSpecWorkerBitbucketPtrOutputWithContext(ctx context.Context) GetAppSpecWorkerBitbucketPtrOutput { + return o +} + +func (o GetAppSpecWorkerBitbucketPtrOutput) Elem() GetAppSpecWorkerBitbucketOutput { + return o.ApplyT(func(v *GetAppSpecWorkerBitbucket) GetAppSpecWorkerBitbucket { + if v != nil { + return *v + } + var ret GetAppSpecWorkerBitbucket + return ret + }).(GetAppSpecWorkerBitbucketOutput) +} + +// The name of the branch to use. +func (o GetAppSpecWorkerBitbucketPtrOutput) Branch() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecWorkerBitbucket) *string { + if v == nil { + return nil + } + return v.Branch + }).(pulumi.StringPtrOutput) +} + +// Whether to automatically deploy new commits made to the repo. +func (o GetAppSpecWorkerBitbucketPtrOutput) DeployOnPush() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GetAppSpecWorkerBitbucket) *bool { + if v == nil { + return nil + } + return v.DeployOnPush + }).(pulumi.BoolPtrOutput) +} + +// The name of the repo in the format `owner/repo`. +func (o GetAppSpecWorkerBitbucketPtrOutput) Repo() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetAppSpecWorkerBitbucket) *string { + if v == nil { + return nil + } + return v.Repo + }).(pulumi.StringPtrOutput) +} + type GetAppSpecWorkerEnv struct { // The name of the environment variable. Key *string `pulumi:"key"` @@ -43190,6 +45178,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionArrayInput)(nil)).Elem(), AppSpecFunctionArray{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionAlertInput)(nil)).Elem(), AppSpecFunctionAlertArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionAlertArrayInput)(nil)).Elem(), AppSpecFunctionAlertArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionBitbucketInput)(nil)).Elem(), AppSpecFunctionBitbucketArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionBitbucketPtrInput)(nil)).Elem(), AppSpecFunctionBitbucketArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionCorsInput)(nil)).Elem(), AppSpecFunctionCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionCorsPtrInput)(nil)).Elem(), AppSpecFunctionCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecFunctionCorsAllowOriginsInput)(nil)).Elem(), AppSpecFunctionCorsAllowOriginsArgs{}) @@ -43236,6 +45226,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobArrayInput)(nil)).Elem(), AppSpecJobArray{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobAlertInput)(nil)).Elem(), AppSpecJobAlertArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobAlertArrayInput)(nil)).Elem(), AppSpecJobAlertArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobBitbucketInput)(nil)).Elem(), AppSpecJobBitbucketArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobBitbucketPtrInput)(nil)).Elem(), AppSpecJobBitbucketArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobEnvInput)(nil)).Elem(), AppSpecJobEnvArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobEnvArrayInput)(nil)).Elem(), AppSpecJobEnvArray{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecJobGitInput)(nil)).Elem(), AppSpecJobGitArgs{}) @@ -43272,6 +45264,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceAutoscalingMetricsPtrInput)(nil)).Elem(), AppSpecServiceAutoscalingMetricsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceAutoscalingMetricsCpuInput)(nil)).Elem(), AppSpecServiceAutoscalingMetricsCpuArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceAutoscalingMetricsCpuPtrInput)(nil)).Elem(), AppSpecServiceAutoscalingMetricsCpuArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceBitbucketInput)(nil)).Elem(), AppSpecServiceBitbucketArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceBitbucketPtrInput)(nil)).Elem(), AppSpecServiceBitbucketArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceCorsInput)(nil)).Elem(), AppSpecServiceCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceCorsPtrInput)(nil)).Elem(), AppSpecServiceCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceCorsAllowOriginsInput)(nil)).Elem(), AppSpecServiceCorsAllowOriginsArgs{}) @@ -43308,6 +45302,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AppSpecServiceTerminationPtrInput)(nil)).Elem(), AppSpecServiceTerminationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecStaticSiteInput)(nil)).Elem(), AppSpecStaticSiteArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecStaticSiteArrayInput)(nil)).Elem(), AppSpecStaticSiteArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecStaticSiteBitbucketInput)(nil)).Elem(), AppSpecStaticSiteBitbucketArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecStaticSiteBitbucketPtrInput)(nil)).Elem(), AppSpecStaticSiteBitbucketArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecStaticSiteCorsInput)(nil)).Elem(), AppSpecStaticSiteCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecStaticSiteCorsPtrInput)(nil)).Elem(), AppSpecStaticSiteCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecStaticSiteCorsAllowOriginsInput)(nil)).Elem(), AppSpecStaticSiteCorsAllowOriginsArgs{}) @@ -43332,6 +45328,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerAutoscalingMetricsPtrInput)(nil)).Elem(), AppSpecWorkerAutoscalingMetricsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerAutoscalingMetricsCpuInput)(nil)).Elem(), AppSpecWorkerAutoscalingMetricsCpuArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerAutoscalingMetricsCpuPtrInput)(nil)).Elem(), AppSpecWorkerAutoscalingMetricsCpuArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerBitbucketInput)(nil)).Elem(), AppSpecWorkerBitbucketArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerBitbucketPtrInput)(nil)).Elem(), AppSpecWorkerBitbucketArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerEnvInput)(nil)).Elem(), AppSpecWorkerEnvArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerEnvArrayInput)(nil)).Elem(), AppSpecWorkerEnvArray{}) pulumi.RegisterInputType(reflect.TypeOf((*AppSpecWorkerGitInput)(nil)).Elem(), AppSpecWorkerGitArgs{}) @@ -43390,6 +45388,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*FirewallOutboundRuleArrayInput)(nil)).Elem(), FirewallOutboundRuleArray{}) pulumi.RegisterInputType(reflect.TypeOf((*FirewallPendingChangeInput)(nil)).Elem(), FirewallPendingChangeArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FirewallPendingChangeArrayInput)(nil)).Elem(), FirewallPendingChangeArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*KubernetesClusterControlPlaneFirewallInput)(nil)).Elem(), KubernetesClusterControlPlaneFirewallArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*KubernetesClusterControlPlaneFirewallPtrInput)(nil)).Elem(), KubernetesClusterControlPlaneFirewallArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*KubernetesClusterKubeConfigInput)(nil)).Elem(), KubernetesClusterKubeConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*KubernetesClusterKubeConfigArrayInput)(nil)).Elem(), KubernetesClusterKubeConfigArray{}) pulumi.RegisterInputType(reflect.TypeOf((*KubernetesClusterMaintenancePolicyInput)(nil)).Elem(), KubernetesClusterMaintenancePolicyArgs{}) @@ -43456,6 +45456,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionArrayInput)(nil)).Elem(), GetAppSpecFunctionArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionAlertInput)(nil)).Elem(), GetAppSpecFunctionAlertArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionAlertArrayInput)(nil)).Elem(), GetAppSpecFunctionAlertArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionBitbucketInput)(nil)).Elem(), GetAppSpecFunctionBitbucketArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionBitbucketPtrInput)(nil)).Elem(), GetAppSpecFunctionBitbucketArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionCorsInput)(nil)).Elem(), GetAppSpecFunctionCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionCorsPtrInput)(nil)).Elem(), GetAppSpecFunctionCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecFunctionCorsAllowOriginsInput)(nil)).Elem(), GetAppSpecFunctionCorsAllowOriginsArgs{}) @@ -43497,6 +45499,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobArrayInput)(nil)).Elem(), GetAppSpecJobArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobAlertInput)(nil)).Elem(), GetAppSpecJobAlertArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobAlertArrayInput)(nil)).Elem(), GetAppSpecJobAlertArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobBitbucketInput)(nil)).Elem(), GetAppSpecJobBitbucketArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobBitbucketPtrInput)(nil)).Elem(), GetAppSpecJobBitbucketArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobEnvInput)(nil)).Elem(), GetAppSpecJobEnvArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobEnvArrayInput)(nil)).Elem(), GetAppSpecJobEnvArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecJobGitInput)(nil)).Elem(), GetAppSpecJobGitArgs{}) @@ -43533,6 +45537,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceAutoscalingMetricsPtrInput)(nil)).Elem(), GetAppSpecServiceAutoscalingMetricsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceAutoscalingMetricsCpuInput)(nil)).Elem(), GetAppSpecServiceAutoscalingMetricsCpuArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceAutoscalingMetricsCpuPtrInput)(nil)).Elem(), GetAppSpecServiceAutoscalingMetricsCpuArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceBitbucketInput)(nil)).Elem(), GetAppSpecServiceBitbucketArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceBitbucketPtrInput)(nil)).Elem(), GetAppSpecServiceBitbucketArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceCorsInput)(nil)).Elem(), GetAppSpecServiceCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceCorsPtrInput)(nil)).Elem(), GetAppSpecServiceCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceCorsAllowOriginsInput)(nil)).Elem(), GetAppSpecServiceCorsAllowOriginsArgs{}) @@ -43569,6 +45575,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecServiceTerminationPtrInput)(nil)).Elem(), GetAppSpecServiceTerminationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecStaticSiteInput)(nil)).Elem(), GetAppSpecStaticSiteArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecStaticSiteArrayInput)(nil)).Elem(), GetAppSpecStaticSiteArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecStaticSiteBitbucketInput)(nil)).Elem(), GetAppSpecStaticSiteBitbucketArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecStaticSiteBitbucketPtrInput)(nil)).Elem(), GetAppSpecStaticSiteBitbucketArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecStaticSiteCorsInput)(nil)).Elem(), GetAppSpecStaticSiteCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecStaticSiteCorsPtrInput)(nil)).Elem(), GetAppSpecStaticSiteCorsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecStaticSiteCorsAllowOriginsInput)(nil)).Elem(), GetAppSpecStaticSiteCorsAllowOriginsArgs{}) @@ -43593,6 +45601,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerAutoscalingMetricsPtrInput)(nil)).Elem(), GetAppSpecWorkerAutoscalingMetricsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerAutoscalingMetricsCpuInput)(nil)).Elem(), GetAppSpecWorkerAutoscalingMetricsCpuArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerAutoscalingMetricsCpuPtrInput)(nil)).Elem(), GetAppSpecWorkerAutoscalingMetricsCpuArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerBitbucketInput)(nil)).Elem(), GetAppSpecWorkerBitbucketArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerBitbucketPtrInput)(nil)).Elem(), GetAppSpecWorkerBitbucketArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerEnvInput)(nil)).Elem(), GetAppSpecWorkerEnvArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerEnvArrayInput)(nil)).Elem(), GetAppSpecWorkerEnvArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetAppSpecWorkerGitInput)(nil)).Elem(), GetAppSpecWorkerGitArgs{}) @@ -43741,6 +45751,8 @@ func init() { pulumi.RegisterOutputType(AppSpecFunctionArrayOutput{}) pulumi.RegisterOutputType(AppSpecFunctionAlertOutput{}) pulumi.RegisterOutputType(AppSpecFunctionAlertArrayOutput{}) + pulumi.RegisterOutputType(AppSpecFunctionBitbucketOutput{}) + pulumi.RegisterOutputType(AppSpecFunctionBitbucketPtrOutput{}) pulumi.RegisterOutputType(AppSpecFunctionCorsOutput{}) pulumi.RegisterOutputType(AppSpecFunctionCorsPtrOutput{}) pulumi.RegisterOutputType(AppSpecFunctionCorsAllowOriginsOutput{}) @@ -43787,6 +45799,8 @@ func init() { pulumi.RegisterOutputType(AppSpecJobArrayOutput{}) pulumi.RegisterOutputType(AppSpecJobAlertOutput{}) pulumi.RegisterOutputType(AppSpecJobAlertArrayOutput{}) + pulumi.RegisterOutputType(AppSpecJobBitbucketOutput{}) + pulumi.RegisterOutputType(AppSpecJobBitbucketPtrOutput{}) pulumi.RegisterOutputType(AppSpecJobEnvOutput{}) pulumi.RegisterOutputType(AppSpecJobEnvArrayOutput{}) pulumi.RegisterOutputType(AppSpecJobGitOutput{}) @@ -43823,6 +45837,8 @@ func init() { pulumi.RegisterOutputType(AppSpecServiceAutoscalingMetricsPtrOutput{}) pulumi.RegisterOutputType(AppSpecServiceAutoscalingMetricsCpuOutput{}) pulumi.RegisterOutputType(AppSpecServiceAutoscalingMetricsCpuPtrOutput{}) + pulumi.RegisterOutputType(AppSpecServiceBitbucketOutput{}) + pulumi.RegisterOutputType(AppSpecServiceBitbucketPtrOutput{}) pulumi.RegisterOutputType(AppSpecServiceCorsOutput{}) pulumi.RegisterOutputType(AppSpecServiceCorsPtrOutput{}) pulumi.RegisterOutputType(AppSpecServiceCorsAllowOriginsOutput{}) @@ -43859,6 +45875,8 @@ func init() { pulumi.RegisterOutputType(AppSpecServiceTerminationPtrOutput{}) pulumi.RegisterOutputType(AppSpecStaticSiteOutput{}) pulumi.RegisterOutputType(AppSpecStaticSiteArrayOutput{}) + pulumi.RegisterOutputType(AppSpecStaticSiteBitbucketOutput{}) + pulumi.RegisterOutputType(AppSpecStaticSiteBitbucketPtrOutput{}) pulumi.RegisterOutputType(AppSpecStaticSiteCorsOutput{}) pulumi.RegisterOutputType(AppSpecStaticSiteCorsPtrOutput{}) pulumi.RegisterOutputType(AppSpecStaticSiteCorsAllowOriginsOutput{}) @@ -43883,6 +45901,8 @@ func init() { pulumi.RegisterOutputType(AppSpecWorkerAutoscalingMetricsPtrOutput{}) pulumi.RegisterOutputType(AppSpecWorkerAutoscalingMetricsCpuOutput{}) pulumi.RegisterOutputType(AppSpecWorkerAutoscalingMetricsCpuPtrOutput{}) + pulumi.RegisterOutputType(AppSpecWorkerBitbucketOutput{}) + pulumi.RegisterOutputType(AppSpecWorkerBitbucketPtrOutput{}) pulumi.RegisterOutputType(AppSpecWorkerEnvOutput{}) pulumi.RegisterOutputType(AppSpecWorkerEnvArrayOutput{}) pulumi.RegisterOutputType(AppSpecWorkerGitOutput{}) @@ -43941,6 +45961,8 @@ func init() { pulumi.RegisterOutputType(FirewallOutboundRuleArrayOutput{}) pulumi.RegisterOutputType(FirewallPendingChangeOutput{}) pulumi.RegisterOutputType(FirewallPendingChangeArrayOutput{}) + pulumi.RegisterOutputType(KubernetesClusterControlPlaneFirewallOutput{}) + pulumi.RegisterOutputType(KubernetesClusterControlPlaneFirewallPtrOutput{}) pulumi.RegisterOutputType(KubernetesClusterKubeConfigOutput{}) pulumi.RegisterOutputType(KubernetesClusterKubeConfigArrayOutput{}) pulumi.RegisterOutputType(KubernetesClusterMaintenancePolicyOutput{}) @@ -44007,6 +46029,8 @@ func init() { pulumi.RegisterOutputType(GetAppSpecFunctionArrayOutput{}) pulumi.RegisterOutputType(GetAppSpecFunctionAlertOutput{}) pulumi.RegisterOutputType(GetAppSpecFunctionAlertArrayOutput{}) + pulumi.RegisterOutputType(GetAppSpecFunctionBitbucketOutput{}) + pulumi.RegisterOutputType(GetAppSpecFunctionBitbucketPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecFunctionCorsOutput{}) pulumi.RegisterOutputType(GetAppSpecFunctionCorsPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecFunctionCorsAllowOriginsOutput{}) @@ -44048,6 +46072,8 @@ func init() { pulumi.RegisterOutputType(GetAppSpecJobArrayOutput{}) pulumi.RegisterOutputType(GetAppSpecJobAlertOutput{}) pulumi.RegisterOutputType(GetAppSpecJobAlertArrayOutput{}) + pulumi.RegisterOutputType(GetAppSpecJobBitbucketOutput{}) + pulumi.RegisterOutputType(GetAppSpecJobBitbucketPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecJobEnvOutput{}) pulumi.RegisterOutputType(GetAppSpecJobEnvArrayOutput{}) pulumi.RegisterOutputType(GetAppSpecJobGitOutput{}) @@ -44084,6 +46110,8 @@ func init() { pulumi.RegisterOutputType(GetAppSpecServiceAutoscalingMetricsPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceAutoscalingMetricsCpuOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceAutoscalingMetricsCpuPtrOutput{}) + pulumi.RegisterOutputType(GetAppSpecServiceBitbucketOutput{}) + pulumi.RegisterOutputType(GetAppSpecServiceBitbucketPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceCorsOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceCorsPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecServiceCorsAllowOriginsOutput{}) @@ -44120,6 +46148,8 @@ func init() { pulumi.RegisterOutputType(GetAppSpecServiceTerminationPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecStaticSiteOutput{}) pulumi.RegisterOutputType(GetAppSpecStaticSiteArrayOutput{}) + pulumi.RegisterOutputType(GetAppSpecStaticSiteBitbucketOutput{}) + pulumi.RegisterOutputType(GetAppSpecStaticSiteBitbucketPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecStaticSiteCorsOutput{}) pulumi.RegisterOutputType(GetAppSpecStaticSiteCorsPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecStaticSiteCorsAllowOriginsOutput{}) @@ -44144,6 +46174,8 @@ func init() { pulumi.RegisterOutputType(GetAppSpecWorkerAutoscalingMetricsPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecWorkerAutoscalingMetricsCpuOutput{}) pulumi.RegisterOutputType(GetAppSpecWorkerAutoscalingMetricsCpuPtrOutput{}) + pulumi.RegisterOutputType(GetAppSpecWorkerBitbucketOutput{}) + pulumi.RegisterOutputType(GetAppSpecWorkerBitbucketPtrOutput{}) pulumi.RegisterOutputType(GetAppSpecWorkerEnvOutput{}) pulumi.RegisterOutputType(GetAppSpecWorkerEnvArrayOutput{}) pulumi.RegisterOutputType(GetAppSpecWorkerGitOutput{}) 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 12e6bd42..f1b23934 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/App.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/App.java @@ -183,7 +183,7 @@ * .staticSites(AppSpecStaticSiteArgs.builder() * .name("web") * .buildCommand("npm run build") - * .github(AppSpecStaticSiteGithubArgs.builder() + * .bitbucket(AppSpecStaticSiteBitbucketArgs.builder() * .branch("main") * .deployOnPush(true) * .repo("username/repo") diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/KubernetesCluster.java b/sdk/java/src/main/java/com/pulumi/digitalocean/KubernetesCluster.java index 041cb1ab..f31ce39b 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/KubernetesCluster.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/KubernetesCluster.java @@ -10,10 +10,12 @@ import com.pulumi.digitalocean.KubernetesClusterArgs; import com.pulumi.digitalocean.Utilities; import com.pulumi.digitalocean.inputs.KubernetesClusterState; +import com.pulumi.digitalocean.outputs.KubernetesClusterControlPlaneFirewall; import com.pulumi.digitalocean.outputs.KubernetesClusterKubeConfig; import com.pulumi.digitalocean.outputs.KubernetesClusterMaintenancePolicy; import com.pulumi.digitalocean.outputs.KubernetesClusterNodePool; import java.lang.Boolean; +import java.lang.Integer; import java.lang.String; import java.util.List; import java.util.Optional; @@ -91,6 +93,12 @@ public Output clusterSubnet() { public Output clusterUrn() { return this.clusterUrn; } + @Export(name="controlPlaneFirewall", refs={KubernetesClusterControlPlaneFirewall.class}, tree="[0]") + private Output controlPlaneFirewall; + + public Output controlPlaneFirewall() { + return this.controlPlaneFirewall; + } /** * The date and time when the node was created. * @@ -108,8 +116,6 @@ public Output createdAt() { /** * **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. * - * This resource supports customized create timeouts. The default timeout is 30 minutes. - * */ @Export(name="destroyAllAssociatedResources", refs={Boolean.class}, tree="[0]") private Output destroyAllAssociatedResources; @@ -117,8 +123,6 @@ public Output createdAt() { /** * @return **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. * - * This resource supports customized create timeouts. The default timeout is 30 minutes. - * */ public Output> destroyAllAssociatedResources() { return Codegen.optional(this.destroyAllAssociatedResources); @@ -179,6 +183,24 @@ public Output ipv4Address() { public Output> kubeConfigs() { return this.kubeConfigs; } + /** + * The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + * + */ + @Export(name="kubeconfigExpireSeconds", refs={Integer.class}, tree="[0]") + private Output kubeconfigExpireSeconds; + + /** + * @return The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + * + */ + public Output> kubeconfigExpireSeconds() { + return Codegen.optional(this.kubeconfigExpireSeconds); + } /** * A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/KubernetesClusterArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/KubernetesClusterArgs.java index 00d9f95e..de880832 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/KubernetesClusterArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/KubernetesClusterArgs.java @@ -7,10 +7,12 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import com.pulumi.digitalocean.enums.Region; +import com.pulumi.digitalocean.inputs.KubernetesClusterControlPlaneFirewallArgs; import com.pulumi.digitalocean.inputs.KubernetesClusterMaintenancePolicyArgs; import com.pulumi.digitalocean.inputs.KubernetesClusterNodePoolArgs; import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.Boolean; +import java.lang.Integer; import java.lang.String; import java.util.List; import java.util.Objects; @@ -52,11 +54,16 @@ public Optional> clusterSubnet() { return Optional.ofNullable(this.clusterSubnet); } + @Import(name="controlPlaneFirewall") + private @Nullable Output controlPlaneFirewall; + + public Optional> controlPlaneFirewall() { + return Optional.ofNullable(this.controlPlaneFirewall); + } + /** * **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. * - * This resource supports customized create timeouts. The default timeout is 30 minutes. - * */ @Import(name="destroyAllAssociatedResources") private @Nullable Output destroyAllAssociatedResources; @@ -64,8 +71,6 @@ public Optional> clusterSubnet() { /** * @return **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. * - * This resource supports customized create timeouts. The default timeout is 30 minutes. - * */ public Optional> destroyAllAssociatedResources() { return Optional.ofNullable(this.destroyAllAssociatedResources); @@ -86,6 +91,25 @@ public Optional> ha() { return Optional.ofNullable(this.ha); } + /** + * The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + * + */ + @Import(name="kubeconfigExpireSeconds") + private @Nullable Output kubeconfigExpireSeconds; + + /** + * @return The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + * + */ + public Optional> kubeconfigExpireSeconds() { + return Optional.ofNullable(this.kubeconfigExpireSeconds); + } + /** * A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. * @@ -241,8 +265,10 @@ private KubernetesClusterArgs() {} private KubernetesClusterArgs(KubernetesClusterArgs $) { this.autoUpgrade = $.autoUpgrade; this.clusterSubnet = $.clusterSubnet; + this.controlPlaneFirewall = $.controlPlaneFirewall; this.destroyAllAssociatedResources = $.destroyAllAssociatedResources; this.ha = $.ha; + this.kubeconfigExpireSeconds = $.kubeconfigExpireSeconds; this.maintenancePolicy = $.maintenancePolicy; this.name = $.name; this.nodePool = $.nodePool; @@ -315,11 +341,18 @@ public Builder clusterSubnet(String clusterSubnet) { return clusterSubnet(Output.of(clusterSubnet)); } + public Builder controlPlaneFirewall(@Nullable Output controlPlaneFirewall) { + $.controlPlaneFirewall = controlPlaneFirewall; + return this; + } + + public Builder controlPlaneFirewall(KubernetesClusterControlPlaneFirewallArgs controlPlaneFirewall) { + return controlPlaneFirewall(Output.of(controlPlaneFirewall)); + } + /** * @param destroyAllAssociatedResources **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. * - * This resource supports customized create timeouts. The default timeout is 30 minutes. - * * @return builder * */ @@ -331,8 +364,6 @@ public Builder destroyAllAssociatedResources(@Nullable Output destroyAl /** * @param destroyAllAssociatedResources **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. * - * This resource supports customized create timeouts. The default timeout is 30 minutes. - * * @return builder * */ @@ -361,6 +392,31 @@ public Builder ha(Boolean ha) { return ha(Output.of(ha)); } + /** + * @param kubeconfigExpireSeconds The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + * + * @return builder + * + */ + public Builder kubeconfigExpireSeconds(@Nullable Output kubeconfigExpireSeconds) { + $.kubeconfigExpireSeconds = kubeconfigExpireSeconds; + return this; + } + + /** + * @param kubeconfigExpireSeconds The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + * + * @return builder + * + */ + public Builder kubeconfigExpireSeconds(Integer kubeconfigExpireSeconds) { + return kubeconfigExpireSeconds(Output.of(kubeconfigExpireSeconds)); + } + /** * @param maintenancePolicy A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/LoadBalancer.java b/sdk/java/src/main/java/com/pulumi/digitalocean/LoadBalancer.java index 966976e7..6d5384cf 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/LoadBalancer.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/LoadBalancer.java @@ -346,6 +346,22 @@ public Output name() { public Output> network() { return Codegen.optional(this.network); } + /** + * The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + * + */ + @Export(name="networkStack", refs={String.class}, tree="[0]") + private Output networkStack; + + /** + * @return The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + * + */ + public Output> networkStack() { + return Codegen.optional(this.networkStack); + } /** * The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/LoadBalancerArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/LoadBalancerArgs.java index 36bae6cb..95594793 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/LoadBalancerArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/LoadBalancerArgs.java @@ -255,6 +255,23 @@ public Optional> network() { return Optional.ofNullable(this.network); } + /** + * The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + * + */ + @Import(name="networkStack") + private @Nullable Output networkStack; + + /** + * @return The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + * + */ + public Optional> networkStack() { + return Optional.ofNullable(this.networkStack); + } + /** * The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. * @@ -415,6 +432,7 @@ private LoadBalancerArgs(LoadBalancerArgs $) { this.httpIdleTimeoutSeconds = $.httpIdleTimeoutSeconds; this.name = $.name; this.network = $.network; + this.networkStack = $.networkStack; this.projectId = $.projectId; this.redirectHttpToHttps = $.redirectHttpToHttps; this.region = $.region; @@ -817,6 +835,29 @@ public Builder network(String network) { return network(Output.of(network)); } + /** + * @param networkStack The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + * + * @return builder + * + */ + public Builder networkStack(@Nullable Output networkStack) { + $.networkStack = networkStack; + return this; + } + + /** + * @param networkStack The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + * + * @return builder + * + */ + public Builder networkStack(String networkStack) { + return networkStack(Output.of(networkStack)); + } + /** * @param projectId The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. * 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 274fa4b1..d8cd378b 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 @@ -6,6 +6,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import com.pulumi.digitalocean.inputs.AppSpecFunctionAlertArgs; +import com.pulumi.digitalocean.inputs.AppSpecFunctionBitbucketArgs; import com.pulumi.digitalocean.inputs.AppSpecFunctionCorsArgs; import com.pulumi.digitalocean.inputs.AppSpecFunctionEnvArgs; import com.pulumi.digitalocean.inputs.AppSpecFunctionGitArgs; @@ -40,6 +41,21 @@ public Optional>> alerts() { return Optional.ofNullable(this.alerts); } + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + @Import(name="bitbucket") + private @Nullable Output bitbucket; + + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional> bitbucket() { + return Optional.ofNullable(this.bitbucket); + } + /** * The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. * @@ -195,6 +211,7 @@ private AppSpecFunctionArgs() {} private AppSpecFunctionArgs(AppSpecFunctionArgs $) { this.alerts = $.alerts; + this.bitbucket = $.bitbucket; this.cors = $.cors; this.envs = $.envs; this.git = $.git; @@ -255,6 +272,27 @@ public Builder alerts(AppSpecFunctionAlertArgs... alerts) { return alerts(List.of(alerts)); } + /** + * @param bitbucket A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + * @return builder + * + */ + public Builder bitbucket(@Nullable Output bitbucket) { + $.bitbucket = bitbucket; + return this; + } + + /** + * @param bitbucket A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + * @return builder + * + */ + public Builder bitbucket(AppSpecFunctionBitbucketArgs bitbucket) { + return bitbucket(Output.of(bitbucket)); + } + /** * @param cors The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionBitbucketArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionBitbucketArgs.java new file mode 100644 index 00000000..2bd4863b --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecFunctionBitbucketArgs.java @@ -0,0 +1,158 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecFunctionBitbucketArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecFunctionBitbucketArgs Empty = new AppSpecFunctionBitbucketArgs(); + + /** + * The name of the branch to use. + * + */ + @Import(name="branch") + private @Nullable Output branch; + + /** + * @return The name of the branch to use. + * + */ + public Optional> branch() { + return Optional.ofNullable(this.branch); + } + + /** + * Whether to automatically deploy new commits made to the repo. + * + */ + @Import(name="deployOnPush") + private @Nullable Output deployOnPush; + + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional> deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + + /** + * The name of the repo in the format `owner/repo`. + * + */ + @Import(name="repo") + private @Nullable Output repo; + + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional> repo() { + return Optional.ofNullable(this.repo); + } + + private AppSpecFunctionBitbucketArgs() {} + + private AppSpecFunctionBitbucketArgs(AppSpecFunctionBitbucketArgs $) { + this.branch = $.branch; + this.deployOnPush = $.deployOnPush; + this.repo = $.repo; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecFunctionBitbucketArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecFunctionBitbucketArgs $; + + public Builder() { + $ = new AppSpecFunctionBitbucketArgs(); + } + + public Builder(AppSpecFunctionBitbucketArgs defaults) { + $ = new AppSpecFunctionBitbucketArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param branch The name of the branch to use. + * + * @return builder + * + */ + public Builder branch(@Nullable Output branch) { + $.branch = branch; + return this; + } + + /** + * @param branch The name of the branch to use. + * + * @return builder + * + */ + public Builder branch(String branch) { + return branch(Output.of(branch)); + } + + /** + * @param deployOnPush Whether to automatically deploy new commits made to the repo. + * + * @return builder + * + */ + public Builder deployOnPush(@Nullable Output deployOnPush) { + $.deployOnPush = deployOnPush; + return this; + } + + /** + * @param deployOnPush Whether to automatically deploy new commits made to the repo. + * + * @return builder + * + */ + public Builder deployOnPush(Boolean deployOnPush) { + return deployOnPush(Output.of(deployOnPush)); + } + + /** + * @param repo The name of the repo in the format `owner/repo`. + * + * @return builder + * + */ + public Builder repo(@Nullable Output repo) { + $.repo = repo; + return this; + } + + /** + * @param repo The name of the repo in the format `owner/repo`. + * + * @return builder + * + */ + public Builder repo(String repo) { + return repo(Output.of(repo)); + } + + public AppSpecFunctionBitbucketArgs build() { + return $; + } + } + +} 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 785a0d4b..bc60f1e0 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 @@ -6,6 +6,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import com.pulumi.digitalocean.inputs.AppSpecJobAlertArgs; +import com.pulumi.digitalocean.inputs.AppSpecJobBitbucketArgs; import com.pulumi.digitalocean.inputs.AppSpecJobEnvArgs; import com.pulumi.digitalocean.inputs.AppSpecJobGitArgs; import com.pulumi.digitalocean.inputs.AppSpecJobGithubArgs; @@ -41,6 +42,21 @@ public Optional>> alerts() { return Optional.ofNullable(this.alerts); } + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + @Import(name="bitbucket") + private @Nullable Output bitbucket; + + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional> bitbucket() { + return Optional.ofNullable(this.bitbucket); + } + /** * An optional build command to run while building this component from source. * @@ -293,6 +309,7 @@ private AppSpecJobArgs() {} private AppSpecJobArgs(AppSpecJobArgs $) { this.alerts = $.alerts; + this.bitbucket = $.bitbucket; this.buildCommand = $.buildCommand; this.dockerfilePath = $.dockerfilePath; this.environmentSlug = $.environmentSlug; @@ -360,6 +377,27 @@ public Builder alerts(AppSpecJobAlertArgs... alerts) { return alerts(List.of(alerts)); } + /** + * @param bitbucket A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + * @return builder + * + */ + public Builder bitbucket(@Nullable Output bitbucket) { + $.bitbucket = bitbucket; + return this; + } + + /** + * @param bitbucket A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + * @return builder + * + */ + public Builder bitbucket(AppSpecJobBitbucketArgs bitbucket) { + return bitbucket(Output.of(bitbucket)); + } + /** * @param buildCommand An optional build command to run while building this component from source. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobBitbucketArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobBitbucketArgs.java new file mode 100644 index 00000000..29c2d1f2 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecJobBitbucketArgs.java @@ -0,0 +1,158 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecJobBitbucketArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecJobBitbucketArgs Empty = new AppSpecJobBitbucketArgs(); + + /** + * The name of the branch to use. + * + */ + @Import(name="branch") + private @Nullable Output branch; + + /** + * @return The name of the branch to use. + * + */ + public Optional> branch() { + return Optional.ofNullable(this.branch); + } + + /** + * Whether to automatically deploy new commits made to the repo. + * + */ + @Import(name="deployOnPush") + private @Nullable Output deployOnPush; + + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional> deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + + /** + * The name of the repo in the format `owner/repo`. + * + */ + @Import(name="repo") + private @Nullable Output repo; + + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional> repo() { + return Optional.ofNullable(this.repo); + } + + private AppSpecJobBitbucketArgs() {} + + private AppSpecJobBitbucketArgs(AppSpecJobBitbucketArgs $) { + this.branch = $.branch; + this.deployOnPush = $.deployOnPush; + this.repo = $.repo; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecJobBitbucketArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecJobBitbucketArgs $; + + public Builder() { + $ = new AppSpecJobBitbucketArgs(); + } + + public Builder(AppSpecJobBitbucketArgs defaults) { + $ = new AppSpecJobBitbucketArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param branch The name of the branch to use. + * + * @return builder + * + */ + public Builder branch(@Nullable Output branch) { + $.branch = branch; + return this; + } + + /** + * @param branch The name of the branch to use. + * + * @return builder + * + */ + public Builder branch(String branch) { + return branch(Output.of(branch)); + } + + /** + * @param deployOnPush Whether to automatically deploy new commits made to the repo. + * + * @return builder + * + */ + public Builder deployOnPush(@Nullable Output deployOnPush) { + $.deployOnPush = deployOnPush; + return this; + } + + /** + * @param deployOnPush Whether to automatically deploy new commits made to the repo. + * + * @return builder + * + */ + public Builder deployOnPush(Boolean deployOnPush) { + return deployOnPush(Output.of(deployOnPush)); + } + + /** + * @param repo The name of the repo in the format `owner/repo`. + * + * @return builder + * + */ + public Builder repo(@Nullable Output repo) { + $.repo = repo; + return this; + } + + /** + * @param repo The name of the repo in the format `owner/repo`. + * + * @return builder + * + */ + public Builder repo(String repo) { + return repo(Output.of(repo)); + } + + public AppSpecJobBitbucketArgs 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 9a362a2b..be4bb016 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 @@ -7,6 +7,7 @@ import com.pulumi.core.annotations.Import; import com.pulumi.digitalocean.inputs.AppSpecServiceAlertArgs; import com.pulumi.digitalocean.inputs.AppSpecServiceAutoscalingArgs; +import com.pulumi.digitalocean.inputs.AppSpecServiceBitbucketArgs; import com.pulumi.digitalocean.inputs.AppSpecServiceCorsArgs; import com.pulumi.digitalocean.inputs.AppSpecServiceEnvArgs; import com.pulumi.digitalocean.inputs.AppSpecServiceGitArgs; @@ -60,6 +61,21 @@ public Optional> autoscaling() { return Optional.ofNullable(this.autoscaling); } + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + @Import(name="bitbucket") + private @Nullable Output bitbucket; + + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional> bitbucket() { + return Optional.ofNullable(this.bitbucket); + } + /** * An optional build command to run while building this component from source. * @@ -381,6 +397,7 @@ private AppSpecServiceArgs() {} private AppSpecServiceArgs(AppSpecServiceArgs $) { this.alerts = $.alerts; this.autoscaling = $.autoscaling; + this.bitbucket = $.bitbucket; this.buildCommand = $.buildCommand; this.cors = $.cors; this.dockerfilePath = $.dockerfilePath; @@ -473,6 +490,27 @@ public Builder autoscaling(AppSpecServiceAutoscalingArgs autoscaling) { return autoscaling(Output.of(autoscaling)); } + /** + * @param bitbucket A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + * @return builder + * + */ + public Builder bitbucket(@Nullable Output bitbucket) { + $.bitbucket = bitbucket; + return this; + } + + /** + * @param bitbucket A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + * @return builder + * + */ + public Builder bitbucket(AppSpecServiceBitbucketArgs bitbucket) { + return bitbucket(Output.of(bitbucket)); + } + /** * @param buildCommand An optional build command to run while building this component from source. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceBitbucketArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceBitbucketArgs.java new file mode 100644 index 00000000..3e584304 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecServiceBitbucketArgs.java @@ -0,0 +1,158 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecServiceBitbucketArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecServiceBitbucketArgs Empty = new AppSpecServiceBitbucketArgs(); + + /** + * The name of the branch to use. + * + */ + @Import(name="branch") + private @Nullable Output branch; + + /** + * @return The name of the branch to use. + * + */ + public Optional> branch() { + return Optional.ofNullable(this.branch); + } + + /** + * Whether to automatically deploy new commits made to the repo. + * + */ + @Import(name="deployOnPush") + private @Nullable Output deployOnPush; + + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional> deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + + /** + * The name of the repo in the format `owner/repo`. + * + */ + @Import(name="repo") + private @Nullable Output repo; + + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional> repo() { + return Optional.ofNullable(this.repo); + } + + private AppSpecServiceBitbucketArgs() {} + + private AppSpecServiceBitbucketArgs(AppSpecServiceBitbucketArgs $) { + this.branch = $.branch; + this.deployOnPush = $.deployOnPush; + this.repo = $.repo; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecServiceBitbucketArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecServiceBitbucketArgs $; + + public Builder() { + $ = new AppSpecServiceBitbucketArgs(); + } + + public Builder(AppSpecServiceBitbucketArgs defaults) { + $ = new AppSpecServiceBitbucketArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param branch The name of the branch to use. + * + * @return builder + * + */ + public Builder branch(@Nullable Output branch) { + $.branch = branch; + return this; + } + + /** + * @param branch The name of the branch to use. + * + * @return builder + * + */ + public Builder branch(String branch) { + return branch(Output.of(branch)); + } + + /** + * @param deployOnPush Whether to automatically deploy new commits made to the repo. + * + * @return builder + * + */ + public Builder deployOnPush(@Nullable Output deployOnPush) { + $.deployOnPush = deployOnPush; + return this; + } + + /** + * @param deployOnPush Whether to automatically deploy new commits made to the repo. + * + * @return builder + * + */ + public Builder deployOnPush(Boolean deployOnPush) { + return deployOnPush(Output.of(deployOnPush)); + } + + /** + * @param repo The name of the repo in the format `owner/repo`. + * + * @return builder + * + */ + public Builder repo(@Nullable Output repo) { + $.repo = repo; + return this; + } + + /** + * @param repo The name of the repo in the format `owner/repo`. + * + * @return builder + * + */ + public Builder repo(String repo) { + return repo(Output.of(repo)); + } + + public AppSpecServiceBitbucketArgs 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 679f235a..eb6e0f36 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 @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.digitalocean.inputs.AppSpecStaticSiteBitbucketArgs; import com.pulumi.digitalocean.inputs.AppSpecStaticSiteCorsArgs; import com.pulumi.digitalocean.inputs.AppSpecStaticSiteEnvArgs; import com.pulumi.digitalocean.inputs.AppSpecStaticSiteGitArgs; @@ -23,6 +24,21 @@ public final class AppSpecStaticSiteArgs extends com.pulumi.resources.ResourceAr public static final AppSpecStaticSiteArgs Empty = new AppSpecStaticSiteArgs(); + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + @Import(name="bitbucket") + private @Nullable Output bitbucket; + + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional> bitbucket() { + return Optional.ofNullable(this.bitbucket); + } + /** * An optional build command to run while building this component from source. * @@ -267,6 +283,7 @@ public Optional> sourceDir() { private AppSpecStaticSiteArgs() {} private AppSpecStaticSiteArgs(AppSpecStaticSiteArgs $) { + this.bitbucket = $.bitbucket; this.buildCommand = $.buildCommand; this.catchallDocument = $.catchallDocument; this.cors = $.cors; @@ -302,6 +319,27 @@ public Builder(AppSpecStaticSiteArgs defaults) { $ = new AppSpecStaticSiteArgs(Objects.requireNonNull(defaults)); } + /** + * @param bitbucket A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + * @return builder + * + */ + public Builder bitbucket(@Nullable Output bitbucket) { + $.bitbucket = bitbucket; + return this; + } + + /** + * @param bitbucket A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + * @return builder + * + */ + public Builder bitbucket(AppSpecStaticSiteBitbucketArgs bitbucket) { + return bitbucket(Output.of(bitbucket)); + } + /** * @param buildCommand An optional build command to run while building this component from source. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecStaticSiteBitbucketArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecStaticSiteBitbucketArgs.java new file mode 100644 index 00000000..344ab170 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecStaticSiteBitbucketArgs.java @@ -0,0 +1,158 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecStaticSiteBitbucketArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecStaticSiteBitbucketArgs Empty = new AppSpecStaticSiteBitbucketArgs(); + + /** + * The name of the branch to use. + * + */ + @Import(name="branch") + private @Nullable Output branch; + + /** + * @return The name of the branch to use. + * + */ + public Optional> branch() { + return Optional.ofNullable(this.branch); + } + + /** + * Whether to automatically deploy new commits made to the repo. + * + */ + @Import(name="deployOnPush") + private @Nullable Output deployOnPush; + + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional> deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + + /** + * The name of the repo in the format `owner/repo`. + * + */ + @Import(name="repo") + private @Nullable Output repo; + + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional> repo() { + return Optional.ofNullable(this.repo); + } + + private AppSpecStaticSiteBitbucketArgs() {} + + private AppSpecStaticSiteBitbucketArgs(AppSpecStaticSiteBitbucketArgs $) { + this.branch = $.branch; + this.deployOnPush = $.deployOnPush; + this.repo = $.repo; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecStaticSiteBitbucketArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecStaticSiteBitbucketArgs $; + + public Builder() { + $ = new AppSpecStaticSiteBitbucketArgs(); + } + + public Builder(AppSpecStaticSiteBitbucketArgs defaults) { + $ = new AppSpecStaticSiteBitbucketArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param branch The name of the branch to use. + * + * @return builder + * + */ + public Builder branch(@Nullable Output branch) { + $.branch = branch; + return this; + } + + /** + * @param branch The name of the branch to use. + * + * @return builder + * + */ + public Builder branch(String branch) { + return branch(Output.of(branch)); + } + + /** + * @param deployOnPush Whether to automatically deploy new commits made to the repo. + * + * @return builder + * + */ + public Builder deployOnPush(@Nullable Output deployOnPush) { + $.deployOnPush = deployOnPush; + return this; + } + + /** + * @param deployOnPush Whether to automatically deploy new commits made to the repo. + * + * @return builder + * + */ + public Builder deployOnPush(Boolean deployOnPush) { + return deployOnPush(Output.of(deployOnPush)); + } + + /** + * @param repo The name of the repo in the format `owner/repo`. + * + * @return builder + * + */ + public Builder repo(@Nullable Output repo) { + $.repo = repo; + return this; + } + + /** + * @param repo The name of the repo in the format `owner/repo`. + * + * @return builder + * + */ + public Builder repo(String repo) { + return repo(Output.of(repo)); + } + + public AppSpecStaticSiteBitbucketArgs build() { + return $; + } + } + +} 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 a9bcd5a7..5fd34901 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 @@ -7,6 +7,7 @@ import com.pulumi.core.annotations.Import; import com.pulumi.digitalocean.inputs.AppSpecWorkerAlertArgs; import com.pulumi.digitalocean.inputs.AppSpecWorkerAutoscalingArgs; +import com.pulumi.digitalocean.inputs.AppSpecWorkerBitbucketArgs; import com.pulumi.digitalocean.inputs.AppSpecWorkerEnvArgs; import com.pulumi.digitalocean.inputs.AppSpecWorkerGitArgs; import com.pulumi.digitalocean.inputs.AppSpecWorkerGithubArgs; @@ -57,6 +58,21 @@ public Optional> autoscaling() { return Optional.ofNullable(this.autoscaling); } + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + @Import(name="bitbucket") + private @Nullable Output bitbucket; + + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional> bitbucket() { + return Optional.ofNullable(this.bitbucket); + } + /** * An optional build command to run while building this component from source. * @@ -287,6 +303,7 @@ private AppSpecWorkerArgs() {} private AppSpecWorkerArgs(AppSpecWorkerArgs $) { this.alerts = $.alerts; this.autoscaling = $.autoscaling; + this.bitbucket = $.bitbucket; this.buildCommand = $.buildCommand; this.dockerfilePath = $.dockerfilePath; this.environmentSlug = $.environmentSlug; @@ -374,6 +391,27 @@ public Builder autoscaling(AppSpecWorkerAutoscalingArgs autoscaling) { return autoscaling(Output.of(autoscaling)); } + /** + * @param bitbucket A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + * @return builder + * + */ + public Builder bitbucket(@Nullable Output bitbucket) { + $.bitbucket = bitbucket; + return this; + } + + /** + * @param bitbucket A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + * @return builder + * + */ + public Builder bitbucket(AppSpecWorkerBitbucketArgs bitbucket) { + return bitbucket(Output.of(bitbucket)); + } + /** * @param buildCommand An optional build command to run while building this component from source. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerBitbucketArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerBitbucketArgs.java new file mode 100644 index 00000000..7135a962 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/AppSpecWorkerBitbucketArgs.java @@ -0,0 +1,158 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AppSpecWorkerBitbucketArgs extends com.pulumi.resources.ResourceArgs { + + public static final AppSpecWorkerBitbucketArgs Empty = new AppSpecWorkerBitbucketArgs(); + + /** + * The name of the branch to use. + * + */ + @Import(name="branch") + private @Nullable Output branch; + + /** + * @return The name of the branch to use. + * + */ + public Optional> branch() { + return Optional.ofNullable(this.branch); + } + + /** + * Whether to automatically deploy new commits made to the repo. + * + */ + @Import(name="deployOnPush") + private @Nullable Output deployOnPush; + + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional> deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + + /** + * The name of the repo in the format `owner/repo`. + * + */ + @Import(name="repo") + private @Nullable Output repo; + + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional> repo() { + return Optional.ofNullable(this.repo); + } + + private AppSpecWorkerBitbucketArgs() {} + + private AppSpecWorkerBitbucketArgs(AppSpecWorkerBitbucketArgs $) { + this.branch = $.branch; + this.deployOnPush = $.deployOnPush; + this.repo = $.repo; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AppSpecWorkerBitbucketArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AppSpecWorkerBitbucketArgs $; + + public Builder() { + $ = new AppSpecWorkerBitbucketArgs(); + } + + public Builder(AppSpecWorkerBitbucketArgs defaults) { + $ = new AppSpecWorkerBitbucketArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param branch The name of the branch to use. + * + * @return builder + * + */ + public Builder branch(@Nullable Output branch) { + $.branch = branch; + return this; + } + + /** + * @param branch The name of the branch to use. + * + * @return builder + * + */ + public Builder branch(String branch) { + return branch(Output.of(branch)); + } + + /** + * @param deployOnPush Whether to automatically deploy new commits made to the repo. + * + * @return builder + * + */ + public Builder deployOnPush(@Nullable Output deployOnPush) { + $.deployOnPush = deployOnPush; + return this; + } + + /** + * @param deployOnPush Whether to automatically deploy new commits made to the repo. + * + * @return builder + * + */ + public Builder deployOnPush(Boolean deployOnPush) { + return deployOnPush(Output.of(deployOnPush)); + } + + /** + * @param repo The name of the repo in the format `owner/repo`. + * + * @return builder + * + */ + public Builder repo(@Nullable Output repo) { + $.repo = repo; + return this; + } + + /** + * @param repo The name of the repo in the format `owner/repo`. + * + * @return builder + * + */ + public Builder repo(String repo) { + return repo(Output.of(repo)); + } + + public AppSpecWorkerBitbucketArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/DatabaseClusterMaintenanceWindowArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/DatabaseClusterMaintenanceWindowArgs.java index e3b969f4..558df7e6 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/DatabaseClusterMaintenanceWindowArgs.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/DatabaseClusterMaintenanceWindowArgs.java @@ -15,14 +15,14 @@ public final class DatabaseClusterMaintenanceWindowArgs extends com.pulumi.resou public static final DatabaseClusterMaintenanceWindowArgs Empty = new DatabaseClusterMaintenanceWindowArgs(); /** - * The day of the week on which to apply maintenance updates. + * The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. * */ @Import(name="day", required=true) private Output day; /** - * @return The day of the week on which to apply maintenance updates. + * @return The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. * */ public Output day() { @@ -30,14 +30,14 @@ public Output day() { } /** - * The hour in UTC at which maintenance updates will be applied in 24 hour format. + * The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. * */ @Import(name="hour", required=true) private Output hour; /** - * @return The hour in UTC at which maintenance updates will be applied in 24 hour format. + * @return The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. * */ public Output hour() { @@ -70,7 +70,7 @@ public Builder(DatabaseClusterMaintenanceWindowArgs defaults) { } /** - * @param day The day of the week on which to apply maintenance updates. + * @param day The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. * * @return builder * @@ -81,7 +81,7 @@ public Builder day(Output day) { } /** - * @param day The day of the week on which to apply maintenance updates. + * @param day The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. * * @return builder * @@ -91,7 +91,7 @@ public Builder day(String day) { } /** - * @param hour The hour in UTC at which maintenance updates will be applied in 24 hour format. + * @param hour The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. * * @return builder * @@ -102,7 +102,7 @@ public Builder hour(Output hour) { } /** - * @param hour The hour in UTC at which maintenance updates will be applied in 24 hour format. + * @param hour The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/KubernetesClusterControlPlaneFirewallArgs.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/KubernetesClusterControlPlaneFirewallArgs.java new file mode 100644 index 00000000..509299d5 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/KubernetesClusterControlPlaneFirewallArgs.java @@ -0,0 +1,91 @@ +// *** 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.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; + + +public final class KubernetesClusterControlPlaneFirewallArgs extends com.pulumi.resources.ResourceArgs { + + public static final KubernetesClusterControlPlaneFirewallArgs Empty = new KubernetesClusterControlPlaneFirewallArgs(); + + @Import(name="allowedAddresses", required=true) + private Output> allowedAddresses; + + public Output> allowedAddresses() { + return this.allowedAddresses; + } + + @Import(name="enabled", required=true) + private Output enabled; + + public Output enabled() { + return this.enabled; + } + + private KubernetesClusterControlPlaneFirewallArgs() {} + + private KubernetesClusterControlPlaneFirewallArgs(KubernetesClusterControlPlaneFirewallArgs $) { + this.allowedAddresses = $.allowedAddresses; + this.enabled = $.enabled; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(KubernetesClusterControlPlaneFirewallArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private KubernetesClusterControlPlaneFirewallArgs $; + + public Builder() { + $ = new KubernetesClusterControlPlaneFirewallArgs(); + } + + public Builder(KubernetesClusterControlPlaneFirewallArgs defaults) { + $ = new KubernetesClusterControlPlaneFirewallArgs(Objects.requireNonNull(defaults)); + } + + public Builder allowedAddresses(Output> allowedAddresses) { + $.allowedAddresses = allowedAddresses; + return this; + } + + public Builder allowedAddresses(List allowedAddresses) { + return allowedAddresses(Output.of(allowedAddresses)); + } + + public Builder allowedAddresses(String... allowedAddresses) { + return allowedAddresses(List.of(allowedAddresses)); + } + + public Builder enabled(Output enabled) { + $.enabled = enabled; + return this; + } + + public Builder enabled(Boolean enabled) { + return enabled(Output.of(enabled)); + } + + public KubernetesClusterControlPlaneFirewallArgs build() { + if ($.allowedAddresses == null) { + throw new MissingRequiredPropertyException("KubernetesClusterControlPlaneFirewallArgs", "allowedAddresses"); + } + if ($.enabled == null) { + throw new MissingRequiredPropertyException("KubernetesClusterControlPlaneFirewallArgs", "enabled"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/KubernetesClusterState.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/KubernetesClusterState.java index 3f089d5f..a343a2b5 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/KubernetesClusterState.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/KubernetesClusterState.java @@ -7,10 +7,12 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import com.pulumi.digitalocean.enums.Region; +import com.pulumi.digitalocean.inputs.KubernetesClusterControlPlaneFirewallArgs; import com.pulumi.digitalocean.inputs.KubernetesClusterKubeConfigArgs; import com.pulumi.digitalocean.inputs.KubernetesClusterMaintenancePolicyArgs; import com.pulumi.digitalocean.inputs.KubernetesClusterNodePoolArgs; import java.lang.Boolean; +import java.lang.Integer; import java.lang.String; import java.util.List; import java.util.Objects; @@ -67,6 +69,13 @@ public Optional> clusterUrn() { return Optional.ofNullable(this.clusterUrn); } + @Import(name="controlPlaneFirewall") + private @Nullable Output controlPlaneFirewall; + + public Optional> controlPlaneFirewall() { + return Optional.ofNullable(this.controlPlaneFirewall); + } + /** * The date and time when the node was created. * @@ -85,8 +94,6 @@ public Optional> createdAt() { /** * **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. * - * This resource supports customized create timeouts. The default timeout is 30 minutes. - * */ @Import(name="destroyAllAssociatedResources") private @Nullable Output destroyAllAssociatedResources; @@ -94,8 +101,6 @@ public Optional> createdAt() { /** * @return **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. * - * This resource supports customized create timeouts. The default timeout is 30 minutes. - * */ public Optional> destroyAllAssociatedResources() { return Optional.ofNullable(this.destroyAllAssociatedResources); @@ -161,6 +166,25 @@ public Optional>> kubeConfigs() { return Optional.ofNullable(this.kubeConfigs); } + /** + * The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + * + */ + @Import(name="kubeconfigExpireSeconds") + private @Nullable Output kubeconfigExpireSeconds; + + /** + * @return The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + * + */ + public Optional> kubeconfigExpireSeconds() { + return Optional.ofNullable(this.kubeconfigExpireSeconds); + } + /** * A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. * @@ -347,12 +371,14 @@ private KubernetesClusterState(KubernetesClusterState $) { this.autoUpgrade = $.autoUpgrade; this.clusterSubnet = $.clusterSubnet; this.clusterUrn = $.clusterUrn; + this.controlPlaneFirewall = $.controlPlaneFirewall; this.createdAt = $.createdAt; this.destroyAllAssociatedResources = $.destroyAllAssociatedResources; this.endpoint = $.endpoint; this.ha = $.ha; this.ipv4Address = $.ipv4Address; this.kubeConfigs = $.kubeConfigs; + this.kubeconfigExpireSeconds = $.kubeconfigExpireSeconds; this.maintenancePolicy = $.maintenancePolicy; this.name = $.name; this.nodePool = $.nodePool; @@ -448,6 +474,15 @@ public Builder clusterUrn(String clusterUrn) { return clusterUrn(Output.of(clusterUrn)); } + public Builder controlPlaneFirewall(@Nullable Output controlPlaneFirewall) { + $.controlPlaneFirewall = controlPlaneFirewall; + return this; + } + + public Builder controlPlaneFirewall(KubernetesClusterControlPlaneFirewallArgs controlPlaneFirewall) { + return controlPlaneFirewall(Output.of(controlPlaneFirewall)); + } + /** * @param createdAt The date and time when the node was created. * @@ -472,8 +507,6 @@ public Builder createdAt(String createdAt) { /** * @param destroyAllAssociatedResources **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. * - * This resource supports customized create timeouts. The default timeout is 30 minutes. - * * @return builder * */ @@ -485,8 +518,6 @@ public Builder destroyAllAssociatedResources(@Nullable Output destroyAl /** * @param destroyAllAssociatedResources **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. * - * This resource supports customized create timeouts. The default timeout is 30 minutes. - * * @return builder * */ @@ -588,6 +619,31 @@ public Builder kubeConfigs(KubernetesClusterKubeConfigArgs... kubeConfigs) { return kubeConfigs(List.of(kubeConfigs)); } + /** + * @param kubeconfigExpireSeconds The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + * + * @return builder + * + */ + public Builder kubeconfigExpireSeconds(@Nullable Output kubeconfigExpireSeconds) { + $.kubeconfigExpireSeconds = kubeconfigExpireSeconds; + return this; + } + + /** + * @param kubeconfigExpireSeconds The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + * + * @return builder + * + */ + public Builder kubeconfigExpireSeconds(Integer kubeconfigExpireSeconds) { + return kubeconfigExpireSeconds(Output.of(kubeconfigExpireSeconds)); + } + /** * @param maintenancePolicy A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. * diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/LoadBalancerState.java b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/LoadBalancerState.java index b4d2fa18..82ef7f09 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/LoadBalancerState.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/inputs/LoadBalancerState.java @@ -292,6 +292,23 @@ public Optional> network() { return Optional.ofNullable(this.network); } + /** + * The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + * + */ + @Import(name="networkStack") + private @Nullable Output networkStack; + + /** + * @return The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + * + */ + public Optional> networkStack() { + return Optional.ofNullable(this.networkStack); + } + /** * The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. * @@ -462,6 +479,7 @@ private LoadBalancerState(LoadBalancerState $) { this.loadBalancerUrn = $.loadBalancerUrn; this.name = $.name; this.network = $.network; + this.networkStack = $.networkStack; this.projectId = $.projectId; this.redirectHttpToHttps = $.redirectHttpToHttps; this.region = $.region; @@ -916,6 +934,29 @@ public Builder network(String network) { return network(Output.of(network)); } + /** + * @param networkStack The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + * + * @return builder + * + */ + public Builder networkStack(@Nullable Output networkStack) { + $.networkStack = networkStack; + return this; + } + + /** + * @param networkStack The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + * + * @return builder + * + */ + public Builder networkStack(String networkStack) { + return networkStack(Output.of(networkStack)); + } + /** * @param projectId The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. * 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 f353d52b..2f14a3fc 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 @@ -5,6 +5,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.AppSpecFunctionAlert; +import com.pulumi.digitalocean.outputs.AppSpecFunctionBitbucket; import com.pulumi.digitalocean.outputs.AppSpecFunctionCors; import com.pulumi.digitalocean.outputs.AppSpecFunctionEnv; import com.pulumi.digitalocean.outputs.AppSpecFunctionGit; @@ -26,6 +27,11 @@ public final class AppSpecFunction { * */ private @Nullable List alerts; + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + private @Nullable AppSpecFunctionBitbucket bitbucket; /** * @return The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. * @@ -88,6 +94,13 @@ private AppSpecFunction() {} public List alerts() { return this.alerts == null ? List.of() : this.alerts; } + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional bitbucket() { + return Optional.ofNullable(this.bitbucket); + } /** * @return The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. * @@ -170,6 +183,7 @@ public static Builder builder(AppSpecFunction defaults) { @CustomType.Builder public static final class Builder { private @Nullable List alerts; + private @Nullable AppSpecFunctionBitbucket bitbucket; private @Nullable AppSpecFunctionCors cors; private @Nullable List envs; private @Nullable AppSpecFunctionGit git; @@ -183,6 +197,7 @@ public Builder() {} public Builder(AppSpecFunction defaults) { Objects.requireNonNull(defaults); this.alerts = defaults.alerts; + this.bitbucket = defaults.bitbucket; this.cors = defaults.cors; this.envs = defaults.envs; this.git = defaults.git; @@ -204,6 +219,12 @@ public Builder alerts(AppSpecFunctionAlert... alerts) { return alerts(List.of(alerts)); } @CustomType.Setter + public Builder bitbucket(@Nullable AppSpecFunctionBitbucket bitbucket) { + + this.bitbucket = bitbucket; + return this; + } + @CustomType.Setter public Builder cors(@Nullable AppSpecFunctionCors cors) { this.cors = cors; @@ -271,6 +292,7 @@ public Builder sourceDir(@Nullable String sourceDir) { public AppSpecFunction build() { final var _resultValue = new AppSpecFunction(); _resultValue.alerts = alerts; + _resultValue.bitbucket = bitbucket; _resultValue.cors = cors; _resultValue.envs = envs; _resultValue.git = git; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionBitbucket.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionBitbucket.java new file mode 100644 index 00000000..59a4eb14 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecFunctionBitbucket.java @@ -0,0 +1,100 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecFunctionBitbucket { + /** + * @return The name of the branch to use. + * + */ + private @Nullable String branch; + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + private @Nullable Boolean deployOnPush; + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + private @Nullable String repo; + + private AppSpecFunctionBitbucket() {} + /** + * @return The name of the branch to use. + * + */ + public Optional branch() { + return Optional.ofNullable(this.branch); + } + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional repo() { + return Optional.ofNullable(this.repo); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecFunctionBitbucket defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String branch; + private @Nullable Boolean deployOnPush; + private @Nullable String repo; + public Builder() {} + public Builder(AppSpecFunctionBitbucket defaults) { + Objects.requireNonNull(defaults); + this.branch = defaults.branch; + this.deployOnPush = defaults.deployOnPush; + this.repo = defaults.repo; + } + + @CustomType.Setter + public Builder branch(@Nullable String branch) { + + this.branch = branch; + return this; + } + @CustomType.Setter + public Builder deployOnPush(@Nullable Boolean deployOnPush) { + + this.deployOnPush = deployOnPush; + return this; + } + @CustomType.Setter + public Builder repo(@Nullable String repo) { + + this.repo = repo; + return this; + } + public AppSpecFunctionBitbucket build() { + final var _resultValue = new AppSpecFunctionBitbucket(); + _resultValue.branch = branch; + _resultValue.deployOnPush = deployOnPush; + _resultValue.repo = repo; + return _resultValue; + } + } +} 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 c318a086..d53ab261 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 @@ -5,6 +5,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.AppSpecJobAlert; +import com.pulumi.digitalocean.outputs.AppSpecJobBitbucket; import com.pulumi.digitalocean.outputs.AppSpecJobEnv; import com.pulumi.digitalocean.outputs.AppSpecJobGit; import com.pulumi.digitalocean.outputs.AppSpecJobGithub; @@ -27,6 +28,11 @@ public final class AppSpecJob { * */ private @Nullable List alerts; + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + private @Nullable AppSpecJobBitbucket bitbucket; /** * @return An optional build command to run while building this component from source. * @@ -120,6 +126,13 @@ private AppSpecJob() {} public List alerts() { return this.alerts == null ? List.of() : this.alerts; } + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional bitbucket() { + return Optional.ofNullable(this.bitbucket); + } /** * @return An optional build command to run while building this component from source. * @@ -247,6 +260,7 @@ public static Builder builder(AppSpecJob defaults) { @CustomType.Builder public static final class Builder { private @Nullable List alerts; + private @Nullable AppSpecJobBitbucket bitbucket; private @Nullable String buildCommand; private @Nullable String dockerfilePath; private @Nullable String environmentSlug; @@ -267,6 +281,7 @@ public Builder() {} public Builder(AppSpecJob defaults) { Objects.requireNonNull(defaults); this.alerts = defaults.alerts; + this.bitbucket = defaults.bitbucket; this.buildCommand = defaults.buildCommand; this.dockerfilePath = defaults.dockerfilePath; this.environmentSlug = defaults.environmentSlug; @@ -295,6 +310,12 @@ public Builder alerts(AppSpecJobAlert... alerts) { return alerts(List.of(alerts)); } @CustomType.Setter + public Builder bitbucket(@Nullable AppSpecJobBitbucket bitbucket) { + + this.bitbucket = bitbucket; + return this; + } + @CustomType.Setter public Builder buildCommand(@Nullable String buildCommand) { this.buildCommand = buildCommand; @@ -401,6 +422,7 @@ public Builder termination(@Nullable AppSpecJobTermination termination) { public AppSpecJob build() { final var _resultValue = new AppSpecJob(); _resultValue.alerts = alerts; + _resultValue.bitbucket = bitbucket; _resultValue.buildCommand = buildCommand; _resultValue.dockerfilePath = dockerfilePath; _resultValue.environmentSlug = environmentSlug; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobBitbucket.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobBitbucket.java new file mode 100644 index 00000000..bb4a55ce --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecJobBitbucket.java @@ -0,0 +1,100 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecJobBitbucket { + /** + * @return The name of the branch to use. + * + */ + private @Nullable String branch; + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + private @Nullable Boolean deployOnPush; + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + private @Nullable String repo; + + private AppSpecJobBitbucket() {} + /** + * @return The name of the branch to use. + * + */ + public Optional branch() { + return Optional.ofNullable(this.branch); + } + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional repo() { + return Optional.ofNullable(this.repo); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecJobBitbucket defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String branch; + private @Nullable Boolean deployOnPush; + private @Nullable String repo; + public Builder() {} + public Builder(AppSpecJobBitbucket defaults) { + Objects.requireNonNull(defaults); + this.branch = defaults.branch; + this.deployOnPush = defaults.deployOnPush; + this.repo = defaults.repo; + } + + @CustomType.Setter + public Builder branch(@Nullable String branch) { + + this.branch = branch; + return this; + } + @CustomType.Setter + public Builder deployOnPush(@Nullable Boolean deployOnPush) { + + this.deployOnPush = deployOnPush; + return this; + } + @CustomType.Setter + public Builder repo(@Nullable String repo) { + + this.repo = repo; + return this; + } + public AppSpecJobBitbucket build() { + final var _resultValue = new AppSpecJobBitbucket(); + _resultValue.branch = branch; + _resultValue.deployOnPush = deployOnPush; + _resultValue.repo = repo; + 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 cbbeb35b..17ba9a82 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 @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.AppSpecServiceAlert; import com.pulumi.digitalocean.outputs.AppSpecServiceAutoscaling; +import com.pulumi.digitalocean.outputs.AppSpecServiceBitbucket; import com.pulumi.digitalocean.outputs.AppSpecServiceCors; import com.pulumi.digitalocean.outputs.AppSpecServiceEnv; import com.pulumi.digitalocean.outputs.AppSpecServiceGit; @@ -36,6 +37,11 @@ public final class AppSpecService { * */ private @Nullable AppSpecServiceAutoscaling autoscaling; + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + private @Nullable AppSpecServiceBitbucket bitbucket; /** * @return An optional build command to run while building this component from source. * @@ -160,6 +166,13 @@ public List alerts() { public Optional autoscaling() { return Optional.ofNullable(this.autoscaling); } + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional bitbucket() { + return Optional.ofNullable(this.bitbucket); + } /** * @return An optional build command to run while building this component from source. * @@ -320,6 +333,7 @@ public static Builder builder(AppSpecService defaults) { public static final class Builder { private @Nullable List alerts; private @Nullable AppSpecServiceAutoscaling autoscaling; + private @Nullable AppSpecServiceBitbucket bitbucket; private @Nullable String buildCommand; private @Nullable AppSpecServiceCors cors; private @Nullable String dockerfilePath; @@ -345,6 +359,7 @@ public Builder(AppSpecService defaults) { Objects.requireNonNull(defaults); this.alerts = defaults.alerts; this.autoscaling = defaults.autoscaling; + this.bitbucket = defaults.bitbucket; this.buildCommand = defaults.buildCommand; this.cors = defaults.cors; this.dockerfilePath = defaults.dockerfilePath; @@ -383,6 +398,12 @@ public Builder autoscaling(@Nullable AppSpecServiceAutoscaling autoscaling) { return this; } @CustomType.Setter + public Builder bitbucket(@Nullable AppSpecServiceBitbucket bitbucket) { + + this.bitbucket = bitbucket; + return this; + } + @CustomType.Setter public Builder buildCommand(@Nullable String buildCommand) { this.buildCommand = buildCommand; @@ -520,6 +541,7 @@ public AppSpecService build() { final var _resultValue = new AppSpecService(); _resultValue.alerts = alerts; _resultValue.autoscaling = autoscaling; + _resultValue.bitbucket = bitbucket; _resultValue.buildCommand = buildCommand; _resultValue.cors = cors; _resultValue.dockerfilePath = dockerfilePath; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceBitbucket.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceBitbucket.java new file mode 100644 index 00000000..febdd2da --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecServiceBitbucket.java @@ -0,0 +1,100 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecServiceBitbucket { + /** + * @return The name of the branch to use. + * + */ + private @Nullable String branch; + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + private @Nullable Boolean deployOnPush; + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + private @Nullable String repo; + + private AppSpecServiceBitbucket() {} + /** + * @return The name of the branch to use. + * + */ + public Optional branch() { + return Optional.ofNullable(this.branch); + } + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional repo() { + return Optional.ofNullable(this.repo); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecServiceBitbucket defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String branch; + private @Nullable Boolean deployOnPush; + private @Nullable String repo; + public Builder() {} + public Builder(AppSpecServiceBitbucket defaults) { + Objects.requireNonNull(defaults); + this.branch = defaults.branch; + this.deployOnPush = defaults.deployOnPush; + this.repo = defaults.repo; + } + + @CustomType.Setter + public Builder branch(@Nullable String branch) { + + this.branch = branch; + return this; + } + @CustomType.Setter + public Builder deployOnPush(@Nullable Boolean deployOnPush) { + + this.deployOnPush = deployOnPush; + return this; + } + @CustomType.Setter + public Builder repo(@Nullable String repo) { + + this.repo = repo; + return this; + } + public AppSpecServiceBitbucket build() { + final var _resultValue = new AppSpecServiceBitbucket(); + _resultValue.branch = branch; + _resultValue.deployOnPush = deployOnPush; + _resultValue.repo = repo; + 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 d382705e..ba629941 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 @@ -4,6 +4,7 @@ package com.pulumi.digitalocean.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.digitalocean.outputs.AppSpecStaticSiteBitbucket; import com.pulumi.digitalocean.outputs.AppSpecStaticSiteCors; import com.pulumi.digitalocean.outputs.AppSpecStaticSiteEnv; import com.pulumi.digitalocean.outputs.AppSpecStaticSiteGit; @@ -19,6 +20,11 @@ @CustomType public final class AppSpecStaticSite { + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + private @Nullable AppSpecStaticSiteBitbucket bitbucket; /** * @return An optional build command to run while building this component from source. * @@ -104,6 +110,13 @@ public final class AppSpecStaticSite { private @Nullable String sourceDir; private AppSpecStaticSite() {} + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional bitbucket() { + return Optional.ofNullable(this.bitbucket); + } /** * @return An optional build command to run while building this component from source. * @@ -227,6 +240,7 @@ public static Builder builder(AppSpecStaticSite defaults) { } @CustomType.Builder public static final class Builder { + private @Nullable AppSpecStaticSiteBitbucket bitbucket; private @Nullable String buildCommand; private @Nullable String catchallDocument; private @Nullable AppSpecStaticSiteCors cors; @@ -245,6 +259,7 @@ public static final class Builder { public Builder() {} public Builder(AppSpecStaticSite defaults) { Objects.requireNonNull(defaults); + this.bitbucket = defaults.bitbucket; this.buildCommand = defaults.buildCommand; this.catchallDocument = defaults.catchallDocument; this.cors = defaults.cors; @@ -262,6 +277,12 @@ public Builder(AppSpecStaticSite defaults) { this.sourceDir = defaults.sourceDir; } + @CustomType.Setter + public Builder bitbucket(@Nullable AppSpecStaticSiteBitbucket bitbucket) { + + this.bitbucket = bitbucket; + return this; + } @CustomType.Setter public Builder buildCommand(@Nullable String buildCommand) { @@ -362,6 +383,7 @@ public Builder sourceDir(@Nullable String sourceDir) { } public AppSpecStaticSite build() { final var _resultValue = new AppSpecStaticSite(); + _resultValue.bitbucket = bitbucket; _resultValue.buildCommand = buildCommand; _resultValue.catchallDocument = catchallDocument; _resultValue.cors = cors; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecStaticSiteBitbucket.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecStaticSiteBitbucket.java new file mode 100644 index 00000000..b3963639 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecStaticSiteBitbucket.java @@ -0,0 +1,100 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecStaticSiteBitbucket { + /** + * @return The name of the branch to use. + * + */ + private @Nullable String branch; + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + private @Nullable Boolean deployOnPush; + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + private @Nullable String repo; + + private AppSpecStaticSiteBitbucket() {} + /** + * @return The name of the branch to use. + * + */ + public Optional branch() { + return Optional.ofNullable(this.branch); + } + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional repo() { + return Optional.ofNullable(this.repo); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecStaticSiteBitbucket defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String branch; + private @Nullable Boolean deployOnPush; + private @Nullable String repo; + public Builder() {} + public Builder(AppSpecStaticSiteBitbucket defaults) { + Objects.requireNonNull(defaults); + this.branch = defaults.branch; + this.deployOnPush = defaults.deployOnPush; + this.repo = defaults.repo; + } + + @CustomType.Setter + public Builder branch(@Nullable String branch) { + + this.branch = branch; + return this; + } + @CustomType.Setter + public Builder deployOnPush(@Nullable Boolean deployOnPush) { + + this.deployOnPush = deployOnPush; + return this; + } + @CustomType.Setter + public Builder repo(@Nullable String repo) { + + this.repo = repo; + return this; + } + public AppSpecStaticSiteBitbucket build() { + final var _resultValue = new AppSpecStaticSiteBitbucket(); + _resultValue.branch = branch; + _resultValue.deployOnPush = deployOnPush; + _resultValue.repo = repo; + return _resultValue; + } + } +} 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 74936268..d85790f5 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 @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.AppSpecWorkerAlert; import com.pulumi.digitalocean.outputs.AppSpecWorkerAutoscaling; +import com.pulumi.digitalocean.outputs.AppSpecWorkerBitbucket; import com.pulumi.digitalocean.outputs.AppSpecWorkerEnv; import com.pulumi.digitalocean.outputs.AppSpecWorkerGit; import com.pulumi.digitalocean.outputs.AppSpecWorkerGithub; @@ -33,6 +34,11 @@ public final class AppSpecWorker { * */ private @Nullable AppSpecWorkerAutoscaling autoscaling; + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + private @Nullable AppSpecWorkerBitbucket bitbucket; /** * @return An optional build command to run while building this component from source. * @@ -124,6 +130,13 @@ public List alerts() { public Optional autoscaling() { return Optional.ofNullable(this.autoscaling); } + /** + * @return A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional bitbucket() { + return Optional.ofNullable(this.bitbucket); + } /** * @return An optional build command to run while building this component from source. * @@ -241,6 +254,7 @@ public static Builder builder(AppSpecWorker defaults) { public static final class Builder { private @Nullable List alerts; private @Nullable AppSpecWorkerAutoscaling autoscaling; + private @Nullable AppSpecWorkerBitbucket bitbucket; private @Nullable String buildCommand; private @Nullable String dockerfilePath; private @Nullable String environmentSlug; @@ -261,6 +275,7 @@ public Builder(AppSpecWorker defaults) { Objects.requireNonNull(defaults); this.alerts = defaults.alerts; this.autoscaling = defaults.autoscaling; + this.bitbucket = defaults.bitbucket; this.buildCommand = defaults.buildCommand; this.dockerfilePath = defaults.dockerfilePath; this.environmentSlug = defaults.environmentSlug; @@ -294,6 +309,12 @@ public Builder autoscaling(@Nullable AppSpecWorkerAutoscaling autoscaling) { return this; } @CustomType.Setter + public Builder bitbucket(@Nullable AppSpecWorkerBitbucket bitbucket) { + + this.bitbucket = bitbucket; + return this; + } + @CustomType.Setter public Builder buildCommand(@Nullable String buildCommand) { this.buildCommand = buildCommand; @@ -395,6 +416,7 @@ public AppSpecWorker build() { final var _resultValue = new AppSpecWorker(); _resultValue.alerts = alerts; _resultValue.autoscaling = autoscaling; + _resultValue.bitbucket = bitbucket; _resultValue.buildCommand = buildCommand; _resultValue.dockerfilePath = dockerfilePath; _resultValue.environmentSlug = environmentSlug; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerBitbucket.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerBitbucket.java new file mode 100644 index 00000000..499e2d3e --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/AppSpecWorkerBitbucket.java @@ -0,0 +1,100 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AppSpecWorkerBitbucket { + /** + * @return The name of the branch to use. + * + */ + private @Nullable String branch; + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + private @Nullable Boolean deployOnPush; + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + private @Nullable String repo; + + private AppSpecWorkerBitbucket() {} + /** + * @return The name of the branch to use. + * + */ + public Optional branch() { + return Optional.ofNullable(this.branch); + } + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional repo() { + return Optional.ofNullable(this.repo); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AppSpecWorkerBitbucket defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String branch; + private @Nullable Boolean deployOnPush; + private @Nullable String repo; + public Builder() {} + public Builder(AppSpecWorkerBitbucket defaults) { + Objects.requireNonNull(defaults); + this.branch = defaults.branch; + this.deployOnPush = defaults.deployOnPush; + this.repo = defaults.repo; + } + + @CustomType.Setter + public Builder branch(@Nullable String branch) { + + this.branch = branch; + return this; + } + @CustomType.Setter + public Builder deployOnPush(@Nullable Boolean deployOnPush) { + + this.deployOnPush = deployOnPush; + return this; + } + @CustomType.Setter + public Builder repo(@Nullable String repo) { + + this.repo = repo; + return this; + } + public AppSpecWorkerBitbucket build() { + final var _resultValue = new AppSpecWorkerBitbucket(); + _resultValue.branch = branch; + _resultValue.deployOnPush = deployOnPush; + _resultValue.repo = repo; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/DatabaseClusterMaintenanceWindow.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/DatabaseClusterMaintenanceWindow.java index c42b2877..8b741937 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/DatabaseClusterMaintenanceWindow.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/DatabaseClusterMaintenanceWindow.java @@ -11,26 +11,26 @@ @CustomType public final class DatabaseClusterMaintenanceWindow { /** - * @return The day of the week on which to apply maintenance updates. + * @return The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. * */ private String day; /** - * @return The hour in UTC at which maintenance updates will be applied in 24 hour format. + * @return The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. * */ private String hour; private DatabaseClusterMaintenanceWindow() {} /** - * @return The day of the week on which to apply maintenance updates. + * @return The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. * */ public String day() { return this.day; } /** - * @return The hour in UTC at which maintenance updates will be applied in 24 hour format. + * @return The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. * */ public String hour() { diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunction.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunction.java index f1350985..03c84440 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunction.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunction.java @@ -5,6 +5,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.GetAppSpecFunctionAlert; +import com.pulumi.digitalocean.outputs.GetAppSpecFunctionBitbucket; import com.pulumi.digitalocean.outputs.GetAppSpecFunctionCors; import com.pulumi.digitalocean.outputs.GetAppSpecFunctionEnv; import com.pulumi.digitalocean.outputs.GetAppSpecFunctionGit; @@ -26,6 +27,11 @@ public final class GetAppSpecFunction { * */ private @Nullable List alerts; + /** + * @return A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + private @Nullable GetAppSpecFunctionBitbucket bitbucket; /** * @return The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. * @@ -46,12 +52,12 @@ public final class GetAppSpecFunction { */ private @Nullable GetAppSpecFunctionGit git; /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecFunctionGithub github; /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecFunctionGitlab gitlab; @@ -86,6 +92,13 @@ private GetAppSpecFunction() {} public List alerts() { return this.alerts == null ? List.of() : this.alerts; } + /** + * @return A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional bitbucket() { + return Optional.ofNullable(this.bitbucket); + } /** * @return The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. * @@ -112,14 +125,14 @@ public Optional git() { return Optional.ofNullable(this.git); } /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional github() { return Optional.ofNullable(this.github); } /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional gitlab() { @@ -166,6 +179,7 @@ public static Builder builder(GetAppSpecFunction defaults) { @CustomType.Builder public static final class Builder { private @Nullable List alerts; + private @Nullable GetAppSpecFunctionBitbucket bitbucket; private @Nullable GetAppSpecFunctionCors cors; private @Nullable List envs; private @Nullable GetAppSpecFunctionGit git; @@ -179,6 +193,7 @@ public Builder() {} public Builder(GetAppSpecFunction defaults) { Objects.requireNonNull(defaults); this.alerts = defaults.alerts; + this.bitbucket = defaults.bitbucket; this.cors = defaults.cors; this.envs = defaults.envs; this.git = defaults.git; @@ -200,6 +215,12 @@ public Builder alerts(GetAppSpecFunctionAlert... alerts) { return alerts(List.of(alerts)); } @CustomType.Setter + public Builder bitbucket(@Nullable GetAppSpecFunctionBitbucket bitbucket) { + + this.bitbucket = bitbucket; + return this; + } + @CustomType.Setter public Builder cors(@Nullable GetAppSpecFunctionCors cors) { this.cors = cors; @@ -269,6 +290,7 @@ public Builder sourceDir(@Nullable String sourceDir) { public GetAppSpecFunction build() { final var _resultValue = new GetAppSpecFunction(); _resultValue.alerts = alerts; + _resultValue.bitbucket = bitbucket; _resultValue.cors = cors; _resultValue.envs = envs; _resultValue.git = git; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionBitbucket.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionBitbucket.java new file mode 100644 index 00000000..7b7dd246 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecFunctionBitbucket.java @@ -0,0 +1,100 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecFunctionBitbucket { + /** + * @return The name of the branch to use. + * + */ + private @Nullable String branch; + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + private @Nullable Boolean deployOnPush; + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + private @Nullable String repo; + + private GetAppSpecFunctionBitbucket() {} + /** + * @return The name of the branch to use. + * + */ + public Optional branch() { + return Optional.ofNullable(this.branch); + } + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional repo() { + return Optional.ofNullable(this.repo); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecFunctionBitbucket defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String branch; + private @Nullable Boolean deployOnPush; + private @Nullable String repo; + public Builder() {} + public Builder(GetAppSpecFunctionBitbucket defaults) { + Objects.requireNonNull(defaults); + this.branch = defaults.branch; + this.deployOnPush = defaults.deployOnPush; + this.repo = defaults.repo; + } + + @CustomType.Setter + public Builder branch(@Nullable String branch) { + + this.branch = branch; + return this; + } + @CustomType.Setter + public Builder deployOnPush(@Nullable Boolean deployOnPush) { + + this.deployOnPush = deployOnPush; + return this; + } + @CustomType.Setter + public Builder repo(@Nullable String repo) { + + this.repo = repo; + return this; + } + public GetAppSpecFunctionBitbucket build() { + final var _resultValue = new GetAppSpecFunctionBitbucket(); + _resultValue.branch = branch; + _resultValue.deployOnPush = deployOnPush; + _resultValue.repo = repo; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJob.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJob.java index 4b634eee..f7b97945 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJob.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJob.java @@ -5,6 +5,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.GetAppSpecJobAlert; +import com.pulumi.digitalocean.outputs.GetAppSpecJobBitbucket; import com.pulumi.digitalocean.outputs.GetAppSpecJobEnv; import com.pulumi.digitalocean.outputs.GetAppSpecJobGit; import com.pulumi.digitalocean.outputs.GetAppSpecJobGithub; @@ -27,6 +28,11 @@ public final class GetAppSpecJob { * */ private @Nullable List alerts; + /** + * @return A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + private @Nullable GetAppSpecJobBitbucket bitbucket; /** * @return An optional build command to run while building this component from source. * @@ -53,17 +59,17 @@ public final class GetAppSpecJob { */ private @Nullable GetAppSpecJobGit git; /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecJobGithub github; /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecJobGitlab gitlab; /** - * @return An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + * @return An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecJobImage image; @@ -120,6 +126,13 @@ private GetAppSpecJob() {} public List alerts() { return this.alerts == null ? List.of() : this.alerts; } + /** + * @return A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional bitbucket() { + return Optional.ofNullable(this.bitbucket); + } /** * @return An optional build command to run while building this component from source. * @@ -156,21 +169,21 @@ public Optional git() { return Optional.ofNullable(this.git); } /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional github() { return Optional.ofNullable(this.github); } /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional gitlab() { return Optional.ofNullable(this.gitlab); } /** - * @return An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + * @return An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional image() { @@ -247,6 +260,7 @@ public static Builder builder(GetAppSpecJob defaults) { @CustomType.Builder public static final class Builder { private @Nullable List alerts; + private @Nullable GetAppSpecJobBitbucket bitbucket; private @Nullable String buildCommand; private @Nullable String dockerfilePath; private @Nullable String environmentSlug; @@ -267,6 +281,7 @@ public Builder() {} public Builder(GetAppSpecJob defaults) { Objects.requireNonNull(defaults); this.alerts = defaults.alerts; + this.bitbucket = defaults.bitbucket; this.buildCommand = defaults.buildCommand; this.dockerfilePath = defaults.dockerfilePath; this.environmentSlug = defaults.environmentSlug; @@ -295,6 +310,12 @@ public Builder alerts(GetAppSpecJobAlert... alerts) { return alerts(List.of(alerts)); } @CustomType.Setter + public Builder bitbucket(@Nullable GetAppSpecJobBitbucket bitbucket) { + + this.bitbucket = bitbucket; + return this; + } + @CustomType.Setter public Builder buildCommand(@Nullable String buildCommand) { this.buildCommand = buildCommand; @@ -401,6 +422,7 @@ public Builder termination(@Nullable GetAppSpecJobTermination termination) { public GetAppSpecJob build() { final var _resultValue = new GetAppSpecJob(); _resultValue.alerts = alerts; + _resultValue.bitbucket = bitbucket; _resultValue.buildCommand = buildCommand; _resultValue.dockerfilePath = dockerfilePath; _resultValue.environmentSlug = environmentSlug; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobBitbucket.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobBitbucket.java new file mode 100644 index 00000000..35334ad9 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecJobBitbucket.java @@ -0,0 +1,100 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecJobBitbucket { + /** + * @return The name of the branch to use. + * + */ + private @Nullable String branch; + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + private @Nullable Boolean deployOnPush; + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + private @Nullable String repo; + + private GetAppSpecJobBitbucket() {} + /** + * @return The name of the branch to use. + * + */ + public Optional branch() { + return Optional.ofNullable(this.branch); + } + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional repo() { + return Optional.ofNullable(this.repo); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecJobBitbucket defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String branch; + private @Nullable Boolean deployOnPush; + private @Nullable String repo; + public Builder() {} + public Builder(GetAppSpecJobBitbucket defaults) { + Objects.requireNonNull(defaults); + this.branch = defaults.branch; + this.deployOnPush = defaults.deployOnPush; + this.repo = defaults.repo; + } + + @CustomType.Setter + public Builder branch(@Nullable String branch) { + + this.branch = branch; + return this; + } + @CustomType.Setter + public Builder deployOnPush(@Nullable Boolean deployOnPush) { + + this.deployOnPush = deployOnPush; + return this; + } + @CustomType.Setter + public Builder repo(@Nullable String repo) { + + this.repo = repo; + return this; + } + public GetAppSpecJobBitbucket build() { + final var _resultValue = new GetAppSpecJobBitbucket(); + _resultValue.branch = branch; + _resultValue.deployOnPush = deployOnPush; + _resultValue.repo = repo; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecService.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecService.java index 92e3025c..baccee3b 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecService.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecService.java @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.GetAppSpecServiceAlert; import com.pulumi.digitalocean.outputs.GetAppSpecServiceAutoscaling; +import com.pulumi.digitalocean.outputs.GetAppSpecServiceBitbucket; import com.pulumi.digitalocean.outputs.GetAppSpecServiceCors; import com.pulumi.digitalocean.outputs.GetAppSpecServiceEnv; import com.pulumi.digitalocean.outputs.GetAppSpecServiceGit; @@ -36,6 +37,11 @@ public final class GetAppSpecService { * */ private @Nullable GetAppSpecServiceAutoscaling autoscaling; + /** + * @return A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + private @Nullable GetAppSpecServiceBitbucket bitbucket; /** * @return An optional build command to run while building this component from source. * @@ -71,12 +77,12 @@ public final class GetAppSpecService { */ private @Nullable GetAppSpecServiceGit git; /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecServiceGithub github; /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecServiceGitlab gitlab; @@ -91,7 +97,7 @@ public final class GetAppSpecService { */ private Integer httpPort; /** - * @return An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + * @return An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecServiceImage image; @@ -158,6 +164,13 @@ public List alerts() { public Optional autoscaling() { return Optional.ofNullable(this.autoscaling); } + /** + * @return A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional bitbucket() { + return Optional.ofNullable(this.bitbucket); + } /** * @return An optional build command to run while building this component from source. * @@ -205,14 +218,14 @@ public Optional git() { return Optional.ofNullable(this.git); } /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional github() { return Optional.ofNullable(this.github); } /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional gitlab() { @@ -233,7 +246,7 @@ public Integer httpPort() { return this.httpPort; } /** - * @return An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + * @return An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional image() { @@ -316,6 +329,7 @@ public static Builder builder(GetAppSpecService defaults) { public static final class Builder { private @Nullable List alerts; private @Nullable GetAppSpecServiceAutoscaling autoscaling; + private @Nullable GetAppSpecServiceBitbucket bitbucket; private @Nullable String buildCommand; private @Nullable GetAppSpecServiceCors cors; private @Nullable String dockerfilePath; @@ -341,6 +355,7 @@ public Builder(GetAppSpecService defaults) { Objects.requireNonNull(defaults); this.alerts = defaults.alerts; this.autoscaling = defaults.autoscaling; + this.bitbucket = defaults.bitbucket; this.buildCommand = defaults.buildCommand; this.cors = defaults.cors; this.dockerfilePath = defaults.dockerfilePath; @@ -379,6 +394,12 @@ public Builder autoscaling(@Nullable GetAppSpecServiceAutoscaling autoscaling) { return this; } @CustomType.Setter + public Builder bitbucket(@Nullable GetAppSpecServiceBitbucket bitbucket) { + + this.bitbucket = bitbucket; + return this; + } + @CustomType.Setter public Builder buildCommand(@Nullable String buildCommand) { this.buildCommand = buildCommand; @@ -524,6 +545,7 @@ public GetAppSpecService build() { final var _resultValue = new GetAppSpecService(); _resultValue.alerts = alerts; _resultValue.autoscaling = autoscaling; + _resultValue.bitbucket = bitbucket; _resultValue.buildCommand = buildCommand; _resultValue.cors = cors; _resultValue.dockerfilePath = dockerfilePath; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceBitbucket.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceBitbucket.java new file mode 100644 index 00000000..476d2270 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecServiceBitbucket.java @@ -0,0 +1,100 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecServiceBitbucket { + /** + * @return The name of the branch to use. + * + */ + private @Nullable String branch; + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + private @Nullable Boolean deployOnPush; + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + private @Nullable String repo; + + private GetAppSpecServiceBitbucket() {} + /** + * @return The name of the branch to use. + * + */ + public Optional branch() { + return Optional.ofNullable(this.branch); + } + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional repo() { + return Optional.ofNullable(this.repo); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecServiceBitbucket defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String branch; + private @Nullable Boolean deployOnPush; + private @Nullable String repo; + public Builder() {} + public Builder(GetAppSpecServiceBitbucket defaults) { + Objects.requireNonNull(defaults); + this.branch = defaults.branch; + this.deployOnPush = defaults.deployOnPush; + this.repo = defaults.repo; + } + + @CustomType.Setter + public Builder branch(@Nullable String branch) { + + this.branch = branch; + return this; + } + @CustomType.Setter + public Builder deployOnPush(@Nullable Boolean deployOnPush) { + + this.deployOnPush = deployOnPush; + return this; + } + @CustomType.Setter + public Builder repo(@Nullable String repo) { + + this.repo = repo; + return this; + } + public GetAppSpecServiceBitbucket build() { + final var _resultValue = new GetAppSpecServiceBitbucket(); + _resultValue.branch = branch; + _resultValue.deployOnPush = deployOnPush; + _resultValue.repo = repo; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecStaticSite.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecStaticSite.java index 3e297054..4472d526 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecStaticSite.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecStaticSite.java @@ -4,6 +4,7 @@ package com.pulumi.digitalocean.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.digitalocean.outputs.GetAppSpecStaticSiteBitbucket; import com.pulumi.digitalocean.outputs.GetAppSpecStaticSiteCors; import com.pulumi.digitalocean.outputs.GetAppSpecStaticSiteEnv; import com.pulumi.digitalocean.outputs.GetAppSpecStaticSiteGit; @@ -19,6 +20,11 @@ @CustomType public final class GetAppSpecStaticSite { + /** + * @return A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + private @Nullable GetAppSpecStaticSiteBitbucket bitbucket; /** * @return An optional build command to run while building this component from source. * @@ -64,12 +70,12 @@ public final class GetAppSpecStaticSite { */ private @Nullable GetAppSpecStaticSiteGit git; /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecStaticSiteGithub github; /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecStaticSiteGitlab gitlab; @@ -102,6 +108,13 @@ public final class GetAppSpecStaticSite { private @Nullable String sourceDir; private GetAppSpecStaticSite() {} + /** + * @return A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional bitbucket() { + return Optional.ofNullable(this.bitbucket); + } /** * @return An optional build command to run while building this component from source. * @@ -163,14 +176,14 @@ public Optional git() { return Optional.ofNullable(this.git); } /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional github() { return Optional.ofNullable(this.github); } /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional gitlab() { @@ -223,6 +236,7 @@ public static Builder builder(GetAppSpecStaticSite defaults) { } @CustomType.Builder public static final class Builder { + private @Nullable GetAppSpecStaticSiteBitbucket bitbucket; private @Nullable String buildCommand; private @Nullable String catchallDocument; private @Nullable GetAppSpecStaticSiteCors cors; @@ -241,6 +255,7 @@ public static final class Builder { public Builder() {} public Builder(GetAppSpecStaticSite defaults) { Objects.requireNonNull(defaults); + this.bitbucket = defaults.bitbucket; this.buildCommand = defaults.buildCommand; this.catchallDocument = defaults.catchallDocument; this.cors = defaults.cors; @@ -258,6 +273,12 @@ public Builder(GetAppSpecStaticSite defaults) { this.sourceDir = defaults.sourceDir; } + @CustomType.Setter + public Builder bitbucket(@Nullable GetAppSpecStaticSiteBitbucket bitbucket) { + + this.bitbucket = bitbucket; + return this; + } @CustomType.Setter public Builder buildCommand(@Nullable String buildCommand) { @@ -360,6 +381,7 @@ public Builder sourceDir(@Nullable String sourceDir) { } public GetAppSpecStaticSite build() { final var _resultValue = new GetAppSpecStaticSite(); + _resultValue.bitbucket = bitbucket; _resultValue.buildCommand = buildCommand; _resultValue.catchallDocument = catchallDocument; _resultValue.cors = cors; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecStaticSiteBitbucket.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecStaticSiteBitbucket.java new file mode 100644 index 00000000..68dae5f2 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecStaticSiteBitbucket.java @@ -0,0 +1,100 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecStaticSiteBitbucket { + /** + * @return The name of the branch to use. + * + */ + private @Nullable String branch; + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + private @Nullable Boolean deployOnPush; + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + private @Nullable String repo; + + private GetAppSpecStaticSiteBitbucket() {} + /** + * @return The name of the branch to use. + * + */ + public Optional branch() { + return Optional.ofNullable(this.branch); + } + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional repo() { + return Optional.ofNullable(this.repo); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecStaticSiteBitbucket defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String branch; + private @Nullable Boolean deployOnPush; + private @Nullable String repo; + public Builder() {} + public Builder(GetAppSpecStaticSiteBitbucket defaults) { + Objects.requireNonNull(defaults); + this.branch = defaults.branch; + this.deployOnPush = defaults.deployOnPush; + this.repo = defaults.repo; + } + + @CustomType.Setter + public Builder branch(@Nullable String branch) { + + this.branch = branch; + return this; + } + @CustomType.Setter + public Builder deployOnPush(@Nullable Boolean deployOnPush) { + + this.deployOnPush = deployOnPush; + return this; + } + @CustomType.Setter + public Builder repo(@Nullable String repo) { + + this.repo = repo; + return this; + } + public GetAppSpecStaticSiteBitbucket build() { + final var _resultValue = new GetAppSpecStaticSiteBitbucket(); + _resultValue.branch = branch; + _resultValue.deployOnPush = deployOnPush; + _resultValue.repo = repo; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorker.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorker.java index 82d95326..e1a2dbe0 100644 --- a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorker.java +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorker.java @@ -6,6 +6,7 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.digitalocean.outputs.GetAppSpecWorkerAlert; import com.pulumi.digitalocean.outputs.GetAppSpecWorkerAutoscaling; +import com.pulumi.digitalocean.outputs.GetAppSpecWorkerBitbucket; import com.pulumi.digitalocean.outputs.GetAppSpecWorkerEnv; import com.pulumi.digitalocean.outputs.GetAppSpecWorkerGit; import com.pulumi.digitalocean.outputs.GetAppSpecWorkerGithub; @@ -33,6 +34,11 @@ public final class GetAppSpecWorker { * */ private @Nullable GetAppSpecWorkerAutoscaling autoscaling; + /** + * @return A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + private @Nullable GetAppSpecWorkerBitbucket bitbucket; /** * @return An optional build command to run while building this component from source. * @@ -59,17 +65,17 @@ public final class GetAppSpecWorker { */ private @Nullable GetAppSpecWorkerGit git; /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecWorkerGithub github; /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecWorkerGitlab gitlab; /** - * @return An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + * @return An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. * */ private @Nullable GetAppSpecWorkerImage image; @@ -124,6 +130,13 @@ public List alerts() { public Optional autoscaling() { return Optional.ofNullable(this.autoscaling); } + /** + * @return A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + * + */ + public Optional bitbucket() { + return Optional.ofNullable(this.bitbucket); + } /** * @return An optional build command to run while building this component from source. * @@ -160,21 +173,21 @@ public Optional git() { return Optional.ofNullable(this.git); } /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional github() { return Optional.ofNullable(this.github); } /** - * @return 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. + * @return 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`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional gitlab() { return Optional.ofNullable(this.gitlab); } /** - * @return An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + * @return An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. * */ public Optional image() { @@ -241,6 +254,7 @@ public static Builder builder(GetAppSpecWorker defaults) { public static final class Builder { private @Nullable List alerts; private @Nullable GetAppSpecWorkerAutoscaling autoscaling; + private @Nullable GetAppSpecWorkerBitbucket bitbucket; private @Nullable String buildCommand; private @Nullable String dockerfilePath; private @Nullable String environmentSlug; @@ -261,6 +275,7 @@ public Builder(GetAppSpecWorker defaults) { Objects.requireNonNull(defaults); this.alerts = defaults.alerts; this.autoscaling = defaults.autoscaling; + this.bitbucket = defaults.bitbucket; this.buildCommand = defaults.buildCommand; this.dockerfilePath = defaults.dockerfilePath; this.environmentSlug = defaults.environmentSlug; @@ -294,6 +309,12 @@ public Builder autoscaling(@Nullable GetAppSpecWorkerAutoscaling autoscaling) { return this; } @CustomType.Setter + public Builder bitbucket(@Nullable GetAppSpecWorkerBitbucket bitbucket) { + + this.bitbucket = bitbucket; + return this; + } + @CustomType.Setter public Builder buildCommand(@Nullable String buildCommand) { this.buildCommand = buildCommand; @@ -395,6 +416,7 @@ public GetAppSpecWorker build() { final var _resultValue = new GetAppSpecWorker(); _resultValue.alerts = alerts; _resultValue.autoscaling = autoscaling; + _resultValue.bitbucket = bitbucket; _resultValue.buildCommand = buildCommand; _resultValue.dockerfilePath = dockerfilePath; _resultValue.environmentSlug = environmentSlug; diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerBitbucket.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerBitbucket.java new file mode 100644 index 00000000..0728ed75 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/GetAppSpecWorkerBitbucket.java @@ -0,0 +1,100 @@ +// *** 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.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetAppSpecWorkerBitbucket { + /** + * @return The name of the branch to use. + * + */ + private @Nullable String branch; + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + private @Nullable Boolean deployOnPush; + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + private @Nullable String repo; + + private GetAppSpecWorkerBitbucket() {} + /** + * @return The name of the branch to use. + * + */ + public Optional branch() { + return Optional.ofNullable(this.branch); + } + /** + * @return Whether to automatically deploy new commits made to the repo. + * + */ + public Optional deployOnPush() { + return Optional.ofNullable(this.deployOnPush); + } + /** + * @return The name of the repo in the format `owner/repo`. + * + */ + public Optional repo() { + return Optional.ofNullable(this.repo); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetAppSpecWorkerBitbucket defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String branch; + private @Nullable Boolean deployOnPush; + private @Nullable String repo; + public Builder() {} + public Builder(GetAppSpecWorkerBitbucket defaults) { + Objects.requireNonNull(defaults); + this.branch = defaults.branch; + this.deployOnPush = defaults.deployOnPush; + this.repo = defaults.repo; + } + + @CustomType.Setter + public Builder branch(@Nullable String branch) { + + this.branch = branch; + return this; + } + @CustomType.Setter + public Builder deployOnPush(@Nullable Boolean deployOnPush) { + + this.deployOnPush = deployOnPush; + return this; + } + @CustomType.Setter + public Builder repo(@Nullable String repo) { + + this.repo = repo; + return this; + } + public GetAppSpecWorkerBitbucket build() { + final var _resultValue = new GetAppSpecWorkerBitbucket(); + _resultValue.branch = branch; + _resultValue.deployOnPush = deployOnPush; + _resultValue.repo = repo; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/KubernetesClusterControlPlaneFirewall.java b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/KubernetesClusterControlPlaneFirewall.java new file mode 100644 index 00000000..ddac2635 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/digitalocean/outputs/KubernetesClusterControlPlaneFirewall.java @@ -0,0 +1,70 @@ +// *** 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.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class KubernetesClusterControlPlaneFirewall { + private List allowedAddresses; + private Boolean enabled; + + private KubernetesClusterControlPlaneFirewall() {} + public List allowedAddresses() { + return this.allowedAddresses; + } + public Boolean enabled() { + return this.enabled; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(KubernetesClusterControlPlaneFirewall defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List allowedAddresses; + private Boolean enabled; + public Builder() {} + public Builder(KubernetesClusterControlPlaneFirewall defaults) { + Objects.requireNonNull(defaults); + this.allowedAddresses = defaults.allowedAddresses; + this.enabled = defaults.enabled; + } + + @CustomType.Setter + public Builder allowedAddresses(List allowedAddresses) { + if (allowedAddresses == null) { + throw new MissingRequiredPropertyException("KubernetesClusterControlPlaneFirewall", "allowedAddresses"); + } + this.allowedAddresses = allowedAddresses; + return this; + } + public Builder allowedAddresses(String... allowedAddresses) { + return allowedAddresses(List.of(allowedAddresses)); + } + @CustomType.Setter + public Builder enabled(Boolean enabled) { + if (enabled == null) { + throw new MissingRequiredPropertyException("KubernetesClusterControlPlaneFirewall", "enabled"); + } + this.enabled = enabled; + return this; + } + public KubernetesClusterControlPlaneFirewall build() { + final var _resultValue = new KubernetesClusterControlPlaneFirewall(); + _resultValue.allowedAddresses = allowedAddresses; + _resultValue.enabled = enabled; + return _resultValue; + } + } +} diff --git a/sdk/nodejs/kubernetesCluster.ts b/sdk/nodejs/kubernetesCluster.ts index 4146bcb1..a4ce8f75 100644 --- a/sdk/nodejs/kubernetesCluster.ts +++ b/sdk/nodejs/kubernetesCluster.ts @@ -74,14 +74,13 @@ export class KubernetesCluster extends pulumi.CustomResource { * The uniform resource name (URN) for the Kubernetes cluster. */ public /*out*/ readonly clusterUrn!: pulumi.Output; + public readonly controlPlaneFirewall!: pulumi.Output; /** * The date and time when the node was created. */ public /*out*/ readonly createdAt!: pulumi.Output; /** * **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - * - * This resource supports customized create timeouts. The default timeout is 30 minutes. */ public readonly destroyAllAssociatedResources!: pulumi.Output; /** @@ -100,6 +99,12 @@ export class KubernetesCluster extends pulumi.CustomResource { * A representation of the Kubernetes cluster's kubeconfig with the following attributes: */ public /*out*/ readonly kubeConfigs!: pulumi.Output; + /** + * The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + */ + public readonly kubeconfigExpireSeconds!: pulumi.Output; /** * A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `autoUpgrade` must be set to `true` for this to have an effect. */ @@ -165,12 +170,14 @@ export class KubernetesCluster extends pulumi.CustomResource { resourceInputs["autoUpgrade"] = state ? state.autoUpgrade : undefined; resourceInputs["clusterSubnet"] = state ? state.clusterSubnet : undefined; resourceInputs["clusterUrn"] = state ? state.clusterUrn : undefined; + resourceInputs["controlPlaneFirewall"] = state ? state.controlPlaneFirewall : undefined; resourceInputs["createdAt"] = state ? state.createdAt : undefined; resourceInputs["destroyAllAssociatedResources"] = state ? state.destroyAllAssociatedResources : undefined; resourceInputs["endpoint"] = state ? state.endpoint : undefined; resourceInputs["ha"] = state ? state.ha : undefined; resourceInputs["ipv4Address"] = state ? state.ipv4Address : undefined; resourceInputs["kubeConfigs"] = state ? state.kubeConfigs : undefined; + resourceInputs["kubeconfigExpireSeconds"] = state ? state.kubeconfigExpireSeconds : undefined; resourceInputs["maintenancePolicy"] = state ? state.maintenancePolicy : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["nodePool"] = state ? state.nodePool : undefined; @@ -196,8 +203,10 @@ export class KubernetesCluster extends pulumi.CustomResource { } resourceInputs["autoUpgrade"] = args ? args.autoUpgrade : undefined; resourceInputs["clusterSubnet"] = args ? args.clusterSubnet : undefined; + resourceInputs["controlPlaneFirewall"] = args ? args.controlPlaneFirewall : undefined; resourceInputs["destroyAllAssociatedResources"] = args ? args.destroyAllAssociatedResources : undefined; resourceInputs["ha"] = args ? args.ha : undefined; + resourceInputs["kubeconfigExpireSeconds"] = args ? args.kubeconfigExpireSeconds : undefined; resourceInputs["maintenancePolicy"] = args ? args.maintenancePolicy : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["nodePool"] = args ? args.nodePool : undefined; @@ -239,14 +248,13 @@ export interface KubernetesClusterState { * The uniform resource name (URN) for the Kubernetes cluster. */ clusterUrn?: pulumi.Input; + controlPlaneFirewall?: pulumi.Input; /** * The date and time when the node was created. */ createdAt?: pulumi.Input; /** * **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - * - * This resource supports customized create timeouts. The default timeout is 30 minutes. */ destroyAllAssociatedResources?: pulumi.Input; /** @@ -265,6 +273,12 @@ export interface KubernetesClusterState { * A representation of the Kubernetes cluster's kubeconfig with the following attributes: */ kubeConfigs?: pulumi.Input[]>; + /** + * The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + */ + kubeconfigExpireSeconds?: pulumi.Input; /** * A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `autoUpgrade` must be set to `true` for this to have an effect. */ @@ -327,16 +341,21 @@ export interface KubernetesClusterArgs { * The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native). */ clusterSubnet?: pulumi.Input; + controlPlaneFirewall?: pulumi.Input; /** * **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - * - * This resource supports customized create timeouts. The default timeout is 30 minutes. */ destroyAllAssociatedResources?: pulumi.Input; /** * Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false */ ha?: pulumi.Input; + /** + * The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + * + * This resource supports customized create timeouts. The default timeout is 30 minutes. + */ + kubeconfigExpireSeconds?: pulumi.Input; /** * A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `autoUpgrade` must be set to `true` for this to have an effect. */ diff --git a/sdk/nodejs/loadBalancer.ts b/sdk/nodejs/loadBalancer.ts index df307db2..a58bd229 100644 --- a/sdk/nodejs/loadBalancer.ts +++ b/sdk/nodejs/loadBalancer.ts @@ -154,6 +154,11 @@ export class LoadBalancer extends pulumi.CustomResource { * The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. */ public readonly network!: pulumi.Output; + /** + * The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + */ + public readonly networkStack!: pulumi.Output; /** * The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. */ @@ -226,6 +231,7 @@ export class LoadBalancer extends pulumi.CustomResource { resourceInputs["loadBalancerUrn"] = state ? state.loadBalancerUrn : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["network"] = state ? state.network : undefined; + resourceInputs["networkStack"] = state ? state.networkStack : undefined; resourceInputs["projectId"] = state ? state.projectId : undefined; resourceInputs["redirectHttpToHttps"] = state ? state.redirectHttpToHttps : undefined; resourceInputs["region"] = state ? state.region : undefined; @@ -252,6 +258,7 @@ export class LoadBalancer extends pulumi.CustomResource { resourceInputs["httpIdleTimeoutSeconds"] = args ? args.httpIdleTimeoutSeconds : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["network"] = args ? args.network : undefined; + resourceInputs["networkStack"] = args ? args.networkStack : undefined; resourceInputs["projectId"] = args ? args.projectId : undefined; resourceInputs["redirectHttpToHttps"] = args ? args.redirectHttpToHttps : undefined; resourceInputs["region"] = args ? args.region : undefined; @@ -347,6 +354,11 @@ export interface LoadBalancerState { * The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. */ network?: pulumi.Input; + /** + * The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + */ + networkStack?: pulumi.Input; /** * The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. */ @@ -457,6 +469,11 @@ export interface LoadBalancerArgs { * The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. */ network?: pulumi.Input; + /** + * The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + * **NOTE**: this feature is in private preview, and may not be available for public use + */ + networkStack?: pulumi.Input; /** * The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. */ diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 103a8ae9..a03edde3 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -163,6 +163,10 @@ export interface AppSpecFunction { * Describes an alert policy for the component. */ alerts?: pulumi.Input[]>; + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: pulumi.Input; /** * The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. * @@ -228,6 +232,21 @@ export interface AppSpecFunctionAlert { window: pulumi.Input; } +export interface AppSpecFunctionBitbucket { + /** + * The name of the branch to use. + */ + branch?: pulumi.Input; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: pulumi.Input; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: pulumi.Input; +} + export interface AppSpecFunctionCors { /** * 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. @@ -548,6 +567,10 @@ export interface AppSpecJob { * Describes an alert policy for the component. */ alerts?: pulumi.Input[]>; + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: pulumi.Input; /** * An optional build command to run while building this component from source. */ @@ -641,6 +664,21 @@ export interface AppSpecJobAlert { window: pulumi.Input; } +export interface AppSpecJobBitbucket { + /** + * The name of the branch to use. + */ + branch?: pulumi.Input; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: pulumi.Input; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: pulumi.Input; +} + export interface AppSpecJobEnv { /** * The name of the environment variable. @@ -835,6 +873,10 @@ export interface AppSpecService { * Configuration for automatically scaling this component based on metrics. */ autoscaling?: pulumi.Input; + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: pulumi.Input; /** * An optional build command to run while building this component from source. */ @@ -973,6 +1015,21 @@ export interface AppSpecServiceAutoscalingMetricsCpu { percent: pulumi.Input; } +export interface AppSpecServiceBitbucket { + /** + * The name of the branch to use. + */ + branch?: pulumi.Input; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: pulumi.Input; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: pulumi.Input; +} + export interface AppSpecServiceCors { /** * 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. @@ -1251,6 +1308,10 @@ export interface AppSpecServiceTermination { } export interface AppSpecStaticSite { + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: pulumi.Input; /** * An optional build command to run while building this component from source. */ @@ -1317,6 +1378,21 @@ export interface AppSpecStaticSite { sourceDir?: pulumi.Input; } +export interface AppSpecStaticSiteBitbucket { + /** + * The name of the branch to use. + */ + branch?: pulumi.Input; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: pulumi.Input; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: pulumi.Input; +} + export interface AppSpecStaticSiteCors { /** * 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. @@ -1441,6 +1517,10 @@ export interface AppSpecWorker { * Configuration for automatically scaling this component based on metrics. */ autoscaling?: pulumi.Input; + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: pulumi.Input; /** * An optional build command to run while building this component from source. */ @@ -1555,6 +1635,21 @@ export interface AppSpecWorkerAutoscalingMetricsCpu { percent: pulumi.Input; } +export interface AppSpecWorkerBitbucket { + /** + * The name of the branch to use. + */ + branch?: pulumi.Input; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: pulumi.Input; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: pulumi.Input; +} + export interface AppSpecWorkerEnv { /** * The name of the environment variable. @@ -1755,11 +1850,11 @@ export interface DatabaseClusterBackupRestore { export interface DatabaseClusterMaintenanceWindow { /** - * The day of the week on which to apply maintenance updates. + * The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. */ day: pulumi.Input; /** - * The hour in UTC at which maintenance updates will be applied in 24 hour format. + * The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. */ hour: pulumi.Input; } @@ -3017,6 +3112,11 @@ export interface GetTagsSortArgs { key: pulumi.Input; } +export interface KubernetesClusterControlPlaneFirewall { + allowedAddresses: pulumi.Input[]>; + enabled: pulumi.Input; +} + export interface KubernetesClusterKubeConfig { /** * The base64 encoded public certificate used by clients to access the cluster. Only available if token authentication is not supported on your cluster. diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index a267d81b..3f8b1294 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -163,6 +163,10 @@ export interface AppSpecFunction { * Describes an alert policy for the component. */ alerts?: outputs.AppSpecFunctionAlert[]; + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: outputs.AppSpecFunctionBitbucket; /** * The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. * @@ -228,6 +232,21 @@ export interface AppSpecFunctionAlert { window: string; } +export interface AppSpecFunctionBitbucket { + /** + * The name of the branch to use. + */ + branch?: string; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: boolean; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: string; +} + export interface AppSpecFunctionCors { /** * 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. @@ -548,6 +567,10 @@ export interface AppSpecJob { * Describes an alert policy for the component. */ alerts?: outputs.AppSpecJobAlert[]; + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: outputs.AppSpecJobBitbucket; /** * An optional build command to run while building this component from source. */ @@ -641,6 +664,21 @@ export interface AppSpecJobAlert { window: string; } +export interface AppSpecJobBitbucket { + /** + * The name of the branch to use. + */ + branch?: string; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: boolean; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: string; +} + export interface AppSpecJobEnv { /** * The name of the environment variable. @@ -835,6 +873,10 @@ export interface AppSpecService { * Configuration for automatically scaling this component based on metrics. */ autoscaling?: outputs.AppSpecServiceAutoscaling; + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: outputs.AppSpecServiceBitbucket; /** * An optional build command to run while building this component from source. */ @@ -973,6 +1015,21 @@ export interface AppSpecServiceAutoscalingMetricsCpu { percent: number; } +export interface AppSpecServiceBitbucket { + /** + * The name of the branch to use. + */ + branch?: string; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: boolean; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: string; +} + export interface AppSpecServiceCors { /** * 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. @@ -1251,6 +1308,10 @@ export interface AppSpecServiceTermination { } export interface AppSpecStaticSite { + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: outputs.AppSpecStaticSiteBitbucket; /** * An optional build command to run while building this component from source. */ @@ -1317,6 +1378,21 @@ export interface AppSpecStaticSite { sourceDir?: string; } +export interface AppSpecStaticSiteBitbucket { + /** + * The name of the branch to use. + */ + branch?: string; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: boolean; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: string; +} + export interface AppSpecStaticSiteCors { /** * 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. @@ -1441,6 +1517,10 @@ export interface AppSpecWorker { * Configuration for automatically scaling this component based on metrics. */ autoscaling?: outputs.AppSpecWorkerAutoscaling; + /** + * A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: outputs.AppSpecWorkerBitbucket; /** * An optional build command to run while building this component from source. */ @@ -1555,6 +1635,21 @@ export interface AppSpecWorkerAutoscalingMetricsCpu { percent: number; } +export interface AppSpecWorkerBitbucket { + /** + * The name of the branch to use. + */ + branch?: string; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: boolean; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: string; +} + export interface AppSpecWorkerEnv { /** * The name of the environment variable. @@ -1755,11 +1850,11 @@ export interface DatabaseClusterBackupRestore { export interface DatabaseClusterMaintenanceWindow { /** - * The day of the week on which to apply maintenance updates. + * The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. */ day: string; /** - * The hour in UTC at which maintenance updates will be applied in 24 hour format. + * The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. */ hour: string; } @@ -2264,6 +2359,10 @@ export interface GetAppSpecFunction { * Describes an alert policy for the component. */ alerts?: outputs.GetAppSpecFunctionAlert[]; + /** + * A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: outputs.GetAppSpecFunctionBitbucket; /** * The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. * @@ -2279,11 +2378,11 @@ export interface GetAppSpecFunction { */ git?: outputs.GetAppSpecFunctionGit; /** - * 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. + * 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`, `bitbucket`, `gitlab`, or `image` may be set. */ github?: outputs.GetAppSpecFunctionGithub; /** - * 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. + * 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`, `bitbucket`, `gitlab`, or `image` may be set. */ gitlab?: outputs.GetAppSpecFunctionGitlab; /** @@ -2327,6 +2426,21 @@ export interface GetAppSpecFunctionAlert { window: string; } +export interface GetAppSpecFunctionBitbucket { + /** + * The name of the branch to use. + */ + branch?: string; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: boolean; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: string; +} + export interface GetAppSpecFunctionCors { /** * 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. @@ -2620,6 +2734,10 @@ export interface GetAppSpecJob { * Describes an alert policy for the component. */ alerts?: outputs.GetAppSpecJobAlert[]; + /** + * A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: outputs.GetAppSpecJobBitbucket; /** * An optional build command to run while building this component from source. */ @@ -2641,15 +2759,15 @@ export interface GetAppSpecJob { */ git?: outputs.GetAppSpecJobGit; /** - * 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. + * 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`, `bitbucket`, `gitlab`, or `image` may be set. */ github?: outputs.GetAppSpecJobGithub; /** - * 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. + * 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`, `bitbucket`, `gitlab`, or `image` may be set. */ gitlab?: outputs.GetAppSpecJobGitlab; /** - * An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + * An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. */ image?: outputs.GetAppSpecJobImage; /** @@ -2713,6 +2831,21 @@ export interface GetAppSpecJobAlert { window: string; } +export interface GetAppSpecJobBitbucket { + /** + * The name of the branch to use. + */ + branch?: string; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: boolean; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: string; +} + export interface GetAppSpecJobEnv { /** * The name of the environment variable. @@ -2905,6 +3038,10 @@ export interface GetAppSpecService { * Configuration for automatically scaling this component based on metrics. */ autoscaling?: outputs.GetAppSpecServiceAutoscaling; + /** + * A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: outputs.GetAppSpecServiceBitbucket; /** * An optional build command to run while building this component from source. */ @@ -2932,11 +3069,11 @@ export interface GetAppSpecService { */ git?: outputs.GetAppSpecServiceGit; /** - * 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. + * 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`, `bitbucket`, `gitlab`, or `image` may be set. */ github?: outputs.GetAppSpecServiceGithub; /** - * 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. + * 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`, `bitbucket`, `gitlab`, or `image` may be set. */ gitlab?: outputs.GetAppSpecServiceGitlab; /** @@ -2948,7 +3085,7 @@ export interface GetAppSpecService { */ httpPort: number; /** - * An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + * An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. */ image?: outputs.GetAppSpecServiceImage; /** @@ -3041,6 +3178,21 @@ export interface GetAppSpecServiceAutoscalingMetricsCpu { percent: number; } +export interface GetAppSpecServiceBitbucket { + /** + * The name of the branch to use. + */ + branch?: string; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: boolean; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: string; +} + export interface GetAppSpecServiceCors { /** * 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. @@ -3315,6 +3467,10 @@ export interface GetAppSpecServiceTermination { } export interface GetAppSpecStaticSite { + /** + * A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: outputs.GetAppSpecStaticSiteBitbucket; /** * An optional build command to run while building this component from source. */ @@ -3350,11 +3506,11 @@ export interface GetAppSpecStaticSite { */ git?: outputs.GetAppSpecStaticSiteGit; /** - * 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. + * 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`, `bitbucket`, `gitlab`, or `image` may be set. */ github?: outputs.GetAppSpecStaticSiteGithub; /** - * 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. + * 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`, `bitbucket`, `gitlab`, or `image` may be set. */ gitlab?: outputs.GetAppSpecStaticSiteGitlab; /** @@ -3379,6 +3535,21 @@ export interface GetAppSpecStaticSite { sourceDir?: string; } +export interface GetAppSpecStaticSiteBitbucket { + /** + * The name of the branch to use. + */ + branch?: string; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: boolean; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: string; +} + export interface GetAppSpecStaticSiteCors { /** * 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. @@ -3503,6 +3674,10 @@ export interface GetAppSpecWorker { * Configuration for automatically scaling this component based on metrics. */ autoscaling?: outputs.GetAppSpecWorkerAutoscaling; + /** + * A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + */ + bitbucket?: outputs.GetAppSpecWorkerBitbucket; /** * An optional build command to run while building this component from source. */ @@ -3524,15 +3699,15 @@ export interface GetAppSpecWorker { */ git?: outputs.GetAppSpecWorkerGit; /** - * 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. + * 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`, `bitbucket`, `gitlab`, or `image` may be set. */ github?: outputs.GetAppSpecWorkerGithub; /** - * 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. + * 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`, `bitbucket`, `gitlab`, or `image` may be set. */ gitlab?: outputs.GetAppSpecWorkerGitlab; /** - * An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + * An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. */ image?: outputs.GetAppSpecWorkerImage; /** @@ -3617,6 +3792,21 @@ export interface GetAppSpecWorkerAutoscalingMetricsCpu { percent: number; } +export interface GetAppSpecWorkerBitbucket { + /** + * The name of the branch to use. + */ + branch?: string; + /** + * Whether to automatically deploy new commits made to the repo. + */ + deployOnPush?: boolean; + /** + * The name of the repo in the format `owner/repo`. + */ + repo?: string; +} + export interface GetAppSpecWorkerEnv { /** * The name of the environment variable. @@ -5041,6 +5231,11 @@ export interface GetTagsTag { volumesCount: number; } +export interface KubernetesClusterControlPlaneFirewall { + allowedAddresses: string[]; + enabled: boolean; +} + export interface KubernetesClusterKubeConfig { /** * The base64 encoded public certificate used by clients to access the cluster. Only available if token authentication is not supported on your cluster. diff --git a/sdk/python/pulumi_digitalocean/_inputs.py b/sdk/python/pulumi_digitalocean/_inputs.py index e6d667de..c9af36f6 100644 --- a/sdk/python/pulumi_digitalocean/_inputs.py +++ b/sdk/python/pulumi_digitalocean/_inputs.py @@ -34,6 +34,8 @@ 'AppSpecFunctionArgsDict', 'AppSpecFunctionAlertArgs', 'AppSpecFunctionAlertArgsDict', + 'AppSpecFunctionBitbucketArgs', + 'AppSpecFunctionBitbucketArgsDict', 'AppSpecFunctionCorsArgs', 'AppSpecFunctionCorsArgsDict', 'AppSpecFunctionCorsAllowOriginsArgs', @@ -80,6 +82,8 @@ 'AppSpecJobArgsDict', 'AppSpecJobAlertArgs', 'AppSpecJobAlertArgsDict', + 'AppSpecJobBitbucketArgs', + 'AppSpecJobBitbucketArgsDict', 'AppSpecJobEnvArgs', 'AppSpecJobEnvArgsDict', 'AppSpecJobGitArgs', @@ -116,6 +120,8 @@ 'AppSpecServiceAutoscalingMetricsArgsDict', 'AppSpecServiceAutoscalingMetricsCpuArgs', 'AppSpecServiceAutoscalingMetricsCpuArgsDict', + 'AppSpecServiceBitbucketArgs', + 'AppSpecServiceBitbucketArgsDict', 'AppSpecServiceCorsArgs', 'AppSpecServiceCorsArgsDict', 'AppSpecServiceCorsAllowOriginsArgs', @@ -152,6 +158,8 @@ 'AppSpecServiceTerminationArgsDict', 'AppSpecStaticSiteArgs', 'AppSpecStaticSiteArgsDict', + 'AppSpecStaticSiteBitbucketArgs', + 'AppSpecStaticSiteBitbucketArgsDict', 'AppSpecStaticSiteCorsArgs', 'AppSpecStaticSiteCorsArgsDict', 'AppSpecStaticSiteCorsAllowOriginsArgs', @@ -176,6 +184,8 @@ 'AppSpecWorkerAutoscalingMetricsArgsDict', 'AppSpecWorkerAutoscalingMetricsCpuArgs', 'AppSpecWorkerAutoscalingMetricsCpuArgsDict', + 'AppSpecWorkerBitbucketArgs', + 'AppSpecWorkerBitbucketArgsDict', 'AppSpecWorkerEnvArgs', 'AppSpecWorkerEnvArgsDict', 'AppSpecWorkerGitArgs', @@ -234,6 +244,8 @@ 'FirewallOutboundRuleArgsDict', 'FirewallPendingChangeArgs', 'FirewallPendingChangeArgsDict', + 'KubernetesClusterControlPlaneFirewallArgs', + 'KubernetesClusterControlPlaneFirewallArgsDict', 'KubernetesClusterKubeConfigArgs', 'KubernetesClusterKubeConfigArgsDict', 'KubernetesClusterMaintenancePolicyArgs', @@ -1113,6 +1125,10 @@ class AppSpecFunctionArgsDict(TypedDict): """ Describes an alert policy for the component. """ + bitbucket: NotRequired[pulumi.Input['AppSpecFunctionBitbucketArgsDict']] + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ cors: NotRequired[pulumi.Input['AppSpecFunctionCorsArgsDict']] """ The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. @@ -1153,6 +1169,7 @@ class AppSpecFunctionArgs: def __init__(__self__, *, name: pulumi.Input[str], alerts: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecFunctionAlertArgs']]]] = None, + bitbucket: Optional[pulumi.Input['AppSpecFunctionBitbucketArgs']] = None, cors: Optional[pulumi.Input['AppSpecFunctionCorsArgs']] = None, envs: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecFunctionEnvArgs']]]] = None, git: Optional[pulumi.Input['AppSpecFunctionGitArgs']] = None, @@ -1164,6 +1181,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] name: The name of the component. :param pulumi.Input[Sequence[pulumi.Input['AppSpecFunctionAlertArgs']]] alerts: Describes an alert policy for the component. + :param pulumi.Input['AppSpecFunctionBitbucketArgs'] bitbucket: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :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. @@ -1176,6 +1194,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if alerts is not None: pulumi.set(__self__, "alerts", alerts) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if cors is not None: warnings.warn("""Service level CORS rules are deprecated in favor of ingresses""", DeprecationWarning) pulumi.log.warn("""cors is deprecated: Service level CORS rules are deprecated in favor of ingresses""") @@ -1223,6 +1243,18 @@ def alerts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecFunction def alerts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecFunctionAlertArgs']]]]): pulumi.set(self, "alerts", value) + @property + @pulumi.getter + def bitbucket(self) -> Optional[pulumi.Input['AppSpecFunctionBitbucketArgs']]: + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + + @bitbucket.setter + def bitbucket(self, value: Optional[pulumi.Input['AppSpecFunctionBitbucketArgs']]): + pulumi.set(self, "bitbucket", value) + @property @pulumi.getter @_utilities.deprecated("""Service level CORS rules are deprecated in favor of ingresses""") @@ -1430,6 +1462,78 @@ def disabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "disabled", value) +if not MYPY: + class AppSpecFunctionBitbucketArgsDict(TypedDict): + branch: NotRequired[pulumi.Input[str]] + """ + The name of the branch to use. + """ + deploy_on_push: NotRequired[pulumi.Input[bool]] + """ + Whether to automatically deploy new commits made to the repo. + """ + repo: NotRequired[pulumi.Input[str]] + """ + The name of the repo in the format `owner/repo`. + """ +elif False: + AppSpecFunctionBitbucketArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class AppSpecFunctionBitbucketArgs: + def __init__(__self__, *, + branch: Optional[pulumi.Input[str]] = None, + deploy_on_push: Optional[pulumi.Input[bool]] = None, + repo: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] branch: The name of the branch to use. + :param pulumi.Input[bool] deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param pulumi.Input[str] repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[pulumi.Input[str]]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @branch.setter + def branch(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "branch", value) + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @deploy_on_push.setter + def deploy_on_push(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "deploy_on_push", value) + + @property + @pulumi.getter + def repo(self) -> Optional[pulumi.Input[str]]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @repo.setter + def repo(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "repo", value) + + if not MYPY: class AppSpecFunctionCorsArgsDict(TypedDict): allow_credentials: NotRequired[pulumi.Input[bool]] @@ -2935,6 +3039,10 @@ class AppSpecJobArgsDict(TypedDict): """ Describes an alert policy for the component. """ + bitbucket: NotRequired[pulumi.Input['AppSpecJobBitbucketArgsDict']] + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ build_command: NotRequired[pulumi.Input[str]] """ An optional build command to run while building this component from source. @@ -3007,6 +3115,7 @@ class AppSpecJobArgs: def __init__(__self__, *, name: pulumi.Input[str], alerts: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecJobAlertArgs']]]] = None, + bitbucket: Optional[pulumi.Input['AppSpecJobBitbucketArgs']] = None, build_command: Optional[pulumi.Input[str]] = None, dockerfile_path: Optional[pulumi.Input[str]] = None, environment_slug: Optional[pulumi.Input[str]] = None, @@ -3025,6 +3134,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] name: The name of the component. :param pulumi.Input[Sequence[pulumi.Input['AppSpecJobAlertArgs']]] alerts: Describes an alert policy for the component. + :param pulumi.Input['AppSpecJobBitbucketArgs'] bitbucket: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param pulumi.Input[str] build_command: An optional build command to run while building this component from source. :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. @@ -3048,6 +3158,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if alerts is not None: pulumi.set(__self__, "alerts", alerts) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if dockerfile_path is not None: @@ -3103,6 +3215,18 @@ def alerts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecJobAlert def alerts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecJobAlertArgs']]]]): pulumi.set(self, "alerts", value) + @property + @pulumi.getter + def bitbucket(self) -> Optional[pulumi.Input['AppSpecJobBitbucketArgs']]: + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + + @bitbucket.setter + def bitbucket(self, value: Optional[pulumi.Input['AppSpecJobBitbucketArgs']]): + pulumi.set(self, "bitbucket", value) + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[pulumi.Input[str]]: @@ -3396,6 +3520,78 @@ def disabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "disabled", value) +if not MYPY: + class AppSpecJobBitbucketArgsDict(TypedDict): + branch: NotRequired[pulumi.Input[str]] + """ + The name of the branch to use. + """ + deploy_on_push: NotRequired[pulumi.Input[bool]] + """ + Whether to automatically deploy new commits made to the repo. + """ + repo: NotRequired[pulumi.Input[str]] + """ + The name of the repo in the format `owner/repo`. + """ +elif False: + AppSpecJobBitbucketArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class AppSpecJobBitbucketArgs: + def __init__(__self__, *, + branch: Optional[pulumi.Input[str]] = None, + deploy_on_push: Optional[pulumi.Input[bool]] = None, + repo: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] branch: The name of the branch to use. + :param pulumi.Input[bool] deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param pulumi.Input[str] repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[pulumi.Input[str]]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @branch.setter + def branch(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "branch", value) + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @deploy_on_push.setter + def deploy_on_push(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "deploy_on_push", value) + + @property + @pulumi.getter + def repo(self) -> Optional[pulumi.Input[str]]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @repo.setter + def repo(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "repo", value) + + if not MYPY: class AppSpecJobEnvArgsDict(TypedDict): key: NotRequired[pulumi.Input[str]] @@ -4285,6 +4481,10 @@ class AppSpecServiceArgsDict(TypedDict): """ Configuration for automatically scaling this component based on metrics. """ + bitbucket: NotRequired[pulumi.Input['AppSpecServiceBitbucketArgsDict']] + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ build_command: NotRequired[pulumi.Input[str]] """ An optional build command to run while building this component from source. @@ -4370,6 +4570,7 @@ def __init__(__self__, *, name: pulumi.Input[str], alerts: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecServiceAlertArgs']]]] = None, autoscaling: Optional[pulumi.Input['AppSpecServiceAutoscalingArgs']] = None, + bitbucket: Optional[pulumi.Input['AppSpecServiceBitbucketArgs']] = None, build_command: Optional[pulumi.Input[str]] = None, cors: Optional[pulumi.Input['AppSpecServiceCorsArgs']] = None, dockerfile_path: Optional[pulumi.Input[str]] = None, @@ -4393,6 +4594,7 @@ def __init__(__self__, *, :param pulumi.Input[str] name: The name of the component. :param pulumi.Input[Sequence[pulumi.Input['AppSpecServiceAlertArgs']]] alerts: Describes an alert policy for the component. :param pulumi.Input['AppSpecServiceAutoscalingArgs'] autoscaling: Configuration for automatically scaling this component based on metrics. + :param pulumi.Input['AppSpecServiceBitbucketArgs'] bitbucket: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param pulumi.Input[str] build_command: An optional build command to run while building this component from source. :param pulumi.Input['AppSpecServiceCorsArgs'] cors: The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. :param pulumi.Input[str] dockerfile_path: The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. @@ -4418,6 +4620,8 @@ def __init__(__self__, *, pulumi.set(__self__, "alerts", alerts) if autoscaling is not None: pulumi.set(__self__, "autoscaling", autoscaling) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if cors is not None: @@ -4499,6 +4703,18 @@ def autoscaling(self) -> Optional[pulumi.Input['AppSpecServiceAutoscalingArgs']] def autoscaling(self, value: Optional[pulumi.Input['AppSpecServiceAutoscalingArgs']]): pulumi.set(self, "autoscaling", value) + @property + @pulumi.getter + def bitbucket(self) -> Optional[pulumi.Input['AppSpecServiceBitbucketArgs']]: + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + + @bitbucket.setter + def bitbucket(self, value: Optional[pulumi.Input['AppSpecServiceBitbucketArgs']]): + pulumi.set(self, "bitbucket", value) + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[pulumi.Input[str]]: @@ -4970,6 +5186,78 @@ def percent(self, value: pulumi.Input[int]): pulumi.set(self, "percent", value) +if not MYPY: + class AppSpecServiceBitbucketArgsDict(TypedDict): + branch: NotRequired[pulumi.Input[str]] + """ + The name of the branch to use. + """ + deploy_on_push: NotRequired[pulumi.Input[bool]] + """ + Whether to automatically deploy new commits made to the repo. + """ + repo: NotRequired[pulumi.Input[str]] + """ + The name of the repo in the format `owner/repo`. + """ +elif False: + AppSpecServiceBitbucketArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class AppSpecServiceBitbucketArgs: + def __init__(__self__, *, + branch: Optional[pulumi.Input[str]] = None, + deploy_on_push: Optional[pulumi.Input[bool]] = None, + repo: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] branch: The name of the branch to use. + :param pulumi.Input[bool] deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param pulumi.Input[str] repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[pulumi.Input[str]]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @branch.setter + def branch(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "branch", value) + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @deploy_on_push.setter + def deploy_on_push(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "deploy_on_push", value) + + @property + @pulumi.getter + def repo(self) -> Optional[pulumi.Input[str]]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @repo.setter + def repo(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "repo", value) + + if not MYPY: class AppSpecServiceCorsArgsDict(TypedDict): allow_credentials: NotRequired[pulumi.Input[bool]] @@ -6289,6 +6577,10 @@ class AppSpecStaticSiteArgsDict(TypedDict): """ The name of the component. """ + bitbucket: NotRequired[pulumi.Input['AppSpecStaticSiteBitbucketArgsDict']] + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ build_command: NotRequired[pulumi.Input[str]] """ An optional build command to run while building this component from source. @@ -6352,6 +6644,7 @@ class AppSpecStaticSiteArgsDict(TypedDict): class AppSpecStaticSiteArgs: def __init__(__self__, *, name: pulumi.Input[str], + bitbucket: Optional[pulumi.Input['AppSpecStaticSiteBitbucketArgs']] = None, build_command: Optional[pulumi.Input[str]] = None, catchall_document: Optional[pulumi.Input[str]] = None, cors: Optional[pulumi.Input['AppSpecStaticSiteCorsArgs']] = None, @@ -6368,6 +6661,7 @@ def __init__(__self__, *, source_dir: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] name: The name of the component. + :param pulumi.Input['AppSpecStaticSiteBitbucketArgs'] bitbucket: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param pulumi.Input[str] build_command: An optional build command to run while building this component from source. :param pulumi.Input[str] catchall_document: The name of the document to use as the fallback for any requests to documents that are not found when serving this static site. :param pulumi.Input['AppSpecStaticSiteCorsArgs'] cors: The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. @@ -6384,6 +6678,8 @@ def __init__(__self__, *, :param pulumi.Input[str] source_dir: An optional path to the working directory to use for the build. """ pulumi.set(__self__, "name", name) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if catchall_document is not None: @@ -6431,6 +6727,18 @@ def name(self) -> pulumi.Input[str]: def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) + @property + @pulumi.getter + def bitbucket(self) -> Optional[pulumi.Input['AppSpecStaticSiteBitbucketArgs']]: + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + + @bitbucket.setter + def bitbucket(self, value: Optional[pulumi.Input['AppSpecStaticSiteBitbucketArgs']]): + pulumi.set(self, "bitbucket", value) + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[pulumi.Input[str]]: @@ -6602,6 +6910,78 @@ def source_dir(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "source_dir", value) +if not MYPY: + class AppSpecStaticSiteBitbucketArgsDict(TypedDict): + branch: NotRequired[pulumi.Input[str]] + """ + The name of the branch to use. + """ + deploy_on_push: NotRequired[pulumi.Input[bool]] + """ + Whether to automatically deploy new commits made to the repo. + """ + repo: NotRequired[pulumi.Input[str]] + """ + The name of the repo in the format `owner/repo`. + """ +elif False: + AppSpecStaticSiteBitbucketArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class AppSpecStaticSiteBitbucketArgs: + def __init__(__self__, *, + branch: Optional[pulumi.Input[str]] = None, + deploy_on_push: Optional[pulumi.Input[bool]] = None, + repo: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] branch: The name of the branch to use. + :param pulumi.Input[bool] deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param pulumi.Input[str] repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[pulumi.Input[str]]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @branch.setter + def branch(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "branch", value) + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @deploy_on_push.setter + def deploy_on_push(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "deploy_on_push", value) + + @property + @pulumi.getter + def repo(self) -> Optional[pulumi.Input[str]]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @repo.setter + def repo(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "repo", value) + + if not MYPY: class AppSpecStaticSiteCorsArgsDict(TypedDict): allow_credentials: NotRequired[pulumi.Input[bool]] @@ -7164,6 +7544,10 @@ class AppSpecWorkerArgsDict(TypedDict): """ Configuration for automatically scaling this component based on metrics. """ + bitbucket: NotRequired[pulumi.Input['AppSpecWorkerBitbucketArgsDict']] + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ build_command: NotRequired[pulumi.Input[str]] """ An optional build command to run while building this component from source. @@ -7229,6 +7613,7 @@ def __init__(__self__, *, name: pulumi.Input[str], alerts: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecWorkerAlertArgs']]]] = None, autoscaling: Optional[pulumi.Input['AppSpecWorkerAutoscalingArgs']] = None, + bitbucket: Optional[pulumi.Input['AppSpecWorkerBitbucketArgs']] = None, build_command: Optional[pulumi.Input[str]] = None, dockerfile_path: Optional[pulumi.Input[str]] = None, environment_slug: Optional[pulumi.Input[str]] = None, @@ -7247,6 +7632,7 @@ def __init__(__self__, *, :param pulumi.Input[str] name: The name of the component. :param pulumi.Input[Sequence[pulumi.Input['AppSpecWorkerAlertArgs']]] alerts: Describes an alert policy for the component. :param pulumi.Input['AppSpecWorkerAutoscalingArgs'] autoscaling: Configuration for automatically scaling this component based on metrics. + :param pulumi.Input['AppSpecWorkerBitbucketArgs'] bitbucket: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param pulumi.Input[str] build_command: An optional build command to run while building this component from source. :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. @@ -7267,6 +7653,8 @@ def __init__(__self__, *, pulumi.set(__self__, "alerts", alerts) if autoscaling is not None: pulumi.set(__self__, "autoscaling", autoscaling) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if dockerfile_path is not None: @@ -7332,6 +7720,18 @@ def autoscaling(self) -> Optional[pulumi.Input['AppSpecWorkerAutoscalingArgs']]: def autoscaling(self, value: Optional[pulumi.Input['AppSpecWorkerAutoscalingArgs']]): pulumi.set(self, "autoscaling", value) + @property + @pulumi.getter + def bitbucket(self) -> Optional[pulumi.Input['AppSpecWorkerBitbucketArgs']]: + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + + @bitbucket.setter + def bitbucket(self, value: Optional[pulumi.Input['AppSpecWorkerBitbucketArgs']]): + pulumi.set(self, "bitbucket", value) + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[pulumi.Input[str]]: @@ -7741,6 +8141,78 @@ def percent(self, value: pulumi.Input[int]): pulumi.set(self, "percent", value) +if not MYPY: + class AppSpecWorkerBitbucketArgsDict(TypedDict): + branch: NotRequired[pulumi.Input[str]] + """ + The name of the branch to use. + """ + deploy_on_push: NotRequired[pulumi.Input[bool]] + """ + Whether to automatically deploy new commits made to the repo. + """ + repo: NotRequired[pulumi.Input[str]] + """ + The name of the repo in the format `owner/repo`. + """ +elif False: + AppSpecWorkerBitbucketArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class AppSpecWorkerBitbucketArgs: + def __init__(__self__, *, + branch: Optional[pulumi.Input[str]] = None, + deploy_on_push: Optional[pulumi.Input[bool]] = None, + repo: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] branch: The name of the branch to use. + :param pulumi.Input[bool] deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param pulumi.Input[str] repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[pulumi.Input[str]]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @branch.setter + def branch(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "branch", value) + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @deploy_on_push.setter + def deploy_on_push(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "deploy_on_push", value) + + @property + @pulumi.getter + def repo(self) -> Optional[pulumi.Input[str]]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @repo.setter + def repo(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "repo", value) + + if not MYPY: class AppSpecWorkerEnvArgsDict(TypedDict): key: NotRequired[pulumi.Input[str]] @@ -8677,11 +9149,11 @@ def backup_created_at(self, value: Optional[pulumi.Input[str]]): class DatabaseClusterMaintenanceWindowArgsDict(TypedDict): day: pulumi.Input[str] """ - The day of the week on which to apply maintenance updates. + The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. """ hour: pulumi.Input[str] """ - The hour in UTC at which maintenance updates will be applied in 24 hour format. + The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. """ elif False: DatabaseClusterMaintenanceWindowArgsDict: TypeAlias = Mapping[str, Any] @@ -8692,8 +9164,8 @@ def __init__(__self__, *, day: pulumi.Input[str], hour: pulumi.Input[str]): """ - :param pulumi.Input[str] day: The day of the week on which to apply maintenance updates. - :param pulumi.Input[str] hour: The hour in UTC at which maintenance updates will be applied in 24 hour format. + :param pulumi.Input[str] day: The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. + :param pulumi.Input[str] hour: The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. """ pulumi.set(__self__, "day", day) pulumi.set(__self__, "hour", hour) @@ -8702,7 +9174,7 @@ def __init__(__self__, *, @pulumi.getter def day(self) -> pulumi.Input[str]: """ - The day of the week on which to apply maintenance updates. + The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. """ return pulumi.get(self, "day") @@ -8714,7 +9186,7 @@ def day(self, value: pulumi.Input[str]): @pulumi.getter def hour(self) -> pulumi.Input[str]: """ - The hour in UTC at which maintenance updates will be applied in 24 hour format. + The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. """ return pulumi.get(self, "hour") @@ -10506,6 +10978,40 @@ def status(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "status", value) +if not MYPY: + class KubernetesClusterControlPlaneFirewallArgsDict(TypedDict): + allowed_addresses: pulumi.Input[Sequence[pulumi.Input[str]]] + enabled: pulumi.Input[bool] +elif False: + KubernetesClusterControlPlaneFirewallArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class KubernetesClusterControlPlaneFirewallArgs: + def __init__(__self__, *, + allowed_addresses: pulumi.Input[Sequence[pulumi.Input[str]]], + enabled: pulumi.Input[bool]): + pulumi.set(__self__, "allowed_addresses", allowed_addresses) + pulumi.set(__self__, "enabled", enabled) + + @property + @pulumi.getter(name="allowedAddresses") + def allowed_addresses(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "allowed_addresses") + + @allowed_addresses.setter + def allowed_addresses(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "allowed_addresses", value) + + @property + @pulumi.getter + def enabled(self) -> pulumi.Input[bool]: + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: pulumi.Input[bool]): + pulumi.set(self, "enabled", value) + + if not MYPY: class KubernetesClusterKubeConfigArgsDict(TypedDict): client_certificate: NotRequired[pulumi.Input[str]] diff --git a/sdk/python/pulumi_digitalocean/kubernetes_cluster.py b/sdk/python/pulumi_digitalocean/kubernetes_cluster.py index 930340ce..f91de44c 100644 --- a/sdk/python/pulumi_digitalocean/kubernetes_cluster.py +++ b/sdk/python/pulumi_digitalocean/kubernetes_cluster.py @@ -27,8 +27,10 @@ def __init__(__self__, *, version: pulumi.Input[str], auto_upgrade: Optional[pulumi.Input[bool]] = None, cluster_subnet: Optional[pulumi.Input[str]] = None, + control_plane_firewall: Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']] = None, destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None, ha: Optional[pulumi.Input[bool]] = None, + kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None, maintenance_policy: Optional[pulumi.Input['KubernetesClusterMaintenancePolicyArgs']] = None, name: Optional[pulumi.Input[str]] = None, registry_integration: Optional[pulumi.Input[bool]] = None, @@ -44,9 +46,10 @@ def __init__(__self__, *, :param pulumi.Input[bool] auto_upgrade: A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window. :param pulumi.Input[str] cluster_subnet: The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native). :param pulumi.Input[bool] destroy_all_associated_resources: **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. + :param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false + :param pulumi.Input[int] kubeconfig_expire_seconds: The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. This resource supports customized create timeouts. The default timeout is 30 minutes. - :param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false :param pulumi.Input['KubernetesClusterMaintenancePolicyArgs'] maintenance_policy: A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. :param pulumi.Input[str] name: A name for the Kubernetes cluster. :param pulumi.Input[bool] registry_integration: Enables or disables the DigitalOcean container registry integration for the cluster. This requires that a container registry has first been created for the account. Default: false @@ -62,10 +65,14 @@ def __init__(__self__, *, pulumi.set(__self__, "auto_upgrade", auto_upgrade) if cluster_subnet is not None: pulumi.set(__self__, "cluster_subnet", cluster_subnet) + if control_plane_firewall is not None: + pulumi.set(__self__, "control_plane_firewall", control_plane_firewall) if destroy_all_associated_resources is not None: pulumi.set(__self__, "destroy_all_associated_resources", destroy_all_associated_resources) if ha is not None: pulumi.set(__self__, "ha", ha) + if kubeconfig_expire_seconds is not None: + pulumi.set(__self__, "kubeconfig_expire_seconds", kubeconfig_expire_seconds) if maintenance_policy is not None: pulumi.set(__self__, "maintenance_policy", maintenance_policy) if name is not None: @@ -141,13 +148,20 @@ def cluster_subnet(self) -> Optional[pulumi.Input[str]]: def cluster_subnet(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "cluster_subnet", value) + @property + @pulumi.getter(name="controlPlaneFirewall") + def control_plane_firewall(self) -> Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']]: + return pulumi.get(self, "control_plane_firewall") + + @control_plane_firewall.setter + def control_plane_firewall(self, value: Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']]): + pulumi.set(self, "control_plane_firewall", value) + @property @pulumi.getter(name="destroyAllAssociatedResources") def destroy_all_associated_resources(self) -> Optional[pulumi.Input[bool]]: """ **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - - This resource supports customized create timeouts. The default timeout is 30 minutes. """ return pulumi.get(self, "destroy_all_associated_resources") @@ -167,6 +181,20 @@ def ha(self) -> Optional[pulumi.Input[bool]]: def ha(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "ha", value) + @property + @pulumi.getter(name="kubeconfigExpireSeconds") + def kubeconfig_expire_seconds(self) -> Optional[pulumi.Input[int]]: + """ + The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + + This resource supports customized create timeouts. The default timeout is 30 minutes. + """ + return pulumi.get(self, "kubeconfig_expire_seconds") + + @kubeconfig_expire_seconds.setter + def kubeconfig_expire_seconds(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "kubeconfig_expire_seconds", value) + @property @pulumi.getter(name="maintenancePolicy") def maintenance_policy(self) -> Optional[pulumi.Input['KubernetesClusterMaintenancePolicyArgs']]: @@ -258,12 +286,14 @@ def __init__(__self__, *, auto_upgrade: Optional[pulumi.Input[bool]] = None, cluster_subnet: Optional[pulumi.Input[str]] = None, cluster_urn: Optional[pulumi.Input[str]] = None, + control_plane_firewall: Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']] = None, created_at: Optional[pulumi.Input[str]] = None, destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None, endpoint: Optional[pulumi.Input[str]] = None, ha: Optional[pulumi.Input[bool]] = None, ipv4_address: Optional[pulumi.Input[str]] = None, kube_configs: Optional[pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeConfigArgs']]]] = None, + kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None, maintenance_policy: Optional[pulumi.Input['KubernetesClusterMaintenancePolicyArgs']] = None, name: Optional[pulumi.Input[str]] = None, node_pool: Optional[pulumi.Input['KubernetesClusterNodePoolArgs']] = None, @@ -283,12 +313,13 @@ def __init__(__self__, *, :param pulumi.Input[str] cluster_urn: The uniform resource name (URN) for the Kubernetes cluster. :param pulumi.Input[str] created_at: The date and time when the node was created. :param pulumi.Input[bool] destroy_all_associated_resources: **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - - This resource supports customized create timeouts. The default timeout is 30 minutes. :param pulumi.Input[str] endpoint: The base URL of the API server on the Kubernetes master node. :param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false :param pulumi.Input[str] ipv4_address: The public IPv4 address of the Kubernetes master node. This will not be set if high availability is configured on the cluster (v1.21+) :param pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeConfigArgs']]] kube_configs: A representation of the Kubernetes cluster's kubeconfig with the following attributes: + :param pulumi.Input[int] kubeconfig_expire_seconds: The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + + This resource supports customized create timeouts. The default timeout is 30 minutes. :param pulumi.Input['KubernetesClusterMaintenancePolicyArgs'] maintenance_policy: A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. :param pulumi.Input[str] name: A name for the Kubernetes cluster. :param pulumi.Input['KubernetesClusterNodePoolArgs'] node_pool: A block representing the cluster's default node pool. Additional node pools may be added to the cluster using the `KubernetesNodePool` resource. The following arguments may be specified: @@ -308,6 +339,8 @@ def __init__(__self__, *, pulumi.set(__self__, "cluster_subnet", cluster_subnet) if cluster_urn is not None: pulumi.set(__self__, "cluster_urn", cluster_urn) + if control_plane_firewall is not None: + pulumi.set(__self__, "control_plane_firewall", control_plane_firewall) if created_at is not None: pulumi.set(__self__, "created_at", created_at) if destroy_all_associated_resources is not None: @@ -320,6 +353,8 @@ def __init__(__self__, *, pulumi.set(__self__, "ipv4_address", ipv4_address) if kube_configs is not None: pulumi.set(__self__, "kube_configs", kube_configs) + if kubeconfig_expire_seconds is not None: + pulumi.set(__self__, "kubeconfig_expire_seconds", kubeconfig_expire_seconds) if maintenance_policy is not None: pulumi.set(__self__, "maintenance_policy", maintenance_policy) if name is not None: @@ -381,6 +416,15 @@ def cluster_urn(self) -> Optional[pulumi.Input[str]]: def cluster_urn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "cluster_urn", value) + @property + @pulumi.getter(name="controlPlaneFirewall") + def control_plane_firewall(self) -> Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']]: + return pulumi.get(self, "control_plane_firewall") + + @control_plane_firewall.setter + def control_plane_firewall(self, value: Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']]): + pulumi.set(self, "control_plane_firewall", value) + @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[str]]: @@ -398,8 +442,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): def destroy_all_associated_resources(self) -> Optional[pulumi.Input[bool]]: """ **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - - This resource supports customized create timeouts. The default timeout is 30 minutes. """ return pulumi.get(self, "destroy_all_associated_resources") @@ -455,6 +497,20 @@ def kube_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['Kubernete def kube_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeConfigArgs']]]]): pulumi.set(self, "kube_configs", value) + @property + @pulumi.getter(name="kubeconfigExpireSeconds") + def kubeconfig_expire_seconds(self) -> Optional[pulumi.Input[int]]: + """ + The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + + This resource supports customized create timeouts. The default timeout is 30 minutes. + """ + return pulumi.get(self, "kubeconfig_expire_seconds") + + @kubeconfig_expire_seconds.setter + def kubeconfig_expire_seconds(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "kubeconfig_expire_seconds", value) + @property @pulumi.getter(name="maintenancePolicy") def maintenance_policy(self) -> Optional[pulumi.Input['KubernetesClusterMaintenancePolicyArgs']]: @@ -607,8 +663,10 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, auto_upgrade: Optional[pulumi.Input[bool]] = None, cluster_subnet: Optional[pulumi.Input[str]] = None, + control_plane_firewall: Optional[pulumi.Input[Union['KubernetesClusterControlPlaneFirewallArgs', 'KubernetesClusterControlPlaneFirewallArgsDict']]] = None, destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None, ha: Optional[pulumi.Input[bool]] = None, + kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None, maintenance_policy: Optional[pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, node_pool: Optional[pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']]] = None, @@ -652,9 +710,10 @@ def __init__(__self__, :param pulumi.Input[bool] auto_upgrade: A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window. :param pulumi.Input[str] cluster_subnet: The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native). :param pulumi.Input[bool] destroy_all_associated_resources: **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. + :param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false + :param pulumi.Input[int] kubeconfig_expire_seconds: The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. This resource supports customized create timeouts. The default timeout is 30 minutes. - :param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false :param pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']] maintenance_policy: A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. :param pulumi.Input[str] name: A name for the Kubernetes cluster. :param pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']] node_pool: A block representing the cluster's default node pool. Additional node pools may be added to the cluster using the `KubernetesNodePool` resource. The following arguments may be specified: @@ -716,8 +775,10 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, auto_upgrade: Optional[pulumi.Input[bool]] = None, cluster_subnet: Optional[pulumi.Input[str]] = None, + control_plane_firewall: Optional[pulumi.Input[Union['KubernetesClusterControlPlaneFirewallArgs', 'KubernetesClusterControlPlaneFirewallArgsDict']]] = None, destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None, ha: Optional[pulumi.Input[bool]] = None, + kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None, maintenance_policy: Optional[pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, node_pool: Optional[pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']]] = None, @@ -739,8 +800,10 @@ def _internal_init(__self__, __props__.__dict__["auto_upgrade"] = auto_upgrade __props__.__dict__["cluster_subnet"] = cluster_subnet + __props__.__dict__["control_plane_firewall"] = control_plane_firewall __props__.__dict__["destroy_all_associated_resources"] = destroy_all_associated_resources __props__.__dict__["ha"] = ha + __props__.__dict__["kubeconfig_expire_seconds"] = kubeconfig_expire_seconds __props__.__dict__["maintenance_policy"] = maintenance_policy __props__.__dict__["name"] = name if node_pool is None and not opts.urn: @@ -779,12 +842,14 @@ def get(resource_name: str, auto_upgrade: Optional[pulumi.Input[bool]] = None, cluster_subnet: Optional[pulumi.Input[str]] = None, cluster_urn: Optional[pulumi.Input[str]] = None, + control_plane_firewall: Optional[pulumi.Input[Union['KubernetesClusterControlPlaneFirewallArgs', 'KubernetesClusterControlPlaneFirewallArgsDict']]] = None, created_at: Optional[pulumi.Input[str]] = None, destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None, endpoint: Optional[pulumi.Input[str]] = None, ha: Optional[pulumi.Input[bool]] = None, ipv4_address: Optional[pulumi.Input[str]] = None, kube_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterKubeConfigArgs', 'KubernetesClusterKubeConfigArgsDict']]]]] = None, + kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None, maintenance_policy: Optional[pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, node_pool: Optional[pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']]] = None, @@ -809,12 +874,13 @@ def get(resource_name: str, :param pulumi.Input[str] cluster_urn: The uniform resource name (URN) for the Kubernetes cluster. :param pulumi.Input[str] created_at: The date and time when the node was created. :param pulumi.Input[bool] destroy_all_associated_resources: **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - - This resource supports customized create timeouts. The default timeout is 30 minutes. :param pulumi.Input[str] endpoint: The base URL of the API server on the Kubernetes master node. :param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false :param pulumi.Input[str] ipv4_address: The public IPv4 address of the Kubernetes master node. This will not be set if high availability is configured on the cluster (v1.21+) :param pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterKubeConfigArgs', 'KubernetesClusterKubeConfigArgsDict']]]] kube_configs: A representation of the Kubernetes cluster's kubeconfig with the following attributes: + :param pulumi.Input[int] kubeconfig_expire_seconds: The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + + This resource supports customized create timeouts. The default timeout is 30 minutes. :param pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']] maintenance_policy: A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect. :param pulumi.Input[str] name: A name for the Kubernetes cluster. :param pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']] node_pool: A block representing the cluster's default node pool. Additional node pools may be added to the cluster using the `KubernetesNodePool` resource. The following arguments may be specified: @@ -835,12 +901,14 @@ def get(resource_name: str, __props__.__dict__["auto_upgrade"] = auto_upgrade __props__.__dict__["cluster_subnet"] = cluster_subnet __props__.__dict__["cluster_urn"] = cluster_urn + __props__.__dict__["control_plane_firewall"] = control_plane_firewall __props__.__dict__["created_at"] = created_at __props__.__dict__["destroy_all_associated_resources"] = destroy_all_associated_resources __props__.__dict__["endpoint"] = endpoint __props__.__dict__["ha"] = ha __props__.__dict__["ipv4_address"] = ipv4_address __props__.__dict__["kube_configs"] = kube_configs + __props__.__dict__["kubeconfig_expire_seconds"] = kubeconfig_expire_seconds __props__.__dict__["maintenance_policy"] = maintenance_policy __props__.__dict__["name"] = name __props__.__dict__["node_pool"] = node_pool @@ -879,6 +947,11 @@ def cluster_urn(self) -> pulumi.Output[str]: """ return pulumi.get(self, "cluster_urn") + @property + @pulumi.getter(name="controlPlaneFirewall") + def control_plane_firewall(self) -> pulumi.Output['outputs.KubernetesClusterControlPlaneFirewall']: + return pulumi.get(self, "control_plane_firewall") + @property @pulumi.getter(name="createdAt") def created_at(self) -> pulumi.Output[str]: @@ -892,8 +965,6 @@ def created_at(self) -> pulumi.Output[str]: def destroy_all_associated_resources(self) -> pulumi.Output[Optional[bool]]: """ **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed. - - This resource supports customized create timeouts. The default timeout is 30 minutes. """ return pulumi.get(self, "destroy_all_associated_resources") @@ -929,6 +1000,16 @@ def kube_configs(self) -> pulumi.Output[Sequence['outputs.KubernetesClusterKubeC """ return pulumi.get(self, "kube_configs") + @property + @pulumi.getter(name="kubeconfigExpireSeconds") + def kubeconfig_expire_seconds(self) -> pulumi.Output[Optional[int]]: + """ + The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry. + + This resource supports customized create timeouts. The default timeout is 30 minutes. + """ + return pulumi.get(self, "kubeconfig_expire_seconds") + @property @pulumi.getter(name="maintenancePolicy") def maintenance_policy(self) -> pulumi.Output['outputs.KubernetesClusterMaintenancePolicy']: diff --git a/sdk/python/pulumi_digitalocean/load_balancer.py b/sdk/python/pulumi_digitalocean/load_balancer.py index 4ec8b594..b418144f 100644 --- a/sdk/python/pulumi_digitalocean/load_balancer.py +++ b/sdk/python/pulumi_digitalocean/load_balancer.py @@ -36,6 +36,7 @@ def __init__(__self__, *, http_idle_timeout_seconds: Optional[pulumi.Input[int]] = None, name: Optional[pulumi.Input[str]] = None, network: Optional[pulumi.Input[str]] = None, + network_stack: Optional[pulumi.Input[str]] = None, project_id: Optional[pulumi.Input[str]] = None, redirect_http_to_https: Optional[pulumi.Input[bool]] = None, region: Optional[pulumi.Input[Union[str, 'Region']]] = None, @@ -66,6 +67,8 @@ def __init__(__self__, *, :param pulumi.Input[int] http_idle_timeout_seconds: Specifies the idle timeout for HTTPS connections on the load balancer in seconds. :param pulumi.Input[str] name: The Load Balancer name :param pulumi.Input[str] network: The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. + :param pulumi.Input[str] network_stack: The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + **NOTE**: this feature is in private preview, and may not be available for public use :param pulumi.Input[str] project_id: The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. :param pulumi.Input[bool] redirect_http_to_https: A boolean value indicating whether HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443. @@ -111,6 +114,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if network is not None: pulumi.set(__self__, "network", network) + if network_stack is not None: + pulumi.set(__self__, "network_stack", network_stack) if project_id is not None: pulumi.set(__self__, "project_id", project_id) if redirect_http_to_https is not None: @@ -304,6 +309,19 @@ def network(self) -> Optional[pulumi.Input[str]]: def network(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "network", value) + @property + @pulumi.getter(name="networkStack") + def network_stack(self) -> Optional[pulumi.Input[str]]: + """ + The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + **NOTE**: this feature is in private preview, and may not be available for public use + """ + return pulumi.get(self, "network_stack") + + @network_stack.setter + def network_stack(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "network_stack", value) + @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: @@ -437,6 +455,7 @@ def __init__(__self__, *, load_balancer_urn: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, network: Optional[pulumi.Input[str]] = None, + network_stack: Optional[pulumi.Input[str]] = None, project_id: Optional[pulumi.Input[str]] = None, redirect_http_to_https: Optional[pulumi.Input[bool]] = None, region: Optional[pulumi.Input[Union[str, 'Region']]] = None, @@ -470,6 +489,8 @@ def __init__(__self__, *, :param pulumi.Input[str] load_balancer_urn: The uniform resource name for the Load Balancer :param pulumi.Input[str] name: The Load Balancer name :param pulumi.Input[str] network: The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. + :param pulumi.Input[str] network_stack: The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + **NOTE**: this feature is in private preview, and may not be available for public use :param pulumi.Input[str] project_id: The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. :param pulumi.Input[bool] redirect_http_to_https: A boolean value indicating whether HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443. @@ -521,6 +542,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if network is not None: pulumi.set(__self__, "network", network) + if network_stack is not None: + pulumi.set(__self__, "network_stack", network_stack) if project_id is not None: pulumi.set(__self__, "project_id", project_id) if redirect_http_to_https is not None: @@ -749,6 +772,19 @@ def network(self) -> Optional[pulumi.Input[str]]: def network(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "network", value) + @property + @pulumi.getter(name="networkStack") + def network_stack(self) -> Optional[pulumi.Input[str]]: + """ + The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + **NOTE**: this feature is in private preview, and may not be available for public use + """ + return pulumi.get(self, "network_stack") + + @network_stack.setter + def network_stack(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "network_stack", value) + @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: @@ -890,6 +926,7 @@ def __init__(__self__, http_idle_timeout_seconds: Optional[pulumi.Input[int]] = None, name: Optional[pulumi.Input[str]] = None, network: Optional[pulumi.Input[str]] = None, + network_stack: Optional[pulumi.Input[str]] = None, project_id: Optional[pulumi.Input[str]] = None, redirect_http_to_https: Optional[pulumi.Input[bool]] = None, region: Optional[pulumi.Input[Union[str, 'Region']]] = None, @@ -966,6 +1003,8 @@ def __init__(__self__, :param pulumi.Input[int] http_idle_timeout_seconds: Specifies the idle timeout for HTTPS connections on the load balancer in seconds. :param pulumi.Input[str] name: The Load Balancer name :param pulumi.Input[str] network: The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. + :param pulumi.Input[str] network_stack: The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + **NOTE**: this feature is in private preview, and may not be available for public use :param pulumi.Input[str] project_id: The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. :param pulumi.Input[bool] redirect_http_to_https: A boolean value indicating whether HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443. @@ -1060,6 +1099,7 @@ def _internal_init(__self__, http_idle_timeout_seconds: Optional[pulumi.Input[int]] = None, name: Optional[pulumi.Input[str]] = None, network: Optional[pulumi.Input[str]] = None, + network_stack: Optional[pulumi.Input[str]] = None, project_id: Optional[pulumi.Input[str]] = None, redirect_http_to_https: Optional[pulumi.Input[bool]] = None, region: Optional[pulumi.Input[Union[str, 'Region']]] = None, @@ -1092,6 +1132,7 @@ def _internal_init(__self__, __props__.__dict__["http_idle_timeout_seconds"] = http_idle_timeout_seconds __props__.__dict__["name"] = name __props__.__dict__["network"] = network + __props__.__dict__["network_stack"] = network_stack __props__.__dict__["project_id"] = project_id __props__.__dict__["redirect_http_to_https"] = redirect_http_to_https __props__.__dict__["region"] = region @@ -1132,6 +1173,7 @@ def get(resource_name: str, load_balancer_urn: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, network: Optional[pulumi.Input[str]] = None, + network_stack: Optional[pulumi.Input[str]] = None, project_id: Optional[pulumi.Input[str]] = None, redirect_http_to_https: Optional[pulumi.Input[bool]] = None, region: Optional[pulumi.Input[Union[str, 'Region']]] = None, @@ -1170,6 +1212,8 @@ def get(resource_name: str, :param pulumi.Input[str] load_balancer_urn: The uniform resource name for the Load Balancer :param pulumi.Input[str] name: The Load Balancer name :param pulumi.Input[str] network: The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`. + :param pulumi.Input[str] network_stack: The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + **NOTE**: this feature is in private preview, and may not be available for public use :param pulumi.Input[str] project_id: The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project. :param pulumi.Input[bool] redirect_http_to_https: A boolean value indicating whether HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443. @@ -1205,6 +1249,7 @@ def get(resource_name: str, __props__.__dict__["load_balancer_urn"] = load_balancer_urn __props__.__dict__["name"] = name __props__.__dict__["network"] = network + __props__.__dict__["network_stack"] = network_stack __props__.__dict__["project_id"] = project_id __props__.__dict__["redirect_http_to_https"] = redirect_http_to_https __props__.__dict__["region"] = region @@ -1356,6 +1401,15 @@ def network(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "network") + @property + @pulumi.getter(name="networkStack") + def network_stack(self) -> pulumi.Output[Optional[str]]: + """ + The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`. + **NOTE**: this feature is in private preview, and may not be available for public use + """ + return pulumi.get(self, "network_stack") + @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_digitalocean/outputs.py b/sdk/python/pulumi_digitalocean/outputs.py index cdc125e2..4f46e58e 100644 --- a/sdk/python/pulumi_digitalocean/outputs.py +++ b/sdk/python/pulumi_digitalocean/outputs.py @@ -26,6 +26,7 @@ 'AppSpecEnv', 'AppSpecFunction', 'AppSpecFunctionAlert', + 'AppSpecFunctionBitbucket', 'AppSpecFunctionCors', 'AppSpecFunctionCorsAllowOrigins', 'AppSpecFunctionEnv', @@ -49,6 +50,7 @@ 'AppSpecIngressRuleRedirect', 'AppSpecJob', 'AppSpecJobAlert', + 'AppSpecJobBitbucket', 'AppSpecJobEnv', 'AppSpecJobGit', 'AppSpecJobGithub', @@ -67,6 +69,7 @@ 'AppSpecServiceAutoscaling', 'AppSpecServiceAutoscalingMetrics', 'AppSpecServiceAutoscalingMetricsCpu', + 'AppSpecServiceBitbucket', 'AppSpecServiceCors', 'AppSpecServiceCorsAllowOrigins', 'AppSpecServiceEnv', @@ -85,6 +88,7 @@ 'AppSpecServiceRoute', 'AppSpecServiceTermination', 'AppSpecStaticSite', + 'AppSpecStaticSiteBitbucket', 'AppSpecStaticSiteCors', 'AppSpecStaticSiteCorsAllowOrigins', 'AppSpecStaticSiteEnv', @@ -97,6 +101,7 @@ 'AppSpecWorkerAutoscaling', 'AppSpecWorkerAutoscalingMetrics', 'AppSpecWorkerAutoscalingMetricsCpu', + 'AppSpecWorkerBitbucket', 'AppSpecWorkerEnv', 'AppSpecWorkerGit', 'AppSpecWorkerGithub', @@ -126,6 +131,7 @@ 'FirewallInboundRule', 'FirewallOutboundRule', 'FirewallPendingChange', + 'KubernetesClusterControlPlaneFirewall', 'KubernetesClusterKubeConfig', 'KubernetesClusterMaintenancePolicy', 'KubernetesClusterNodePool', @@ -159,6 +165,7 @@ 'GetAppSpecEnvResult', 'GetAppSpecFunctionResult', 'GetAppSpecFunctionAlertResult', + 'GetAppSpecFunctionBitbucketResult', 'GetAppSpecFunctionCorsResult', 'GetAppSpecFunctionCorsAllowOriginsResult', 'GetAppSpecFunctionEnvResult', @@ -182,6 +189,7 @@ 'GetAppSpecIngressRuleRedirectResult', 'GetAppSpecJobResult', 'GetAppSpecJobAlertResult', + 'GetAppSpecJobBitbucketResult', 'GetAppSpecJobEnvResult', 'GetAppSpecJobGitResult', 'GetAppSpecJobGithubResult', @@ -200,6 +208,7 @@ 'GetAppSpecServiceAutoscalingResult', 'GetAppSpecServiceAutoscalingMetricsResult', 'GetAppSpecServiceAutoscalingMetricsCpuResult', + 'GetAppSpecServiceBitbucketResult', 'GetAppSpecServiceCorsResult', 'GetAppSpecServiceCorsAllowOriginsResult', 'GetAppSpecServiceEnvResult', @@ -218,6 +227,7 @@ 'GetAppSpecServiceRouteResult', 'GetAppSpecServiceTerminationResult', 'GetAppSpecStaticSiteResult', + 'GetAppSpecStaticSiteBitbucketResult', 'GetAppSpecStaticSiteCorsResult', 'GetAppSpecStaticSiteCorsAllowOriginsResult', 'GetAppSpecStaticSiteEnvResult', @@ -230,6 +240,7 @@ 'GetAppSpecWorkerAutoscalingResult', 'GetAppSpecWorkerAutoscalingMetricsResult', 'GetAppSpecWorkerAutoscalingMetricsCpuResult', + 'GetAppSpecWorkerBitbucketResult', 'GetAppSpecWorkerEnvResult', 'GetAppSpecWorkerGitResult', 'GetAppSpecWorkerGithubResult', @@ -822,6 +833,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, name: str, alerts: Optional[Sequence['outputs.AppSpecFunctionAlert']] = None, + bitbucket: Optional['outputs.AppSpecFunctionBitbucket'] = None, cors: Optional['outputs.AppSpecFunctionCors'] = None, envs: Optional[Sequence['outputs.AppSpecFunctionEnv']] = None, git: Optional['outputs.AppSpecFunctionGit'] = None, @@ -833,6 +845,7 @@ def __init__(__self__, *, """ :param str name: The name of the component. :param Sequence['AppSpecFunctionAlertArgs'] alerts: Describes an alert policy for the component. + :param 'AppSpecFunctionBitbucketArgs' bitbucket: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :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. @@ -845,6 +858,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if alerts is not None: pulumi.set(__self__, "alerts", alerts) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if cors is not None: pulumi.set(__self__, "cors", cors) if envs is not None: @@ -878,6 +893,14 @@ def alerts(self) -> Optional[Sequence['outputs.AppSpecFunctionAlert']]: """ return pulumi.get(self, "alerts") + @property + @pulumi.getter + def bitbucket(self) -> Optional['outputs.AppSpecFunctionBitbucket']: + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + @property @pulumi.getter @_utilities.deprecated("""Service level CORS rules are deprecated in favor of ingresses""") @@ -1008,6 +1031,66 @@ def disabled(self) -> Optional[bool]: return pulumi.get(self, "disabled") +@pulumi.output_type +class AppSpecFunctionBitbucket(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "deployOnPush": + suggest = "deploy_on_push" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecFunctionBitbucket. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecFunctionBitbucket.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecFunctionBitbucket.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + branch: Optional[str] = None, + deploy_on_push: Optional[bool] = None, + repo: Optional[str] = None): + """ + :param str branch: The name of the branch to use. + :param bool deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param str repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[str]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[bool]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @property + @pulumi.getter + def repo(self) -> Optional[str]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @pulumi.output_type class AppSpecFunctionCors(dict): @staticmethod @@ -2143,6 +2226,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, name: str, alerts: Optional[Sequence['outputs.AppSpecJobAlert']] = None, + bitbucket: Optional['outputs.AppSpecJobBitbucket'] = None, build_command: Optional[str] = None, dockerfile_path: Optional[str] = None, environment_slug: Optional[str] = None, @@ -2161,6 +2245,7 @@ def __init__(__self__, *, """ :param str name: The name of the component. :param Sequence['AppSpecJobAlertArgs'] alerts: Describes an alert policy for the component. + :param 'AppSpecJobBitbucketArgs' bitbucket: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param str build_command: An optional build command to run while building this component from source. :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. @@ -2184,6 +2269,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if alerts is not None: pulumi.set(__self__, "alerts", alerts) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if dockerfile_path is not None: @@ -2231,6 +2318,14 @@ def alerts(self) -> Optional[Sequence['outputs.AppSpecJobAlert']]: """ return pulumi.get(self, "alerts") + @property + @pulumi.getter + def bitbucket(self) -> Optional['outputs.AppSpecJobBitbucket']: + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[str]: @@ -2419,6 +2514,66 @@ def disabled(self) -> Optional[bool]: return pulumi.get(self, "disabled") +@pulumi.output_type +class AppSpecJobBitbucket(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "deployOnPush": + suggest = "deploy_on_push" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecJobBitbucket. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecJobBitbucket.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecJobBitbucket.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + branch: Optional[str] = None, + deploy_on_push: Optional[bool] = None, + repo: Optional[str] = None): + """ + :param str branch: The name of the branch to use. + :param bool deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param str repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[str]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[bool]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @property + @pulumi.getter + def repo(self) -> Optional[str]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @pulumi.output_type class AppSpecJobEnv(dict): def __init__(__self__, *, @@ -3126,6 +3281,7 @@ def __init__(__self__, *, name: str, alerts: Optional[Sequence['outputs.AppSpecServiceAlert']] = None, autoscaling: Optional['outputs.AppSpecServiceAutoscaling'] = None, + bitbucket: Optional['outputs.AppSpecServiceBitbucket'] = None, build_command: Optional[str] = None, cors: Optional['outputs.AppSpecServiceCors'] = None, dockerfile_path: Optional[str] = None, @@ -3149,6 +3305,7 @@ def __init__(__self__, *, :param str name: The name of the component. :param Sequence['AppSpecServiceAlertArgs'] alerts: Describes an alert policy for the component. :param 'AppSpecServiceAutoscalingArgs' autoscaling: Configuration for automatically scaling this component based on metrics. + :param 'AppSpecServiceBitbucketArgs' bitbucket: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param str build_command: An optional build command to run while building this component from source. :param 'AppSpecServiceCorsArgs' cors: The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. :param str dockerfile_path: The path to a Dockerfile relative to the root of the repo. If set, overrides usage of buildpacks. @@ -3174,6 +3331,8 @@ def __init__(__self__, *, pulumi.set(__self__, "alerts", alerts) if autoscaling is not None: pulumi.set(__self__, "autoscaling", autoscaling) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if cors is not None: @@ -3237,6 +3396,14 @@ def autoscaling(self) -> Optional['outputs.AppSpecServiceAutoscaling']: """ return pulumi.get(self, "autoscaling") + @property + @pulumi.getter + def bitbucket(self) -> Optional['outputs.AppSpecServiceBitbucket']: + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[str]: @@ -3551,6 +3718,66 @@ def percent(self) -> int: return pulumi.get(self, "percent") +@pulumi.output_type +class AppSpecServiceBitbucket(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "deployOnPush": + suggest = "deploy_on_push" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecServiceBitbucket. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecServiceBitbucket.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecServiceBitbucket.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + branch: Optional[str] = None, + deploy_on_push: Optional[bool] = None, + repo: Optional[str] = None): + """ + :param str branch: The name of the branch to use. + :param bool deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param str repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[str]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[bool]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @property + @pulumi.getter + def repo(self) -> Optional[str]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @pulumi.output_type class AppSpecServiceCors(dict): @staticmethod @@ -4584,6 +4811,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, name: str, + bitbucket: Optional['outputs.AppSpecStaticSiteBitbucket'] = None, build_command: Optional[str] = None, catchall_document: Optional[str] = None, cors: Optional['outputs.AppSpecStaticSiteCors'] = None, @@ -4600,6 +4828,7 @@ def __init__(__self__, *, source_dir: Optional[str] = None): """ :param str name: The name of the component. + :param 'AppSpecStaticSiteBitbucketArgs' bitbucket: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param str build_command: An optional build command to run while building this component from source. :param str catchall_document: The name of the document to use as the fallback for any requests to documents that are not found when serving this static site. :param 'AppSpecStaticSiteCorsArgs' cors: The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. @@ -4616,6 +4845,8 @@ def __init__(__self__, *, :param str source_dir: An optional path to the working directory to use for the build. """ pulumi.set(__self__, "name", name) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if catchall_document is not None: @@ -4653,6 +4884,14 @@ def name(self) -> str: """ return pulumi.get(self, "name") + @property + @pulumi.getter + def bitbucket(self) -> Optional['outputs.AppSpecStaticSiteBitbucket']: + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[str]: @@ -4768,6 +5007,66 @@ def source_dir(self) -> Optional[str]: return pulumi.get(self, "source_dir") +@pulumi.output_type +class AppSpecStaticSiteBitbucket(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "deployOnPush": + suggest = "deploy_on_push" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecStaticSiteBitbucket. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecStaticSiteBitbucket.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecStaticSiteBitbucket.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + branch: Optional[str] = None, + deploy_on_push: Optional[bool] = None, + repo: Optional[str] = None): + """ + :param str branch: The name of the branch to use. + :param bool deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param str repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[str]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[bool]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @property + @pulumi.getter + def repo(self) -> Optional[str]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @pulumi.output_type class AppSpecStaticSiteCors(dict): @staticmethod @@ -5226,6 +5525,7 @@ def __init__(__self__, *, name: str, alerts: Optional[Sequence['outputs.AppSpecWorkerAlert']] = None, autoscaling: Optional['outputs.AppSpecWorkerAutoscaling'] = None, + bitbucket: Optional['outputs.AppSpecWorkerBitbucket'] = None, build_command: Optional[str] = None, dockerfile_path: Optional[str] = None, environment_slug: Optional[str] = None, @@ -5244,6 +5544,7 @@ def __init__(__self__, *, :param str name: The name of the component. :param Sequence['AppSpecWorkerAlertArgs'] alerts: Describes an alert policy for the component. :param 'AppSpecWorkerAutoscalingArgs' autoscaling: Configuration for automatically scaling this component based on metrics. + :param 'AppSpecWorkerBitbucketArgs' bitbucket: A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param str build_command: An optional build command to run while building this component from source. :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. @@ -5264,6 +5565,8 @@ def __init__(__self__, *, pulumi.set(__self__, "alerts", alerts) if autoscaling is not None: pulumi.set(__self__, "autoscaling", autoscaling) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if dockerfile_path is not None: @@ -5317,6 +5620,14 @@ def autoscaling(self) -> Optional['outputs.AppSpecWorkerAutoscaling']: """ return pulumi.get(self, "autoscaling") + @property + @pulumi.getter + def bitbucket(self) -> Optional['outputs.AppSpecWorkerBitbucket']: + """ + A GitHub repo to use as the component's source. DigitalOcean App Platform must have [access to the repository](https://cloud.digitalocean.com/apps/bitbucket/install). Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[str]: @@ -5589,6 +5900,66 @@ def percent(self) -> int: return pulumi.get(self, "percent") +@pulumi.output_type +class AppSpecWorkerBitbucket(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "deployOnPush": + suggest = "deploy_on_push" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AppSpecWorkerBitbucket. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AppSpecWorkerBitbucket.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AppSpecWorkerBitbucket.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + branch: Optional[str] = None, + deploy_on_push: Optional[bool] = None, + repo: Optional[str] = None): + """ + :param str branch: The name of the branch to use. + :param bool deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param str repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[str]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[bool]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @property + @pulumi.getter + def repo(self) -> Optional[str]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @pulumi.output_type class AppSpecWorkerEnv(dict): def __init__(__self__, *, @@ -6312,8 +6683,8 @@ def __init__(__self__, *, day: str, hour: str): """ - :param str day: The day of the week on which to apply maintenance updates. - :param str hour: The hour in UTC at which maintenance updates will be applied in 24 hour format. + :param str day: The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. + :param str hour: The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. """ pulumi.set(__self__, "day", day) pulumi.set(__self__, "hour", hour) @@ -6322,7 +6693,7 @@ def __init__(__self__, *, @pulumi.getter def day(self) -> str: """ - The day of the week on which to apply maintenance updates. + The day of the week on which to apply maintenance updates. May be one of `monday` through `sunday`. """ return pulumi.get(self, "day") @@ -6330,7 +6701,7 @@ def day(self) -> str: @pulumi.getter def hour(self) -> str: """ - The hour in UTC at which maintenance updates will be applied in 24 hour format. + The hour in UTC at which maintenance updates will be applied as a string in 24 hour format, e.g. `13:00`. """ return pulumi.get(self, "hour") @@ -7663,12 +8034,48 @@ def removing(self) -> Optional[bool]: @property @pulumi.getter - def status(self) -> Optional[str]: - """ - A status string indicating the current state of the Firewall. - This can be "waiting", "succeeded", or "failed". - """ - return pulumi.get(self, "status") + def status(self) -> Optional[str]: + """ + A status string indicating the current state of the Firewall. + This can be "waiting", "succeeded", or "failed". + """ + return pulumi.get(self, "status") + + +@pulumi.output_type +class KubernetesClusterControlPlaneFirewall(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "allowedAddresses": + suggest = "allowed_addresses" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in KubernetesClusterControlPlaneFirewall. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + KubernetesClusterControlPlaneFirewall.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + KubernetesClusterControlPlaneFirewall.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + allowed_addresses: Sequence[str], + enabled: bool): + pulumi.set(__self__, "allowed_addresses", allowed_addresses) + pulumi.set(__self__, "enabled", enabled) + + @property + @pulumi.getter(name="allowedAddresses") + def allowed_addresses(self) -> Sequence[str]: + return pulumi.get(self, "allowed_addresses") + + @property + @pulumi.getter + def enabled(self) -> bool: + return pulumi.get(self, "enabled") @pulumi.output_type @@ -9770,6 +10177,7 @@ def __init__(__self__, *, name: str, routes: Sequence['outputs.GetAppSpecFunctionRouteResult'], alerts: Optional[Sequence['outputs.GetAppSpecFunctionAlertResult']] = None, + bitbucket: Optional['outputs.GetAppSpecFunctionBitbucketResult'] = None, cors: Optional['outputs.GetAppSpecFunctionCorsResult'] = None, envs: Optional[Sequence['outputs.GetAppSpecFunctionEnvResult']] = None, git: Optional['outputs.GetAppSpecFunctionGitResult'] = None, @@ -9780,11 +10188,12 @@ def __init__(__self__, *, """ :param str name: The name of the component. :param Sequence['GetAppSpecFunctionAlertArgs'] alerts: Describes an alert policy for the component. + :param 'GetAppSpecFunctionBitbucketArgs' bitbucket: A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param 'GetAppSpecFunctionCorsArgs' cors: The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. :param Sequence['GetAppSpecFunctionEnvArgs'] envs: Describes an environment variable made available to an app competent. :param 'GetAppSpecFunctionGitArgs' 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 'GetAppSpecFunctionGithubArgs' 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 'GetAppSpecFunctionGitlabArgs' 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 'GetAppSpecFunctionGithubArgs' 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`, `bitbucket`, `gitlab`, or `image` may be set. + :param 'GetAppSpecFunctionGitlabArgs' 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`, `bitbucket`, `gitlab`, or `image` may be set. :param Sequence['GetAppSpecFunctionLogDestinationArgs'] log_destinations: Describes a log forwarding destination. :param str source_dir: An optional path to the working directory to use for the build. """ @@ -9792,6 +10201,8 @@ def __init__(__self__, *, pulumi.set(__self__, "routes", routes) if alerts is not None: pulumi.set(__self__, "alerts", alerts) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if cors is not None: pulumi.set(__self__, "cors", cors) if envs is not None: @@ -9829,6 +10240,14 @@ def alerts(self) -> Optional[Sequence['outputs.GetAppSpecFunctionAlertResult']]: """ return pulumi.get(self, "alerts") + @property + @pulumi.getter + def bitbucket(self) -> Optional['outputs.GetAppSpecFunctionBitbucketResult']: + """ + A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + @property @pulumi.getter @_utilities.deprecated("""Service level CORS rules are deprecated in favor of ingresses""") @@ -9858,7 +10277,7 @@ def git(self) -> Optional['outputs.GetAppSpecFunctionGitResult']: @pulumi.getter def github(self) -> Optional['outputs.GetAppSpecFunctionGithubResult']: """ - 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. + 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`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "github") @@ -9866,7 +10285,7 @@ def github(self) -> Optional['outputs.GetAppSpecFunctionGithubResult']: @pulumi.getter def gitlab(self) -> Optional['outputs.GetAppSpecFunctionGitlabResult']: """ - 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. + 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`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "gitlab") @@ -9950,6 +10369,49 @@ def disabled(self) -> Optional[bool]: return pulumi.get(self, "disabled") +@pulumi.output_type +class GetAppSpecFunctionBitbucketResult(dict): + def __init__(__self__, *, + branch: Optional[str] = None, + deploy_on_push: Optional[bool] = None, + repo: Optional[str] = None): + """ + :param str branch: The name of the branch to use. + :param bool deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param str repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[str]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[bool]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @property + @pulumi.getter + def repo(self) -> Optional[str]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @pulumi.output_type class GetAppSpecFunctionCorsResult(dict): def __init__(__self__, *, @@ -10796,6 +11258,7 @@ class GetAppSpecJobResult(dict): def __init__(__self__, *, name: str, alerts: Optional[Sequence['outputs.GetAppSpecJobAlertResult']] = None, + bitbucket: Optional['outputs.GetAppSpecJobBitbucketResult'] = None, build_command: Optional[str] = None, dockerfile_path: Optional[str] = None, environment_slug: Optional[str] = None, @@ -10814,14 +11277,15 @@ def __init__(__self__, *, """ :param str name: The name of the component. :param Sequence['GetAppSpecJobAlertArgs'] alerts: Describes an alert policy for the component. + :param 'GetAppSpecJobBitbucketArgs' bitbucket: A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param str build_command: An optional build command to run while building this component from source. :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['GetAppSpecJobEnvArgs'] envs: Describes an environment variable made available to an app competent. :param 'GetAppSpecJobGitArgs' 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 'GetAppSpecJobGithubArgs' 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 'GetAppSpecJobGitlabArgs' 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 'GetAppSpecJobImageArgs' image: An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + :param 'GetAppSpecJobGithubArgs' 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`, `bitbucket`, `gitlab`, or `image` may be set. + :param 'GetAppSpecJobGitlabArgs' 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`, `bitbucket`, `gitlab`, or `image` may be set. + :param 'GetAppSpecJobImageArgs' image: An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param int instance_count: The amount of instances that this component should be scaled to. :param str instance_size_slug: The instance size to use for this component. :param str kind: The type of job and when it will be run during the deployment process. It may be one of: @@ -10837,6 +11301,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if alerts is not None: pulumi.set(__self__, "alerts", alerts) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if dockerfile_path is not None: @@ -10884,6 +11350,14 @@ def alerts(self) -> Optional[Sequence['outputs.GetAppSpecJobAlertResult']]: """ return pulumi.get(self, "alerts") + @property + @pulumi.getter + def bitbucket(self) -> Optional['outputs.GetAppSpecJobBitbucketResult']: + """ + A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[str]: @@ -10928,7 +11402,7 @@ def git(self) -> Optional['outputs.GetAppSpecJobGitResult']: @pulumi.getter def github(self) -> Optional['outputs.GetAppSpecJobGithubResult']: """ - 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. + 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`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "github") @@ -10936,7 +11410,7 @@ def github(self) -> Optional['outputs.GetAppSpecJobGithubResult']: @pulumi.getter def gitlab(self) -> Optional['outputs.GetAppSpecJobGitlabResult']: """ - 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. + 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`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "gitlab") @@ -10944,7 +11418,7 @@ def gitlab(self) -> Optional['outputs.GetAppSpecJobGitlabResult']: @pulumi.getter def image(self) -> Optional['outputs.GetAppSpecJobImageResult']: """ - An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "image") @@ -11072,6 +11546,49 @@ def disabled(self) -> Optional[bool]: return pulumi.get(self, "disabled") +@pulumi.output_type +class GetAppSpecJobBitbucketResult(dict): + def __init__(__self__, *, + branch: Optional[str] = None, + deploy_on_push: Optional[bool] = None, + repo: Optional[str] = None): + """ + :param str branch: The name of the branch to use. + :param bool deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param str repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[str]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[bool]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @property + @pulumi.getter + def repo(self) -> Optional[str]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @pulumi.output_type class GetAppSpecJobEnvResult(dict): def __init__(__self__, *, @@ -11596,6 +12113,7 @@ def __init__(__self__, *, run_command: str, alerts: Optional[Sequence['outputs.GetAppSpecServiceAlertResult']] = None, autoscaling: Optional['outputs.GetAppSpecServiceAutoscalingResult'] = None, + bitbucket: Optional['outputs.GetAppSpecServiceBitbucketResult'] = None, build_command: Optional[str] = None, cors: Optional['outputs.GetAppSpecServiceCorsResult'] = None, dockerfile_path: Optional[str] = None, @@ -11618,16 +12136,17 @@ def __init__(__self__, *, :param str run_command: An optional run command to override the component's default. :param Sequence['GetAppSpecServiceAlertArgs'] alerts: Describes an alert policy for the component. :param 'GetAppSpecServiceAutoscalingArgs' autoscaling: Configuration for automatically scaling this component based on metrics. + :param 'GetAppSpecServiceBitbucketArgs' bitbucket: A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param str build_command: An optional build command to run while building this component from source. :param 'GetAppSpecServiceCorsArgs' cors: The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. :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['GetAppSpecServiceEnvArgs'] envs: Describes an environment variable made available to an app competent. :param 'GetAppSpecServiceGitArgs' 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 'GetAppSpecServiceGithubArgs' 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 'GetAppSpecServiceGitlabArgs' 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 'GetAppSpecServiceGithubArgs' 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`, `bitbucket`, `gitlab`, or `image` may be set. + :param 'GetAppSpecServiceGitlabArgs' 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`, `bitbucket`, `gitlab`, or `image` may be set. :param 'GetAppSpecServiceHealthCheckArgs' health_check: A health check to determine the availability of this component. - :param 'GetAppSpecServiceImageArgs' image: An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + :param 'GetAppSpecServiceImageArgs' image: An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param int instance_count: The amount of instances that this component should be scaled to. :param str instance_size_slug: The instance size to use for this component. :param Sequence['GetAppSpecServiceLogDestinationArgs'] log_destinations: Describes a log forwarding destination. @@ -11643,6 +12162,8 @@ def __init__(__self__, *, pulumi.set(__self__, "alerts", alerts) if autoscaling is not None: pulumi.set(__self__, "autoscaling", autoscaling) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if cors is not None: @@ -11728,6 +12249,14 @@ def autoscaling(self) -> Optional['outputs.GetAppSpecServiceAutoscalingResult']: """ return pulumi.get(self, "autoscaling") + @property + @pulumi.getter + def bitbucket(self) -> Optional['outputs.GetAppSpecServiceBitbucketResult']: + """ + A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[str]: @@ -11781,7 +12310,7 @@ def git(self) -> Optional['outputs.GetAppSpecServiceGitResult']: @pulumi.getter def github(self) -> Optional['outputs.GetAppSpecServiceGithubResult']: """ - 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. + 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`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "github") @@ -11789,7 +12318,7 @@ def github(self) -> Optional['outputs.GetAppSpecServiceGithubResult']: @pulumi.getter def gitlab(self) -> Optional['outputs.GetAppSpecServiceGitlabResult']: """ - 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. + 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`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "gitlab") @@ -11805,7 +12334,7 @@ def health_check(self) -> Optional['outputs.GetAppSpecServiceHealthCheckResult'] @pulumi.getter def image(self) -> Optional['outputs.GetAppSpecServiceImageResult']: """ - An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "image") @@ -11990,6 +12519,49 @@ def percent(self) -> int: return pulumi.get(self, "percent") +@pulumi.output_type +class GetAppSpecServiceBitbucketResult(dict): + def __init__(__self__, *, + branch: Optional[str] = None, + deploy_on_push: Optional[bool] = None, + repo: Optional[str] = None): + """ + :param str branch: The name of the branch to use. + :param bool deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param str repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[str]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[bool]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @property + @pulumi.getter + def repo(self) -> Optional[str]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @pulumi.output_type class GetAppSpecServiceCorsResult(dict): def __init__(__self__, *, @@ -12766,6 +13338,7 @@ class GetAppSpecStaticSiteResult(dict): def __init__(__self__, *, name: str, routes: Sequence['outputs.GetAppSpecStaticSiteRouteResult'], + bitbucket: Optional['outputs.GetAppSpecStaticSiteBitbucketResult'] = None, build_command: Optional[str] = None, catchall_document: Optional[str] = None, cors: Optional['outputs.GetAppSpecStaticSiteCorsResult'] = None, @@ -12781,6 +13354,7 @@ def __init__(__self__, *, source_dir: Optional[str] = None): """ :param str name: The name of the component. + :param 'GetAppSpecStaticSiteBitbucketArgs' bitbucket: A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param str build_command: An optional build command to run while building this component from source. :param str catchall_document: The name of the document to use as the fallback for any requests to documents that are not found when serving this static site. :param 'GetAppSpecStaticSiteCorsArgs' cors: The [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies of the app. @@ -12789,14 +13363,16 @@ def __init__(__self__, *, :param Sequence['GetAppSpecStaticSiteEnvArgs'] 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 'GetAppSpecStaticSiteGitArgs' 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 'GetAppSpecStaticSiteGithubArgs' 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 'GetAppSpecStaticSiteGitlabArgs' 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 'GetAppSpecStaticSiteGithubArgs' 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`, `bitbucket`, `gitlab`, or `image` may be set. + :param 'GetAppSpecStaticSiteGitlabArgs' 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`, `bitbucket`, `gitlab`, or `image` may be set. :param str index_document: The name of the index document to use when serving this static site. :param str output_dir: An optional path to where the built assets will be located, relative to the build context. If not set, App Platform will automatically scan for these directory names: `_static`, `dist`, `public`. :param str source_dir: An optional path to the working directory to use for the build. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "routes", routes) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if catchall_document is not None: @@ -12838,6 +13414,14 @@ def name(self) -> str: def routes(self) -> Sequence['outputs.GetAppSpecStaticSiteRouteResult']: return pulumi.get(self, "routes") + @property + @pulumi.getter + def bitbucket(self) -> Optional['outputs.GetAppSpecStaticSiteBitbucketResult']: + """ + A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[str]: @@ -12907,7 +13491,7 @@ def git(self) -> Optional['outputs.GetAppSpecStaticSiteGitResult']: @pulumi.getter def github(self) -> Optional['outputs.GetAppSpecStaticSiteGithubResult']: """ - 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. + 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`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "github") @@ -12915,7 +13499,7 @@ def github(self) -> Optional['outputs.GetAppSpecStaticSiteGithubResult']: @pulumi.getter def gitlab(self) -> Optional['outputs.GetAppSpecStaticSiteGitlabResult']: """ - 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. + 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`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "gitlab") @@ -12944,6 +13528,49 @@ def source_dir(self) -> Optional[str]: return pulumi.get(self, "source_dir") +@pulumi.output_type +class GetAppSpecStaticSiteBitbucketResult(dict): + def __init__(__self__, *, + branch: Optional[str] = None, + deploy_on_push: Optional[bool] = None, + repo: Optional[str] = None): + """ + :param str branch: The name of the branch to use. + :param bool deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param str repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[str]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[bool]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @property + @pulumi.getter + def repo(self) -> Optional[str]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @pulumi.output_type class GetAppSpecStaticSiteCorsResult(dict): def __init__(__self__, *, @@ -13275,6 +13902,7 @@ def __init__(__self__, *, name: str, alerts: Optional[Sequence['outputs.GetAppSpecWorkerAlertResult']] = None, autoscaling: Optional['outputs.GetAppSpecWorkerAutoscalingResult'] = None, + bitbucket: Optional['outputs.GetAppSpecWorkerBitbucketResult'] = None, build_command: Optional[str] = None, dockerfile_path: Optional[str] = None, environment_slug: Optional[str] = None, @@ -13293,14 +13921,15 @@ def __init__(__self__, *, :param str name: The name of the component. :param Sequence['GetAppSpecWorkerAlertArgs'] alerts: Describes an alert policy for the component. :param 'GetAppSpecWorkerAutoscalingArgs' autoscaling: Configuration for automatically scaling this component based on metrics. + :param 'GetAppSpecWorkerBitbucketArgs' bitbucket: A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param str build_command: An optional build command to run while building this component from source. :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['GetAppSpecWorkerEnvArgs'] envs: Describes an environment variable made available to an app competent. :param 'GetAppSpecWorkerGitArgs' 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 'GetAppSpecWorkerGithubArgs' 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 'GetAppSpecWorkerGitlabArgs' 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 'GetAppSpecWorkerImageArgs' image: An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + :param 'GetAppSpecWorkerGithubArgs' 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`, `bitbucket`, `gitlab`, or `image` may be set. + :param 'GetAppSpecWorkerGitlabArgs' 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`, `bitbucket`, `gitlab`, or `image` may be set. + :param 'GetAppSpecWorkerImageArgs' image: An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. :param int instance_count: The amount of instances that this component should be scaled to. :param str instance_size_slug: The instance size to use for this component. :param Sequence['GetAppSpecWorkerLogDestinationArgs'] log_destinations: Describes a log forwarding destination. @@ -13313,6 +13942,8 @@ def __init__(__self__, *, pulumi.set(__self__, "alerts", alerts) if autoscaling is not None: pulumi.set(__self__, "autoscaling", autoscaling) + if bitbucket is not None: + pulumi.set(__self__, "bitbucket", bitbucket) if build_command is not None: pulumi.set(__self__, "build_command", build_command) if dockerfile_path is not None: @@ -13366,6 +13997,14 @@ def autoscaling(self) -> Optional['outputs.GetAppSpecWorkerAutoscalingResult']: """ return pulumi.get(self, "autoscaling") + @property + @pulumi.getter + def bitbucket(self) -> Optional['outputs.GetAppSpecWorkerBitbucketResult']: + """ + A Bitbucket repo to use as component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. + """ + return pulumi.get(self, "bitbucket") + @property @pulumi.getter(name="buildCommand") def build_command(self) -> Optional[str]: @@ -13410,7 +14049,7 @@ def git(self) -> Optional['outputs.GetAppSpecWorkerGitResult']: @pulumi.getter def github(self) -> Optional['outputs.GetAppSpecWorkerGithubResult']: """ - 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. + 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`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "github") @@ -13418,7 +14057,7 @@ def github(self) -> Optional['outputs.GetAppSpecWorkerGithubResult']: @pulumi.getter def gitlab(self) -> Optional['outputs.GetAppSpecWorkerGitlabResult']: """ - 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. + 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`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "gitlab") @@ -13426,7 +14065,7 @@ def gitlab(self) -> Optional['outputs.GetAppSpecWorkerGitlabResult']: @pulumi.getter def image(self) -> Optional['outputs.GetAppSpecWorkerImageResult']: """ - An image to use as the component's source. Only one of `git`, `github`, `gitlab`, or `image` may be set. + An image to use as the component's source. Only one of `git`, `github`, `bitbucket`, `gitlab`, or `image` may be set. """ return pulumi.get(self, "image") @@ -13619,6 +14258,49 @@ def percent(self) -> int: return pulumi.get(self, "percent") +@pulumi.output_type +class GetAppSpecWorkerBitbucketResult(dict): + def __init__(__self__, *, + branch: Optional[str] = None, + deploy_on_push: Optional[bool] = None, + repo: Optional[str] = None): + """ + :param str branch: The name of the branch to use. + :param bool deploy_on_push: Whether to automatically deploy new commits made to the repo. + :param str repo: The name of the repo in the format `owner/repo`. + """ + if branch is not None: + pulumi.set(__self__, "branch", branch) + if deploy_on_push is not None: + pulumi.set(__self__, "deploy_on_push", deploy_on_push) + if repo is not None: + pulumi.set(__self__, "repo", repo) + + @property + @pulumi.getter + def branch(self) -> Optional[str]: + """ + The name of the branch to use. + """ + return pulumi.get(self, "branch") + + @property + @pulumi.getter(name="deployOnPush") + def deploy_on_push(self) -> Optional[bool]: + """ + Whether to automatically deploy new commits made to the repo. + """ + return pulumi.get(self, "deploy_on_push") + + @property + @pulumi.getter + def repo(self) -> Optional[str]: + """ + The name of the repo in the format `owner/repo`. + """ + return pulumi.get(self, "repo") + + @pulumi.output_type class GetAppSpecWorkerEnvResult(dict): def __init__(__self__, *, diff --git a/upstream b/upstream index 5b71718e..55b57f51 160000 --- a/upstream +++ b/upstream @@ -1 +1 @@ -Subproject commit 5b71718e46b212e9d1f8c7cfe25b3b98b5368463 +Subproject commit 55b57f518db3f7c259af43a0d1d5f92712d25c19