diff --git a/provider/cmd/pulumi-resource-stackit/bridge-metadata.json b/provider/cmd/pulumi-resource-stackit/bridge-metadata.json index d155761..af66f51 100644 --- a/provider/cmd/pulumi-resource-stackit/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-stackit/bridge-metadata.json @@ -471,6 +471,9 @@ }, "tls_ciphers": { "maxItemsOne": false + }, + "tls_protocols": { + "maxItemsOne": false } } } @@ -1143,6 +1146,9 @@ }, "tls_ciphers": { "maxItemsOne": false + }, + "tls_protocols": { + "maxItemsOne": false } } } diff --git a/provider/cmd/pulumi-resource-stackit/schema.json b/provider/cmd/pulumi-resource-stackit/schema.json index 9597216..3128187 100644 --- a/provider/cmd/pulumi-resource-stackit/schema.json +++ b/provider/cmd/pulumi-resource-stackit/schema.json @@ -134,6 +134,14 @@ "type": "string", "description": "Custom endpoint for the Observability service" }, + "oidcRequestToken": { + "type": "string", + "description": "The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect." + }, + "oidcRequestUrl": { + "type": "string", + "description": "The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect." + }, "opensearchCustomEndpoint": { "type": "string", "description": "Custom endpoint for the OpenSearch service" @@ -189,8 +197,15 @@ }, "serviceAccountEmail": { "type": "string", - "description": "Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource.", - "deprecationMessage": "The \u003cspan pulumi-lang-nodejs=\"`serviceAccountEmail`\" pulumi-lang-dotnet=\"`ServiceAccountEmail`\" pulumi-lang-go=\"`serviceAccountEmail`\" pulumi-lang-python=\"`service_account_email`\" pulumi-lang-yaml=\"`serviceAccountEmail`\" pulumi-lang-java=\"`serviceAccountEmail`\"\u003e`service_account_email`\u003c/span\u003e field has been deprecated because it is not required. Will be removed after June 12th 2025." + "description": "Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication." + }, + "serviceAccountFederatedToken": { + "type": "string", + "description": "The OIDC ID token for use when authenticating as a Service Account using OpenID Connect." + }, + "serviceAccountFederatedTokenPath": { + "type": "string", + "description": "Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE." }, "serviceAccountKey": { "type": "string", @@ -224,6 +239,10 @@ "tokenCustomEndpoint": { "type": "string", "description": "Custom endpoint for the token API, which is used to request access tokens when using the key flow" + }, + "useOidc": { + "type": "boolean", + "description": "Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e." } } }, @@ -1866,8 +1885,11 @@ "description": "List of TLS ciphers to use.\n" }, "tlsProtocols": { - "type": "string", - "description": "TLS protocol to use.\n" + "type": "array", + "items": { + "type": "string" + }, + "description": "TLS protocol versions to use.\n" } }, "type": "object", @@ -4580,8 +4602,11 @@ "description": "List of TLS ciphers to use.\n" }, "tlsProtocols": { - "type": "string", - "description": "TLS protocol to use.\n" + "type": "array", + "items": { + "type": "string" + }, + "description": "TLS protocol versions to use.\n" } }, "type": "object", @@ -5039,7 +5064,7 @@ }, "rrule": { "type": "string", - "description": "Backup schedule described in \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (recurrence rule) format.\n" + "description": "An \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates.\n" } }, "type": "object", @@ -5113,7 +5138,7 @@ }, "maintenanceWindow": { "type": "integer", - "description": "Maintenance window [1..24].\n" + "description": "Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart.\n" }, "name": { "type": "string", @@ -5121,7 +5146,7 @@ }, "rrule": { "type": "string", - "description": "Update schedule described in \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (recurrence rule) format.\n" + "description": "An \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates.\n" }, "updateScheduleId": { "type": "integer" @@ -5831,6 +5856,14 @@ "type": "string", "description": "Custom endpoint for the Observability service" }, + "oidcRequestToken": { + "type": "string", + "description": "The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect." + }, + "oidcRequestUrl": { + "type": "string", + "description": "The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect." + }, "opensearchCustomEndpoint": { "type": "string", "description": "Custom endpoint for the OpenSearch service" @@ -5886,8 +5919,15 @@ }, "serviceAccountEmail": { "type": "string", - "description": "Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource.", - "deprecationMessage": "The \u003cspan pulumi-lang-nodejs=\"`serviceAccountEmail`\" pulumi-lang-dotnet=\"`ServiceAccountEmail`\" pulumi-lang-go=\"`serviceAccountEmail`\" pulumi-lang-python=\"`service_account_email`\" pulumi-lang-yaml=\"`serviceAccountEmail`\" pulumi-lang-java=\"`serviceAccountEmail`\"\u003e`service_account_email`\u003c/span\u003e field has been deprecated because it is not required. Will be removed after June 12th 2025." + "description": "Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication." + }, + "serviceAccountFederatedToken": { + "type": "string", + "description": "The OIDC ID token for use when authenticating as a Service Account using OpenID Connect." + }, + "serviceAccountFederatedTokenPath": { + "type": "string", + "description": "Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE." }, "serviceAccountKey": { "type": "string", @@ -5921,6 +5961,10 @@ "tokenCustomEndpoint": { "type": "string", "description": "Custom endpoint for the token API, which is used to request access tokens when using the key flow" + }, + "useOidc": { + "type": "boolean", + "description": "Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e." } }, "inputProperties": { @@ -6003,6 +6047,14 @@ "type": "string", "description": "Custom endpoint for the Observability service" }, + "oidcRequestToken": { + "type": "string", + "description": "The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect." + }, + "oidcRequestUrl": { + "type": "string", + "description": "The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect." + }, "opensearchCustomEndpoint": { "type": "string", "description": "Custom endpoint for the OpenSearch service" @@ -6058,8 +6110,15 @@ }, "serviceAccountEmail": { "type": "string", - "description": "Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource.", - "deprecationMessage": "The \u003cspan pulumi-lang-nodejs=\"`serviceAccountEmail`\" pulumi-lang-dotnet=\"`ServiceAccountEmail`\" pulumi-lang-go=\"`serviceAccountEmail`\" pulumi-lang-python=\"`service_account_email`\" pulumi-lang-yaml=\"`serviceAccountEmail`\" pulumi-lang-java=\"`serviceAccountEmail`\"\u003e`service_account_email`\u003c/span\u003e field has been deprecated because it is not required. Will be removed after June 12th 2025." + "description": "Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication." + }, + "serviceAccountFederatedToken": { + "type": "string", + "description": "The OIDC ID token for use when authenticating as a Service Account using OpenID Connect." + }, + "serviceAccountFederatedTokenPath": { + "type": "string", + "description": "Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE." }, "serviceAccountKey": { "type": "string", @@ -6093,6 +6152,10 @@ "tokenCustomEndpoint": { "type": "string", "description": "Custom endpoint for the token API, which is used to request access tokens when using the key flow" + }, + "useOidc": { + "type": "boolean", + "description": "Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e." } }, "methods": { @@ -14651,7 +14714,7 @@ }, "rrule": { "type": "string", - "description": "Backup schedule described in \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (recurrence rule) format.\n" + "description": "An \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates.\n" }, "serverId": { "type": "string", @@ -14691,7 +14754,7 @@ }, "rrule": { "type": "string", - "description": "Backup schedule described in \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (recurrence rule) format.\n" + "description": "An \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates.\n" }, "serverId": { "type": "string", @@ -14734,7 +14797,7 @@ }, "rrule": { "type": "string", - "description": "Backup schedule described in \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (recurrence rule) format.\n" + "description": "An \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates.\n" }, "serverId": { "type": "string", @@ -14897,7 +14960,7 @@ }, "maintenanceWindow": { "type": "integer", - "description": "Maintenance window [1..24].\n" + "description": "Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart.\n" }, "name": { "type": "string", @@ -14913,7 +14976,7 @@ }, "rrule": { "type": "string", - "description": "Update schedule described in \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (recurrence rule) format.\n" + "description": "An \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates.\n" }, "serverId": { "type": "string", @@ -14941,7 +15004,7 @@ }, "maintenanceWindow": { "type": "integer", - "description": "Maintenance window [1..24].\n" + "description": "Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart.\n" }, "name": { "type": "string", @@ -14957,7 +15020,7 @@ }, "rrule": { "type": "string", - "description": "Update schedule described in \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (recurrence rule) format.\n" + "description": "An \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates.\n" }, "serverId": { "type": "string", @@ -14980,7 +15043,7 @@ }, "maintenanceWindow": { "type": "integer", - "description": "Maintenance window [1..24].\n" + "description": "Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart.\n" }, "name": { "type": "string", @@ -14996,7 +15059,7 @@ }, "rrule": { "type": "string", - "description": "Update schedule described in \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (recurrence rule) format.\n" + "description": "An \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates.\n" }, "serverId": { "type": "string", @@ -21904,7 +21967,7 @@ }, "rrule": { "type": "string", - "description": "Backup schedule described in \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (recurrence rule) format.\n" + "description": "An \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates.\n" }, "serverId": { "type": "string", @@ -22023,7 +22086,7 @@ }, "maintenanceWindow": { "type": "integer", - "description": "Maintenance window [1..24].\n" + "description": "Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart.\n" }, "name": { "type": "string", @@ -22039,7 +22102,7 @@ }, "rrule": { "type": "string", - "description": "Update schedule described in \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (recurrence rule) format.\n" + "description": "An \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates.\n" }, "serverId": { "type": "string", @@ -22586,7 +22649,7 @@ }, "versionState": { "type": "string", - "description": "If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`.\n" + "description": "If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`.\n" } }, "type": "object" @@ -22611,7 +22674,7 @@ }, "versionState": { "type": "string", - "description": "If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`.\n" + "description": "If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`.\n" } }, "type": "object", @@ -22632,7 +22695,7 @@ }, "versionState": { "type": "string", - "description": "Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`.\n" + "description": "Filter returned machine image versions by their state. Possible values are: `SUPPORTED`.\n" } }, "type": "object" @@ -22657,7 +22720,7 @@ }, "versionState": { "type": "string", - "description": "Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`.\n" + "description": "Filter returned machine image versions by their state. Possible values are: `SUPPORTED`.\n" } }, "type": "object", diff --git a/provider/go.mod b/provider/go.mod index 5f3d2e4..4a7f26d 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -156,7 +156,7 @@ require ( github.com/spf13/pflag v1.0.10 // indirect github.com/stackitcloud/stackit-sdk-go/core v0.21.1 // indirect github.com/stackitcloud/stackit-sdk-go/services/authorization v0.12.0 // indirect - github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.4 // indirect + github.com/stackitcloud/stackit-sdk-go/services/cdn v1.10.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.6 // indirect github.com/stackitcloud/stackit-sdk-go/services/edge v0.4.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/git v0.10.3 // indirect @@ -172,19 +172,19 @@ require ( github.com/stackitcloud/stackit-sdk-go/services/observability v0.16.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/opensearch v0.24.6 // indirect github.com/stackitcloud/stackit-sdk-go/services/postgresflex v1.3.5 // indirect - github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.25.6 // indirect + github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.26.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/redis v0.25.6 // indirect github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.18.5 // indirect github.com/stackitcloud/stackit-sdk-go/services/scf v0.4.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.14.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.8 // indirect github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.6 // indirect - github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.6 // indirect + github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.12.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.7 // indirect github.com/stackitcloud/stackit-sdk-go/services/sfs v0.3.0 // indirect - github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.3 // indirect + github.com/stackitcloud/stackit-sdk-go/services/ske v1.7.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.3 // indirect - github.com/stackitcloud/terraform-provider-stackit v0.81.0 // indirect + github.com/stackitcloud/terraform-provider-stackit v0.82.0 // indirect github.com/stretchr/objx v0.5.2 // indirect github.com/teambition/rrule-go v1.8.2 // indirect github.com/teekennedy/goldmark-markdown v0.3.0 // indirect @@ -208,7 +208,7 @@ require ( go.uber.org/atomic v1.9.0 // indirect golang.org/x/crypto v0.47.0 // indirect golang.org/x/exp v0.0.0-20250718183923-645b1fa84792 // indirect - golang.org/x/mod v0.32.0 // indirect + golang.org/x/mod v0.33.0 // indirect golang.org/x/net v0.49.0 // indirect golang.org/x/oauth2 v0.32.0 // indirect golang.org/x/sync v0.19.0 // indirect diff --git a/provider/go.sum b/provider/go.sum index 45b9d35..12b6cd4 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1357,8 +1357,8 @@ github.com/stackitcloud/stackit-sdk-go/core v0.21.1 h1:Y/PcAgM7DPYMNqum0MLv4n1mF github.com/stackitcloud/stackit-sdk-go/core v0.21.1/go.mod h1:osMglDby4csGZ5sIfhNyYq1bS1TxIdPY88+skE/kkmI= github.com/stackitcloud/stackit-sdk-go/services/authorization v0.12.0 h1:HxPgBu04j5tj6nfZ2r0l6v4VXC0/tYOGe4sA5Addra8= github.com/stackitcloud/stackit-sdk-go/services/authorization v0.12.0/go.mod h1:uYI9pHAA2g84jJN25ejFUxa0/JtfpPZqMDkctQ1BzJk= -github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.4 h1:6xBogGvhlw/F74g2aK1iSRoOUdiP37pjRK9DTgNZF3o= -github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.4/go.mod h1:vvWMnaLTsgAj9bTUwrCkC9NN+U4NCXMCOAkU8ExlReE= +github.com/stackitcloud/stackit-sdk-go/services/cdn v1.10.0 h1:YALzjYAApyQMKyt4C2LKhPRZHa6brmbFeKuuwl+KOTs= +github.com/stackitcloud/stackit-sdk-go/services/cdn v1.10.0/go.mod h1:915b/lJgDikYFEoRQ8wc8aCtPvUCceYk7gGm9nViJe0= github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.6 h1:GBRb49x5Nax/oQQaaf2F3kKwv8DQQOL0TQOC0C/v/Ew= github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.6/go.mod h1:IX9iL3MigDZUmzwswTJMfYvyi118KAHrFMfjJUy5NYk= github.com/stackitcloud/stackit-sdk-go/services/edge v0.4.3 h1:TxChb2qbO82JiQEBYClSSD5HZxqKeKJ6dIvkEUCJmbs= @@ -1389,8 +1389,8 @@ github.com/stackitcloud/stackit-sdk-go/services/opensearch v0.24.6 h1:oTVx1+O177 github.com/stackitcloud/stackit-sdk-go/services/opensearch v0.24.6/go.mod h1:6ZBeCCY6qG8w1oK7osf61Egyv3mp7Ahv6GDGxiarDGo= github.com/stackitcloud/stackit-sdk-go/services/postgresflex v1.3.5 h1:H67e3KnHQx954yI8fuQmxXwRf/myqAdLg2KvxImp00g= github.com/stackitcloud/stackit-sdk-go/services/postgresflex v1.3.5/go.mod h1:xmAWk9eom8wznvLuLfm0F4xyeiBX8LaggXsKFmos+dw= -github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.25.6 h1:+TFfl1ON/uM5aO0FdkBNYKBa7vx0zrCYVtX6zvqQYBA= -github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.25.6/go.mod h1:hnhvlLX1Y71R8KIQqLBeoSZqkU5ZJOG0J4wz0LeUdaw= +github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.26.0 h1:/8lmviszgrB+0Cz7HdhFELyTiTeqIs7LfnI6sNX4rW8= +github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.26.0/go.mod h1:hnhvlLX1Y71R8KIQqLBeoSZqkU5ZJOG0J4wz0LeUdaw= github.com/stackitcloud/stackit-sdk-go/services/redis v0.25.6 h1:CXM9cZ9WeTyJd+Aw/hnJnDsKRVAQi4qgtd0RJ3zoPwo= github.com/stackitcloud/stackit-sdk-go/services/redis v0.25.6/go.mod h1:KJNceOHRefjku1oVBoHG7idCS/SeW42WJ+55bN3AxrQ= github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.18.5 h1:MZ5aTO2NQ1Jecmi67ByGskve5nKXHl91fE+z+vFjxt4= @@ -1403,18 +1403,18 @@ github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.8 h1:LLyANBzE8 github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.8/go.mod h1:/bmg57XZu+bGczzcoumrukiGMPGzI2mOyTT4BVIQUBs= github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.6 h1:sQ3fdtUjgIL2Ul8nRYVVacHOwi5aSMTGGbYVL30oQBU= github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.6/go.mod h1:3fjlL+9YtuI9Oocl1ZeYIK48ImtY4DwPggFhqAygr7o= -github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.6 h1:WU76mZkJP6diMDjGFqM8On6fZhUDmGcy6ppX0+kWx9Y= -github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.6/go.mod h1:hRllU+yEJM6ovrLeXwVeT5hI70ftPKjX4z/Nj8TZqJw= +github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.12.0 h1:l1EDIlXce2C8JcbBDHVa6nZ4SjPTqmnALTgrhms+NKI= +github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.12.0/go.mod h1:EXq8/J7t9p8zPmdIq+atuxyAbnQwxrQT18fI+Qpv98k= github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.7 h1:M2PYLF8k3zmAwYWSKfUiCTNTXr7ROGuJganVVEQA3YI= github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.7/go.mod h1:jitkQuP2K/SH63Qor0C4pcqz1GDCy/lK2H4t8/VDse4= github.com/stackitcloud/stackit-sdk-go/services/sfs v0.3.0 h1:4567q2dFp3Hw+5Kx+NLDKDcMWsRHMazTlh5aBrhlkXs= github.com/stackitcloud/stackit-sdk-go/services/sfs v0.3.0/go.mod h1:r5lBwzJpJe2xBIYctkVIIpaZ41Y6vUEpkmsWR2VoQJs= -github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.3 h1:c+nQMvSml08cdRF1kE24vCw0r/l56olP/svQyhcnKOs= -github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.3/go.mod h1:1Jr+ImrmPERxbYnlTy6O2aSZYNnREf2qQyysv6YC1RY= +github.com/stackitcloud/stackit-sdk-go/services/ske v1.7.0 h1:l1QjxW7sdE/6B6BZtHxbmus8XJdI9KDuXX3fwUa5fog= +github.com/stackitcloud/stackit-sdk-go/services/ske v1.7.0/go.mod h1:1Jr+ImrmPERxbYnlTy6O2aSZYNnREf2qQyysv6YC1RY= github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.3 h1:AQrcr+qeIuZob+3TT2q1L4WOPtpsu5SEpkTnOUHDqfE= github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.3/go.mod h1:8BBGC69WFXWWmKgzSjgE4HvsI7pEgO0RN2cASwuPJ18= -github.com/stackitcloud/terraform-provider-stackit v0.81.0 h1:cn7kxRh6HaJfftltBpzPvpExCLWv14SAvIjkWCm/vnA= -github.com/stackitcloud/terraform-provider-stackit v0.81.0/go.mod h1:s3bbv1ArMoxMLNESXmAKIilc1dEVagOPLlf7qBKIcUk= +github.com/stackitcloud/terraform-provider-stackit v0.82.0 h1:oVzeVRjzD3KhclDD8sqVibrkNkx1O7GGPa1+AqJc8ls= +github.com/stackitcloud/terraform-provider-stackit v0.82.0/go.mod h1:DS1QF3BSi+TbIKuA+v8Ds/Chxn4GABJjxhuyBxkXo08= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= @@ -1601,8 +1601,8 @@ golang.org/x/mod v0.9.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= -golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= -golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= +golang.org/x/mod v0.33.0 h1:tHFzIWbBifEmbwtGz65eaWyGiGZatSrT9prnU8DbVL8= +golang.org/x/mod v0.33.0/go.mod h1:swjeQEj+6r7fODbD2cqrnje9PnziFuw4bmLbBZFrQ5w= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= diff --git a/provider/shim/go.mod b/provider/shim/go.mod index 915d1a2..4db4785 100644 --- a/provider/shim/go.mod +++ b/provider/shim/go.mod @@ -4,7 +4,7 @@ go 1.24.0 toolchain go1.24.2 -require github.com/stackitcloud/terraform-provider-stackit v0.81.0 +require github.com/stackitcloud/terraform-provider-stackit v0.82.0 require ( github.com/stackitcloud/stackit-sdk-go/services/edge v0.4.3 // indirect @@ -33,7 +33,7 @@ require ( github.com/mitchellh/go-testing-interface v1.14.1 // indirect github.com/stackitcloud/stackit-sdk-go/core v0.21.1 // indirect github.com/stackitcloud/stackit-sdk-go/services/authorization v0.12.0 // indirect - github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.4 // indirect + github.com/stackitcloud/stackit-sdk-go/services/cdn v1.10.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.6 // indirect github.com/stackitcloud/stackit-sdk-go/services/git v0.10.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/iaas v1.3.5 // indirect @@ -46,19 +46,19 @@ require ( github.com/stackitcloud/stackit-sdk-go/services/observability v0.16.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/opensearch v0.24.6 // indirect github.com/stackitcloud/stackit-sdk-go/services/postgresflex v1.3.5 // indirect - github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.25.6 // indirect + github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.26.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/redis v0.25.6 // indirect github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.18.5 // indirect github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.14.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.8 // indirect github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.6 // indirect - github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.6 // indirect + github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.12.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.7 // indirect - github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.3 // indirect + github.com/stackitcloud/stackit-sdk-go/services/ske v1.7.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.3 // indirect github.com/teambition/rrule-go v1.8.2 // indirect github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect - golang.org/x/mod v0.32.0 // indirect + golang.org/x/mod v0.33.0 // indirect golang.org/x/sys v0.40.0 // indirect ) diff --git a/provider/shim/go.sum b/provider/shim/go.sum index 99db3e0..b2dbf6a 100644 --- a/provider/shim/go.sum +++ b/provider/shim/go.sum @@ -86,8 +86,8 @@ github.com/stackitcloud/stackit-sdk-go/core v0.21.1 h1:Y/PcAgM7DPYMNqum0MLv4n1mF github.com/stackitcloud/stackit-sdk-go/core v0.21.1/go.mod h1:osMglDby4csGZ5sIfhNyYq1bS1TxIdPY88+skE/kkmI= github.com/stackitcloud/stackit-sdk-go/services/authorization v0.12.0 h1:HxPgBu04j5tj6nfZ2r0l6v4VXC0/tYOGe4sA5Addra8= github.com/stackitcloud/stackit-sdk-go/services/authorization v0.12.0/go.mod h1:uYI9pHAA2g84jJN25ejFUxa0/JtfpPZqMDkctQ1BzJk= -github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.4 h1:6xBogGvhlw/F74g2aK1iSRoOUdiP37pjRK9DTgNZF3o= -github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.4/go.mod h1:vvWMnaLTsgAj9bTUwrCkC9NN+U4NCXMCOAkU8ExlReE= +github.com/stackitcloud/stackit-sdk-go/services/cdn v1.10.0 h1:YALzjYAApyQMKyt4C2LKhPRZHa6brmbFeKuuwl+KOTs= +github.com/stackitcloud/stackit-sdk-go/services/cdn v1.10.0/go.mod h1:915b/lJgDikYFEoRQ8wc8aCtPvUCceYk7gGm9nViJe0= github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.6 h1:GBRb49x5Nax/oQQaaf2F3kKwv8DQQOL0TQOC0C/v/Ew= github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.6/go.mod h1:IX9iL3MigDZUmzwswTJMfYvyi118KAHrFMfjJUy5NYk= github.com/stackitcloud/stackit-sdk-go/services/edge v0.4.3 h1:TxChb2qbO82JiQEBYClSSD5HZxqKeKJ6dIvkEUCJmbs= @@ -118,8 +118,8 @@ github.com/stackitcloud/stackit-sdk-go/services/opensearch v0.24.6 h1:oTVx1+O177 github.com/stackitcloud/stackit-sdk-go/services/opensearch v0.24.6/go.mod h1:6ZBeCCY6qG8w1oK7osf61Egyv3mp7Ahv6GDGxiarDGo= github.com/stackitcloud/stackit-sdk-go/services/postgresflex v1.3.5 h1:H67e3KnHQx954yI8fuQmxXwRf/myqAdLg2KvxImp00g= github.com/stackitcloud/stackit-sdk-go/services/postgresflex v1.3.5/go.mod h1:xmAWk9eom8wznvLuLfm0F4xyeiBX8LaggXsKFmos+dw= -github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.25.6 h1:+TFfl1ON/uM5aO0FdkBNYKBa7vx0zrCYVtX6zvqQYBA= -github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.25.6/go.mod h1:hnhvlLX1Y71R8KIQqLBeoSZqkU5ZJOG0J4wz0LeUdaw= +github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.26.0 h1:/8lmviszgrB+0Cz7HdhFELyTiTeqIs7LfnI6sNX4rW8= +github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.26.0/go.mod h1:hnhvlLX1Y71R8KIQqLBeoSZqkU5ZJOG0J4wz0LeUdaw= github.com/stackitcloud/stackit-sdk-go/services/redis v0.25.6 h1:CXM9cZ9WeTyJd+Aw/hnJnDsKRVAQi4qgtd0RJ3zoPwo= github.com/stackitcloud/stackit-sdk-go/services/redis v0.25.6/go.mod h1:KJNceOHRefjku1oVBoHG7idCS/SeW42WJ+55bN3AxrQ= github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.18.5 h1:MZ5aTO2NQ1Jecmi67ByGskve5nKXHl91fE+z+vFjxt4= @@ -132,21 +132,22 @@ github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.8 h1:LLyANBzE8 github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.8/go.mod h1:/bmg57XZu+bGczzcoumrukiGMPGzI2mOyTT4BVIQUBs= github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.6 h1:sQ3fdtUjgIL2Ul8nRYVVacHOwi5aSMTGGbYVL30oQBU= github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.6/go.mod h1:3fjlL+9YtuI9Oocl1ZeYIK48ImtY4DwPggFhqAygr7o= -github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.6 h1:WU76mZkJP6diMDjGFqM8On6fZhUDmGcy6ppX0+kWx9Y= -github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.6/go.mod h1:hRllU+yEJM6ovrLeXwVeT5hI70ftPKjX4z/Nj8TZqJw= +github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.12.0 h1:l1EDIlXce2C8JcbBDHVa6nZ4SjPTqmnALTgrhms+NKI= +github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.12.0/go.mod h1:EXq8/J7t9p8zPmdIq+atuxyAbnQwxrQT18fI+Qpv98k= github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.7 h1:M2PYLF8k3zmAwYWSKfUiCTNTXr7ROGuJganVVEQA3YI= github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.7/go.mod h1:jitkQuP2K/SH63Qor0C4pcqz1GDCy/lK2H4t8/VDse4= github.com/stackitcloud/stackit-sdk-go/services/sfs v0.3.0 h1:4567q2dFp3Hw+5Kx+NLDKDcMWsRHMazTlh5aBrhlkXs= github.com/stackitcloud/stackit-sdk-go/services/sfs v0.3.0/go.mod h1:r5lBwzJpJe2xBIYctkVIIpaZ41Y6vUEpkmsWR2VoQJs= -github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.3 h1:c+nQMvSml08cdRF1kE24vCw0r/l56olP/svQyhcnKOs= -github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.3/go.mod h1:1Jr+ImrmPERxbYnlTy6O2aSZYNnREf2qQyysv6YC1RY= +github.com/stackitcloud/stackit-sdk-go/services/ske v1.7.0 h1:l1QjxW7sdE/6B6BZtHxbmus8XJdI9KDuXX3fwUa5fog= +github.com/stackitcloud/stackit-sdk-go/services/ske v1.7.0/go.mod h1:1Jr+ImrmPERxbYnlTy6O2aSZYNnREf2qQyysv6YC1RY= github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.3 h1:AQrcr+qeIuZob+3TT2q1L4WOPtpsu5SEpkTnOUHDqfE= github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.3/go.mod h1:8BBGC69WFXWWmKgzSjgE4HvsI7pEgO0RN2cASwuPJ18= -github.com/stackitcloud/terraform-provider-stackit v0.81.0 h1:cn7kxRh6HaJfftltBpzPvpExCLWv14SAvIjkWCm/vnA= -github.com/stackitcloud/terraform-provider-stackit v0.81.0/go.mod h1:s3bbv1ArMoxMLNESXmAKIilc1dEVagOPLlf7qBKIcUk= +github.com/stackitcloud/terraform-provider-stackit v0.82.0 h1:oVzeVRjzD3KhclDD8sqVibrkNkx1O7GGPa1+AqJc8ls= +github.com/stackitcloud/terraform-provider-stackit v0.82.0/go.mod h1:DS1QF3BSi+TbIKuA+v8Ds/Chxn4GABJjxhuyBxkXo08= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= +github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= github.com/teambition/rrule-go v1.8.2 h1:lIjpjvWTj9fFUZCmuoVDrKVOtdiyzbzc93qTmRVe/J8= github.com/teambition/rrule-go v1.8.2/go.mod h1:Ieq5AbrKGciP1V//Wq8ktsTXwSwJHDD5mD/wLBGl3p4= github.com/vmihailenco/msgpack v4.0.4+incompatible h1:dSLoQfGFAo3F6OoNhwUmLwVgaUXK79GlxNBwueZn0xI= @@ -158,8 +159,8 @@ github.com/vmihailenco/tagparser/v2 v2.0.0/go.mod h1:Wri+At7QHww0WTrCBeu4J6bNtoV github.com/zclconf/go-cty v1.17.0 h1:seZvECve6XX4tmnvRzWtJNHdscMtYEx5R7bnnVyd/d0= github.com/zclconf/go-cty v1.17.0/go.mod h1:wqFzcImaLTI6A5HfsRwB0nj5n0MRZFwmey8YoFPPs3U= golang.org/x/crypto v0.47.0 h1:V6e3FRj+n4dbpw86FJ8Fv7XVOql7TEwpHapKoMJ/GO8= -golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= -golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= +golang.org/x/mod v0.33.0 h1:tHFzIWbBifEmbwtGz65eaWyGiGZatSrT9prnU8DbVL8= +golang.org/x/mod v0.33.0/go.mod h1:swjeQEj+6r7fODbD2cqrnje9PnziFuw4bmLbBZFrQ5w= golang.org/x/net v0.49.0 h1:eeHFmOGUTtaaPSGNmjBKpbng9MulQsJURQUAfUwY++o= golang.org/x/net v0.49.0/go.mod h1:/ysNB2EvaqvesRkuLAyjI1ycPZlQHM3q01F02UY/MV8= golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4= @@ -177,8 +178,11 @@ golang.org/x/tools v0.41.0 h1:a9b8iMweWG+S0OBnlU36rzLp20z1Rp10w+IY2czHTQc= google.golang.org/appengine v1.6.8 h1:IhEN5q69dyKagZPYMSdIjS2HqprW324FRQZJcGqPAsM= google.golang.org/appengine v1.6.8/go.mod h1:1jJ3jBArFh5pcgW8gCtRJnepW8FzD1V44FJffLiz/Ds= google.golang.org/genproto/googleapis/rpc v0.0.0-20251202230838-ff82c1b0f217 h1:gRkg/vSppuSQoDjxyiGfN4Upv/h/DQmIR10ZU8dh4Ww= +google.golang.org/genproto/googleapis/rpc v0.0.0-20251202230838-ff82c1b0f217/go.mod h1:7i2o+ce6H/6BluujYR+kqX3GKH+dChPTQU19wjRPiGk= google.golang.org/grpc v1.77.0 h1:wVVY6/8cGA6vvffn+wWK5ToddbgdU3d8MNENr4evgXM= +google.golang.org/grpc v1.77.0/go.mod h1:z0BY1iVj0q8E1uSQCjL9cppRj+gnZjzDnzV0dHhrNig= google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE= +google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/sdk/dotnet/Config/Config.cs b/sdk/dotnet/Config/Config.cs index fe14336..74b0f9d 100644 --- a/sdk/dotnet/Config/Config.cs +++ b/sdk/dotnet/Config/Config.cs @@ -222,6 +222,26 @@ public static string? ObservabilityCustomEndpoint set => _observabilityCustomEndpoint.Set(value); } + private static readonly __Value _oidcRequestToken = new __Value(() => __config.Get("oidcRequestToken")); + /// + /// The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + /// + public static string? OidcRequestToken + { + get => _oidcRequestToken.Get(); + set => _oidcRequestToken.Set(value); + } + + private static readonly __Value _oidcRequestUrl = new __Value(() => __config.Get("oidcRequestUrl")); + /// + /// The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + /// + public static string? OidcRequestUrl + { + get => _oidcRequestUrl.Get(); + set => _oidcRequestUrl.Set(value); + } + private static readonly __Value _opensearchCustomEndpoint = new __Value(() => __config.Get("opensearchCustomEndpoint")); /// /// Custom endpoint for the OpenSearch service @@ -354,7 +374,7 @@ public static string? ServiceAccountCustomEndpoint private static readonly __Value _serviceAccountEmail = new __Value(() => __config.Get("serviceAccountEmail")); /// - /// Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. + /// Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. /// public static string? ServiceAccountEmail { @@ -362,6 +382,26 @@ public static string? ServiceAccountEmail set => _serviceAccountEmail.Set(value); } + private static readonly __Value _serviceAccountFederatedToken = new __Value(() => __config.Get("serviceAccountFederatedToken")); + /// + /// The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + /// + public static string? ServiceAccountFederatedToken + { + get => _serviceAccountFederatedToken.Get(); + set => _serviceAccountFederatedToken.Set(value); + } + + private static readonly __Value _serviceAccountFederatedTokenPath = new __Value(() => __config.Get("serviceAccountFederatedTokenPath")); + /// + /// Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + /// + public static string? ServiceAccountFederatedTokenPath + { + get => _serviceAccountFederatedTokenPath.Get(); + set => _serviceAccountFederatedTokenPath.Set(value); + } + private static readonly __Value _serviceAccountKey = new __Value(() => __config.Get("serviceAccountKey")); /// /// Service account key used for authentication. If set, the key flow will be used to authenticate all operations. @@ -442,5 +482,15 @@ public static string? TokenCustomEndpoint set => _tokenCustomEndpoint.Set(value); } + private static readonly __Value _useOidc = new __Value(() => __config.GetBoolean("useOidc")); + /// + /// Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `False`. + /// + public static bool? UseOidc + { + get => _useOidc.Get(); + set => _useOidc.Set(value); + } + } } diff --git a/sdk/dotnet/GetServerBackupSchedule.cs b/sdk/dotnet/GetServerBackupSchedule.cs index 7af980d..6750898 100644 --- a/sdk/dotnet/GetServerBackupSchedule.cs +++ b/sdk/dotnet/GetServerBackupSchedule.cs @@ -161,7 +161,7 @@ public sealed class GetServerBackupScheduleResult /// public readonly string? Region; /// - /// Backup schedule described in `Rrule` (recurrence rule) format. + /// An `Rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. /// public readonly string Rrule; /// diff --git a/sdk/dotnet/GetServerUpdateSchedule.cs b/sdk/dotnet/GetServerUpdateSchedule.cs index 6552344..3b30828 100644 --- a/sdk/dotnet/GetServerUpdateSchedule.cs +++ b/sdk/dotnet/GetServerUpdateSchedule.cs @@ -141,7 +141,7 @@ public sealed class GetServerUpdateScheduleResult public readonly bool Enabled; public readonly string Id; /// - /// Maintenance window [1..24]. + /// Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. /// public readonly int MaintenanceWindow; /// @@ -157,7 +157,7 @@ public sealed class GetServerUpdateScheduleResult /// public readonly string? Region; /// - /// Update schedule described in `Rrule` (recurrence rule) format. + /// An `Rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. /// public readonly string Rrule; /// diff --git a/sdk/dotnet/GetSkeKubernetesVersions.cs b/sdk/dotnet/GetSkeKubernetesVersions.cs index 66942a6..a60fc1e 100644 --- a/sdk/dotnet/GetSkeKubernetesVersions.cs +++ b/sdk/dotnet/GetSkeKubernetesVersions.cs @@ -121,7 +121,7 @@ public sealed class GetSkeKubernetesVersionsArgs : global::Pulumi.InvokeArgs public string? Region { get; set; } /// - /// If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + /// If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. /// [Input("versionState")] public string? VersionState { get; set; } @@ -141,7 +141,7 @@ public sealed class GetSkeKubernetesVersionsInvokeArgs : global::Pulumi.InvokeAr public Input? Region { get; set; } /// - /// If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + /// If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. /// [Input("versionState")] public Input? VersionState { get; set; } @@ -169,7 +169,7 @@ public sealed class GetSkeKubernetesVersionsResult /// public readonly string? Region; /// - /// If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + /// If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. /// public readonly string? VersionState; diff --git a/sdk/dotnet/GetSkeMachineImageVersions.cs b/sdk/dotnet/GetSkeMachineImageVersions.cs index 7c13fa9..6486a6a 100644 --- a/sdk/dotnet/GetSkeMachineImageVersions.cs +++ b/sdk/dotnet/GetSkeMachineImageVersions.cs @@ -151,7 +151,7 @@ public sealed class GetSkeMachineImageVersionsArgs : global::Pulumi.InvokeArgs public string? Region { get; set; } /// - /// Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + /// Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. /// [Input("versionState")] public string? VersionState { get; set; } @@ -171,7 +171,7 @@ public sealed class GetSkeMachineImageVersionsInvokeArgs : global::Pulumi.Invoke public Input? Region { get; set; } /// - /// Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + /// Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. /// [Input("versionState")] public Input? VersionState { get; set; } @@ -199,7 +199,7 @@ public sealed class GetSkeMachineImageVersionsResult /// public readonly string? Region; /// - /// Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + /// Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. /// public readonly string? VersionState; diff --git a/sdk/dotnet/Inputs/RabbitmqInstanceParametersArgs.cs b/sdk/dotnet/Inputs/RabbitmqInstanceParametersArgs.cs index e75c926..2cc20ae 100644 --- a/sdk/dotnet/Inputs/RabbitmqInstanceParametersArgs.cs +++ b/sdk/dotnet/Inputs/RabbitmqInstanceParametersArgs.cs @@ -108,11 +108,17 @@ public InputList TlsCiphers set => _tlsCiphers = value; } + [Input("tlsProtocols")] + private InputList? _tlsProtocols; + /// - /// TLS protocol to use. + /// TLS protocol versions to use. /// - [Input("tlsProtocols")] - public Input? TlsProtocols { get; set; } + public InputList TlsProtocols + { + get => _tlsProtocols ?? (_tlsProtocols = new InputList()); + set => _tlsProtocols = value; + } public RabbitmqInstanceParametersArgs() { diff --git a/sdk/dotnet/Inputs/RabbitmqInstanceParametersGetArgs.cs b/sdk/dotnet/Inputs/RabbitmqInstanceParametersGetArgs.cs index e01404c..6c01af1 100644 --- a/sdk/dotnet/Inputs/RabbitmqInstanceParametersGetArgs.cs +++ b/sdk/dotnet/Inputs/RabbitmqInstanceParametersGetArgs.cs @@ -108,11 +108,17 @@ public InputList TlsCiphers set => _tlsCiphers = value; } + [Input("tlsProtocols")] + private InputList? _tlsProtocols; + /// - /// TLS protocol to use. + /// TLS protocol versions to use. /// - [Input("tlsProtocols")] - public Input? TlsProtocols { get; set; } + public InputList TlsProtocols + { + get => _tlsProtocols ?? (_tlsProtocols = new InputList()); + set => _tlsProtocols = value; + } public RabbitmqInstanceParametersGetArgs() { diff --git a/sdk/dotnet/Outputs/GetRabbitmqInstanceParametersResult.cs b/sdk/dotnet/Outputs/GetRabbitmqInstanceParametersResult.cs index 37274d6..ce7ee96 100644 --- a/sdk/dotnet/Outputs/GetRabbitmqInstanceParametersResult.cs +++ b/sdk/dotnet/Outputs/GetRabbitmqInstanceParametersResult.cs @@ -62,9 +62,9 @@ public sealed class GetRabbitmqInstanceParametersResult /// public readonly ImmutableArray TlsCiphers; /// - /// TLS protocol to use. + /// TLS protocol versions to use. /// - public readonly string TlsProtocols; + public readonly ImmutableArray TlsProtocols; [OutputConstructor] private GetRabbitmqInstanceParametersResult( @@ -92,7 +92,7 @@ private GetRabbitmqInstanceParametersResult( ImmutableArray tlsCiphers, - string tlsProtocols) + ImmutableArray tlsProtocols) { ConsumerTimeout = consumerTimeout; EnableMonitoring = enableMonitoring; diff --git a/sdk/dotnet/Outputs/GetServerBackupSchedulesItemResult.cs b/sdk/dotnet/Outputs/GetServerBackupSchedulesItemResult.cs index e80ab69..9efb5a7 100644 --- a/sdk/dotnet/Outputs/GetServerBackupSchedulesItemResult.cs +++ b/sdk/dotnet/Outputs/GetServerBackupSchedulesItemResult.cs @@ -27,7 +27,7 @@ public sealed class GetServerBackupSchedulesItemResult /// public readonly string Name; /// - /// Backup schedule described in `Rrule` (recurrence rule) format. + /// An `Rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. /// public readonly string Rrule; diff --git a/sdk/dotnet/Outputs/GetServerUpdateSchedulesItemResult.cs b/sdk/dotnet/Outputs/GetServerUpdateSchedulesItemResult.cs index 29db4c3..e43ef9f 100644 --- a/sdk/dotnet/Outputs/GetServerUpdateSchedulesItemResult.cs +++ b/sdk/dotnet/Outputs/GetServerUpdateSchedulesItemResult.cs @@ -18,7 +18,7 @@ public sealed class GetServerUpdateSchedulesItemResult /// public readonly bool Enabled; /// - /// Maintenance window [1..24]. + /// Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. /// public readonly int MaintenanceWindow; /// @@ -26,7 +26,7 @@ public sealed class GetServerUpdateSchedulesItemResult /// public readonly string Name; /// - /// Update schedule described in `Rrule` (recurrence rule) format. + /// An `Rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. /// public readonly string Rrule; public readonly int UpdateScheduleId; diff --git a/sdk/dotnet/Outputs/RabbitmqInstanceParameters.cs b/sdk/dotnet/Outputs/RabbitmqInstanceParameters.cs index ad4867e..8d16850 100644 --- a/sdk/dotnet/Outputs/RabbitmqInstanceParameters.cs +++ b/sdk/dotnet/Outputs/RabbitmqInstanceParameters.cs @@ -62,9 +62,9 @@ public sealed class RabbitmqInstanceParameters /// public readonly ImmutableArray TlsCiphers; /// - /// TLS protocol to use. + /// TLS protocol versions to use. /// - public readonly string? TlsProtocols; + public readonly ImmutableArray TlsProtocols; [OutputConstructor] private RabbitmqInstanceParameters( @@ -92,7 +92,7 @@ private RabbitmqInstanceParameters( ImmutableArray tlsCiphers, - string? tlsProtocols) + ImmutableArray tlsProtocols) { ConsumerTimeout = consumerTimeout; EnableMonitoring = enableMonitoring; diff --git a/sdk/dotnet/Provider.cs b/sdk/dotnet/Provider.cs index 682732c..deb8c97 100644 --- a/sdk/dotnet/Provider.cs +++ b/sdk/dotnet/Provider.cs @@ -120,6 +120,18 @@ public partial class Provider : global::Pulumi.ProviderResource [Output("observabilityCustomEndpoint")] public Output ObservabilityCustomEndpoint { get; private set; } = null!; + /// + /// The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + /// + [Output("oidcRequestToken")] + public Output OidcRequestToken { get; private set; } = null!; + + /// + /// The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + /// + [Output("oidcRequestUrl")] + public Output OidcRequestUrl { get; private set; } = null!; + /// /// Custom endpoint for the OpenSearch service /// @@ -199,11 +211,23 @@ public partial class Provider : global::Pulumi.ProviderResource public Output ServiceAccountCustomEndpoint { get; private set; } = null!; /// - /// Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. + /// Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. /// [Output("serviceAccountEmail")] public Output ServiceAccountEmail { get; private set; } = null!; + /// + /// The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + /// + [Output("serviceAccountFederatedToken")] + public Output ServiceAccountFederatedToken { get; private set; } = null!; + + /// + /// Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + /// + [Output("serviceAccountFederatedTokenPath")] + public Output ServiceAccountFederatedTokenPath { get; private set; } = null!; + /// /// Service account key used for authentication. If set, the key flow will be used to authenticate all operations. /// @@ -407,6 +431,18 @@ public InputList Experiments [Input("observabilityCustomEndpoint")] public Input? ObservabilityCustomEndpoint { get; set; } + /// + /// The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + /// + [Input("oidcRequestToken")] + public Input? OidcRequestToken { get; set; } + + /// + /// The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + /// + [Input("oidcRequestUrl")] + public Input? OidcRequestUrl { get; set; } + /// /// Custom endpoint for the OpenSearch service /// @@ -486,11 +522,23 @@ public InputList Experiments public Input? ServiceAccountCustomEndpoint { get; set; } /// - /// Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. + /// Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. /// [Input("serviceAccountEmail")] public Input? ServiceAccountEmail { get; set; } + /// + /// The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + /// + [Input("serviceAccountFederatedToken")] + public Input? ServiceAccountFederatedToken { get; set; } + + /// + /// Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + /// + [Input("serviceAccountFederatedTokenPath")] + public Input? ServiceAccountFederatedTokenPath { get; set; } + /// /// Service account key used for authentication. If set, the key flow will be used to authenticate all operations. /// @@ -539,6 +587,12 @@ public InputList Experiments [Input("tokenCustomEndpoint")] public Input? TokenCustomEndpoint { get; set; } + /// + /// Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `False`. + /// + [Input("useOidc", json: true)] + public Input? UseOidc { get; set; } + public ProviderArgs() { } diff --git a/sdk/dotnet/ServerBackupSchedule.cs b/sdk/dotnet/ServerBackupSchedule.cs index 2d3cb75..57a20ad 100644 --- a/sdk/dotnet/ServerBackupSchedule.cs +++ b/sdk/dotnet/ServerBackupSchedule.cs @@ -56,7 +56,7 @@ public partial class ServerBackupSchedule : global::Pulumi.CustomResource public Output Region { get; private set; } = null!; /// - /// Backup schedule described in `Rrule` (recurrence rule) format. + /// An `Rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. /// [Output("rrule")] public Output Rrule { get; private set; } = null!; @@ -145,7 +145,7 @@ public sealed class ServerBackupScheduleArgs : global::Pulumi.ResourceArgs public Input? Region { get; set; } /// - /// Backup schedule described in `Rrule` (recurrence rule) format. + /// An `Rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. /// [Input("rrule", required: true)] public Input Rrule { get; set; } = null!; @@ -201,7 +201,7 @@ public sealed class ServerBackupScheduleState : global::Pulumi.ResourceArgs public Input? Region { get; set; } /// - /// Backup schedule described in `Rrule` (recurrence rule) format. + /// An `Rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. /// [Input("rrule")] public Input? Rrule { get; set; } diff --git a/sdk/dotnet/ServerUpdateSchedule.cs b/sdk/dotnet/ServerUpdateSchedule.cs index ec82bc6..e233b3a 100644 --- a/sdk/dotnet/ServerUpdateSchedule.cs +++ b/sdk/dotnet/ServerUpdateSchedule.cs @@ -26,7 +26,7 @@ public partial class ServerUpdateSchedule : global::Pulumi.CustomResource public Output Enabled { get; private set; } = null!; /// - /// Maintenance window [1..24]. + /// Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. /// [Output("maintenanceWindow")] public Output MaintenanceWindow { get; private set; } = null!; @@ -50,7 +50,7 @@ public partial class ServerUpdateSchedule : global::Pulumi.CustomResource public Output Region { get; private set; } = null!; /// - /// Update schedule described in `Rrule` (recurrence rule) format. + /// An `Rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. /// [Output("rrule")] public Output Rrule { get; private set; } = null!; @@ -121,7 +121,7 @@ public sealed class ServerUpdateScheduleArgs : global::Pulumi.ResourceArgs public Input Enabled { get; set; } = null!; /// - /// Maintenance window [1..24]. + /// Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. /// [Input("maintenanceWindow", required: true)] public Input MaintenanceWindow { get; set; } = null!; @@ -145,7 +145,7 @@ public sealed class ServerUpdateScheduleArgs : global::Pulumi.ResourceArgs public Input? Region { get; set; } /// - /// Update schedule described in `Rrule` (recurrence rule) format. + /// An `Rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. /// [Input("rrule", required: true)] public Input Rrule { get; set; } = null!; @@ -171,7 +171,7 @@ public sealed class ServerUpdateScheduleState : global::Pulumi.ResourceArgs public Input? Enabled { get; set; } /// - /// Maintenance window [1..24]. + /// Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. /// [Input("maintenanceWindow")] public Input? MaintenanceWindow { get; set; } @@ -195,7 +195,7 @@ public sealed class ServerUpdateScheduleState : global::Pulumi.ResourceArgs public Input? Region { get; set; } /// - /// Update schedule described in `Rrule` (recurrence rule) format. + /// An `Rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. /// [Input("rrule")] public Input? Rrule { get; set; } diff --git a/sdk/go/stackit/config/config.go b/sdk/go/stackit/config/config.go index dd00b42..30e7c41 100644 --- a/sdk/go/stackit/config/config.go +++ b/sdk/go/stackit/config/config.go @@ -106,6 +106,16 @@ func GetObservabilityCustomEndpoint(ctx *pulumi.Context) string { return config.Get(ctx, "stackit:observabilityCustomEndpoint") } +// The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. +func GetOidcRequestToken(ctx *pulumi.Context) string { + return config.Get(ctx, "stackit:oidcRequestToken") +} + +// The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. +func GetOidcRequestUrl(ctx *pulumi.Context) string { + return config.Get(ctx, "stackit:oidcRequestUrl") +} + // Custom endpoint for the OpenSearch service func GetOpensearchCustomEndpoint(ctx *pulumi.Context) string { return config.Get(ctx, "stackit:opensearchCustomEndpoint") @@ -173,13 +183,21 @@ func GetServiceAccountCustomEndpoint(ctx *pulumi.Context) string { return config.Get(ctx, "stackit:serviceAccountCustomEndpoint") } -// Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. -// -// Deprecated: The `serviceAccountEmail` field has been deprecated because it is not required. Will be removed after June 12th 2025. +// Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. func GetServiceAccountEmail(ctx *pulumi.Context) string { return config.Get(ctx, "stackit:serviceAccountEmail") } +// The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. +func GetServiceAccountFederatedToken(ctx *pulumi.Context) string { + return config.Get(ctx, "stackit:serviceAccountFederatedToken") +} + +// Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. +func GetServiceAccountFederatedTokenPath(ctx *pulumi.Context) string { + return config.Get(ctx, "stackit:serviceAccountFederatedTokenPath") +} + // Service account key used for authentication. If set, the key flow will be used to authenticate all operations. func GetServiceAccountKey(ctx *pulumi.Context) string { return config.Get(ctx, "stackit:serviceAccountKey") @@ -221,3 +239,8 @@ func GetSqlserverflexCustomEndpoint(ctx *pulumi.Context) string { func GetTokenCustomEndpoint(ctx *pulumi.Context) string { return config.Get(ctx, "stackit:tokenCustomEndpoint") } + +// Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `false`. +func GetUseOidc(ctx *pulumi.Context) bool { + return config.GetBool(ctx, "stackit:useOidc") +} diff --git a/sdk/go/stackit/getServerBackupSchedule.go b/sdk/go/stackit/getServerBackupSchedule.go index 182f4ff..b5fb90e 100644 --- a/sdk/go/stackit/getServerBackupSchedule.go +++ b/sdk/go/stackit/getServerBackupSchedule.go @@ -53,7 +53,7 @@ type LookupServerBackupScheduleResult struct { ProjectId string `pulumi:"projectId"` // The resource region. If not defined, the provider region is used. Region *string `pulumi:"region"` - // Backup schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule string `pulumi:"rrule"` // Server ID for the backup schedule. ServerId string `pulumi:"serverId"` @@ -135,7 +135,7 @@ func (o LookupServerBackupScheduleResultOutput) Region() pulumi.StringPtrOutput return o.ApplyT(func(v LookupServerBackupScheduleResult) *string { return v.Region }).(pulumi.StringPtrOutput) } -// Backup schedule described in `rrule` (recurrence rule) format. +// An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. func (o LookupServerBackupScheduleResultOutput) Rrule() pulumi.StringOutput { return o.ApplyT(func(v LookupServerBackupScheduleResult) string { return v.Rrule }).(pulumi.StringOutput) } diff --git a/sdk/go/stackit/getServerUpdateSchedule.go b/sdk/go/stackit/getServerUpdateSchedule.go index 85b7041..71f7bdd 100644 --- a/sdk/go/stackit/getServerUpdateSchedule.go +++ b/sdk/go/stackit/getServerUpdateSchedule.go @@ -43,7 +43,7 @@ type LookupServerUpdateScheduleResult struct { // Is the update schedule enabled or disabled. Enabled bool `pulumi:"enabled"` Id string `pulumi:"id"` - // Maintenance window [1..24]. + // Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. MaintenanceWindow int `pulumi:"maintenanceWindow"` // The schedule name. Name string `pulumi:"name"` @@ -51,7 +51,7 @@ type LookupServerUpdateScheduleResult struct { ProjectId string `pulumi:"projectId"` // The resource region. If not defined, the provider region is used. Region *string `pulumi:"region"` - // Update schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule string `pulumi:"rrule"` // Server ID for the update schedule. ServerId string `pulumi:"serverId"` @@ -108,7 +108,7 @@ func (o LookupServerUpdateScheduleResultOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v LookupServerUpdateScheduleResult) string { return v.Id }).(pulumi.StringOutput) } -// Maintenance window [1..24]. +// Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. func (o LookupServerUpdateScheduleResultOutput) MaintenanceWindow() pulumi.IntOutput { return o.ApplyT(func(v LookupServerUpdateScheduleResult) int { return v.MaintenanceWindow }).(pulumi.IntOutput) } @@ -128,7 +128,7 @@ func (o LookupServerUpdateScheduleResultOutput) Region() pulumi.StringPtrOutput return o.ApplyT(func(v LookupServerUpdateScheduleResult) *string { return v.Region }).(pulumi.StringPtrOutput) } -// Update schedule described in `rrule` (recurrence rule) format. +// An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. func (o LookupServerUpdateScheduleResultOutput) Rrule() pulumi.StringOutput { return o.ApplyT(func(v LookupServerUpdateScheduleResult) string { return v.Rrule }).(pulumi.StringOutput) } diff --git a/sdk/go/stackit/getSkeKubernetesVersions.go b/sdk/go/stackit/getSkeKubernetesVersions.go index 0acfc0a..cb3f9ad 100644 --- a/sdk/go/stackit/getSkeKubernetesVersions.go +++ b/sdk/go/stackit/getSkeKubernetesVersions.go @@ -28,7 +28,7 @@ func GetSkeKubernetesVersions(ctx *pulumi.Context, args *GetSkeKubernetesVersion type GetSkeKubernetesVersionsArgs struct { // Region override. If omitted, the provider’s region will be used. Region *string `pulumi:"region"` - // If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + // If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. VersionState *string `pulumi:"versionState"` } @@ -40,7 +40,7 @@ type GetSkeKubernetesVersionsResult struct { KubernetesVersions []GetSkeKubernetesVersionsKubernetesVersion `pulumi:"kubernetesVersions"` // Region override. If omitted, the provider’s region will be used. Region *string `pulumi:"region"` - // If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + // If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. VersionState *string `pulumi:"versionState"` } @@ -57,7 +57,7 @@ func GetSkeKubernetesVersionsOutput(ctx *pulumi.Context, args GetSkeKubernetesVe type GetSkeKubernetesVersionsOutputArgs struct { // Region override. If omitted, the provider’s region will be used. Region pulumi.StringPtrInput `pulumi:"region"` - // If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + // If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. VersionState pulumi.StringPtrInput `pulumi:"versionState"` } @@ -97,7 +97,7 @@ func (o GetSkeKubernetesVersionsResultOutput) Region() pulumi.StringPtrOutput { return o.ApplyT(func(v GetSkeKubernetesVersionsResult) *string { return v.Region }).(pulumi.StringPtrOutput) } -// If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. +// If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. func (o GetSkeKubernetesVersionsResultOutput) VersionState() pulumi.StringPtrOutput { return o.ApplyT(func(v GetSkeKubernetesVersionsResult) *string { return v.VersionState }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/stackit/getSkeMachineImageVersions.go b/sdk/go/stackit/getSkeMachineImageVersions.go index 8c6df1f..1f29560 100644 --- a/sdk/go/stackit/getSkeMachineImageVersions.go +++ b/sdk/go/stackit/getSkeMachineImageVersions.go @@ -28,7 +28,7 @@ func GetSkeMachineImageVersions(ctx *pulumi.Context, args *GetSkeMachineImageVer type GetSkeMachineImageVersionsArgs struct { // Region override. If omitted, the provider’s region will be used. Region *string `pulumi:"region"` - // Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + // Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. VersionState *string `pulumi:"versionState"` } @@ -40,7 +40,7 @@ type GetSkeMachineImageVersionsResult struct { MachineImages []GetSkeMachineImageVersionsMachineImage `pulumi:"machineImages"` // Region override. If omitted, the provider’s region will be used. Region *string `pulumi:"region"` - // Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + // Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. VersionState *string `pulumi:"versionState"` } @@ -57,7 +57,7 @@ func GetSkeMachineImageVersionsOutput(ctx *pulumi.Context, args GetSkeMachineIma type GetSkeMachineImageVersionsOutputArgs struct { // Region override. If omitted, the provider’s region will be used. Region pulumi.StringPtrInput `pulumi:"region"` - // Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + // Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. VersionState pulumi.StringPtrInput `pulumi:"versionState"` } @@ -97,7 +97,7 @@ func (o GetSkeMachineImageVersionsResultOutput) Region() pulumi.StringPtrOutput return o.ApplyT(func(v GetSkeMachineImageVersionsResult) *string { return v.Region }).(pulumi.StringPtrOutput) } -// Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. +// Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. func (o GetSkeMachineImageVersionsResultOutput) VersionState() pulumi.StringPtrOutput { return o.ApplyT(func(v GetSkeMachineImageVersionsResult) *string { return v.VersionState }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/stackit/provider.go b/sdk/go/stackit/provider.go index f715170..a6b9d21 100644 --- a/sdk/go/stackit/provider.go +++ b/sdk/go/stackit/provider.go @@ -52,6 +52,10 @@ type Provider struct { ObjectstorageCustomEndpoint pulumi.StringPtrOutput `pulumi:"objectstorageCustomEndpoint"` // Custom endpoint for the Observability service ObservabilityCustomEndpoint pulumi.StringPtrOutput `pulumi:"observabilityCustomEndpoint"` + // The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + OidcRequestToken pulumi.StringPtrOutput `pulumi:"oidcRequestToken"` + // The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + OidcRequestUrl pulumi.StringPtrOutput `pulumi:"oidcRequestUrl"` // Custom endpoint for the OpenSearch service OpensearchCustomEndpoint pulumi.StringPtrOutput `pulumi:"opensearchCustomEndpoint"` // Custom endpoint for the PostgresFlex service @@ -80,10 +84,12 @@ type Provider struct { ServerUpdateCustomEndpoint pulumi.StringPtrOutput `pulumi:"serverUpdateCustomEndpoint"` // Custom endpoint for the Service Account service ServiceAccountCustomEndpoint pulumi.StringPtrOutput `pulumi:"serviceAccountCustomEndpoint"` - // Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. - // - // Deprecated: The `serviceAccountEmail` field has been deprecated because it is not required. Will be removed after June 12th 2025. + // Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. ServiceAccountEmail pulumi.StringPtrOutput `pulumi:"serviceAccountEmail"` + // The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + ServiceAccountFederatedToken pulumi.StringPtrOutput `pulumi:"serviceAccountFederatedToken"` + // Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + ServiceAccountFederatedTokenPath pulumi.StringPtrOutput `pulumi:"serviceAccountFederatedTokenPath"` // Service account key used for authentication. If set, the key flow will be used to authenticate all operations. ServiceAccountKey pulumi.StringPtrOutput `pulumi:"serviceAccountKey"` // Path for the service account key used for authentication. If set, the key flow will be used to authenticate all operations. @@ -159,6 +165,10 @@ type providerArgs struct { ObjectstorageCustomEndpoint *string `pulumi:"objectstorageCustomEndpoint"` // Custom endpoint for the Observability service ObservabilityCustomEndpoint *string `pulumi:"observabilityCustomEndpoint"` + // The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + OidcRequestToken *string `pulumi:"oidcRequestToken"` + // The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + OidcRequestUrl *string `pulumi:"oidcRequestUrl"` // Custom endpoint for the OpenSearch service OpensearchCustomEndpoint *string `pulumi:"opensearchCustomEndpoint"` // Custom endpoint for the PostgresFlex service @@ -187,10 +197,12 @@ type providerArgs struct { ServerUpdateCustomEndpoint *string `pulumi:"serverUpdateCustomEndpoint"` // Custom endpoint for the Service Account service ServiceAccountCustomEndpoint *string `pulumi:"serviceAccountCustomEndpoint"` - // Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. - // - // Deprecated: The `serviceAccountEmail` field has been deprecated because it is not required. Will be removed after June 12th 2025. + // Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. ServiceAccountEmail *string `pulumi:"serviceAccountEmail"` + // The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + ServiceAccountFederatedToken *string `pulumi:"serviceAccountFederatedToken"` + // Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + ServiceAccountFederatedTokenPath *string `pulumi:"serviceAccountFederatedTokenPath"` // Service account key used for authentication. If set, the key flow will be used to authenticate all operations. ServiceAccountKey *string `pulumi:"serviceAccountKey"` // Path for the service account key used for authentication. If set, the key flow will be used to authenticate all operations. @@ -209,6 +221,8 @@ type providerArgs struct { SqlserverflexCustomEndpoint *string `pulumi:"sqlserverflexCustomEndpoint"` // Custom endpoint for the token API, which is used to request access tokens when using the key flow TokenCustomEndpoint *string `pulumi:"tokenCustomEndpoint"` + // Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `false`. + UseOidc *bool `pulumi:"useOidc"` } // The set of arguments for constructing a Provider resource. @@ -251,6 +265,10 @@ type ProviderArgs struct { ObjectstorageCustomEndpoint pulumi.StringPtrInput // Custom endpoint for the Observability service ObservabilityCustomEndpoint pulumi.StringPtrInput + // The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + OidcRequestToken pulumi.StringPtrInput + // The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + OidcRequestUrl pulumi.StringPtrInput // Custom endpoint for the OpenSearch service OpensearchCustomEndpoint pulumi.StringPtrInput // Custom endpoint for the PostgresFlex service @@ -279,10 +297,12 @@ type ProviderArgs struct { ServerUpdateCustomEndpoint pulumi.StringPtrInput // Custom endpoint for the Service Account service ServiceAccountCustomEndpoint pulumi.StringPtrInput - // Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. - // - // Deprecated: The `serviceAccountEmail` field has been deprecated because it is not required. Will be removed after June 12th 2025. + // Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. ServiceAccountEmail pulumi.StringPtrInput + // The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + ServiceAccountFederatedToken pulumi.StringPtrInput + // Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + ServiceAccountFederatedTokenPath pulumi.StringPtrInput // Service account key used for authentication. If set, the key flow will be used to authenticate all operations. ServiceAccountKey pulumi.StringPtrInput // Path for the service account key used for authentication. If set, the key flow will be used to authenticate all operations. @@ -301,6 +321,8 @@ type ProviderArgs struct { SqlserverflexCustomEndpoint pulumi.StringPtrInput // Custom endpoint for the token API, which is used to request access tokens when using the key flow TokenCustomEndpoint pulumi.StringPtrInput + // Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `false`. + UseOidc pulumi.BoolPtrInput } func (ProviderArgs) ElementType() reflect.Type { @@ -448,6 +470,16 @@ func (o ProviderOutput) ObservabilityCustomEndpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.ObservabilityCustomEndpoint }).(pulumi.StringPtrOutput) } +// The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. +func (o ProviderOutput) OidcRequestToken() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.OidcRequestToken }).(pulumi.StringPtrOutput) +} + +// The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. +func (o ProviderOutput) OidcRequestUrl() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.OidcRequestUrl }).(pulumi.StringPtrOutput) +} + // Custom endpoint for the OpenSearch service func (o ProviderOutput) OpensearchCustomEndpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.OpensearchCustomEndpoint }).(pulumi.StringPtrOutput) @@ -515,13 +547,21 @@ func (o ProviderOutput) ServiceAccountCustomEndpoint() pulumi.StringPtrOutput { return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.ServiceAccountCustomEndpoint }).(pulumi.StringPtrOutput) } -// Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. -// -// Deprecated: The `serviceAccountEmail` field has been deprecated because it is not required. Will be removed after June 12th 2025. +// Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. func (o ProviderOutput) ServiceAccountEmail() pulumi.StringPtrOutput { return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.ServiceAccountEmail }).(pulumi.StringPtrOutput) } +// The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. +func (o ProviderOutput) ServiceAccountFederatedToken() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.ServiceAccountFederatedToken }).(pulumi.StringPtrOutput) +} + +// Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. +func (o ProviderOutput) ServiceAccountFederatedTokenPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.ServiceAccountFederatedTokenPath }).(pulumi.StringPtrOutput) +} + // Service account key used for authentication. If set, the key flow will be used to authenticate all operations. func (o ProviderOutput) ServiceAccountKey() pulumi.StringPtrOutput { return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.ServiceAccountKey }).(pulumi.StringPtrOutput) diff --git a/sdk/go/stackit/pulumiTypes.go b/sdk/go/stackit/pulumiTypes.go index 5e710e5..f7c0e49 100644 --- a/sdk/go/stackit/pulumiTypes.go +++ b/sdk/go/stackit/pulumiTypes.go @@ -8332,8 +8332,8 @@ type RabbitmqInstanceParameters struct { Syslogs []string `pulumi:"syslogs"` // List of TLS ciphers to use. TlsCiphers []string `pulumi:"tlsCiphers"` - // TLS protocol to use. - TlsProtocols *string `pulumi:"tlsProtocols"` + // TLS protocol versions to use. + TlsProtocols []string `pulumi:"tlsProtocols"` } // RabbitmqInstanceParametersInput is an input type that accepts RabbitmqInstanceParametersArgs and RabbitmqInstanceParametersOutput values. @@ -8372,8 +8372,8 @@ type RabbitmqInstanceParametersArgs struct { Syslogs pulumi.StringArrayInput `pulumi:"syslogs"` // List of TLS ciphers to use. TlsCiphers pulumi.StringArrayInput `pulumi:"tlsCiphers"` - // TLS protocol to use. - TlsProtocols pulumi.StringPtrInput `pulumi:"tlsProtocols"` + // TLS protocol versions to use. + TlsProtocols pulumi.StringArrayInput `pulumi:"tlsProtocols"` } func (RabbitmqInstanceParametersArgs) ElementType() reflect.Type { @@ -8513,9 +8513,9 @@ func (o RabbitmqInstanceParametersOutput) TlsCiphers() pulumi.StringArrayOutput return o.ApplyT(func(v RabbitmqInstanceParameters) []string { return v.TlsCiphers }).(pulumi.StringArrayOutput) } -// TLS protocol to use. -func (o RabbitmqInstanceParametersOutput) TlsProtocols() pulumi.StringPtrOutput { - return o.ApplyT(func(v RabbitmqInstanceParameters) *string { return v.TlsProtocols }).(pulumi.StringPtrOutput) +// TLS protocol versions to use. +func (o RabbitmqInstanceParametersOutput) TlsProtocols() pulumi.StringArrayOutput { + return o.ApplyT(func(v RabbitmqInstanceParameters) []string { return v.TlsProtocols }).(pulumi.StringArrayOutput) } type RabbitmqInstanceParametersPtrOutput struct{ *pulumi.OutputState } @@ -8662,14 +8662,14 @@ func (o RabbitmqInstanceParametersPtrOutput) TlsCiphers() pulumi.StringArrayOutp }).(pulumi.StringArrayOutput) } -// TLS protocol to use. -func (o RabbitmqInstanceParametersPtrOutput) TlsProtocols() pulumi.StringPtrOutput { - return o.ApplyT(func(v *RabbitmqInstanceParameters) *string { +// TLS protocol versions to use. +func (o RabbitmqInstanceParametersPtrOutput) TlsProtocols() pulumi.StringArrayOutput { + return o.ApplyT(func(v *RabbitmqInstanceParameters) []string { if v == nil { return nil } return v.TlsProtocols - }).(pulumi.StringPtrOutput) + }).(pulumi.StringArrayOutput) } type RedisInstanceParameters struct { @@ -18531,8 +18531,8 @@ type GetRabbitmqInstanceParameters struct { Syslogs []string `pulumi:"syslogs"` // List of TLS ciphers to use. TlsCiphers []string `pulumi:"tlsCiphers"` - // TLS protocol to use. - TlsProtocols string `pulumi:"tlsProtocols"` + // TLS protocol versions to use. + TlsProtocols []string `pulumi:"tlsProtocols"` } // GetRabbitmqInstanceParametersInput is an input type that accepts GetRabbitmqInstanceParametersArgs and GetRabbitmqInstanceParametersOutput values. @@ -18571,8 +18571,8 @@ type GetRabbitmqInstanceParametersArgs struct { Syslogs pulumi.StringArrayInput `pulumi:"syslogs"` // List of TLS ciphers to use. TlsCiphers pulumi.StringArrayInput `pulumi:"tlsCiphers"` - // TLS protocol to use. - TlsProtocols pulumi.StringInput `pulumi:"tlsProtocols"` + // TLS protocol versions to use. + TlsProtocols pulumi.StringArrayInput `pulumi:"tlsProtocols"` } func (GetRabbitmqInstanceParametersArgs) ElementType() reflect.Type { @@ -18661,9 +18661,9 @@ func (o GetRabbitmqInstanceParametersOutput) TlsCiphers() pulumi.StringArrayOutp return o.ApplyT(func(v GetRabbitmqInstanceParameters) []string { return v.TlsCiphers }).(pulumi.StringArrayOutput) } -// TLS protocol to use. -func (o GetRabbitmqInstanceParametersOutput) TlsProtocols() pulumi.StringOutput { - return o.ApplyT(func(v GetRabbitmqInstanceParameters) string { return v.TlsProtocols }).(pulumi.StringOutput) +// TLS protocol versions to use. +func (o GetRabbitmqInstanceParametersOutput) TlsProtocols() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetRabbitmqInstanceParameters) []string { return v.TlsProtocols }).(pulumi.StringArrayOutput) } type GetRedisInstanceParameters struct { @@ -19714,7 +19714,7 @@ type GetServerBackupSchedulesItem struct { Enabled bool `pulumi:"enabled"` // The backup schedule name. Name string `pulumi:"name"` - // Backup schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule string `pulumi:"rrule"` } @@ -19737,7 +19737,7 @@ type GetServerBackupSchedulesItemArgs struct { Enabled pulumi.BoolInput `pulumi:"enabled"` // The backup schedule name. Name pulumi.StringInput `pulumi:"name"` - // Backup schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule pulumi.StringInput `pulumi:"rrule"` } @@ -19813,7 +19813,7 @@ func (o GetServerBackupSchedulesItemOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v GetServerBackupSchedulesItem) string { return v.Name }).(pulumi.StringOutput) } -// Backup schedule described in `rrule` (recurrence rule) format. +// An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. func (o GetServerBackupSchedulesItemOutput) Rrule() pulumi.StringOutput { return o.ApplyT(func(v GetServerBackupSchedulesItem) string { return v.Rrule }).(pulumi.StringOutput) } @@ -19963,11 +19963,11 @@ func (o GetServerBootVolumeOutput) Id() pulumi.StringOutput { type GetServerUpdateSchedulesItem struct { // Is the update schedule enabled or disabled. Enabled bool `pulumi:"enabled"` - // Maintenance window [1..24]. + // Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. MaintenanceWindow int `pulumi:"maintenanceWindow"` // The update schedule name. Name string `pulumi:"name"` - // Update schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule string `pulumi:"rrule"` UpdateScheduleId int `pulumi:"updateScheduleId"` } @@ -19986,11 +19986,11 @@ type GetServerUpdateSchedulesItemInput interface { type GetServerUpdateSchedulesItemArgs struct { // Is the update schedule enabled or disabled. Enabled pulumi.BoolInput `pulumi:"enabled"` - // Maintenance window [1..24]. + // Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. MaintenanceWindow pulumi.IntInput `pulumi:"maintenanceWindow"` // The update schedule name. Name pulumi.StringInput `pulumi:"name"` - // Update schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule pulumi.StringInput `pulumi:"rrule"` UpdateScheduleId pulumi.IntInput `pulumi:"updateScheduleId"` } @@ -20051,7 +20051,7 @@ func (o GetServerUpdateSchedulesItemOutput) Enabled() pulumi.BoolOutput { return o.ApplyT(func(v GetServerUpdateSchedulesItem) bool { return v.Enabled }).(pulumi.BoolOutput) } -// Maintenance window [1..24]. +// Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. func (o GetServerUpdateSchedulesItemOutput) MaintenanceWindow() pulumi.IntOutput { return o.ApplyT(func(v GetServerUpdateSchedulesItem) int { return v.MaintenanceWindow }).(pulumi.IntOutput) } @@ -20061,7 +20061,7 @@ func (o GetServerUpdateSchedulesItemOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v GetServerUpdateSchedulesItem) string { return v.Name }).(pulumi.StringOutput) } -// Update schedule described in `rrule` (recurrence rule) format. +// An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. func (o GetServerUpdateSchedulesItemOutput) Rrule() pulumi.StringOutput { return o.ApplyT(func(v GetServerUpdateSchedulesItem) string { return v.Rrule }).(pulumi.StringOutput) } diff --git a/sdk/go/stackit/serverBackupSchedule.go b/sdk/go/stackit/serverBackupSchedule.go index bd1df41..c81d492 100644 --- a/sdk/go/stackit/serverBackupSchedule.go +++ b/sdk/go/stackit/serverBackupSchedule.go @@ -32,7 +32,7 @@ type ServerBackupSchedule struct { ProjectId pulumi.StringOutput `pulumi:"projectId"` // The resource region. If not defined, the provider region is used. Region pulumi.StringOutput `pulumi:"region"` - // Backup schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule pulumi.StringOutput `pulumi:"rrule"` // Server ID for the backup schedule. ServerId pulumi.StringOutput `pulumi:"serverId"` @@ -95,7 +95,7 @@ type serverBackupScheduleState struct { ProjectId *string `pulumi:"projectId"` // The resource region. If not defined, the provider region is used. Region *string `pulumi:"region"` - // Backup schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule *string `pulumi:"rrule"` // Server ID for the backup schedule. ServerId *string `pulumi:"serverId"` @@ -114,7 +114,7 @@ type ServerBackupScheduleState struct { ProjectId pulumi.StringPtrInput // The resource region. If not defined, the provider region is used. Region pulumi.StringPtrInput - // Backup schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule pulumi.StringPtrInput // Server ID for the backup schedule. ServerId pulumi.StringPtrInput @@ -135,7 +135,7 @@ type serverBackupScheduleArgs struct { ProjectId string `pulumi:"projectId"` // The resource region. If not defined, the provider region is used. Region *string `pulumi:"region"` - // Backup schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule string `pulumi:"rrule"` // Server ID for the backup schedule. ServerId string `pulumi:"serverId"` @@ -153,7 +153,7 @@ type ServerBackupScheduleArgs struct { ProjectId pulumi.StringInput // The resource region. If not defined, the provider region is used. Region pulumi.StringPtrInput - // Backup schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule pulumi.StringInput // Server ID for the backup schedule. ServerId pulumi.StringInput @@ -276,7 +276,7 @@ func (o ServerBackupScheduleOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v *ServerBackupSchedule) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) } -// Backup schedule described in `rrule` (recurrence rule) format. +// An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. func (o ServerBackupScheduleOutput) Rrule() pulumi.StringOutput { return o.ApplyT(func(v *ServerBackupSchedule) pulumi.StringOutput { return v.Rrule }).(pulumi.StringOutput) } diff --git a/sdk/go/stackit/serverUpdateSchedule.go b/sdk/go/stackit/serverUpdateSchedule.go index b3f628a..18b5c71 100644 --- a/sdk/go/stackit/serverUpdateSchedule.go +++ b/sdk/go/stackit/serverUpdateSchedule.go @@ -22,7 +22,7 @@ type ServerUpdateSchedule struct { // Is the update schedule enabled or disabled. Enabled pulumi.BoolOutput `pulumi:"enabled"` - // Maintenance window [1..24]. + // Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. MaintenanceWindow pulumi.IntOutput `pulumi:"maintenanceWindow"` // The schedule name. Name pulumi.StringOutput `pulumi:"name"` @@ -30,7 +30,7 @@ type ServerUpdateSchedule struct { ProjectId pulumi.StringOutput `pulumi:"projectId"` // The resource region. If not defined, the provider region is used. Region pulumi.StringOutput `pulumi:"region"` - // Update schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule pulumi.StringOutput `pulumi:"rrule"` // Server ID for the update schedule. ServerId pulumi.StringOutput `pulumi:"serverId"` @@ -85,7 +85,7 @@ func GetServerUpdateSchedule(ctx *pulumi.Context, type serverUpdateScheduleState struct { // Is the update schedule enabled or disabled. Enabled *bool `pulumi:"enabled"` - // Maintenance window [1..24]. + // Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. MaintenanceWindow *int `pulumi:"maintenanceWindow"` // The schedule name. Name *string `pulumi:"name"` @@ -93,7 +93,7 @@ type serverUpdateScheduleState struct { ProjectId *string `pulumi:"projectId"` // The resource region. If not defined, the provider region is used. Region *string `pulumi:"region"` - // Update schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule *string `pulumi:"rrule"` // Server ID for the update schedule. ServerId *string `pulumi:"serverId"` @@ -104,7 +104,7 @@ type serverUpdateScheduleState struct { type ServerUpdateScheduleState struct { // Is the update schedule enabled or disabled. Enabled pulumi.BoolPtrInput - // Maintenance window [1..24]. + // Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. MaintenanceWindow pulumi.IntPtrInput // The schedule name. Name pulumi.StringPtrInput @@ -112,7 +112,7 @@ type ServerUpdateScheduleState struct { ProjectId pulumi.StringPtrInput // The resource region. If not defined, the provider region is used. Region pulumi.StringPtrInput - // Update schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule pulumi.StringPtrInput // Server ID for the update schedule. ServerId pulumi.StringPtrInput @@ -127,7 +127,7 @@ func (ServerUpdateScheduleState) ElementType() reflect.Type { type serverUpdateScheduleArgs struct { // Is the update schedule enabled or disabled. Enabled bool `pulumi:"enabled"` - // Maintenance window [1..24]. + // Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. MaintenanceWindow int `pulumi:"maintenanceWindow"` // The schedule name. Name *string `pulumi:"name"` @@ -135,7 +135,7 @@ type serverUpdateScheduleArgs struct { ProjectId string `pulumi:"projectId"` // The resource region. If not defined, the provider region is used. Region *string `pulumi:"region"` - // Update schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule string `pulumi:"rrule"` // Server ID for the update schedule. ServerId string `pulumi:"serverId"` @@ -145,7 +145,7 @@ type serverUpdateScheduleArgs struct { type ServerUpdateScheduleArgs struct { // Is the update schedule enabled or disabled. Enabled pulumi.BoolInput - // Maintenance window [1..24]. + // Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. MaintenanceWindow pulumi.IntInput // The schedule name. Name pulumi.StringPtrInput @@ -153,7 +153,7 @@ type ServerUpdateScheduleArgs struct { ProjectId pulumi.StringInput // The resource region. If not defined, the provider region is used. Region pulumi.StringPtrInput - // Update schedule described in `rrule` (recurrence rule) format. + // An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. Rrule pulumi.StringInput // Server ID for the update schedule. ServerId pulumi.StringInput @@ -251,7 +251,7 @@ func (o ServerUpdateScheduleOutput) Enabled() pulumi.BoolOutput { return o.ApplyT(func(v *ServerUpdateSchedule) pulumi.BoolOutput { return v.Enabled }).(pulumi.BoolOutput) } -// Maintenance window [1..24]. +// Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. func (o ServerUpdateScheduleOutput) MaintenanceWindow() pulumi.IntOutput { return o.ApplyT(func(v *ServerUpdateSchedule) pulumi.IntOutput { return v.MaintenanceWindow }).(pulumi.IntOutput) } @@ -271,7 +271,7 @@ func (o ServerUpdateScheduleOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v *ServerUpdateSchedule) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) } -// Update schedule described in `rrule` (recurrence rule) format. +// An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. func (o ServerUpdateScheduleOutput) Rrule() pulumi.StringOutput { return o.ApplyT(func(v *ServerUpdateSchedule) pulumi.StringOutput { return v.Rrule }).(pulumi.StringOutput) } diff --git a/sdk/nodejs/config/vars.ts b/sdk/nodejs/config/vars.ts index f294fbf..b2aa83e 100644 --- a/sdk/nodejs/config/vars.ts +++ b/sdk/nodejs/config/vars.ts @@ -216,6 +216,28 @@ Object.defineProperty(exports, "observabilityCustomEndpoint", { enumerable: true, }); +/** + * The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + */ +export declare const oidcRequestToken: string | undefined; +Object.defineProperty(exports, "oidcRequestToken", { + get() { + return __config.get("oidcRequestToken"); + }, + enumerable: true, +}); + +/** + * The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + */ +export declare const oidcRequestUrl: string | undefined; +Object.defineProperty(exports, "oidcRequestUrl", { + get() { + return __config.get("oidcRequestUrl"); + }, + enumerable: true, +}); + /** * Custom endpoint for the OpenSearch service */ @@ -360,7 +382,7 @@ Object.defineProperty(exports, "serviceAccountCustomEndpoint", { }); /** - * Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. + * Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. */ export declare const serviceAccountEmail: string | undefined; Object.defineProperty(exports, "serviceAccountEmail", { @@ -370,6 +392,28 @@ Object.defineProperty(exports, "serviceAccountEmail", { enumerable: true, }); +/** + * The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + */ +export declare const serviceAccountFederatedToken: string | undefined; +Object.defineProperty(exports, "serviceAccountFederatedToken", { + get() { + return __config.get("serviceAccountFederatedToken"); + }, + enumerable: true, +}); + +/** + * Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + */ +export declare const serviceAccountFederatedTokenPath: string | undefined; +Object.defineProperty(exports, "serviceAccountFederatedTokenPath", { + get() { + return __config.get("serviceAccountFederatedTokenPath"); + }, + enumerable: true, +}); + /** * Service account key used for authentication. If set, the key flow will be used to authenticate all operations. */ @@ -458,3 +502,14 @@ Object.defineProperty(exports, "tokenCustomEndpoint", { enumerable: true, }); +/** + * Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `false`. + */ +export declare const useOidc: boolean | undefined; +Object.defineProperty(exports, "useOidc", { + get() { + return __config.getObject("useOidc"); + }, + enumerable: true, +}); + diff --git a/sdk/nodejs/getServerBackupSchedule.ts b/sdk/nodejs/getServerBackupSchedule.ts index 6690dfe..895617e 100644 --- a/sdk/nodejs/getServerBackupSchedule.ts +++ b/sdk/nodejs/getServerBackupSchedule.ts @@ -75,7 +75,7 @@ export interface GetServerBackupScheduleResult { */ readonly region?: string; /** - * Backup schedule described in `rrule` (recurrence rule) format. + * An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. */ readonly rrule: string; /** diff --git a/sdk/nodejs/getServerUpdateSchedule.ts b/sdk/nodejs/getServerUpdateSchedule.ts index d4eeceb..c1523f4 100644 --- a/sdk/nodejs/getServerUpdateSchedule.ts +++ b/sdk/nodejs/getServerUpdateSchedule.ts @@ -53,7 +53,7 @@ export interface GetServerUpdateScheduleResult { readonly enabled: boolean; readonly id: string; /** - * Maintenance window [1..24]. + * Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. */ readonly maintenanceWindow: number; /** @@ -69,7 +69,7 @@ export interface GetServerUpdateScheduleResult { */ readonly region?: string; /** - * Update schedule described in `rrule` (recurrence rule) format. + * An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. */ readonly rrule: string; /** diff --git a/sdk/nodejs/getSkeKubernetesVersions.ts b/sdk/nodejs/getSkeKubernetesVersions.ts index 383dcb9..4a9e4cd 100644 --- a/sdk/nodejs/getSkeKubernetesVersions.ts +++ b/sdk/nodejs/getSkeKubernetesVersions.ts @@ -29,7 +29,7 @@ export interface GetSkeKubernetesVersionsArgs { */ region?: string; /** - * If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + * If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. */ versionState?: string; } @@ -51,7 +51,7 @@ export interface GetSkeKubernetesVersionsResult { */ readonly region?: string; /** - * If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + * If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. */ readonly versionState?: string; } @@ -78,7 +78,7 @@ export interface GetSkeKubernetesVersionsOutputArgs { */ region?: pulumi.Input; /** - * If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + * If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. */ versionState?: pulumi.Input; } diff --git a/sdk/nodejs/getSkeMachineImageVersions.ts b/sdk/nodejs/getSkeMachineImageVersions.ts index cc7e67a..597aa81 100644 --- a/sdk/nodejs/getSkeMachineImageVersions.ts +++ b/sdk/nodejs/getSkeMachineImageVersions.ts @@ -29,7 +29,7 @@ export interface GetSkeMachineImageVersionsArgs { */ region?: string; /** - * Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + * Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. */ versionState?: string; } @@ -51,7 +51,7 @@ export interface GetSkeMachineImageVersionsResult { */ readonly region?: string; /** - * Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + * Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. */ readonly versionState?: string; } @@ -78,7 +78,7 @@ export interface GetSkeMachineImageVersionsOutputArgs { */ region?: pulumi.Input; /** - * Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + * Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. */ versionState?: pulumi.Input; } diff --git a/sdk/nodejs/provider.ts b/sdk/nodejs/provider.ts index b4dae82..8abef2d 100644 --- a/sdk/nodejs/provider.ts +++ b/sdk/nodejs/provider.ts @@ -93,6 +93,14 @@ export class Provider extends pulumi.ProviderResource { * Custom endpoint for the Observability service */ declare public readonly observabilityCustomEndpoint: pulumi.Output; + /** + * The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + */ + declare public readonly oidcRequestToken: pulumi.Output; + /** + * The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + */ + declare public readonly oidcRequestUrl: pulumi.Output; /** * Custom endpoint for the OpenSearch service */ @@ -148,11 +156,17 @@ export class Provider extends pulumi.ProviderResource { */ declare public readonly serviceAccountCustomEndpoint: pulumi.Output; /** - * Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. - * - * @deprecated The `serviceAccountEmail` field has been deprecated because it is not required. Will be removed after June 12th 2025. + * Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. */ declare public readonly serviceAccountEmail: pulumi.Output; + /** + * The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + */ + declare public readonly serviceAccountFederatedToken: pulumi.Output; + /** + * Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + */ + declare public readonly serviceAccountFederatedTokenPath: pulumi.Output; /** * Service account key used for authentication. If set, the key flow will be used to authenticate all operations. */ @@ -218,6 +232,8 @@ export class Provider extends pulumi.ProviderResource { resourceInputs["mongodbflexCustomEndpoint"] = args?.mongodbflexCustomEndpoint; resourceInputs["objectstorageCustomEndpoint"] = args?.objectstorageCustomEndpoint; resourceInputs["observabilityCustomEndpoint"] = args?.observabilityCustomEndpoint; + resourceInputs["oidcRequestToken"] = args?.oidcRequestToken; + resourceInputs["oidcRequestUrl"] = args?.oidcRequestUrl; resourceInputs["opensearchCustomEndpoint"] = args?.opensearchCustomEndpoint; resourceInputs["postgresflexCustomEndpoint"] = args?.postgresflexCustomEndpoint; resourceInputs["privateKey"] = args?.privateKey; @@ -232,6 +248,8 @@ export class Provider extends pulumi.ProviderResource { resourceInputs["serverUpdateCustomEndpoint"] = args?.serverUpdateCustomEndpoint; resourceInputs["serviceAccountCustomEndpoint"] = args?.serviceAccountCustomEndpoint; resourceInputs["serviceAccountEmail"] = args?.serviceAccountEmail; + resourceInputs["serviceAccountFederatedToken"] = args?.serviceAccountFederatedToken; + resourceInputs["serviceAccountFederatedTokenPath"] = args?.serviceAccountFederatedTokenPath; resourceInputs["serviceAccountKey"] = args?.serviceAccountKey; resourceInputs["serviceAccountKeyPath"] = args?.serviceAccountKeyPath; resourceInputs["serviceAccountToken"] = args?.serviceAccountToken; @@ -240,6 +258,7 @@ export class Provider extends pulumi.ProviderResource { resourceInputs["skeCustomEndpoint"] = args?.skeCustomEndpoint; resourceInputs["sqlserverflexCustomEndpoint"] = args?.sqlserverflexCustomEndpoint; resourceInputs["tokenCustomEndpoint"] = args?.tokenCustomEndpoint; + resourceInputs["useOidc"] = pulumi.output(args?.useOidc).apply(JSON.stringify); } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(Provider.__pulumiType, name, resourceInputs, opts); @@ -335,6 +354,14 @@ export interface ProviderArgs { * Custom endpoint for the Observability service */ observabilityCustomEndpoint?: pulumi.Input; + /** + * The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + */ + oidcRequestToken?: pulumi.Input; + /** + * The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + */ + oidcRequestUrl?: pulumi.Input; /** * Custom endpoint for the OpenSearch service */ @@ -390,11 +417,17 @@ export interface ProviderArgs { */ serviceAccountCustomEndpoint?: pulumi.Input; /** - * Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. - * - * @deprecated The `serviceAccountEmail` field has been deprecated because it is not required. Will be removed after June 12th 2025. + * Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. */ serviceAccountEmail?: pulumi.Input; + /** + * The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + */ + serviceAccountFederatedToken?: pulumi.Input; + /** + * Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + */ + serviceAccountFederatedTokenPath?: pulumi.Input; /** * Service account key used for authentication. If set, the key flow will be used to authenticate all operations. */ @@ -429,6 +462,10 @@ export interface ProviderArgs { * Custom endpoint for the token API, which is used to request access tokens when using the key flow */ tokenCustomEndpoint?: pulumi.Input; + /** + * Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `false`. + */ + useOidc?: pulumi.Input; } export namespace Provider { diff --git a/sdk/nodejs/serverBackupSchedule.ts b/sdk/nodejs/serverBackupSchedule.ts index 20d3fe5..eef46e2 100644 --- a/sdk/nodejs/serverBackupSchedule.ts +++ b/sdk/nodejs/serverBackupSchedule.ts @@ -66,7 +66,7 @@ export class ServerBackupSchedule extends pulumi.CustomResource { */ declare public readonly region: pulumi.Output; /** - * Backup schedule described in `rrule` (recurrence rule) format. + * An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. */ declare public readonly rrule: pulumi.Output; /** @@ -155,7 +155,7 @@ export interface ServerBackupScheduleState { */ region?: pulumi.Input; /** - * Backup schedule described in `rrule` (recurrence rule) format. + * An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. */ rrule?: pulumi.Input; /** @@ -189,7 +189,7 @@ export interface ServerBackupScheduleArgs { */ region?: pulumi.Input; /** - * Backup schedule described in `rrule` (recurrence rule) format. + * An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. */ rrule: pulumi.Input; /** diff --git a/sdk/nodejs/serverUpdateSchedule.ts b/sdk/nodejs/serverUpdateSchedule.ts index ffc5285..a6dc040 100644 --- a/sdk/nodejs/serverUpdateSchedule.ts +++ b/sdk/nodejs/serverUpdateSchedule.ts @@ -44,7 +44,7 @@ export class ServerUpdateSchedule extends pulumi.CustomResource { */ declare public readonly enabled: pulumi.Output; /** - * Maintenance window [1..24]. + * Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. */ declare public readonly maintenanceWindow: pulumi.Output; /** @@ -60,7 +60,7 @@ export class ServerUpdateSchedule extends pulumi.CustomResource { */ declare public readonly region: pulumi.Output; /** - * Update schedule described in `rrule` (recurrence rule) format. + * An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. */ declare public readonly rrule: pulumi.Output; /** @@ -133,7 +133,7 @@ export interface ServerUpdateScheduleState { */ enabled?: pulumi.Input; /** - * Maintenance window [1..24]. + * Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. */ maintenanceWindow?: pulumi.Input; /** @@ -149,7 +149,7 @@ export interface ServerUpdateScheduleState { */ region?: pulumi.Input; /** - * Update schedule described in `rrule` (recurrence rule) format. + * An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. */ rrule?: pulumi.Input; /** @@ -171,7 +171,7 @@ export interface ServerUpdateScheduleArgs { */ enabled: pulumi.Input; /** - * Maintenance window [1..24]. + * Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. */ maintenanceWindow: pulumi.Input; /** @@ -187,7 +187,7 @@ export interface ServerUpdateScheduleArgs { */ region?: pulumi.Input; /** - * Update schedule described in `rrule` (recurrence rule) format. + * An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. */ rrule: pulumi.Input; /** diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 335524d..ebb92c7 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -1020,9 +1020,9 @@ export interface RabbitmqInstanceParameters { */ tlsCiphers?: pulumi.Input[]>; /** - * TLS protocol to use. + * TLS protocol versions to use. */ - tlsProtocols?: pulumi.Input; + tlsProtocols?: pulumi.Input[]>; } export interface RedisInstanceParameters { diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index 693e0a3..f9f1c35 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -1175,9 +1175,9 @@ export interface GetRabbitmqInstanceParameters { */ tlsCiphers: string[]; /** - * TLS protocol to use. + * TLS protocol versions to use. */ - tlsProtocols: string; + tlsProtocols: string[]; } export interface GetRedisInstanceParameters { @@ -1435,7 +1435,7 @@ export interface GetServerBackupSchedulesItem { */ name: string; /** - * Backup schedule described in `rrule` (recurrence rule) format. + * An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. */ rrule: string; } @@ -1463,7 +1463,7 @@ export interface GetServerUpdateSchedulesItem { */ enabled: boolean; /** - * Maintenance window [1..24]. + * Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. */ maintenanceWindow: number; /** @@ -1471,7 +1471,7 @@ export interface GetServerUpdateSchedulesItem { */ name: string; /** - * Update schedule described in `rrule` (recurrence rule) format. + * An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. */ rrule: string; updateScheduleId: number; @@ -2656,9 +2656,9 @@ export interface RabbitmqInstanceParameters { */ tlsCiphers: string[]; /** - * TLS protocol to use. + * TLS protocol versions to use. */ - tlsProtocols: string; + tlsProtocols: string[]; } export interface RedisInstanceParameters { diff --git a/sdk/python/pulumi_stackit/_inputs.py b/sdk/python/pulumi_stackit/_inputs.py index 5fd76dd..cc27324 100644 --- a/sdk/python/pulumi_stackit/_inputs.py +++ b/sdk/python/pulumi_stackit/_inputs.py @@ -4735,9 +4735,9 @@ class RabbitmqInstanceParametersArgsDict(TypedDict): """ List of TLS ciphers to use. """ - tls_protocols: NotRequired[pulumi.Input[_builtins.str]] + tls_protocols: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] """ - TLS protocol to use. + TLS protocol versions to use. """ elif False: RabbitmqInstanceParametersArgsDict: TypeAlias = Mapping[str, Any] @@ -4757,7 +4757,7 @@ def __init__(__self__, *, sgw_acl: Optional[pulumi.Input[_builtins.str]] = None, syslogs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None, tls_ciphers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None, - tls_protocols: Optional[pulumi.Input[_builtins.str]] = None): + tls_protocols: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None): """ :param pulumi.Input[_builtins.int] consumer_timeout: The timeout in milliseconds for the consumer. :param pulumi.Input[_builtins.bool] enable_monitoring: Enable monitoring. @@ -4771,7 +4771,7 @@ def __init__(__self__, *, :param pulumi.Input[_builtins.str] sgw_acl: Comma separated list of IP networks in CIDR notation which are allowed to access this instance. :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] syslogs: List of syslog servers to send logs to. :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tls_ciphers: List of TLS ciphers to use. - :param pulumi.Input[_builtins.str] tls_protocols: TLS protocol to use. + :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tls_protocols: TLS protocol versions to use. """ if consumer_timeout is not None: pulumi.set(__self__, "consumer_timeout", consumer_timeout) @@ -4946,14 +4946,14 @@ def tls_ciphers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builti @_builtins.property @pulumi.getter(name="tlsProtocols") - def tls_protocols(self) -> Optional[pulumi.Input[_builtins.str]]: + def tls_protocols(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]: """ - TLS protocol to use. + TLS protocol versions to use. """ return pulumi.get(self, "tls_protocols") @tls_protocols.setter - def tls_protocols(self, value: Optional[pulumi.Input[_builtins.str]]): + def tls_protocols(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]): pulumi.set(self, "tls_protocols", value) diff --git a/sdk/python/pulumi_stackit/config/__init__.pyi b/sdk/python/pulumi_stackit/config/__init__.pyi index f848f96..af9e1fd 100644 --- a/sdk/python/pulumi_stackit/config/__init__.pyi +++ b/sdk/python/pulumi_stackit/config/__init__.pyi @@ -109,6 +109,16 @@ observabilityCustomEndpoint: Optional[str] Custom endpoint for the Observability service """ +oidcRequestToken: Optional[str] +""" +The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. +""" + +oidcRequestUrl: Optional[str] +""" +The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. +""" + opensearchCustomEndpoint: Optional[str] """ Custom endpoint for the OpenSearch service @@ -176,7 +186,17 @@ Custom endpoint for the Service Account service serviceAccountEmail: Optional[str] """ -Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. +Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. +""" + +serviceAccountFederatedToken: Optional[str] +""" +The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. +""" + +serviceAccountFederatedTokenPath: Optional[str] +""" +Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. """ serviceAccountKey: Optional[str] @@ -219,3 +239,8 @@ tokenCustomEndpoint: Optional[str] Custom endpoint for the token API, which is used to request access tokens when using the key flow """ +useOidc: Optional[bool] +""" +Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `false`. +""" + diff --git a/sdk/python/pulumi_stackit/config/vars.py b/sdk/python/pulumi_stackit/config/vars.py index 1b03faf..11888a2 100644 --- a/sdk/python/pulumi_stackit/config/vars.py +++ b/sdk/python/pulumi_stackit/config/vars.py @@ -153,6 +153,20 @@ def observability_custom_endpoint(self) -> Optional[str]: """ return __config__.get('observabilityCustomEndpoint') + @_builtins.property + def oidc_request_token(self) -> Optional[str]: + """ + The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + """ + return __config__.get('oidcRequestToken') + + @_builtins.property + def oidc_request_url(self) -> Optional[str]: + """ + The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + """ + return __config__.get('oidcRequestUrl') + @_builtins.property def opensearch_custom_endpoint(self) -> Optional[str]: """ @@ -247,10 +261,24 @@ def service_account_custom_endpoint(self) -> Optional[str]: @_builtins.property def service_account_email(self) -> Optional[str]: """ - Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. + Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. """ return __config__.get('serviceAccountEmail') + @_builtins.property + def service_account_federated_token(self) -> Optional[str]: + """ + The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + """ + return __config__.get('serviceAccountFederatedToken') + + @_builtins.property + def service_account_federated_token_path(self) -> Optional[str]: + """ + Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + """ + return __config__.get('serviceAccountFederatedTokenPath') + @_builtins.property def service_account_key(self) -> Optional[str]: """ @@ -307,3 +335,10 @@ def token_custom_endpoint(self) -> Optional[str]: """ return __config__.get('tokenCustomEndpoint') + @_builtins.property + def use_oidc(self) -> Optional[bool]: + """ + Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `false`. + """ + return __config__.get_bool('useOidc') + diff --git a/sdk/python/pulumi_stackit/get_server_backup_schedule.py b/sdk/python/pulumi_stackit/get_server_backup_schedule.py index 0ec08b1..df8f811 100644 --- a/sdk/python/pulumi_stackit/get_server_backup_schedule.py +++ b/sdk/python/pulumi_stackit/get_server_backup_schedule.py @@ -113,7 +113,7 @@ def region(self) -> Optional[_builtins.str]: @pulumi.getter def rrule(self) -> _builtins.str: """ - Backup schedule described in `rrule` (recurrence rule) format. + An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ return pulumi.get(self, "rrule") diff --git a/sdk/python/pulumi_stackit/get_server_update_schedule.py b/sdk/python/pulumi_stackit/get_server_update_schedule.py index e972b8f..6c4d273 100644 --- a/sdk/python/pulumi_stackit/get_server_update_schedule.py +++ b/sdk/python/pulumi_stackit/get_server_update_schedule.py @@ -72,7 +72,7 @@ def id(self) -> _builtins.str: @pulumi.getter(name="maintenanceWindow") def maintenance_window(self) -> _builtins.int: """ - Maintenance window [1..24]. + Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. """ return pulumi.get(self, "maintenance_window") @@ -104,7 +104,7 @@ def region(self) -> Optional[_builtins.str]: @pulumi.getter def rrule(self) -> _builtins.str: """ - Update schedule described in `rrule` (recurrence rule) format. + An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ return pulumi.get(self, "rrule") diff --git a/sdk/python/pulumi_stackit/get_ske_kubernetes_versions.py b/sdk/python/pulumi_stackit/get_ske_kubernetes_versions.py index b5e1e5b..2e8c94a 100644 --- a/sdk/python/pulumi_stackit/get_ske_kubernetes_versions.py +++ b/sdk/python/pulumi_stackit/get_ske_kubernetes_versions.py @@ -69,7 +69,7 @@ def region(self) -> Optional[_builtins.str]: @pulumi.getter(name="versionState") def version_state(self) -> Optional[_builtins.str]: """ - If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. """ return pulumi.get(self, "version_state") @@ -96,7 +96,7 @@ def get_ske_kubernetes_versions(region: Optional[_builtins.str] = None, :param _builtins.str region: Region override. If omitted, the provider’s region will be used. - :param _builtins.str version_state: If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + :param _builtins.str version_state: If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. """ __args__ = dict() __args__['region'] = region @@ -119,7 +119,7 @@ def get_ske_kubernetes_versions_output(region: Optional[pulumi.Input[Optional[_b :param _builtins.str region: Region override. If omitted, the provider’s region will be used. - :param _builtins.str version_state: If specified, only returns Kubernetes versions with this version state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + :param _builtins.str version_state: If specified, only returns Kubernetes versions with this version state. Possible values are: `SUPPORTED`. """ __args__ = dict() __args__['region'] = region diff --git a/sdk/python/pulumi_stackit/get_ske_machine_image_versions.py b/sdk/python/pulumi_stackit/get_ske_machine_image_versions.py index 3b30f5f..6371b26 100644 --- a/sdk/python/pulumi_stackit/get_ske_machine_image_versions.py +++ b/sdk/python/pulumi_stackit/get_ske_machine_image_versions.py @@ -69,7 +69,7 @@ def region(self) -> Optional[_builtins.str]: @pulumi.getter(name="versionState") def version_state(self) -> Optional[_builtins.str]: """ - Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. """ return pulumi.get(self, "version_state") @@ -96,7 +96,7 @@ def get_ske_machine_image_versions(region: Optional[_builtins.str] = None, :param _builtins.str region: Region override. If omitted, the provider’s region will be used. - :param _builtins.str version_state: Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + :param _builtins.str version_state: Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. """ __args__ = dict() __args__['region'] = region @@ -119,7 +119,7 @@ def get_ske_machine_image_versions_output(region: Optional[pulumi.Input[Optional :param _builtins.str region: Region override. If omitted, the provider’s region will be used. - :param _builtins.str version_state: Filter returned machine image versions by their state. Possible values are: `UNSPECIFIED`, `SUPPORTED`. + :param _builtins.str version_state: Filter returned machine image versions by their state. Possible values are: `SUPPORTED`. """ __args__ = dict() __args__['region'] = region diff --git a/sdk/python/pulumi_stackit/outputs.py b/sdk/python/pulumi_stackit/outputs.py index 0ea9483..b36fdf6 100644 --- a/sdk/python/pulumi_stackit/outputs.py +++ b/sdk/python/pulumi_stackit/outputs.py @@ -3701,7 +3701,7 @@ def __init__(__self__, *, sgw_acl: Optional[_builtins.str] = None, syslogs: Optional[Sequence[_builtins.str]] = None, tls_ciphers: Optional[Sequence[_builtins.str]] = None, - tls_protocols: Optional[_builtins.str] = None): + tls_protocols: Optional[Sequence[_builtins.str]] = None): """ :param _builtins.int consumer_timeout: The timeout in milliseconds for the consumer. :param _builtins.bool enable_monitoring: Enable monitoring. @@ -3715,7 +3715,7 @@ def __init__(__self__, *, :param _builtins.str sgw_acl: Comma separated list of IP networks in CIDR notation which are allowed to access this instance. :param Sequence[_builtins.str] syslogs: List of syslog servers to send logs to. :param Sequence[_builtins.str] tls_ciphers: List of TLS ciphers to use. - :param _builtins.str tls_protocols: TLS protocol to use. + :param Sequence[_builtins.str] tls_protocols: TLS protocol versions to use. """ if consumer_timeout is not None: pulumi.set(__self__, "consumer_timeout", consumer_timeout) @@ -3842,9 +3842,9 @@ def tls_ciphers(self) -> Optional[Sequence[_builtins.str]]: @_builtins.property @pulumi.getter(name="tlsProtocols") - def tls_protocols(self) -> Optional[_builtins.str]: + def tls_protocols(self) -> Optional[Sequence[_builtins.str]]: """ - TLS protocol to use. + TLS protocol versions to use. """ return pulumi.get(self, "tls_protocols") @@ -8336,7 +8336,7 @@ def __init__(__self__, *, sgw_acl: _builtins.str, syslogs: Sequence[_builtins.str], tls_ciphers: Sequence[_builtins.str], - tls_protocols: _builtins.str): + tls_protocols: Sequence[_builtins.str]): """ :param _builtins.int consumer_timeout: The timeout in milliseconds for the consumer. :param _builtins.bool enable_monitoring: Enable monitoring. @@ -8350,7 +8350,7 @@ def __init__(__self__, *, :param _builtins.str sgw_acl: Comma separated list of IP networks in CIDR notation which are allowed to access this instance. :param Sequence[_builtins.str] syslogs: List of syslog servers to send logs to. :param Sequence[_builtins.str] tls_ciphers: List of TLS ciphers to use. - :param _builtins.str tls_protocols: TLS protocol to use. + :param Sequence[_builtins.str] tls_protocols: TLS protocol versions to use. """ pulumi.set(__self__, "consumer_timeout", consumer_timeout) pulumi.set(__self__, "enable_monitoring", enable_monitoring) @@ -8464,9 +8464,9 @@ def tls_ciphers(self) -> Sequence[_builtins.str]: @_builtins.property @pulumi.getter(name="tlsProtocols") - def tls_protocols(self) -> _builtins.str: + def tls_protocols(self) -> Sequence[_builtins.str]: """ - TLS protocol to use. + TLS protocol versions to use. """ return pulumi.get(self, "tls_protocols") @@ -9140,7 +9140,7 @@ def __init__(__self__, *, :param 'GetServerBackupSchedulesItemBackupPropertiesArgs' backup_properties: Backup schedule details for the backups. :param _builtins.bool enabled: Is the backup schedule enabled or disabled. :param _builtins.str name: The backup schedule name. - :param _builtins.str rrule: Backup schedule described in `rrule` (recurrence rule) format. + :param _builtins.str rrule: An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ pulumi.set(__self__, "backup_properties", backup_properties) pulumi.set(__self__, "backup_schedule_id", backup_schedule_id) @@ -9181,7 +9181,7 @@ def name(self) -> _builtins.str: @pulumi.getter def rrule(self) -> _builtins.str: """ - Backup schedule described in `rrule` (recurrence rule) format. + An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ return pulumi.get(self, "rrule") @@ -9251,9 +9251,9 @@ def __init__(__self__, *, update_schedule_id: _builtins.int): """ :param _builtins.bool enabled: Is the update schedule enabled or disabled. - :param _builtins.int maintenance_window: Maintenance window [1..24]. + :param _builtins.int maintenance_window: Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. :param _builtins.str name: The update schedule name. - :param _builtins.str rrule: Update schedule described in `rrule` (recurrence rule) format. + :param _builtins.str rrule: An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ pulumi.set(__self__, "enabled", enabled) pulumi.set(__self__, "maintenance_window", maintenance_window) @@ -9273,7 +9273,7 @@ def enabled(self) -> _builtins.bool: @pulumi.getter(name="maintenanceWindow") def maintenance_window(self) -> _builtins.int: """ - Maintenance window [1..24]. + Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. """ return pulumi.get(self, "maintenance_window") @@ -9289,7 +9289,7 @@ def name(self) -> _builtins.str: @pulumi.getter def rrule(self) -> _builtins.str: """ - Update schedule described in `rrule` (recurrence rule) format. + An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ return pulumi.get(self, "rrule") diff --git a/sdk/python/pulumi_stackit/provider.py b/sdk/python/pulumi_stackit/provider.py index 3da8b30..55948e3 100644 --- a/sdk/python/pulumi_stackit/provider.py +++ b/sdk/python/pulumi_stackit/provider.py @@ -38,6 +38,8 @@ def __init__(__self__, *, mongodbflex_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, objectstorage_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, observability_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, + oidc_request_token: Optional[pulumi.Input[_builtins.str]] = None, + oidc_request_url: Optional[pulumi.Input[_builtins.str]] = None, opensearch_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, postgresflex_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, private_key: Optional[pulumi.Input[_builtins.str]] = None, @@ -52,6 +54,8 @@ def __init__(__self__, *, server_update_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, service_account_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, service_account_email: Optional[pulumi.Input[_builtins.str]] = None, + service_account_federated_token: Optional[pulumi.Input[_builtins.str]] = None, + service_account_federated_token_path: Optional[pulumi.Input[_builtins.str]] = None, service_account_key: Optional[pulumi.Input[_builtins.str]] = None, service_account_key_path: Optional[pulumi.Input[_builtins.str]] = None, service_account_token: Optional[pulumi.Input[_builtins.str]] = None, @@ -59,7 +63,8 @@ def __init__(__self__, *, sfs_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, ske_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, sqlserverflex_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, - token_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None): + token_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, + use_oidc: Optional[pulumi.Input[_builtins.bool]] = None): """ The set of arguments for constructing a Provider resource. :param pulumi.Input[_builtins.str] authorization_custom_endpoint: Custom endpoint for the Membership service @@ -81,6 +86,8 @@ def __init__(__self__, *, :param pulumi.Input[_builtins.str] mongodbflex_custom_endpoint: Custom endpoint for the MongoDB Flex service :param pulumi.Input[_builtins.str] objectstorage_custom_endpoint: Custom endpoint for the Object Storage service :param pulumi.Input[_builtins.str] observability_custom_endpoint: Custom endpoint for the Observability service + :param pulumi.Input[_builtins.str] oidc_request_token: The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + :param pulumi.Input[_builtins.str] oidc_request_url: The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. :param pulumi.Input[_builtins.str] opensearch_custom_endpoint: Custom endpoint for the OpenSearch service :param pulumi.Input[_builtins.str] postgresflex_custom_endpoint: Custom endpoint for the PostgresFlex service :param pulumi.Input[_builtins.str] private_key: Private RSA key used for authentication, relevant for the key flow. It takes precedence over the private key that is included in the service account key. @@ -94,7 +101,9 @@ def __init__(__self__, *, :param pulumi.Input[_builtins.str] server_backup_custom_endpoint: Custom endpoint for the Server Backup service :param pulumi.Input[_builtins.str] server_update_custom_endpoint: Custom endpoint for the Server Update service :param pulumi.Input[_builtins.str] service_account_custom_endpoint: Custom endpoint for the Service Account service - :param pulumi.Input[_builtins.str] service_account_email: Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. + :param pulumi.Input[_builtins.str] service_account_email: Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. + :param pulumi.Input[_builtins.str] service_account_federated_token: The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + :param pulumi.Input[_builtins.str] service_account_federated_token_path: Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. :param pulumi.Input[_builtins.str] service_account_key: Service account key used for authentication. If set, the key flow will be used to authenticate all operations. :param pulumi.Input[_builtins.str] service_account_key_path: Path for the service account key used for authentication. If set, the key flow will be used to authenticate all operations. :param pulumi.Input[_builtins.str] service_account_token: Token used for authentication. If set, the token flow will be used to authenticate all operations. @@ -103,6 +112,7 @@ def __init__(__self__, *, :param pulumi.Input[_builtins.str] ske_custom_endpoint: Custom endpoint for the Kubernetes Engine (SKE) service :param pulumi.Input[_builtins.str] sqlserverflex_custom_endpoint: Custom endpoint for the SQL Server Flex service :param pulumi.Input[_builtins.str] token_custom_endpoint: Custom endpoint for the token API, which is used to request access tokens when using the key flow + :param pulumi.Input[_builtins.bool] use_oidc: Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `false`. """ if authorization_custom_endpoint is not None: pulumi.set(__self__, "authorization_custom_endpoint", authorization_custom_endpoint) @@ -142,6 +152,10 @@ def __init__(__self__, *, pulumi.set(__self__, "objectstorage_custom_endpoint", objectstorage_custom_endpoint) if observability_custom_endpoint is not None: pulumi.set(__self__, "observability_custom_endpoint", observability_custom_endpoint) + if oidc_request_token is not None: + pulumi.set(__self__, "oidc_request_token", oidc_request_token) + if oidc_request_url is not None: + pulumi.set(__self__, "oidc_request_url", oidc_request_url) if opensearch_custom_endpoint is not None: pulumi.set(__self__, "opensearch_custom_endpoint", opensearch_custom_endpoint) if postgresflex_custom_endpoint is not None: @@ -171,11 +185,12 @@ def __init__(__self__, *, pulumi.set(__self__, "server_update_custom_endpoint", server_update_custom_endpoint) if service_account_custom_endpoint is not None: pulumi.set(__self__, "service_account_custom_endpoint", service_account_custom_endpoint) - if service_account_email is not None: - warnings.warn("""The `service_account_email` field has been deprecated because it is not required. Will be removed after June 12th 2025.""", DeprecationWarning) - pulumi.log.warn("""service_account_email is deprecated: The `service_account_email` field has been deprecated because it is not required. Will be removed after June 12th 2025.""") if service_account_email is not None: pulumi.set(__self__, "service_account_email", service_account_email) + if service_account_federated_token is not None: + pulumi.set(__self__, "service_account_federated_token", service_account_federated_token) + if service_account_federated_token_path is not None: + pulumi.set(__self__, "service_account_federated_token_path", service_account_federated_token_path) if service_account_key is not None: pulumi.set(__self__, "service_account_key", service_account_key) if service_account_key_path is not None: @@ -195,6 +210,8 @@ def __init__(__self__, *, pulumi.set(__self__, "sqlserverflex_custom_endpoint", sqlserverflex_custom_endpoint) if token_custom_endpoint is not None: pulumi.set(__self__, "token_custom_endpoint", token_custom_endpoint) + if use_oidc is not None: + pulumi.set(__self__, "use_oidc", use_oidc) @_builtins.property @pulumi.getter(name="authorizationCustomEndpoint") @@ -424,6 +441,30 @@ def observability_custom_endpoint(self) -> Optional[pulumi.Input[_builtins.str]] def observability_custom_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "observability_custom_endpoint", value) + @_builtins.property + @pulumi.getter(name="oidcRequestToken") + def oidc_request_token(self) -> Optional[pulumi.Input[_builtins.str]]: + """ + The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + """ + return pulumi.get(self, "oidc_request_token") + + @oidc_request_token.setter + def oidc_request_token(self, value: Optional[pulumi.Input[_builtins.str]]): + pulumi.set(self, "oidc_request_token", value) + + @_builtins.property + @pulumi.getter(name="oidcRequestUrl") + def oidc_request_url(self) -> Optional[pulumi.Input[_builtins.str]]: + """ + The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + """ + return pulumi.get(self, "oidc_request_url") + + @oidc_request_url.setter + def oidc_request_url(self, value: Optional[pulumi.Input[_builtins.str]]): + pulumi.set(self, "oidc_request_url", value) + @_builtins.property @pulumi.getter(name="opensearchCustomEndpoint") def opensearch_custom_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]: @@ -583,10 +624,9 @@ def service_account_custom_endpoint(self, value: Optional[pulumi.Input[_builtins @_builtins.property @pulumi.getter(name="serviceAccountEmail") - @_utilities.deprecated("""The `service_account_email` field has been deprecated because it is not required. Will be removed after June 12th 2025.""") def service_account_email(self) -> Optional[pulumi.Input[_builtins.str]]: """ - Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. + Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. """ return pulumi.get(self, "service_account_email") @@ -594,6 +634,30 @@ def service_account_email(self) -> Optional[pulumi.Input[_builtins.str]]: def service_account_email(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "service_account_email", value) + @_builtins.property + @pulumi.getter(name="serviceAccountFederatedToken") + def service_account_federated_token(self) -> Optional[pulumi.Input[_builtins.str]]: + """ + The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + """ + return pulumi.get(self, "service_account_federated_token") + + @service_account_federated_token.setter + def service_account_federated_token(self, value: Optional[pulumi.Input[_builtins.str]]): + pulumi.set(self, "service_account_federated_token", value) + + @_builtins.property + @pulumi.getter(name="serviceAccountFederatedTokenPath") + def service_account_federated_token_path(self) -> Optional[pulumi.Input[_builtins.str]]: + """ + Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + """ + return pulumi.get(self, "service_account_federated_token_path") + + @service_account_federated_token_path.setter + def service_account_federated_token_path(self, value: Optional[pulumi.Input[_builtins.str]]): + pulumi.set(self, "service_account_federated_token_path", value) + @_builtins.property @pulumi.getter(name="serviceAccountKey") def service_account_key(self) -> Optional[pulumi.Input[_builtins.str]]: @@ -691,6 +755,18 @@ def token_custom_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]: def token_custom_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "token_custom_endpoint", value) + @_builtins.property + @pulumi.getter(name="useOidc") + def use_oidc(self) -> Optional[pulumi.Input[_builtins.bool]]: + """ + Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `false`. + """ + return pulumi.get(self, "use_oidc") + + @use_oidc.setter + def use_oidc(self, value: Optional[pulumi.Input[_builtins.bool]]): + pulumi.set(self, "use_oidc", value) + @pulumi.type_token("pulumi:providers:stackit") class Provider(pulumi.ProviderResource): @@ -717,6 +793,8 @@ def __init__(__self__, mongodbflex_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, objectstorage_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, observability_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, + oidc_request_token: Optional[pulumi.Input[_builtins.str]] = None, + oidc_request_url: Optional[pulumi.Input[_builtins.str]] = None, opensearch_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, postgresflex_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, private_key: Optional[pulumi.Input[_builtins.str]] = None, @@ -731,6 +809,8 @@ def __init__(__self__, server_update_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, service_account_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, service_account_email: Optional[pulumi.Input[_builtins.str]] = None, + service_account_federated_token: Optional[pulumi.Input[_builtins.str]] = None, + service_account_federated_token_path: Optional[pulumi.Input[_builtins.str]] = None, service_account_key: Optional[pulumi.Input[_builtins.str]] = None, service_account_key_path: Optional[pulumi.Input[_builtins.str]] = None, service_account_token: Optional[pulumi.Input[_builtins.str]] = None, @@ -739,6 +819,7 @@ def __init__(__self__, ske_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, sqlserverflex_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, token_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, + use_oidc: Optional[pulumi.Input[_builtins.bool]] = None, __props__=None): """ The provider type for the stackit package. By default, resources use package-wide configuration @@ -767,6 +848,8 @@ def __init__(__self__, :param pulumi.Input[_builtins.str] mongodbflex_custom_endpoint: Custom endpoint for the MongoDB Flex service :param pulumi.Input[_builtins.str] objectstorage_custom_endpoint: Custom endpoint for the Object Storage service :param pulumi.Input[_builtins.str] observability_custom_endpoint: Custom endpoint for the Observability service + :param pulumi.Input[_builtins.str] oidc_request_token: The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + :param pulumi.Input[_builtins.str] oidc_request_url: The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. :param pulumi.Input[_builtins.str] opensearch_custom_endpoint: Custom endpoint for the OpenSearch service :param pulumi.Input[_builtins.str] postgresflex_custom_endpoint: Custom endpoint for the PostgresFlex service :param pulumi.Input[_builtins.str] private_key: Private RSA key used for authentication, relevant for the key flow. It takes precedence over the private key that is included in the service account key. @@ -780,7 +863,9 @@ def __init__(__self__, :param pulumi.Input[_builtins.str] server_backup_custom_endpoint: Custom endpoint for the Server Backup service :param pulumi.Input[_builtins.str] server_update_custom_endpoint: Custom endpoint for the Server Update service :param pulumi.Input[_builtins.str] service_account_custom_endpoint: Custom endpoint for the Service Account service - :param pulumi.Input[_builtins.str] service_account_email: Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. + :param pulumi.Input[_builtins.str] service_account_email: Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. + :param pulumi.Input[_builtins.str] service_account_federated_token: The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + :param pulumi.Input[_builtins.str] service_account_federated_token_path: Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. :param pulumi.Input[_builtins.str] service_account_key: Service account key used for authentication. If set, the key flow will be used to authenticate all operations. :param pulumi.Input[_builtins.str] service_account_key_path: Path for the service account key used for authentication. If set, the key flow will be used to authenticate all operations. :param pulumi.Input[_builtins.str] service_account_token: Token used for authentication. If set, the token flow will be used to authenticate all operations. @@ -789,6 +874,7 @@ def __init__(__self__, :param pulumi.Input[_builtins.str] ske_custom_endpoint: Custom endpoint for the Kubernetes Engine (SKE) service :param pulumi.Input[_builtins.str] sqlserverflex_custom_endpoint: Custom endpoint for the SQL Server Flex service :param pulumi.Input[_builtins.str] token_custom_endpoint: Custom endpoint for the token API, which is used to request access tokens when using the key flow + :param pulumi.Input[_builtins.bool] use_oidc: Enables OIDC for Authentication. This can also be sourced from the `STACKIT_USE_OIDC` Environment Variable. Defaults to `false`. """ ... @overload @@ -836,6 +922,8 @@ def _internal_init(__self__, mongodbflex_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, objectstorage_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, observability_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, + oidc_request_token: Optional[pulumi.Input[_builtins.str]] = None, + oidc_request_url: Optional[pulumi.Input[_builtins.str]] = None, opensearch_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, postgresflex_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, private_key: Optional[pulumi.Input[_builtins.str]] = None, @@ -850,6 +938,8 @@ def _internal_init(__self__, server_update_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, service_account_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, service_account_email: Optional[pulumi.Input[_builtins.str]] = None, + service_account_federated_token: Optional[pulumi.Input[_builtins.str]] = None, + service_account_federated_token_path: Optional[pulumi.Input[_builtins.str]] = None, service_account_key: Optional[pulumi.Input[_builtins.str]] = None, service_account_key_path: Optional[pulumi.Input[_builtins.str]] = None, service_account_token: Optional[pulumi.Input[_builtins.str]] = None, @@ -858,6 +948,7 @@ def _internal_init(__self__, ske_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, sqlserverflex_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, token_custom_endpoint: Optional[pulumi.Input[_builtins.str]] = None, + use_oidc: Optional[pulumi.Input[_builtins.bool]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -886,6 +977,8 @@ def _internal_init(__self__, __props__.__dict__["mongodbflex_custom_endpoint"] = mongodbflex_custom_endpoint __props__.__dict__["objectstorage_custom_endpoint"] = objectstorage_custom_endpoint __props__.__dict__["observability_custom_endpoint"] = observability_custom_endpoint + __props__.__dict__["oidc_request_token"] = oidc_request_token + __props__.__dict__["oidc_request_url"] = oidc_request_url __props__.__dict__["opensearch_custom_endpoint"] = opensearch_custom_endpoint __props__.__dict__["postgresflex_custom_endpoint"] = postgresflex_custom_endpoint __props__.__dict__["private_key"] = private_key @@ -900,6 +993,8 @@ def _internal_init(__self__, __props__.__dict__["server_update_custom_endpoint"] = server_update_custom_endpoint __props__.__dict__["service_account_custom_endpoint"] = service_account_custom_endpoint __props__.__dict__["service_account_email"] = service_account_email + __props__.__dict__["service_account_federated_token"] = service_account_federated_token + __props__.__dict__["service_account_federated_token_path"] = service_account_federated_token_path __props__.__dict__["service_account_key"] = service_account_key __props__.__dict__["service_account_key_path"] = service_account_key_path __props__.__dict__["service_account_token"] = service_account_token @@ -908,6 +1003,7 @@ def _internal_init(__self__, __props__.__dict__["ske_custom_endpoint"] = ske_custom_endpoint __props__.__dict__["sqlserverflex_custom_endpoint"] = sqlserverflex_custom_endpoint __props__.__dict__["token_custom_endpoint"] = token_custom_endpoint + __props__.__dict__["use_oidc"] = pulumi.Output.from_input(use_oidc).apply(pulumi.runtime.to_json) if use_oidc is not None else None super(Provider, __self__).__init__( 'stackit', resource_name, @@ -1050,6 +1146,22 @@ def observability_custom_endpoint(self) -> pulumi.Output[Optional[_builtins.str] """ return pulumi.get(self, "observability_custom_endpoint") + @_builtins.property + @pulumi.getter(name="oidcRequestToken") + def oidc_request_token(self) -> pulumi.Output[Optional[_builtins.str]]: + """ + The bearer token for the request to the OIDC provider. For use when authenticating as a Service Account using OpenID Connect. + """ + return pulumi.get(self, "oidc_request_token") + + @_builtins.property + @pulumi.getter(name="oidcRequestUrl") + def oidc_request_url(self) -> pulumi.Output[Optional[_builtins.str]]: + """ + The URL for the OIDC provider from which to request an ID token. For use when authenticating as a Service Account using OpenID Connect. + """ + return pulumi.get(self, "oidc_request_url") + @_builtins.property @pulumi.getter(name="opensearchCustomEndpoint") def opensearch_custom_endpoint(self) -> pulumi.Output[Optional[_builtins.str]]: @@ -1157,13 +1269,28 @@ def service_account_custom_endpoint(self) -> pulumi.Output[Optional[_builtins.st @_builtins.property @pulumi.getter(name="serviceAccountEmail") - @_utilities.deprecated("""The `service_account_email` field has been deprecated because it is not required. Will be removed after June 12th 2025.""") def service_account_email(self) -> pulumi.Output[Optional[_builtins.str]]: """ - Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. + Service account email. It can also be set using the environment variable STACKIT_SERVICE_ACCOUNT_EMAIL. It is required if you want to use the resource manager project resource. This value is required using OpenID Connect authentication. """ return pulumi.get(self, "service_account_email") + @_builtins.property + @pulumi.getter(name="serviceAccountFederatedToken") + def service_account_federated_token(self) -> pulumi.Output[Optional[_builtins.str]]: + """ + The OIDC ID token for use when authenticating as a Service Account using OpenID Connect. + """ + return pulumi.get(self, "service_account_federated_token") + + @_builtins.property + @pulumi.getter(name="serviceAccountFederatedTokenPath") + def service_account_federated_token_path(self) -> pulumi.Output[Optional[_builtins.str]]: + """ + Path for workload identity assertion. It can also be set using the environment variable STACKIT_FEDERATED_TOKEN_FILE. + """ + return pulumi.get(self, "service_account_federated_token_path") + @_builtins.property @pulumi.getter(name="serviceAccountKey") def service_account_key(self) -> pulumi.Output[Optional[_builtins.str]]: diff --git a/sdk/python/pulumi_stackit/server_backup_schedule.py b/sdk/python/pulumi_stackit/server_backup_schedule.py index c9d4c7a..23114d3 100644 --- a/sdk/python/pulumi_stackit/server_backup_schedule.py +++ b/sdk/python/pulumi_stackit/server_backup_schedule.py @@ -33,7 +33,7 @@ def __init__(__self__, *, :param pulumi.Input['ServerBackupScheduleBackupPropertiesArgs'] backup_properties: Backup schedule details for the backups. :param pulumi.Input[_builtins.bool] enabled: Is the backup schedule enabled or disabled. :param pulumi.Input[_builtins.str] project_id: STACKIT Project ID to which the server is associated. - :param pulumi.Input[_builtins.str] rrule: Backup schedule described in `rrule` (recurrence rule) format. + :param pulumi.Input[_builtins.str] rrule: An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. :param pulumi.Input[_builtins.str] server_id: Server ID for the backup schedule. :param pulumi.Input[_builtins.str] name: The schedule name. :param pulumi.Input[_builtins.str] region: The resource region. If not defined, the provider region is used. @@ -88,7 +88,7 @@ def project_id(self, value: pulumi.Input[_builtins.str]): @pulumi.getter def rrule(self) -> pulumi.Input[_builtins.str]: """ - Backup schedule described in `rrule` (recurrence rule) format. + An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ return pulumi.get(self, "rrule") @@ -152,7 +152,7 @@ def __init__(__self__, *, :param pulumi.Input[_builtins.str] name: The schedule name. :param pulumi.Input[_builtins.str] project_id: STACKIT Project ID to which the server is associated. :param pulumi.Input[_builtins.str] region: The resource region. If not defined, the provider region is used. - :param pulumi.Input[_builtins.str] rrule: Backup schedule described in `rrule` (recurrence rule) format. + :param pulumi.Input[_builtins.str] rrule: An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. :param pulumi.Input[_builtins.str] server_id: Server ID for the backup schedule. """ if backup_properties is not None: @@ -248,7 +248,7 @@ def region(self, value: Optional[pulumi.Input[_builtins.str]]): @pulumi.getter def rrule(self) -> Optional[pulumi.Input[_builtins.str]]: """ - Backup schedule described in `rrule` (recurrence rule) format. + An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ return pulumi.get(self, "rrule") @@ -297,7 +297,7 @@ def __init__(__self__, :param pulumi.Input[_builtins.str] name: The schedule name. :param pulumi.Input[_builtins.str] project_id: STACKIT Project ID to which the server is associated. :param pulumi.Input[_builtins.str] region: The resource region. If not defined, the provider region is used. - :param pulumi.Input[_builtins.str] rrule: Backup schedule described in `rrule` (recurrence rule) format. + :param pulumi.Input[_builtins.str] rrule: An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. :param pulumi.Input[_builtins.str] server_id: Server ID for the backup schedule. """ ... @@ -393,7 +393,7 @@ def get(resource_name: str, :param pulumi.Input[_builtins.str] name: The schedule name. :param pulumi.Input[_builtins.str] project_id: STACKIT Project ID to which the server is associated. :param pulumi.Input[_builtins.str] region: The resource region. If not defined, the provider region is used. - :param pulumi.Input[_builtins.str] rrule: Backup schedule described in `rrule` (recurrence rule) format. + :param pulumi.Input[_builtins.str] rrule: An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. :param pulumi.Input[_builtins.str] server_id: Server ID for the backup schedule. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -462,7 +462,7 @@ def region(self) -> pulumi.Output[_builtins.str]: @pulumi.getter def rrule(self) -> pulumi.Output[_builtins.str]: """ - Backup schedule described in `rrule` (recurrence rule) format. + An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ return pulumi.get(self, "rrule") diff --git a/sdk/python/pulumi_stackit/server_update_schedule.py b/sdk/python/pulumi_stackit/server_update_schedule.py index 8c46d40..733f472 100644 --- a/sdk/python/pulumi_stackit/server_update_schedule.py +++ b/sdk/python/pulumi_stackit/server_update_schedule.py @@ -29,9 +29,9 @@ def __init__(__self__, *, """ The set of arguments for constructing a ServerUpdateSchedule resource. :param pulumi.Input[_builtins.bool] enabled: Is the update schedule enabled or disabled. - :param pulumi.Input[_builtins.int] maintenance_window: Maintenance window [1..24]. + :param pulumi.Input[_builtins.int] maintenance_window: Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. :param pulumi.Input[_builtins.str] project_id: STACKIT Project ID to which the server is associated. - :param pulumi.Input[_builtins.str] rrule: Update schedule described in `rrule` (recurrence rule) format. + :param pulumi.Input[_builtins.str] rrule: An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. :param pulumi.Input[_builtins.str] server_id: Server ID for the update schedule. :param pulumi.Input[_builtins.str] name: The schedule name. :param pulumi.Input[_builtins.str] region: The resource region. If not defined, the provider region is used. @@ -62,7 +62,7 @@ def enabled(self, value: pulumi.Input[_builtins.bool]): @pulumi.getter(name="maintenanceWindow") def maintenance_window(self) -> pulumi.Input[_builtins.int]: """ - Maintenance window [1..24]. + Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. """ return pulumi.get(self, "maintenance_window") @@ -86,7 +86,7 @@ def project_id(self, value: pulumi.Input[_builtins.str]): @pulumi.getter def rrule(self) -> pulumi.Input[_builtins.str]: """ - Update schedule described in `rrule` (recurrence rule) format. + An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ return pulumi.get(self, "rrule") @@ -145,11 +145,11 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering ServerUpdateSchedule resources. :param pulumi.Input[_builtins.bool] enabled: Is the update schedule enabled or disabled. - :param pulumi.Input[_builtins.int] maintenance_window: Maintenance window [1..24]. + :param pulumi.Input[_builtins.int] maintenance_window: Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. :param pulumi.Input[_builtins.str] name: The schedule name. :param pulumi.Input[_builtins.str] project_id: STACKIT Project ID to which the server is associated. :param pulumi.Input[_builtins.str] region: The resource region. If not defined, the provider region is used. - :param pulumi.Input[_builtins.str] rrule: Update schedule described in `rrule` (recurrence rule) format. + :param pulumi.Input[_builtins.str] rrule: An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. :param pulumi.Input[_builtins.str] server_id: Server ID for the update schedule. :param pulumi.Input[_builtins.int] update_schedule_id: Update schedule ID. """ @@ -186,7 +186,7 @@ def enabled(self, value: Optional[pulumi.Input[_builtins.bool]]): @pulumi.getter(name="maintenanceWindow") def maintenance_window(self) -> Optional[pulumi.Input[_builtins.int]]: """ - Maintenance window [1..24]. + Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. """ return pulumi.get(self, "maintenance_window") @@ -234,7 +234,7 @@ def region(self, value: Optional[pulumi.Input[_builtins.str]]): @pulumi.getter def rrule(self) -> Optional[pulumi.Input[_builtins.str]]: """ - Update schedule described in `rrule` (recurrence rule) format. + An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ return pulumi.get(self, "rrule") @@ -291,11 +291,11 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[_builtins.bool] enabled: Is the update schedule enabled or disabled. - :param pulumi.Input[_builtins.int] maintenance_window: Maintenance window [1..24]. + :param pulumi.Input[_builtins.int] maintenance_window: Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. :param pulumi.Input[_builtins.str] name: The schedule name. :param pulumi.Input[_builtins.str] project_id: STACKIT Project ID to which the server is associated. :param pulumi.Input[_builtins.str] region: The resource region. If not defined, the provider region is used. - :param pulumi.Input[_builtins.str] rrule: Update schedule described in `rrule` (recurrence rule) format. + :param pulumi.Input[_builtins.str] rrule: An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. :param pulumi.Input[_builtins.str] server_id: Server ID for the update schedule. """ ... @@ -386,11 +386,11 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[_builtins.bool] enabled: Is the update schedule enabled or disabled. - :param pulumi.Input[_builtins.int] maintenance_window: Maintenance window [1..24]. + :param pulumi.Input[_builtins.int] maintenance_window: Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. :param pulumi.Input[_builtins.str] name: The schedule name. :param pulumi.Input[_builtins.str] project_id: STACKIT Project ID to which the server is associated. :param pulumi.Input[_builtins.str] region: The resource region. If not defined, the provider region is used. - :param pulumi.Input[_builtins.str] rrule: Update schedule described in `rrule` (recurrence rule) format. + :param pulumi.Input[_builtins.str] rrule: An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. :param pulumi.Input[_builtins.str] server_id: Server ID for the update schedule. :param pulumi.Input[_builtins.int] update_schedule_id: Update schedule ID. """ @@ -420,7 +420,7 @@ def enabled(self) -> pulumi.Output[_builtins.bool]: @pulumi.getter(name="maintenanceWindow") def maintenance_window(self) -> pulumi.Output[_builtins.int]: """ - Maintenance window [1..24]. + Maintenance window [1..24]. Updates start within the defined hourly window. Depending on the updates, the process may exceed this timeframe and require an automatic restart. """ return pulumi.get(self, "maintenance_window") @@ -452,7 +452,7 @@ def region(self) -> pulumi.Output[_builtins.str]: @pulumi.getter def rrule(self) -> pulumi.Output[_builtins.str]: """ - Update schedule described in `rrule` (recurrence rule) format. + An `rrule` (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates. """ return pulumi.get(self, "rrule")