flux_configurations
Creates, updates, deletes, gets or lists a flux_configurations resource.
Overview
| Name | flux_configurations |
| Type | Resource |
| Id | azure.kubernetes_configuration.flux_configurations |
Fields
The following fields are returned by SELECT queries:
- get
- list
| Name | Datatype | Description |
|---|---|---|
id | string | Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. |
name | string | The name of the resource. |
azureBlob | object | Parameters to reconcile to the AzureBlob source kind type. |
bucket | object | Parameters to reconcile to the Bucket source kind type. |
complianceState | string | Combined status of the Flux Kubernetes resources created by the fluxConfiguration or created by the managed objects. Known values are: "Compliant", "Non-Compliant", "Pending", "Suspended", and "Unknown". (Compliant, Non-Compliant, Pending, Suspended, Unknown) |
configurationProtectedSettings | object | Key-value pairs of protected configuration settings for the configuration. |
errorMessage | string | Error message returned to the user in the case of provisioning failure. |
gitRepository | object | Parameters to reconcile to the GitRepository source kind type. |
kustomizations | object | Array of kustomizations used to reconcile the artifact pulled by the source type on the cluster. |
namespace | string | The namespace to which this configuration is installed to. Maximum of 253 lower case alphanumeric characters, hyphen and period only. |
ociRepository | object | Parameters to reconcile to the OCIRepository source kind type. |
provisioningState | string | Status of the creation of the fluxConfiguration. Known values are: "Succeeded", "Failed", "Canceled", "Creating", "Updating", and "Deleting". (Succeeded, Failed, Canceled, Creating, Updating, Deleting) |
reconciliationWaitDuration | string | Maximum duration to wait for flux configuration reconciliation. E.g PT1H, PT5M, P1D. |
repositoryPublicKey | string | Public Key associated with this fluxConfiguration (either generated within the cluster or provided by the user). |
scope | string | Scope at which the operator will be installed. Known values are: "cluster" and "namespace". (cluster, namespace) |
sourceKind | string | Source Kind to pull the configuration data from. Known values are: "GitRepository", "Bucket", "AzureBlob", and "OCIRepository". (GitRepository, Bucket, AzureBlob, OCIRepository) |
sourceSyncedCommitId | string | Branch and/or SHA of the source commit synced with the cluster. |
sourceUpdatedAt | string (date-time) | Datetime the fluxConfiguration synced its source on the cluster. |
statusUpdatedAt | string (date-time) | Datetime the fluxConfiguration synced its status on the cluster with Azure. |
statuses | array | Statuses of the Flux Kubernetes resources created by the fluxConfiguration or created by the managed objects provisioned by the fluxConfiguration. |
suspend | boolean | Whether this configuration should suspend its reconciliation of its kustomizations and sources. |
systemData | object | Azure Resource Manager metadata containing createdBy and modifiedBy information. |
type | string | The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". |
waitForReconciliation | boolean | Whether flux configuration deployment should wait for cluster to reconcile the kustomizations. |
| Name | Datatype | Description |
|---|---|---|
id | string | Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. |
name | string | The name of the resource. |
azureBlob | object | Parameters to reconcile to the AzureBlob source kind type. |
bucket | object | Parameters to reconcile to the Bucket source kind type. |
complianceState | string | Combined status of the Flux Kubernetes resources created by the fluxConfiguration or created by the managed objects. Known values are: "Compliant", "Non-Compliant", "Pending", "Suspended", and "Unknown". |
configurationProtectedSettings | object | Key-value pairs of protected configuration settings for the configuration. |
errorMessage | string | Error message returned to the user in the case of provisioning failure. |
gitRepository | object | Parameters to reconcile to the GitRepository source kind type. |
kustomizations | object | Array of kustomizations used to reconcile the artifact pulled by the source type on the cluster. |
namespace | string | The namespace to which this configuration is installed to. Maximum of 253 lower case alphanumeric characters, hyphen and period only. |
provisioningState | string | Status of the creation of the fluxConfiguration. Known values are: "Succeeded", "Failed", "Canceled", "Creating", "Updating", and "Deleting". |
reconciliationWaitDuration | string | Maximum duration to wait for flux configuration reconciliation. E.g PT1H, PT5M, P1D. |
repositoryPublicKey | string | Public Key associated with this fluxConfiguration (either generated within the cluster or provided by the user). |
scope | string | Scope at which the operator will be installed. Known values are: "cluster" and "namespace". |
sourceKind | string | Source Kind to pull the configuration data from. Known values are: "GitRepository", "Bucket", and "AzureBlob". |
sourceSyncedCommitId | string | Branch and/or SHA of the source commit synced with the cluster. |
sourceUpdatedAt | string (date-time) | Datetime the fluxConfiguration synced its source on the cluster. |
statusUpdatedAt | string (date-time) | Datetime the fluxConfiguration synced its status on the cluster with Azure. |
statuses | array | Statuses of the Flux Kubernetes resources created by the fluxConfiguration or created by the managed objects provisioned by the fluxConfiguration. |
suspend | boolean | Whether this configuration should suspend its reconciliation of its kustomizations and sources. |
systemData | object | Top level metadata https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-contracts.md#system-metadata-for-all-azure-resources. |
type | string | The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". |
waitForReconciliation | boolean | Whether flux configuration deployment should wait for cluster to reconcile the kustomizations. |
Methods
The following methods are available for this resource:
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
cluster_name | string | The name of the kubernetes cluster. Required. |
cluster_resource_name | string | The Kubernetes cluster resource name - i.e. managedClusters, connectedClusters, provisionedClusters, appliances. Required. |
cluster_rp | string | The Kubernetes cluster RP - i.e. Microsoft.ContainerService, Microsoft.Kubernetes, Microsoft.HybridContainerService. Required. |
flux_configuration_name | string | Name of the Flux Configuration. Required. |
resource_group_name | string | The name of the resource group. The name is case insensitive. Required. |
subscription_id | string | |
forceDelete | boolean | Delete the extension resource in Azure - not the normal asynchronous delete. Default value is None. |
SELECT examples
- get
- list
Gets details of the Flux Configuration.
SELECT
id,
name,
azureBlob,
bucket,
complianceState,
configurationProtectedSettings,
errorMessage,
gitRepository,
kustomizations,
namespace,
ociRepository,
provisioningState,
reconciliationWaitDuration,
repositoryPublicKey,
scope,
sourceKind,
sourceSyncedCommitId,
sourceUpdatedAt,
statusUpdatedAt,
statuses,
suspend,
systemData,
type,
waitForReconciliation
FROM azure.kubernetes_configuration.flux_configurations
WHERE resource_group_name = '{{ resource_group_name }}' -- required
AND cluster_rp = '{{ cluster_rp }}' -- required
AND cluster_resource_name = '{{ cluster_resource_name }}' -- required
AND cluster_name = '{{ cluster_name }}' -- required
AND flux_configuration_name = '{{ flux_configuration_name }}' -- required
AND subscription_id = '{{ subscription_id }}' -- required
;
List all Flux Configurations.
SELECT
id,
name,
azureBlob,
bucket,
complianceState,
configurationProtectedSettings,
errorMessage,
gitRepository,
kustomizations,
namespace,
provisioningState,
reconciliationWaitDuration,
repositoryPublicKey,
scope,
sourceKind,
sourceSyncedCommitId,
sourceUpdatedAt,
statusUpdatedAt,
statuses,
suspend,
systemData,
type,
waitForReconciliation
FROM azure.kubernetes_configuration.flux_configurations
WHERE resource_group_name = '{{ resource_group_name }}' -- required
AND cluster_rp = '{{ cluster_rp }}' -- required
AND cluster_resource_name = '{{ cluster_resource_name }}' -- required
AND cluster_name = '{{ cluster_name }}' -- required
AND subscription_id = '{{ subscription_id }}' -- required
;
INSERT examples
- create_or_update
- Manifest
Create a new Kubernetes Flux Configuration.
INSERT INTO azure.kubernetes_configuration.flux_configurations (
properties,
resource_group_name,
cluster_rp,
cluster_resource_name,
cluster_name,
flux_configuration_name,
subscription_id
)
SELECT
'{{ properties }}',
'{{ resource_group_name }}',
'{{ cluster_rp }}',
'{{ cluster_resource_name }}',
'{{ cluster_name }}',
'{{ flux_configuration_name }}',
'{{ subscription_id }}'
RETURNING
id,
name,
properties,
systemData,
type
;
# Description fields are for documentation purposes
- name: flux_configurations
props:
- name: resource_group_name
value: "{{ resource_group_name }}"
description: Required parameter for the flux_configurations resource.
- name: cluster_rp
value: "{{ cluster_rp }}"
description: Required parameter for the flux_configurations resource.
- name: cluster_resource_name
value: "{{ cluster_resource_name }}"
description: Required parameter for the flux_configurations resource.
- name: cluster_name
value: "{{ cluster_name }}"
description: Required parameter for the flux_configurations resource.
- name: flux_configuration_name
value: "{{ flux_configuration_name }}"
description: Required parameter for the flux_configurations resource.
- name: subscription_id
value: "{{ subscription_id }}"
description: Required parameter for the flux_configurations resource.
- name: properties
description: |
Properties to create a Flux Configuration resource.
value:
scope: "{{ scope }}"
namespace: "{{ namespace }}"
sourceKind: "{{ sourceKind }}"
suspend: {{ suspend }}
gitRepository:
url: "{{ url }}"
timeoutInSeconds: {{ timeoutInSeconds }}
syncIntervalInSeconds: {{ syncIntervalInSeconds }}
repositoryRef:
branch: "{{ branch }}"
tag: "{{ tag }}"
semver: "{{ semver }}"
commit: "{{ commit }}"
sshKnownHosts: "{{ sshKnownHosts }}"
httpsUser: "{{ httpsUser }}"
httpsCACert: "{{ httpsCACert }}"
localAuthRef: "{{ localAuthRef }}"
provider: "{{ provider }}"
bucket:
url: "{{ url }}"
bucketName: "{{ bucketName }}"
insecure: {{ insecure }}
timeoutInSeconds: {{ timeoutInSeconds }}
syncIntervalInSeconds: {{ syncIntervalInSeconds }}
accessKey: "{{ accessKey }}"
localAuthRef: "{{ localAuthRef }}"
azureBlob:
url: "{{ url }}"
containerName: "{{ containerName }}"
timeoutInSeconds: {{ timeoutInSeconds }}
syncIntervalInSeconds: {{ syncIntervalInSeconds }}
servicePrincipal:
clientId: "{{ clientId }}"
tenantId: "{{ tenantId }}"
clientSecret: "{{ clientSecret }}"
clientCertificate: "{{ clientCertificate }}"
clientCertificatePassword: "{{ clientCertificatePassword }}"
clientCertificateSendChain: {{ clientCertificateSendChain }}
accountKey: "{{ accountKey }}"
sasToken: "{{ sasToken }}"
managedIdentity:
clientId: "{{ clientId }}"
localAuthRef: "{{ localAuthRef }}"
ociRepository:
url: "{{ url }}"
timeoutInSeconds: {{ timeoutInSeconds }}
syncIntervalInSeconds: {{ syncIntervalInSeconds }}
repositoryRef:
tag: "{{ tag }}"
semver: "{{ semver }}"
digest: "{{ digest }}"
layerSelector:
mediaType: "{{ mediaType }}"
operation: "{{ operation }}"
verify:
provider: "{{ provider }}"
verificationConfig: "{{ verificationConfig }}"
matchOidcIdentity:
- issuer: "{{ issuer }}"
subject: "{{ subject }}"
insecure: {{ insecure }}
useWorkloadIdentity: {{ useWorkloadIdentity }}
serviceAccountName: "{{ serviceAccountName }}"
tlsConfig:
clientCertificate: "{{ clientCertificate }}"
privateKey: "{{ privateKey }}"
caCertificate: "{{ caCertificate }}"
localAuthRef: "{{ localAuthRef }}"
kustomizations: "{{ kustomizations }}"
configurationProtectedSettings: "{{ configurationProtectedSettings }}"
statuses:
- name: "{{ name }}"
namespace: "{{ namespace }}"
kind: "{{ kind }}"
complianceState: "{{ complianceState }}"
appliedBy:
name: "{{ name }}"
namespace: "{{ namespace }}"
statusConditions: "{{ statusConditions }}"
helmReleaseProperties:
lastRevisionApplied: {{ lastRevisionApplied }}
helmChartRef:
name: "{{ name }}"
namespace: "{{ namespace }}"
failureCount: {{ failureCount }}
installFailureCount: {{ installFailureCount }}
upgradeFailureCount: {{ upgradeFailureCount }}
repositoryPublicKey: "{{ repositoryPublicKey }}"
sourceSyncedCommitId: "{{ sourceSyncedCommitId }}"
sourceUpdatedAt: "{{ sourceUpdatedAt }}"
statusUpdatedAt: "{{ statusUpdatedAt }}"
waitForReconciliation: {{ waitForReconciliation }}
reconciliationWaitDuration: "{{ reconciliationWaitDuration }}"
complianceState: "{{ complianceState }}"
provisioningState: "{{ provisioningState }}"
errorMessage: "{{ errorMessage }}"
UPDATE examples
- update
Update an existing Kubernetes Flux Configuration.
UPDATE azure.kubernetes_configuration.flux_configurations
SET
properties = '{{ properties }}'
WHERE
resource_group_name = '{{ resource_group_name }}' --required
AND cluster_rp = '{{ cluster_rp }}' --required
AND cluster_resource_name = '{{ cluster_resource_name }}' --required
AND cluster_name = '{{ cluster_name }}' --required
AND flux_configuration_name = '{{ flux_configuration_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
RETURNING
id,
name,
properties,
systemData,
type;
REPLACE examples
- create_or_update
Create a new Kubernetes Flux Configuration.
REPLACE azure.kubernetes_configuration.flux_configurations
SET
properties = '{{ properties }}'
WHERE
resource_group_name = '{{ resource_group_name }}' --required
AND cluster_rp = '{{ cluster_rp }}' --required
AND cluster_resource_name = '{{ cluster_resource_name }}' --required
AND cluster_name = '{{ cluster_name }}' --required
AND flux_configuration_name = '{{ flux_configuration_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
RETURNING
id,
name,
properties,
systemData,
type;
DELETE examples
- delete
This will delete the YAML file used to set up the Flux Configuration, thus stopping future sync from the source repo.
DELETE FROM azure.kubernetes_configuration.flux_configurations
WHERE resource_group_name = '{{ resource_group_name }}' --required
AND cluster_rp = '{{ cluster_rp }}' --required
AND cluster_resource_name = '{{ cluster_resource_name }}' --required
AND cluster_name = '{{ cluster_name }}' --required
AND flux_configuration_name = '{{ flux_configuration_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
AND forceDelete = '{{ forceDelete }}'
;