All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.hashicorp.cdktf.AzurermBackend Maven / Gradle / Ivy

There is a newer version: 0.21.0-pre.137
Show newest version
package com.hashicorp.cdktf;

/**
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.102.0 (build e354887)", date = "2024-09-23T09:16:36.871Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Jsii(module = com.hashicorp.cdktf.$Module.class, fqn = "cdktf.AzurermBackend")
public class AzurermBackend extends com.hashicorp.cdktf.TerraformBackend {

    protected AzurermBackend(final software.amazon.jsii.JsiiObjectRef objRef) {
        super(objRef);
    }

    protected AzurermBackend(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
        super(initializationMode);
    }

    /**
     * @param scope This parameter is required.
     * @param props This parameter is required.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
    public AzurermBackend(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.AzurermBackendConfig props) {
        super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
        software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(props, "props is required") });
    }

    /**
     * (experimental) Creates a TerraformRemoteState resource that accesses this backend.
     * 

* @param scope This parameter is required. * @param name This parameter is required. * @param _fromStack This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.TerraformRemoteState getRemoteStateDataSource(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String name, final @org.jetbrains.annotations.NotNull java.lang.String _fromStack) { return software.amazon.jsii.Kernel.call(this, "getRemoteStateDataSource", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.TerraformRemoteState.class), new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(name, "name is required"), java.util.Objects.requireNonNull(_fromStack, "_fromStack is required") }); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override protected @org.jetbrains.annotations.NotNull java.util.Map synthesizeAttributes() { return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "synthesizeAttributes", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)))); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override protected @org.jetbrains.annotations.NotNull java.util.Map synthesizeHclAttributes() { return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "synthesizeHclAttributes", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)))); } /** * (experimental) A fluent builder for {@link com.hashicorp.cdktf.AzurermBackend}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public static final class Builder implements software.amazon.jsii.Builder { /** * @return a new instance of {@link Builder}. * @param scope This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public static Builder create(final software.constructs.Construct scope) { return new Builder(scope); } private final software.constructs.Construct scope; private final com.hashicorp.cdktf.AzurermBackendConfig.Builder props; private Builder(final software.constructs.Construct scope) { this.scope = scope; this.props = new com.hashicorp.cdktf.AzurermBackendConfig.Builder(); } /** * (experimental) (Required) The Name of the Storage Container within the Storage Account. *

* @return {@code this} * @param containerName (Required) The Name of the Storage Container within the Storage Account. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder containerName(final java.lang.String containerName) { this.props.containerName(containerName); return this; } /** * (experimental) (Required) The name of the Blob used to retrieve/store Terraform's State file inside the Storage Container. *

* @return {@code this} * @param key (Required) The name of the Blob used to retrieve/store Terraform's State file inside the Storage Container. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder key(final java.lang.String key) { this.props.key(key); return this; } /** * (experimental) (Required) The Name of the Storage Account. *

* @return {@code this} * @param storageAccountName (Required) The Name of the Storage Account. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder storageAccountName(final java.lang.String storageAccountName) { this.props.storageAccountName(storageAccountName); return this; } /** * (experimental) access_key - (Optional) The Access Key used to access the Blob Storage Account. *

* This can also be sourced from the ARM_ACCESS_KEY environment variable. *

* @return {@code this} * @param accessKey access_key - (Optional) The Access Key used to access the Blob Storage Account. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder accessKey(final java.lang.String accessKey) { this.props.accessKey(accessKey); return this; } /** * (experimental) (Optional) The password associated with the Client Certificate specified in client_certificate_path. *

* This can also be sourced from the * ARM_CLIENT_CERTIFICATE_PASSWORD environment variable. *

* @return {@code this} * @param clientCertificatePassword (Optional) The password associated with the Client Certificate specified in client_certificate_path. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder clientCertificatePassword(final java.lang.String clientCertificatePassword) { this.props.clientCertificatePassword(clientCertificatePassword); return this; } /** * (experimental) (Optional) The path to the PFX file used as the Client Certificate when authenticating as a Service Principal. *

* This can also be sourced from the * ARM_CLIENT_CERTIFICATE_PATH environment variable. *

* @return {@code this} * @param clientCertificatePath (Optional) The path to the PFX file used as the Client Certificate when authenticating as a Service Principal. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder clientCertificatePath(final java.lang.String clientCertificatePath) { this.props.clientCertificatePath(clientCertificatePath); return this; } /** * (experimental) (Optional) The Client ID of the Service Principal. *

* This can also be sourced from the ARM_CLIENT_ID environment variable. *

* @return {@code this} * @param clientId (Optional) The Client ID of the Service Principal. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder clientId(final java.lang.String clientId) { this.props.clientId(clientId); return this; } /** * (experimental) (Optional) The Client Secret of the Service Principal. *

* This can also be sourced from the ARM_CLIENT_SECRET environment variable. *

* @return {@code this} * @param clientSecret (Optional) The Client Secret of the Service Principal. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder clientSecret(final java.lang.String clientSecret) { this.props.clientSecret(clientSecret); return this; } /** * (experimental) (Optional) The Custom Endpoint for Azure Resource Manager. This can also be sourced from the ARM_ENDPOINT environment variable. *

* NOTE: An endpoint should only be configured when using Azure Stack. *

* @return {@code this} * @param endpoint (Optional) The Custom Endpoint for Azure Resource Manager. This can also be sourced from the ARM_ENDPOINT environment variable. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder endpoint(final java.lang.String endpoint) { this.props.endpoint(endpoint); return this; } /** * (experimental) (Optional) The Azure Environment which should be used. *

* This can also be sourced from the ARM_ENVIRONMENT environment variable. * Possible values are public, china, german, stack and usgovernment. Defaults to public. *

* @return {@code this} * @param environment (Optional) The Azure Environment which should be used. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder environment(final java.lang.String environment) { this.props.environment(environment); return this; } /** * (experimental) (Optional) The Hostname of the Azure Metadata Service (for example management.azure.com), used to obtain the Cloud Environment when using a Custom Azure Environment. This can also be sourced from the ARM_METADATA_HOSTNAME Environment Variable.). *

* @return {@code this} * @param metadataHost (Optional) The Hostname of the Azure Metadata Service (for example management.azure.com), used to obtain the Cloud Environment when using a Custom Azure Environment. This can also be sourced from the ARM_METADATA_HOSTNAME Environment Variable.). This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder metadataHost(final java.lang.String metadataHost) { this.props.metadataHost(metadataHost); return this; } /** * (experimental) (Optional) The path to a custom Managed Service Identity endpoint which is automatically determined if not specified. *

* This can also be sourced from the ARM_MSI_ENDPOINT environment variable. *

* @return {@code this} * @param msiEndpoint (Optional) The path to a custom Managed Service Identity endpoint which is automatically determined if not specified. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder msiEndpoint(final java.lang.String msiEndpoint) { this.props.msiEndpoint(msiEndpoint); return this; } /** * (experimental) (Optional) The bearer token for the request to the OIDC provider. *

* This can * also be sourced from the ARM_OIDC_REQUEST_TOKEN or * ACTIONS_ID_TOKEN_REQUEST_TOKEN environment variables. *

* @return {@code this} * @param oidcRequestToken (Optional) The bearer token for the request to the OIDC provider. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder oidcRequestToken(final java.lang.String oidcRequestToken) { this.props.oidcRequestToken(oidcRequestToken); return this; } /** * (experimental) (Optional) The URL for the OIDC provider from which to request an ID token. *

* This can also be sourced from the ARM_OIDC_REQUEST_URL or * ACTIONS_ID_TOKEN_REQUEST_URL environment variables. *

* @return {@code this} * @param oidcRequestUrl (Optional) The URL for the OIDC provider from which to request an ID token. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder oidcRequestUrl(final java.lang.String oidcRequestUrl) { this.props.oidcRequestUrl(oidcRequestUrl); return this; } /** * (experimental) (Optional) The ID token when authenticating using OpenID Connect (OIDC). *

* This can also be sourced from the ARM_OIDC_TOKEN environment variable. *

* @return {@code this} * @param oidcToken (Optional) The ID token when authenticating using OpenID Connect (OIDC). This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder oidcToken(final java.lang.String oidcToken) { this.props.oidcToken(oidcToken); return this; } /** * (experimental) (Optional) The path to a file containing an ID token when authenticating using OpenID Connect (OIDC). *

* This can also be sourced from the ARM_OIDC_TOKEN_FILE_PATH environment variable. *

* @return {@code this} * @param oidcTokenFilePath (Optional) The path to a file containing an ID token when authenticating using OpenID Connect (OIDC). This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder oidcTokenFilePath(final java.lang.String oidcTokenFilePath) { this.props.oidcTokenFilePath(oidcTokenFilePath); return this; } /** * (experimental) (Required) The Name of the Resource Group in which the Storage Account exists. *

* @return {@code this} * @param resourceGroupName (Required) The Name of the Resource Group in which the Storage Account exists. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder resourceGroupName(final java.lang.String resourceGroupName) { this.props.resourceGroupName(resourceGroupName); return this; } /** * (experimental) (Optional) The SAS Token used to access the Blob Storage Account. *

* This can also be sourced from the ARM_SAS_TOKEN environment variable. *

* @return {@code this} * @param sasToken (Optional) The SAS Token used to access the Blob Storage Account. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder sasToken(final java.lang.String sasToken) { this.props.sasToken(sasToken); return this; } /** * (experimental) (Optional) Should the Blob used to store the Terraform Statefile be snapshotted before use? *

* Defaults to false. This value can also be sourced * from the ARM_SNAPSHOT environment variable. *

* @return {@code this} * @param snapshot (Optional) Should the Blob used to store the Terraform Statefile be snapshotted before use?. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder snapshot(final java.lang.Boolean snapshot) { this.props.snapshot(snapshot); return this; } /** * (experimental) (Optional) The Subscription ID in which the Storage Account exists. *

* This can also be sourced from the ARM_SUBSCRIPTION_ID environment variable. *

* @return {@code this} * @param subscriptionId (Optional) The Subscription ID in which the Storage Account exists. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder subscriptionId(final java.lang.String subscriptionId) { this.props.subscriptionId(subscriptionId); return this; } /** * (experimental) (Optional) The Tenant ID in which the Subscription exists. *

* This can also be sourced from the ARM_TENANT_ID environment variable. *

* @return {@code this} * @param tenantId (Optional) The Tenant ID in which the Subscription exists. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder tenantId(final java.lang.String tenantId) { this.props.tenantId(tenantId); return this; } /** * (experimental) (Optional) Should AzureAD Authentication be used to access the Blob Storage Account. *

* This can also be sourced from the ARM_USE_AZUREAD environment * variable. *

* Note: When using AzureAD for Authentication to Storage you also need to * ensure the Storage Blob Data Owner role is assigned. *

* @return {@code this} * @param useAzureadAuth (Optional) Should AzureAD Authentication be used to access the Blob Storage Account. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder useAzureadAuth(final java.lang.Boolean useAzureadAuth) { this.props.useAzureadAuth(useAzureadAuth); return this; } /** * (experimental) (Optional) Should MSAL be used for authentication instead of ADAL, and should Microsoft Graph be used instead of Azure Active Directory Graph? *

* Defaults to true. *

* Note: In Terraform 1.2 the Azure Backend uses MSAL (and Microsoft Graph) * rather than ADAL (and Azure Active Directory Graph) for authentication by * default - you can disable this by setting use_microsoft_graph to false. * This setting will be removed in Terraform 1.3, due to Microsoft's * deprecation of ADAL. *

* @return {@code this} * @param useMicrosoftGraph (Optional) Should MSAL be used for authentication instead of ADAL, and should Microsoft Graph be used instead of Azure Active Directory Graph?. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder useMicrosoftGraph(final java.lang.Boolean useMicrosoftGraph) { this.props.useMicrosoftGraph(useMicrosoftGraph); return this; } /** * (experimental) (Optional) Should Managed Service Identity authentication be used? *

* This can also be sourced from the ARM_USE_MSI environment variable. *

* @return {@code this} * @param useMsi (Optional) Should Managed Service Identity authentication be used?. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder useMsi(final java.lang.Boolean useMsi) { this.props.useMsi(useMsi); return this; } /** * (experimental) (Optional) Should OIDC authentication be used? This can also be sourced from the ARM_USE_OIDC environment variable. *

* Note: When using OIDC for authentication, use_microsoft_graph * must be set to true (which is the default). *

* @return {@code this} * @param useOidc (Optional) Should OIDC authentication be used? This can also be sourced from the ARM_USE_OIDC environment variable. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder useOidc(final java.lang.Boolean useOidc) { this.props.useOidc(useOidc); return this; } /** * @return a newly built instance of {@link com.hashicorp.cdktf.AzurermBackend}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public com.hashicorp.cdktf.AzurermBackend build() { return new com.hashicorp.cdktf.AzurermBackend( this.scope, this.props.build() ); } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy