databricks.ExternalLocation
Explore with Pulumi AI
Note This resource can only be used with a workspace-level provider!
To work with external tables, Unity Catalog introduces two new objects to access and work with external cloud storage:
- databricks.StorageCredential represent authentication methods to access cloud storage (e.g. an IAM role for Amazon S3 or a service principal for Azure Storage). Storage credentials are access-controlled to determine which users can use the credential.
databricks.ExternalLocation
are objects that combine a cloud storage path with a Storage Credential that can be used to access the location.
Example Usage
For AWS
import * as pulumi from "@pulumi/pulumi";
import * as databricks from "@pulumi/databricks";
const external = new databricks.StorageCredential("external", {
name: externalDataAccess.name,
awsIamRole: {
roleArn: externalDataAccess.arn,
},
comment: "Managed by TF",
});
const some = new databricks.ExternalLocation("some", {
name: "external",
url: `s3://${externalAwsS3Bucket.id}/some`,
credentialName: external.id,
comment: "Managed by TF",
});
const someGrants = new databricks.Grants("some", {
externalLocation: some.id,
grants: [{
principal: "Data Engineers",
privileges: [
"CREATE_EXTERNAL_TABLE",
"READ_FILES",
],
}],
});
import pulumi
import pulumi_databricks as databricks
external = databricks.StorageCredential("external",
name=external_data_access["name"],
aws_iam_role={
"role_arn": external_data_access["arn"],
},
comment="Managed by TF")
some = databricks.ExternalLocation("some",
name="external",
url=f"s3://{external_aws_s3_bucket['id']}/some",
credential_name=external.id,
comment="Managed by TF")
some_grants = databricks.Grants("some",
external_location=some.id,
grants=[{
"principal": "Data Engineers",
"privileges": [
"CREATE_EXTERNAL_TABLE",
"READ_FILES",
],
}])
package main
import (
"fmt"
"github.com/pulumi/pulumi-databricks/sdk/go/databricks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
external, err := databricks.NewStorageCredential(ctx, "external", &databricks.StorageCredentialArgs{
Name: pulumi.Any(externalDataAccess.Name),
AwsIamRole: &databricks.StorageCredentialAwsIamRoleArgs{
RoleArn: pulumi.Any(externalDataAccess.Arn),
},
Comment: pulumi.String("Managed by TF"),
})
if err != nil {
return err
}
some, err := databricks.NewExternalLocation(ctx, "some", &databricks.ExternalLocationArgs{
Name: pulumi.String("external"),
Url: pulumi.Sprintf("s3://%v/some", externalAwsS3Bucket.Id),
CredentialName: external.ID(),
Comment: pulumi.String("Managed by TF"),
})
if err != nil {
return err
}
_, err = databricks.NewGrants(ctx, "some", &databricks.GrantsArgs{
ExternalLocation: some.ID(),
Grants: databricks.GrantsGrantArray{
&databricks.GrantsGrantArgs{
Principal: pulumi.String("Data Engineers"),
Privileges: pulumi.StringArray{
pulumi.String("CREATE_EXTERNAL_TABLE"),
pulumi.String("READ_FILES"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Databricks = Pulumi.Databricks;
return await Deployment.RunAsync(() =>
{
var external = new Databricks.StorageCredential("external", new()
{
Name = externalDataAccess.Name,
AwsIamRole = new Databricks.Inputs.StorageCredentialAwsIamRoleArgs
{
RoleArn = externalDataAccess.Arn,
},
Comment = "Managed by TF",
});
var some = new Databricks.ExternalLocation("some", new()
{
Name = "external",
Url = $"s3://{externalAwsS3Bucket.Id}/some",
CredentialName = external.Id,
Comment = "Managed by TF",
});
var someGrants = new Databricks.Grants("some", new()
{
ExternalLocation = some.Id,
GrantDetails = new[]
{
new Databricks.Inputs.GrantsGrantArgs
{
Principal = "Data Engineers",
Privileges = new[]
{
"CREATE_EXTERNAL_TABLE",
"READ_FILES",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.databricks.StorageCredential;
import com.pulumi.databricks.StorageCredentialArgs;
import com.pulumi.databricks.inputs.StorageCredentialAwsIamRoleArgs;
import com.pulumi.databricks.ExternalLocation;
import com.pulumi.databricks.ExternalLocationArgs;
import com.pulumi.databricks.Grants;
import com.pulumi.databricks.GrantsArgs;
import com.pulumi.databricks.inputs.GrantsGrantArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var external = new StorageCredential("external", StorageCredentialArgs.builder()
.name(externalDataAccess.name())
.awsIamRole(StorageCredentialAwsIamRoleArgs.builder()
.roleArn(externalDataAccess.arn())
.build())
.comment("Managed by TF")
.build());
var some = new ExternalLocation("some", ExternalLocationArgs.builder()
.name("external")
.url(String.format("s3://%s/some", externalAwsS3Bucket.id()))
.credentialName(external.id())
.comment("Managed by TF")
.build());
var someGrants = new Grants("someGrants", GrantsArgs.builder()
.externalLocation(some.id())
.grants(GrantsGrantArgs.builder()
.principal("Data Engineers")
.privileges(
"CREATE_EXTERNAL_TABLE",
"READ_FILES")
.build())
.build());
}
}
resources:
external:
type: databricks:StorageCredential
properties:
name: ${externalDataAccess.name}
awsIamRole:
roleArn: ${externalDataAccess.arn}
comment: Managed by TF
some:
type: databricks:ExternalLocation
properties:
name: external
url: s3://${externalAwsS3Bucket.id}/some
credentialName: ${external.id}
comment: Managed by TF
someGrants:
type: databricks:Grants
name: some
properties:
externalLocation: ${some.id}
grants:
- principal: Data Engineers
privileges:
- CREATE_EXTERNAL_TABLE
- READ_FILES
For Azure
Create ExternalLocation Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ExternalLocation(name: string, args: ExternalLocationArgs, opts?: CustomResourceOptions);
@overload
def ExternalLocation(resource_name: str,
args: ExternalLocationArgs,
opts: Optional[ResourceOptions] = None)
@overload
def ExternalLocation(resource_name: str,
opts: Optional[ResourceOptions] = None,
credential_name: Optional[str] = None,
url: Optional[str] = None,
isolation_mode: Optional[str] = None,
encryption_details: Optional[ExternalLocationEncryptionDetailsArgs] = None,
force_destroy: Optional[bool] = None,
force_update: Optional[bool] = None,
access_point: Optional[str] = None,
metastore_id: Optional[str] = None,
name: Optional[str] = None,
owner: Optional[str] = None,
read_only: Optional[bool] = None,
skip_validation: Optional[bool] = None,
comment: Optional[str] = None)
func NewExternalLocation(ctx *Context, name string, args ExternalLocationArgs, opts ...ResourceOption) (*ExternalLocation, error)
public ExternalLocation(string name, ExternalLocationArgs args, CustomResourceOptions? opts = null)
public ExternalLocation(String name, ExternalLocationArgs args)
public ExternalLocation(String name, ExternalLocationArgs args, CustomResourceOptions options)
type: databricks:ExternalLocation
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ExternalLocationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ExternalLocationArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ExternalLocationArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ExternalLocationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ExternalLocationArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var externalLocationResource = new Databricks.ExternalLocation("externalLocationResource", new()
{
CredentialName = "string",
Url = "string",
IsolationMode = "string",
EncryptionDetails = new Databricks.Inputs.ExternalLocationEncryptionDetailsArgs
{
SseEncryptionDetails = new Databricks.Inputs.ExternalLocationEncryptionDetailsSseEncryptionDetailsArgs
{
Algorithm = "string",
AwsKmsKeyArn = "string",
},
},
ForceDestroy = false,
ForceUpdate = false,
AccessPoint = "string",
MetastoreId = "string",
Name = "string",
Owner = "string",
ReadOnly = false,
SkipValidation = false,
Comment = "string",
});
example, err := databricks.NewExternalLocation(ctx, "externalLocationResource", &databricks.ExternalLocationArgs{
CredentialName: pulumi.String("string"),
Url: pulumi.String("string"),
IsolationMode: pulumi.String("string"),
EncryptionDetails: &databricks.ExternalLocationEncryptionDetailsArgs{
SseEncryptionDetails: &databricks.ExternalLocationEncryptionDetailsSseEncryptionDetailsArgs{
Algorithm: pulumi.String("string"),
AwsKmsKeyArn: pulumi.String("string"),
},
},
ForceDestroy: pulumi.Bool(false),
ForceUpdate: pulumi.Bool(false),
AccessPoint: pulumi.String("string"),
MetastoreId: pulumi.String("string"),
Name: pulumi.String("string"),
Owner: pulumi.String("string"),
ReadOnly: pulumi.Bool(false),
SkipValidation: pulumi.Bool(false),
Comment: pulumi.String("string"),
})
var externalLocationResource = new ExternalLocation("externalLocationResource", ExternalLocationArgs.builder()
.credentialName("string")
.url("string")
.isolationMode("string")
.encryptionDetails(ExternalLocationEncryptionDetailsArgs.builder()
.sseEncryptionDetails(ExternalLocationEncryptionDetailsSseEncryptionDetailsArgs.builder()
.algorithm("string")
.awsKmsKeyArn("string")
.build())
.build())
.forceDestroy(false)
.forceUpdate(false)
.accessPoint("string")
.metastoreId("string")
.name("string")
.owner("string")
.readOnly(false)
.skipValidation(false)
.comment("string")
.build());
external_location_resource = databricks.ExternalLocation("externalLocationResource",
credential_name="string",
url="string",
isolation_mode="string",
encryption_details=databricks.ExternalLocationEncryptionDetailsArgs(
sse_encryption_details=databricks.ExternalLocationEncryptionDetailsSseEncryptionDetailsArgs(
algorithm="string",
aws_kms_key_arn="string",
),
),
force_destroy=False,
force_update=False,
access_point="string",
metastore_id="string",
name="string",
owner="string",
read_only=False,
skip_validation=False,
comment="string")
const externalLocationResource = new databricks.ExternalLocation("externalLocationResource", {
credentialName: "string",
url: "string",
isolationMode: "string",
encryptionDetails: {
sseEncryptionDetails: {
algorithm: "string",
awsKmsKeyArn: "string",
},
},
forceDestroy: false,
forceUpdate: false,
accessPoint: "string",
metastoreId: "string",
name: "string",
owner: "string",
readOnly: false,
skipValidation: false,
comment: "string",
});
type: databricks:ExternalLocation
properties:
accessPoint: string
comment: string
credentialName: string
encryptionDetails:
sseEncryptionDetails:
algorithm: string
awsKmsKeyArn: string
forceDestroy: false
forceUpdate: false
isolationMode: string
metastoreId: string
name: string
owner: string
readOnly: false
skipValidation: false
url: string
ExternalLocation Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The ExternalLocation resource accepts the following input properties:
- Credential
Name string - Name of the databricks.StorageCredential to use with this external location.
- Url string
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP). - Access
Point string - The ARN of the s3 access point to use with the external location (AWS).
- Comment string
- User-supplied free-form text.
- Encryption
Details ExternalLocation Encryption Details - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- Force
Destroy bool - Destroy external location regardless of its dependents.
- Force
Update bool - Update external location regardless of its dependents.
- Isolation
Mode string - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - Metastore
Id string - Name string
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- Owner string
- Username/groupname/sp application_id of the external location owner.
- Read
Only bool - Indicates whether the external location is read-only.
- Skip
Validation bool - Suppress validation errors if any & force save the external location
- Credential
Name string - Name of the databricks.StorageCredential to use with this external location.
- Url string
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP). - Access
Point string - The ARN of the s3 access point to use with the external location (AWS).
- Comment string
- User-supplied free-form text.
- Encryption
Details ExternalLocation Encryption Details Args - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- Force
Destroy bool - Destroy external location regardless of its dependents.
- Force
Update bool - Update external location regardless of its dependents.
- Isolation
Mode string - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - Metastore
Id string - Name string
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- Owner string
- Username/groupname/sp application_id of the external location owner.
- Read
Only bool - Indicates whether the external location is read-only.
- Skip
Validation bool - Suppress validation errors if any & force save the external location
- credential
Name String - Name of the databricks.StorageCredential to use with this external location.
- url String
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP). - access
Point String - The ARN of the s3 access point to use with the external location (AWS).
- comment String
- User-supplied free-form text.
- encryption
Details ExternalLocation Encryption Details - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- force
Destroy Boolean - Destroy external location regardless of its dependents.
- force
Update Boolean - Update external location regardless of its dependents.
- isolation
Mode String - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - metastore
Id String - name String
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- owner String
- Username/groupname/sp application_id of the external location owner.
- read
Only Boolean - Indicates whether the external location is read-only.
- skip
Validation Boolean - Suppress validation errors if any & force save the external location
- credential
Name string - Name of the databricks.StorageCredential to use with this external location.
- url string
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP). - access
Point string - The ARN of the s3 access point to use with the external location (AWS).
- comment string
- User-supplied free-form text.
- encryption
Details ExternalLocation Encryption Details - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- force
Destroy boolean - Destroy external location regardless of its dependents.
- force
Update boolean - Update external location regardless of its dependents.
- isolation
Mode string - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - metastore
Id string - name string
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- owner string
- Username/groupname/sp application_id of the external location owner.
- read
Only boolean - Indicates whether the external location is read-only.
- skip
Validation boolean - Suppress validation errors if any & force save the external location
- credential_
name str - Name of the databricks.StorageCredential to use with this external location.
- url str
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP). - access_
point str - The ARN of the s3 access point to use with the external location (AWS).
- comment str
- User-supplied free-form text.
- encryption_
details ExternalLocation Encryption Details Args - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- force_
destroy bool - Destroy external location regardless of its dependents.
- force_
update bool - Update external location regardless of its dependents.
- isolation_
mode str - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - metastore_
id str - name str
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- owner str
- Username/groupname/sp application_id of the external location owner.
- read_
only bool - Indicates whether the external location is read-only.
- skip_
validation bool - Suppress validation errors if any & force save the external location
- credential
Name String - Name of the databricks.StorageCredential to use with this external location.
- url String
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP). - access
Point String - The ARN of the s3 access point to use with the external location (AWS).
- comment String
- User-supplied free-form text.
- encryption
Details Property Map - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- force
Destroy Boolean - Destroy external location regardless of its dependents.
- force
Update Boolean - Update external location regardless of its dependents.
- isolation
Mode String - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - metastore
Id String - name String
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- owner String
- Username/groupname/sp application_id of the external location owner.
- read
Only Boolean - Indicates whether the external location is read-only.
- skip
Validation Boolean - Suppress validation errors if any & force save the external location
Outputs
All input properties are implicitly available as output properties. Additionally, the ExternalLocation resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing ExternalLocation Resource
Get an existing ExternalLocation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: ExternalLocationState, opts?: CustomResourceOptions): ExternalLocation
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
access_point: Optional[str] = None,
comment: Optional[str] = None,
credential_name: Optional[str] = None,
encryption_details: Optional[ExternalLocationEncryptionDetailsArgs] = None,
force_destroy: Optional[bool] = None,
force_update: Optional[bool] = None,
isolation_mode: Optional[str] = None,
metastore_id: Optional[str] = None,
name: Optional[str] = None,
owner: Optional[str] = None,
read_only: Optional[bool] = None,
skip_validation: Optional[bool] = None,
url: Optional[str] = None) -> ExternalLocation
func GetExternalLocation(ctx *Context, name string, id IDInput, state *ExternalLocationState, opts ...ResourceOption) (*ExternalLocation, error)
public static ExternalLocation Get(string name, Input<string> id, ExternalLocationState? state, CustomResourceOptions? opts = null)
public static ExternalLocation get(String name, Output<String> id, ExternalLocationState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Access
Point string - The ARN of the s3 access point to use with the external location (AWS).
- Comment string
- User-supplied free-form text.
- Credential
Name string - Name of the databricks.StorageCredential to use with this external location.
- Encryption
Details ExternalLocation Encryption Details - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- Force
Destroy bool - Destroy external location regardless of its dependents.
- Force
Update bool - Update external location regardless of its dependents.
- Isolation
Mode string - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - Metastore
Id string - Name string
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- Owner string
- Username/groupname/sp application_id of the external location owner.
- Read
Only bool - Indicates whether the external location is read-only.
- Skip
Validation bool - Suppress validation errors if any & force save the external location
- Url string
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP).
- Access
Point string - The ARN of the s3 access point to use with the external location (AWS).
- Comment string
- User-supplied free-form text.
- Credential
Name string - Name of the databricks.StorageCredential to use with this external location.
- Encryption
Details ExternalLocation Encryption Details Args - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- Force
Destroy bool - Destroy external location regardless of its dependents.
- Force
Update bool - Update external location regardless of its dependents.
- Isolation
Mode string - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - Metastore
Id string - Name string
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- Owner string
- Username/groupname/sp application_id of the external location owner.
- Read
Only bool - Indicates whether the external location is read-only.
- Skip
Validation bool - Suppress validation errors if any & force save the external location
- Url string
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP).
- access
Point String - The ARN of the s3 access point to use with the external location (AWS).
- comment String
- User-supplied free-form text.
- credential
Name String - Name of the databricks.StorageCredential to use with this external location.
- encryption
Details ExternalLocation Encryption Details - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- force
Destroy Boolean - Destroy external location regardless of its dependents.
- force
Update Boolean - Update external location regardless of its dependents.
- isolation
Mode String - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - metastore
Id String - name String
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- owner String
- Username/groupname/sp application_id of the external location owner.
- read
Only Boolean - Indicates whether the external location is read-only.
- skip
Validation Boolean - Suppress validation errors if any & force save the external location
- url String
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP).
- access
Point string - The ARN of the s3 access point to use with the external location (AWS).
- comment string
- User-supplied free-form text.
- credential
Name string - Name of the databricks.StorageCredential to use with this external location.
- encryption
Details ExternalLocation Encryption Details - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- force
Destroy boolean - Destroy external location regardless of its dependents.
- force
Update boolean - Update external location regardless of its dependents.
- isolation
Mode string - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - metastore
Id string - name string
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- owner string
- Username/groupname/sp application_id of the external location owner.
- read
Only boolean - Indicates whether the external location is read-only.
- skip
Validation boolean - Suppress validation errors if any & force save the external location
- url string
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP).
- access_
point str - The ARN of the s3 access point to use with the external location (AWS).
- comment str
- User-supplied free-form text.
- credential_
name str - Name of the databricks.StorageCredential to use with this external location.
- encryption_
details ExternalLocation Encryption Details Args - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- force_
destroy bool - Destroy external location regardless of its dependents.
- force_
update bool - Update external location regardless of its dependents.
- isolation_
mode str - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - metastore_
id str - name str
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- owner str
- Username/groupname/sp application_id of the external location owner.
- read_
only bool - Indicates whether the external location is read-only.
- skip_
validation bool - Suppress validation errors if any & force save the external location
- url str
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP).
- access
Point String - The ARN of the s3 access point to use with the external location (AWS).
- comment String
- User-supplied free-form text.
- credential
Name String - Name of the databricks.StorageCredential to use with this external location.
- encryption
Details Property Map - The options for Server-Side Encryption to be used by each Databricks s3 client when connecting to S3 cloud storage (AWS).
- force
Destroy Boolean - Destroy external location regardless of its dependents.
- force
Update Boolean - Update external location regardless of its dependents.
- isolation
Mode String - Whether the external location is accessible from all workspaces or a specific set of workspaces. Can be
ISOLATION_MODE_ISOLATED
orISOLATION_MODE_OPEN
. Setting the external location toISOLATION_MODE_ISOLATED
will automatically allow access from the current workspace. - metastore
Id String - name String
- Name of External Location, which must be unique within the databricks_metastore. Change forces creation of a new resource.
- owner String
- Username/groupname/sp application_id of the external location owner.
- read
Only Boolean - Indicates whether the external location is read-only.
- skip
Validation Boolean - Suppress validation errors if any & force save the external location
- url String
- Path URL in cloud storage, of the form:
s3://[bucket-host]/[bucket-dir]
(AWS),abfss://[user]@[host]/[path]
(Azure),gs://[bucket-host]/[bucket-dir]
(GCP).
Supporting Types
ExternalLocationEncryptionDetails, ExternalLocationEncryptionDetailsArgs
ExternalLocationEncryptionDetailsSseEncryptionDetails, ExternalLocationEncryptionDetailsSseEncryptionDetailsArgs
- Algorithm string
- Aws
Kms stringKey Arn
- Algorithm string
- Aws
Kms stringKey Arn
- algorithm String
- aws
Kms StringKey Arn
- algorithm string
- aws
Kms stringKey Arn
- algorithm str
- aws_
kms_ strkey_ arn
- algorithm String
- aws
Kms StringKey Arn
Import
This resource can be imported by name
:
bash
$ pulumi import databricks:index/externalLocation:ExternalLocation this <name>
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- databricks pulumi/pulumi-databricks
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
databricks
Terraform Provider.