Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewAzureKeyVaultTrait ¶
Types ¶
type Trait ¶
type Trait struct {
traitv1.Trait `property:",squash"`
// Enables automatic configuration of the trait.
Auto *bool `property:"auto" json:"auto,omitempty"`
// The Azure Tenant Id for accessing Key Vault
TenantID string `property:"tenant-id" json:"tenantId,omitempty"`
// The Azure Client Id for accessing Key Vault
ClientID string `property:"client-id" json:"clientId,omitempty"`
// The Azure Client Secret for accessing Key Vault. This could be a plain text or a configmap/secret.
// The content of the azure key vault client secret is expected to be a text containing a valid Client Secret.
// Syntax: [configmap|secret]:name[/key], where name represents the resource name, key optionally represents the resource key to be filtered (default key value = azure-key-vault-client-secret).
ClientSecret string `property:"client-secret" json:"clientSecret,omitempty"`
// The Azure Vault Name for accessing Key Vault
VaultName string `property:"vault-name" json:"vaultName,omitempty"`
// Define if we want to use the Camel Context Reload feature or not
ContextReloadEnabled *bool `property:"context-reload-enabled" json:"contextReloadEnabled,omitempty"`
// Define if we want to use the Refresh Feature for secrets
RefreshEnabled *bool `property:"refresh-enabled" json:"refreshEnabled,omitempty"`
// Whether the Azure Identity Authentication should be used or not
AzureIdentityEnabled *bool `property:"azure-identity-enabled" json:"azureIdentityEnabled,omitempty"`
// If Refresh is enabled, this defines the interval to check the refresh event
RefreshPeriod string `property:"refresh-period" json:"refreshPeriod,omitempty"`
// If Refresh is enabled, the regular expression representing the secrets we want to track
Secrets string `property:"secrets" json:"secrets,omitempty"`
// If Refresh is enabled, the connection String to point to the Eventhub service used to track updates
EventhubConnectionString string `property:"eventhub-connection-string" json:"eventhubConnectionString,omitempty"`
// If Refresh is enabled, the account name for Azure Storage Blob service used to save checkpoint while consuming from Eventhub
BlobAccountName string `property:"blob-account-name" json:"blobAccountName,omitempty"`
// If Refresh is enabled, the access key for Azure Storage Blob service used to save checkpoint while consuming from Eventhub. This could be a plain text or a configmap/secret.
// The content of the azure key vault blob access key is expected to be a text containing a valid Access Key for Azure Storage Blob.
// Syntax: [configmap|secret]:name[/key], where name represents the resource name, key optionally represents the resource key to be filtered (default key value = azure-storage-blob-access-key).
BlobAccessKey string `property:"blob-access-key" json:"blobAccessKey,omitempty"`
// If Refresh is enabled, the container name for Azure Storage Blob service used to save checkpoint while consuming from Eventhub
BlobContainerName string `property:"blob-container-name" json:"blobContainerName,omitempty"`
}
The Azure Key Vault trait can be used to use secrets from Azure Key Vault service
The Azure Key Vault trait is disabled by default.
For more information about how to use secrets from Azure Key Vault component take a look at the components docs: xref:components::azure-key-vault-component.adoc[Azure Key Vault component]
A sample execution of this trait, would require the following trait options: -t azure-key-vault.enabled=true -t azure-key-vault.tenant-id="tenant-id" -t azure-key-vault.client-id="client-id" -t azure-key-vault.client-secret="client-secret" -t azure-key-vault.vault-name="vault-name"
To enable the automatic context reload on secrets updates you should define the following trait options: -t azure-key-vault.enabled=true -t azure-key-vault.tenant-id="tenant-id" -t azure-key-vault.client-id="client-id" -t azure-key-vault.client-secret="client-secret" -t azure-key-vault.vault-name="vault-name" -t azure-key-vault.context-reload-enabled="true" -t azure-key-vault.refresh-enabled="true" -t azure-key-vault.refresh-period="30000" -t azure-key-vault.secrets="test*" -t azure-key-vault.eventhub-connection-string="connection-string" -t azure-key-vault.blob-account-name="account-name" -t azure-key-vault.blob-container-name="container-name" -t azure-key-vault.blob-access-key="account-name" -t azure-key-vault.azure-identity-enabled="true"
WARNING: The trait is **deprecated** and will removed in future release versions: configure directly the Camel properties as required by the component instead.
+camel-k:trait=azure-key-vault. +camel-k:deprecated=2.5.0.