config/crd/bases/azconfig.io_azureappconfigurationproviders.yaml (352 lines of code) (raw):

--- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.15.0 name: azureappconfigurationproviders.azconfig.io spec: group: azconfig.io names: kind: AzureAppConfigurationProvider listKind: AzureAppConfigurationProviderList plural: azureappconfigurationproviders singular: azureappconfigurationprovider scope: Namespaced versions: - name: v1 schema: openAPIV3Schema: description: AzureAppConfigurationProvider is the Schema for the AzureAppConfigurationProviders API properties: apiVersion: description: |- APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: description: |- Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: description: AzureAppConfigurationProviderSpec defines the desired state of AzureAppConfigurationProvider properties: auth: description: AzureAppConfigurationProviderAuth defines the authentication type used to connect Azure AppConfiguration properties: managedIdentityClientId: description: ClientId of the Managed Identity type: string servicePrincipalReference: description: Secret reference for Service Principle type: string workloadIdentity: description: Workload Identity properties: managedIdentityClientId: type: string managedIdentityClientIdReference: description: ManagedIdentityReferenceParameters defines the parameters for configmap reference properties: configMap: description: ConfigMap contains the managed identity client id type: string key: description: Key of the managed identity client id type: string required: - configMap - key type: object serviceAccountName: type: string type: object type: object configuration: description: AzureAppConfigurationKeyValueOptions defines the options of fetching key-values from AppConfiguration. properties: refresh: description: Defines the settings for dynamic configuration. properties: enabled: default: false type: boolean interval: default: 30s format: duration type: string monitoring: description: Defines the settings for change monitoring. properties: keyValues: items: description: Defines the keyValues to be watched. properties: key: type: string label: default: "\0" type: string required: - key type: object minItems: 1 type: array required: - keyValues type: object type: object selectors: items: description: KeyLabelSelector defines the filters when fetching the data from Azure AppConfiguration properties: keyFilter: type: string labelFilter: type: string snapshotName: type: string type: object type: array trimKeyPrefixes: items: type: string type: array type: object connectionStringReference: type: string endpoint: description: The endpoint url of AppConfiguration which should sync the configuration key-values from. format: uri type: string featureFlag: description: AzureAppConfigurationFeatureFlagOptions defines the options of fetching feature flags from AppConfiguration. properties: refresh: description: Defines the settings for feature flag refresh. properties: enabled: default: false type: boolean interval: default: 30s format: duration type: string required: - interval type: object selectors: items: description: KeyLabelSelector defines the filters when fetching the data from Azure AppConfiguration properties: keyFilter: type: string labelFilter: type: string snapshotName: type: string type: object type: array type: object loadBalancingEnabled: default: false type: boolean replicaDiscoveryEnabled: default: true type: boolean secret: description: SecretReference defines the settings for resolving secret reference type items properties: auth: properties: keyVaults: items: description: AzureKeyVaultPerVaultAuth defines the authentication type used to Azure KeyVault resolve KeyVaultReference properties: managedIdentityClientId: description: ClientId of the Managed Identity type: string servicePrincipalReference: description: Secret reference for Service Principle type: string uri: description: The uri of KeyVault which should sync the secret reference item from format: uri type: string workloadIdentity: description: Workload Identity properties: managedIdentityClientId: type: string managedIdentityClientIdReference: description: ManagedIdentityReferenceParameters defines the parameters for configmap reference properties: configMap: description: ConfigMap contains the managed identity client id type: string key: description: Key of the managed identity client id type: string required: - configMap - key type: object serviceAccountName: type: string type: object required: - uri type: object type: array managedIdentityClientId: description: ClientId of the Managed Identity type: string servicePrincipalReference: description: Secret reference for Service Principle type: string workloadIdentity: description: Workload Identity properties: managedIdentityClientId: type: string managedIdentityClientIdReference: description: ManagedIdentityReferenceParameters defines the parameters for configmap reference properties: configMap: description: ConfigMap contains the managed identity client id type: string key: description: Key of the managed identity client id type: string required: - configMap - key type: object serviceAccountName: type: string type: object type: object refresh: description: Defines the settings for refresh. properties: enabled: default: false type: boolean interval: format: duration type: string required: - interval type: object target: description: SecretGenerationParameters defines the name of target Secret properties: secretName: maxLength: 253 minLength: 1 pattern: '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*' type: string required: - secretName type: object required: - target type: object target: description: ConfigurationGenerationParameters defines the name of target ConfigMap properties: configMapData: description: ConfigMapDataOptions defines the options of generating ConfigMap data properties: key: type: string separator: description: The delimiter that is used to output the ConfigMap data in hierarchical format when the type is set to json or yaml. maxLength: 50 minLength: 1 type: string type: default: default enum: - default - json - yaml - properties type: string type: object configMapName: maxLength: 253 minLength: 1 pattern: '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*' type: string required: - configMapName type: object required: - target type: object status: description: AzureAppConfigurationProviderStatus defines the observed state of AzureAppConfigurationProvider properties: lastReconcileTime: format: date-time type: string lastSyncTime: format: date-time type: string message: type: string phase: type: string refreshStatus: description: RefreshStatus defines last refresh time of configmap and secret when dynamic feature is enabled properties: lastFeatureFlagRefreshTime: format: date-time type: string lastKeyValueRefreshTime: format: date-time type: string lastKeyVaultReferenceRefreshTime: format: date-time type: string type: object type: object type: object served: true storage: true subresources: status: {}