@pulumi/azure-native
Version:
[](https://slack.pulumi.com) [](https://npmjs.com/package/@pulumi/azure-native) [ • 6.85 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
* The SecretSync resource.
*
* Uses Azure REST API version 2024-08-21-preview. In version 2.x of the Azure Native provider, it used API version 2024-08-21-preview.
*/
export declare class SecretSync extends pulumi.CustomResource {
/**
* Get an existing SecretSync resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): SecretSync;
/**
* Returns true if the given object is an instance of SecretSync. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is SecretSync;
/**
* The Azure API version of the resource.
*/
readonly azureApiVersion: pulumi.Output<string>;
/**
* The complex type of the extended location.
*/
readonly extendedLocation: pulumi.Output<outputs.secretsynccontroller.AzureResourceManagerCommonTypesExtendedLocationResponse | undefined>;
/**
* ForceSynchronization can be used to force the secret synchronization. The secret synchronization is triggered by changing the value in this field. This field is not used to resolve synchronization conflicts.
*/
readonly forceSynchronization: pulumi.Output<string | undefined>;
/**
* Type specifies the type of the Kubernetes secret object, e.g. "Opaque" or"kubernetes.io/tls". The controller must have permission to create secrets of the specified type.
*/
readonly kubernetesSecretType: pulumi.Output<string>;
/**
* The geo-location where the resource lives
*/
readonly location: pulumi.Output<string>;
/**
* The name of the resource
*/
readonly name: pulumi.Output<string>;
/**
* An array of SecretObjectData that maps secret data from the external secret provider to the Kubernetes secret. Each entry specifies the source secret in the external provider and the corresponding key in the Kubernetes secret.
*/
readonly objectSecretMapping: pulumi.Output<outputs.secretsynccontroller.KubernetesSecretObjectMappingResponse[]>;
/**
* Provisioning state of the SecretSync instance.
*/
readonly provisioningState: pulumi.Output<string>;
/**
* SecretProviderClassName specifies the name of the SecretProviderClass resource, which contains the information needed to access the cloud provider secret store.
*/
readonly secretProviderClassName: pulumi.Output<string>;
/**
* ServiceAccountName specifies the name of the service account used to access the cloud provider secret store. The audience field in the service account token must be passed as parameter in the controller configuration. The audience is used when requesting a token from the API server for the service account; the supported audiences are defined by each provider.
*/
readonly serviceAccountName: pulumi.Output<string>;
/**
* SecretSyncStatus defines the observed state of the secret synchronization process.
*/
readonly status: pulumi.Output<outputs.secretsynccontroller.SecretSyncStatusResponse>;
/**
* Azure Resource Manager metadata containing createdBy and modifiedBy information.
*/
readonly systemData: pulumi.Output<outputs.secretsynccontroller.SystemDataResponse>;
/**
* Resource tags.
*/
readonly tags: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*/
readonly type: pulumi.Output<string>;
/**
* Create a SecretSync resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: SecretSyncArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a SecretSync resource.
*/
export interface SecretSyncArgs {
/**
* The complex type of the extended location.
*/
extendedLocation?: pulumi.Input<inputs.secretsynccontroller.AzureResourceManagerCommonTypesExtendedLocationArgs>;
/**
* ForceSynchronization can be used to force the secret synchronization. The secret synchronization is triggered by changing the value in this field. This field is not used to resolve synchronization conflicts.
*/
forceSynchronization?: pulumi.Input<string>;
/**
* Type specifies the type of the Kubernetes secret object, e.g. "Opaque" or"kubernetes.io/tls". The controller must have permission to create secrets of the specified type.
*/
kubernetesSecretType: pulumi.Input<string | enums.secretsynccontroller.KubernetesSecretType>;
/**
* The geo-location where the resource lives
*/
location?: pulumi.Input<string>;
/**
* An array of SecretObjectData that maps secret data from the external secret provider to the Kubernetes secret. Each entry specifies the source secret in the external provider and the corresponding key in the Kubernetes secret.
*/
objectSecretMapping: pulumi.Input<pulumi.Input<inputs.secretsynccontroller.KubernetesSecretObjectMappingArgs>[]>;
/**
* The name of the resource group. The name is case insensitive.
*/
resourceGroupName: pulumi.Input<string>;
/**
* SecretProviderClassName specifies the name of the SecretProviderClass resource, which contains the information needed to access the cloud provider secret store.
*/
secretProviderClassName: pulumi.Input<string>;
/**
* The name of the SecretSync
*/
secretSyncName?: pulumi.Input<string>;
/**
* ServiceAccountName specifies the name of the service account used to access the cloud provider secret store. The audience field in the service account token must be passed as parameter in the controller configuration. The audience is used when requesting a token from the API server for the service account; the supported audiences are defined by each provider.
*/
serviceAccountName: pulumi.Input<string>;
/**
* Resource tags.
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
}