This variant allows to **deploy your applications** to [Azure Kubernetes Services](https://learn.microsoft.com/en-gb/azure/aks/what-is-aks) with OIDC and [kubelogin](https://azure.github.io/kubelogin/).
List of requirements before using this variant for deploying your charts:
1. You must have an AKS cluster,
2. You must have a managed identity or an application with enough permissions to make the required modifications,
3. You must have federated identity credentials for this managed identity or application.
#### Configuration
| Input / Variable | Description | Default value |
| `TBC_AZURE_PROVIDER_IMAGE` | The [Azure Auth Provider](https://gitlab.com/to-be-continuous/tools/azure-auth-provider) image to use (can be overridden) | `registry.gitlab.com/to-be-continuous/tools/azure-auth-provider:latest` |
| `azure-oidc-aud` / `AZURE_OIDC_AUD` | The `aud` claim for the JWT token used for [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/) | `api://AzureADTokenExchange` |
| `azure-client-id` / `AZURE_CLIENT_ID` | Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/) | _none_ |
| `azure-tenant-id` / `AZURE_TENANT_ID` | Azure Tenant Id of the target AKS | _none_ |
| `azure-review-client-id` / `AZURE_REVIEW_CLIENT_ID` | Client Id of the identity used by the OIDC authentication for `review` env _(only define to override default)_ | _none_ |
| `azure-review-tenant-id` / `AZURE_REVIEW_TENANT_ID` | Azure Tenant Id of the target AKS for `review` env _(only define to override default)_ | _none_ |
| `azure-integ-client-id` / `AZURE_INTEG_CLIENT_ID` | Client Id of the identity used by the OIDC authentication for `integ` env _(only define to override default)_ | _none_ |
| `azure-integ-tenant-id` / `AZURE_INTEG_TENANT_ID` | Azure Tenant Id of the target AKS for `integ` env _(only define to override default)_ | _none_ |
| `azure-staging-client-id` / `AZURE_STAGING_CLIENT_ID` | Client Id of the identity used by the OIDC authentication for `staging` env _(only define to override default)_ | _none_ |
| `azure-staging-tenant-id` / `AZURE_STAGING_TENANT_ID` | Azure Tenant Id of the target AKS for `staging` env _(only define to override default)_ | _none_ |
| `azure-prod-client-id` / `AZURE_PROD_CLIENT_ID` | Client Id of the identity used by the OIDC authentication for `prod` env _(only define to override default)_ | _none_ |
| `azure-prod-tenant-id` / `AZURE_PROD_TENANT_ID` | Azure Tenant Id of the target AKS for `prod` env _(only define to override default)_ | _none_ |
**AKS kubeconfig via Azure Auth Provider**: Users configure the `K8S_<ENV>_KUBE_CONFIG` variable with a URL pattern (`@url@http://azure-auth-provider/kubeconfig?subscription_id=...`) that dynamically retrieves a kubeconfig that will be used by the kubelogin exec plugin.
The authentication uses [GitLab's OIDC integration with AWS](https://docs.gitlab.com/ci/cloud_services/azure/), which means you don't need to manage long-lived AAD credentials in your CI/CD variables.
"description":"The `aud` claim for the JWT token used for [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/)",
"default":"api://AzureADTokenExchange",
"advanced":true
},
{
"name":"AZURE_CLIENT_ID",
"description":"Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/)"
},
{
"name":"AZURE_REVIEW_CLIENT_ID",
"description":"Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/) for `review` env _(only define to override default)_",
"advanced":true
},
{
"name":"AZURE_INTEG_CLIENT_ID",
"description":"Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/) for `integ` env _(only define to override default)_",
"advanced":true
},
{
"name":"AZURE_STAGING_CLIENT_ID",
"description":"Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/) for `staging` env _(only define to override default)_",
"advanced":true
},
{
"name":"AZURE_PROD_CLIENT_ID",
"description":"Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/) for `prod` env _(only define to override default)_",
"advanced":true
},
{
"name":"AZURE_TENANT_ID",
"description":"Azure Tenant Id of the target AKS"
},
{
"name":"AZURE_REVIEW_TENANT_ID",
"description":"Azure Tenant Id of the target AKS for `review` env _(only define to override default)_",
"advanced":true
},
{
"name":"AZURE_INTEG_TENANT_ID",
"description":"Azure Tenant Id of the target AKS for `integ` env _(only define to override default)_",
"advanced":true
},
{
"name":"AZURE_STAGING_TENANT_ID",
"description":"Azure Tenant Id of the target AKS for `staging` env _(only define to override default)_",
"advanced":true
},
{
"name":"AZURE_PROD_TENANT_ID",
"description":"Azure Tenant Id of the target AKS for `prod` env _(only define to override default)_",
description:The `aud` claim for the JWT token used for [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/)
default:'api://AzureADTokenExchange'
azure-client-id:
description:Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/)
default:''
azure-tenant-id:
description:Azure Tenant Id of the target AKS
default:''
azure-review-client-id:
description:Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/) for `review` env _(only define to override default)_
default:''
azure-review-tenant-id:
description:Azure Tenant Id of the target AKS for `review` env _(only define to override default)_
default:''
azure-integ-client-id:
description:Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/) for `integ` env _(only define to override default)_
default:''
azure-integ-tenant-id:
description:Azure Tenant Id of the target AKS for `integ` env _(only define to override default)_
default:''
azure-staging-client-id:
description:Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/) for `staging` env _(only define to override default)_
default:''
azure-staging-tenant-id:
description:Azure Tenant Id of the target AKS for `staging` env _(only define to override default)_
default:''
azure-prod-client-id:
description:Client Id of the identity used by the [OIDC authentication](https://docs.gitlab.com/ci/cloud_services/azure/) for `prod` env _(only define to override default)_
default:''
azure-prod-tenant-id:
description:Azure Tenant Id of the target AKS for `prod` env _(only define to override default)_