@pulumi/databricks
Version:
A Pulumi package for creating and managing databricks cloud resources.
140 lines (139 loc) • 5.14 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
/**
* Retrieves information about the currently configured provider to make a decision, for example, add a dynamic block based on the specific cloud.
*
* ## Example Usage
*
* Create cloud-specific databricks_storage_credential:
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as databricks from "@pulumi/databricks";
*
* function singleOrNone<T>(elements: pulumi.Input<T>[]): pulumi.Input<T> {
* if (elements.length != 1) {
* throw new Error("singleOrNone expected input list to have a single element");
* }
* return elements[0];
* }
*
* const _this = databricks.getCurrentConfig({});
* const external = new databricks.StorageCredential("external", {
* awsIamRole: singleOrNone(.map(entry => ({
* roleArn: cloudCredentialId,
* }))),
* azureManagedIdentity: singleOrNone(.map(entry => ({
* accessConnectorId: cloudCredentialId,
* }))),
* databricksGcpServiceAccount: singleOrNone(.map(entry => ({}))),
* name: "storage_cred",
* comment: "Managed by TF",
* });
* ```
*
* ## Exported attributes
*
* Data source exposes the following attributes:
*
* * `isAccount` - Whether the provider is configured at account-level
* * `accountId` - Account Id if provider is configured at account-level
* * `host` - Host of the Databricks workspace or account console
* * `cloudType` - Cloud type specified in the provider
* * `authType` - Auth type used by the provider
*
* ## Related Resources
*
* The following resources are used in the same context:
*
* * End to end workspace management guide
* * databricks.Directory to manage directories in [Databricks Workpace](https://docs.databricks.com/workspace/workspace-objects.html).
* * databricks.Notebook to manage [Databricks Notebooks](https://docs.databricks.com/notebooks/index.html).
* * databricks.Repo to manage [Databricks Repos](https://docs.databricks.com/repos.html).
*/
export declare function getCurrentConfig(args?: GetCurrentConfigArgs, opts?: pulumi.InvokeOptions): Promise<GetCurrentConfigResult>;
/**
* A collection of arguments for invoking getCurrentConfig.
*/
export interface GetCurrentConfigArgs {
accountId?: string;
authType?: string;
cloudType?: string;
host?: string;
isAccount?: boolean;
}
/**
* A collection of values returned by getCurrentConfig.
*/
export interface GetCurrentConfigResult {
readonly accountId: string;
readonly authType: string;
readonly cloudType: string;
readonly host: string;
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
readonly isAccount: boolean;
}
/**
* Retrieves information about the currently configured provider to make a decision, for example, add a dynamic block based on the specific cloud.
*
* ## Example Usage
*
* Create cloud-specific databricks_storage_credential:
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as databricks from "@pulumi/databricks";
*
* function singleOrNone<T>(elements: pulumi.Input<T>[]): pulumi.Input<T> {
* if (elements.length != 1) {
* throw new Error("singleOrNone expected input list to have a single element");
* }
* return elements[0];
* }
*
* const _this = databricks.getCurrentConfig({});
* const external = new databricks.StorageCredential("external", {
* awsIamRole: singleOrNone(.map(entry => ({
* roleArn: cloudCredentialId,
* }))),
* azureManagedIdentity: singleOrNone(.map(entry => ({
* accessConnectorId: cloudCredentialId,
* }))),
* databricksGcpServiceAccount: singleOrNone(.map(entry => ({}))),
* name: "storage_cred",
* comment: "Managed by TF",
* });
* ```
*
* ## Exported attributes
*
* Data source exposes the following attributes:
*
* * `isAccount` - Whether the provider is configured at account-level
* * `accountId` - Account Id if provider is configured at account-level
* * `host` - Host of the Databricks workspace or account console
* * `cloudType` - Cloud type specified in the provider
* * `authType` - Auth type used by the provider
*
* ## Related Resources
*
* The following resources are used in the same context:
*
* * End to end workspace management guide
* * databricks.Directory to manage directories in [Databricks Workpace](https://docs.databricks.com/workspace/workspace-objects.html).
* * databricks.Notebook to manage [Databricks Notebooks](https://docs.databricks.com/notebooks/index.html).
* * databricks.Repo to manage [Databricks Repos](https://docs.databricks.com/repos.html).
*/
export declare function getCurrentConfigOutput(args?: GetCurrentConfigOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetCurrentConfigResult>;
/**
* A collection of arguments for invoking getCurrentConfig.
*/
export interface GetCurrentConfigOutputArgs {
accountId?: pulumi.Input<string>;
authType?: pulumi.Input<string>;
cloudType?: pulumi.Input<string>;
host?: pulumi.Input<string>;
isAccount?: pulumi.Input<boolean>;
}