AzAPI: Installation & Configuration
Installation
The Pulumi AzAPI provider is available as a package in all Pulumi languages:
- JavaScript/TypeScript:
@ediri/azapi
- Python:
ediri_azapi
- Go:
github.com/dirien/pulumi-azapi/sdk/go/azapi
- .NET:
ediri.Azapi
Configuration Options
The following configuration points are supported for the AzAPI
provider:
ClientId
- (Optional) The Client ID which should be used. This can also be sourced from theARM_CLIENT_ID
Environment Variable.Environment
- (Optional) The Cloud Environment which should be used. Possible values arepublic
,usgovernment
andchina
. Defaults topublic
. This can also be sourced from theARM_ENVIRONMENT
Environment Variable.SubscriptionId
- (Optional) The Subscription ID which should be used. This can also be sourced from theARM_SUBSCRIPTION_ID
Environment Variable.TenantId
- (Optional) The Tenant ID should be used. This can also be sourced from theARM_TENANT_ID
Environment Variable.
It’s possible to configure the behaviour of certain resources using the following properties:
DefaultTags
- (Optional) A mapping of tags which should be assigned to the azure resource as default tags.tags
in each resource block can override thedefault_tags
.DefaultLocation
- (Optional) The default Azure Region where the azure resource should exist.location
in each resource block can override thedefault_location
. Changing this forces new resources to be created.
When authenticating as a Service Principal using a Client Certificate, the following fields can be set:
ClientCertificatePassword
- (Optional) The password associated with the Client Certificate. This can also be sourced from theARM_CLIENT_CERTIFICATE_PASSWORD
Environment Variable.ClientCertificatePath
- (Optional) The path to the Client Certificate associated with the Service Principal which should be used. This can also be sourced from theARM_CLIENT_CERTIFICATE_PATH
Environment Variable.
When authenticating as a Service Principal using a Client Secret, the following fields can be set:
ClientSecret
- (Optional) The Client Secret which should be used. This can also be sourced from theARM_CLIENT_SECRET
Environment Variable.
When authenticating as a Service Principal using Open ID Connect, the following fields can be set:
OidcRequestToken
- (Optional) The bearer token for the request to the OIDC provider. This can also be sourced from theARM_OIDC_REQUEST_TOKEN
orACTIONS_ID_TOKEN_REQUEST_TOKEN
Environment Variables.OidcRequestUrl
- (Optional) The URL for the OIDC provider from which to request an ID token. This can also be sourced from theARM_OIDC_REQUEST_URL
orACTIONS_ID_TOKEN_REQUEST_URL
Environment Variables.OidcToken
- (Optional) The ID token when authenticating using OpenID Connect (OIDC). This can also be sourced from theARM_OIDC_TOKEN
environment Variable.OidcTokenFilePath
- (Optional) The path to a file containing an ID token when authenticating using OpenID Connect (OIDC). This can also be sourced from theARM_OIDC_TOKEN_FILE_PATH
environment Variable.UseOidc
- (Optional) Should OIDC be used for Authentication? This can also be sourced from theARM_USE_OIDC
Environment Variable. Defaults tofalse
.
For some advanced scenarios, such as where more granular permissions are necessary - the following properties can be set:
DisableCorrelationRequestId
- (Optional) Disable sending thex-ms-correlation-request-id
header. This can also be sourced from theARM_DISABLE_CORRELATION_REQUEST_ID
environment variable. Defaults tofalse
.DisableTerraformPartnerId
- (Optional) Disable sending the Terraform Partner ID if a custompartner_id
isn’t specified, which allows Microsoft to better understand the usage of Terraform. The Partner ID does not give HashiCorp any direct access to usage information. This can also be sourced from theARM_DISABLE_TERRAFORM_PARTNER_ID
environment variable. Defaults tofalse
.PartnerId
- (Optional) A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution. This can also be sourced from theARM_PARTNER_ID
Environment Variable.SkipProviderRegistration
- (Optional) Should the Provider skip registering the Resource Providers it supports? This can also be sourced from theARM_SKIP_PROVIDER_REGISTRATION
Environment Variable. Defaults tofalse
.