1. Packages
  2. Databricks Provider
  3. API Docs
  4. Share
Databricks v1.65.0 published on Wednesday, Apr 9, 2025 by Pulumi

databricks.Share

Explore with Pulumi AI

This resource can only be used with a workspace-level provider!

In Delta Sharing, a share is a read-only collection of tables and table partitions that a provider wants to share with one or more recipients. If your recipient uses a Unity Catalog-enabled Databricks workspace, you can also include notebook files, views (including dynamic views that restrict access at the row and column level), Unity Catalog volumes, and Unity Catalog models in a share.

In a Unity Catalog-enabled Databricks workspace, a share is a securable object registered in Unity Catalog. A databricks.Share is contained within a databricks_metastore. If you remove a share from your Unity Catalog metastore, all recipients of that share lose the ability to access it.

Example Usage

In Pulumi configuration, it is recommended to define objects in alphabetical order of their name arguments, so that you get consistent and readable diff. Whenever objects are added or removed, or name is renamed, you’ll observe a change in the majority of tasks. It’s related to the fact that the current version of the provider treats object blocks as an ordered list. Alternatively, object block could have been an unordered set, though end-users would see the entire block replaced upon a change in single property of the task.

Creating a Delta Sharing share and add some existing tables to it

import * as pulumi from "@pulumi/pulumi";
import * as databricks from "@pulumi/databricks";

const things = databricks.getTables({
    catalogName: "sandbox",
    schemaName: "things",
});
const some = new databricks.Share("some", {
    objects: .map(entry => ({
        name: entry.value,
        dataObjectType: "TABLE",
    })),
    name: "my_share",
});
Copy
import pulumi
import pulumi_databricks as databricks

things = databricks.get_tables(catalog_name="sandbox",
    schema_name="things")
some = databricks.Share("some",
    objects=[{
        "name": entry["value"],
        "data_object_type": "TABLE",
    } for entry in [{"key": k, "value": v} for k, v in things.ids]],
    name="my_share")
Copy
Coming soon!
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Databricks = Pulumi.Databricks;

return await Deployment.RunAsync(() => 
{
    var things = Databricks.GetTables.Invoke(new()
    {
        CatalogName = "sandbox",
        SchemaName = "things",
    });

    var some = new Databricks.Share("some", new()
    {
        Objects = ,
        Name = "my_share",
    });

});
Copy
Coming soon!
Coming soon!

Creating a Delta Sharing share and add a schema to it(including all current and future tables).

import * as pulumi from "@pulumi/pulumi";
import * as databricks from "@pulumi/databricks";

const schemaShare = new databricks.Share("schema_share", {
    name: "schema_share",
    objects: [{
        name: "catalog_name.schema_name",
        dataObjectType: "SCHEMA",
        historyDataSharingStatus: "ENABLED",
    }],
});
Copy
import pulumi
import pulumi_databricks as databricks

schema_share = databricks.Share("schema_share",
    name="schema_share",
    objects=[{
        "name": "catalog_name.schema_name",
        "data_object_type": "SCHEMA",
        "history_data_sharing_status": "ENABLED",
    }])
Copy
package main

import (
	"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 {
		_, err := databricks.NewShare(ctx, "schema_share", &databricks.ShareArgs{
			Name: pulumi.String("schema_share"),
			Objects: databricks.ShareObjectArray{
				&databricks.ShareObjectArgs{
					Name:                     pulumi.String("catalog_name.schema_name"),
					DataObjectType:           pulumi.String("SCHEMA"),
					HistoryDataSharingStatus: pulumi.String("ENABLED"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Databricks = Pulumi.Databricks;

return await Deployment.RunAsync(() => 
{
    var schemaShare = new Databricks.Share("schema_share", new()
    {
        Name = "schema_share",
        Objects = new[]
        {
            new Databricks.Inputs.ShareObjectArgs
            {
                Name = "catalog_name.schema_name",
                DataObjectType = "SCHEMA",
                HistoryDataSharingStatus = "ENABLED",
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.databricks.Share;
import com.pulumi.databricks.ShareArgs;
import com.pulumi.databricks.inputs.ShareObjectArgs;
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 schemaShare = new Share("schemaShare", ShareArgs.builder()
            .name("schema_share")
            .objects(ShareObjectArgs.builder()
                .name("catalog_name.schema_name")
                .dataObjectType("SCHEMA")
                .historyDataSharingStatus("ENABLED")
                .build())
            .build());

    }
}
Copy
resources:
  schemaShare:
    type: databricks:Share
    name: schema_share
    properties:
      name: schema_share
      objects:
        - name: catalog_name.schema_name
          dataObjectType: SCHEMA
          historyDataSharingStatus: ENABLED
Copy

Creating a Delta Sharing share and share a table with partitions spec and history

import * as pulumi from "@pulumi/pulumi";
import * as databricks from "@pulumi/databricks";

const some = new databricks.Share("some", {
    name: "my_share",
    objects: [{
        name: "my_catalog.my_schema.my_table",
        dataObjectType: "TABLE",
        historyDataSharingStatus: "ENABLED",
        partitions: [
            {
                values: [
                    {
                        name: "year",
                        op: "EQUAL",
                        value: "2009",
                    },
                    {
                        name: "month",
                        op: "EQUAL",
                        value: "12",
                    },
                ],
            },
            {
                values: [{
                    name: "year",
                    op: "EQUAL",
                    value: "2010",
                }],
            },
        ],
    }],
});
Copy
import pulumi
import pulumi_databricks as databricks

some = databricks.Share("some",
    name="my_share",
    objects=[{
        "name": "my_catalog.my_schema.my_table",
        "data_object_type": "TABLE",
        "history_data_sharing_status": "ENABLED",
        "partitions": [
            {
                "values": [
                    {
                        "name": "year",
                        "op": "EQUAL",
                        "value": "2009",
                    },
                    {
                        "name": "month",
                        "op": "EQUAL",
                        "value": "12",
                    },
                ],
            },
            {
                "values": [{
                    "name": "year",
                    "op": "EQUAL",
                    "value": "2010",
                }],
            },
        ],
    }])
Copy
package main

import (
	"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 {
		_, err := databricks.NewShare(ctx, "some", &databricks.ShareArgs{
			Name: pulumi.String("my_share"),
			Objects: databricks.ShareObjectArray{
				&databricks.ShareObjectArgs{
					Name:                     pulumi.String("my_catalog.my_schema.my_table"),
					DataObjectType:           pulumi.String("TABLE"),
					HistoryDataSharingStatus: pulumi.String("ENABLED"),
					Partitions: databricks.ShareObjectPartitionArray{
						&databricks.ShareObjectPartitionArgs{
							Values: databricks.ShareObjectPartitionValueArray{
								&databricks.ShareObjectPartitionValueArgs{
									Name:  pulumi.String("year"),
									Op:    pulumi.String("EQUAL"),
									Value: pulumi.String("2009"),
								},
								&databricks.ShareObjectPartitionValueArgs{
									Name:  pulumi.String("month"),
									Op:    pulumi.String("EQUAL"),
									Value: pulumi.String("12"),
								},
							},
						},
						&databricks.ShareObjectPartitionArgs{
							Values: databricks.ShareObjectPartitionValueArray{
								&databricks.ShareObjectPartitionValueArgs{
									Name:  pulumi.String("year"),
									Op:    pulumi.String("EQUAL"),
									Value: pulumi.String("2010"),
								},
							},
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Databricks = Pulumi.Databricks;

return await Deployment.RunAsync(() => 
{
    var some = new Databricks.Share("some", new()
    {
        Name = "my_share",
        Objects = new[]
        {
            new Databricks.Inputs.ShareObjectArgs
            {
                Name = "my_catalog.my_schema.my_table",
                DataObjectType = "TABLE",
                HistoryDataSharingStatus = "ENABLED",
                Partitions = new[]
                {
                    new Databricks.Inputs.ShareObjectPartitionArgs
                    {
                        Values = new[]
                        {
                            new Databricks.Inputs.ShareObjectPartitionValueArgs
                            {
                                Name = "year",
                                Op = "EQUAL",
                                Value = "2009",
                            },
                            new Databricks.Inputs.ShareObjectPartitionValueArgs
                            {
                                Name = "month",
                                Op = "EQUAL",
                                Value = "12",
                            },
                        },
                    },
                    new Databricks.Inputs.ShareObjectPartitionArgs
                    {
                        Values = new[]
                        {
                            new Databricks.Inputs.ShareObjectPartitionValueArgs
                            {
                                Name = "year",
                                Op = "EQUAL",
                                Value = "2010",
                            },
                        },
                    },
                },
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.databricks.Share;
import com.pulumi.databricks.ShareArgs;
import com.pulumi.databricks.inputs.ShareObjectArgs;
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 some = new Share("some", ShareArgs.builder()
            .name("my_share")
            .objects(ShareObjectArgs.builder()
                .name("my_catalog.my_schema.my_table")
                .dataObjectType("TABLE")
                .historyDataSharingStatus("ENABLED")
                .partitions(                
                    ShareObjectPartitionArgs.builder()
                        .values(                        
                            ShareObjectPartitionValueArgs.builder()
                                .name("year")
                                .op("EQUAL")
                                .value("2009")
                                .build(),
                            ShareObjectPartitionValueArgs.builder()
                                .name("month")
                                .op("EQUAL")
                                .value("12")
                                .build())
                        .build(),
                    ShareObjectPartitionArgs.builder()
                        .values(ShareObjectPartitionValueArgs.builder()
                            .name("year")
                            .op("EQUAL")
                            .value("2010")
                            .build())
                        .build())
                .build())
            .build());

    }
}
Copy
resources:
  some:
    type: databricks:Share
    properties:
      name: my_share
      objects:
        - name: my_catalog.my_schema.my_table
          dataObjectType: TABLE
          historyDataSharingStatus: ENABLED
          partitions:
            - values:
                - name: year
                  op: EQUAL
                  value: '2009'
                - name: month
                  op: EQUAL
                  value: '12'
            - values:
                - name: year
                  op: EQUAL
                  value: '2010'
Copy

The following resources are often used in the same context:

  • databricks.Recipient to create Delta Sharing recipients.
  • databricks.Grants to manage Delta Sharing permissions.
  • databricks.getShares to read existing Delta Sharing shares.

Create Share Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new Share(name: string, args?: ShareArgs, opts?: CustomResourceOptions);
@overload
def Share(resource_name: str,
          args: Optional[ShareArgs] = None,
          opts: Optional[ResourceOptions] = None)

@overload
def Share(resource_name: str,
          opts: Optional[ResourceOptions] = None,
          comment: Optional[str] = None,
          created_at: Optional[int] = None,
          created_by: Optional[str] = None,
          name: Optional[str] = None,
          objects: Optional[Sequence[ShareObjectArgs]] = None,
          owner: Optional[str] = None,
          storage_location: Optional[str] = None,
          storage_root: Optional[str] = None,
          updated_at: Optional[int] = None,
          updated_by: Optional[str] = None)
func NewShare(ctx *Context, name string, args *ShareArgs, opts ...ResourceOption) (*Share, error)
public Share(string name, ShareArgs? args = null, CustomResourceOptions? opts = null)
public Share(String name, ShareArgs args)
public Share(String name, ShareArgs args, CustomResourceOptions options)
type: databricks:Share
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args ShareArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args ShareArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args ShareArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args ShareArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. ShareArgs
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 shareResource = new Databricks.Share("shareResource", new()
{
    Comment = "string",
    CreatedAt = 0,
    CreatedBy = "string",
    Name = "string",
    Objects = new[]
    {
        new Databricks.Inputs.ShareObjectArgs
        {
            DataObjectType = "string",
            Name = "string",
            HistoryDataSharingStatus = "string",
            Comment = "string",
            Content = "string",
            CdfEnabled = false,
            AddedAt = 0,
            AddedBy = "string",
            Partitions = new[]
            {
                new Databricks.Inputs.ShareObjectPartitionArgs
                {
                    Values = new[]
                    {
                        new Databricks.Inputs.ShareObjectPartitionValueArgs
                        {
                            Name = "string",
                            Op = "string",
                            RecipientPropertyKey = "string",
                            Value = "string",
                        },
                    },
                },
            },
            SharedAs = "string",
            StartVersion = 0,
            Status = "string",
            StringSharedAs = "string",
        },
    },
    Owner = "string",
    StorageLocation = "string",
    StorageRoot = "string",
    UpdatedAt = 0,
    UpdatedBy = "string",
});
Copy
example, err := databricks.NewShare(ctx, "shareResource", &databricks.ShareArgs{
	Comment:   pulumi.String("string"),
	CreatedAt: pulumi.Int(0),
	CreatedBy: pulumi.String("string"),
	Name:      pulumi.String("string"),
	Objects: databricks.ShareObjectArray{
		&databricks.ShareObjectArgs{
			DataObjectType:           pulumi.String("string"),
			Name:                     pulumi.String("string"),
			HistoryDataSharingStatus: pulumi.String("string"),
			Comment:                  pulumi.String("string"),
			Content:                  pulumi.String("string"),
			CdfEnabled:               pulumi.Bool(false),
			AddedAt:                  pulumi.Int(0),
			AddedBy:                  pulumi.String("string"),
			Partitions: databricks.ShareObjectPartitionArray{
				&databricks.ShareObjectPartitionArgs{
					Values: databricks.ShareObjectPartitionValueArray{
						&databricks.ShareObjectPartitionValueArgs{
							Name:                 pulumi.String("string"),
							Op:                   pulumi.String("string"),
							RecipientPropertyKey: pulumi.String("string"),
							Value:                pulumi.String("string"),
						},
					},
				},
			},
			SharedAs:       pulumi.String("string"),
			StartVersion:   pulumi.Int(0),
			Status:         pulumi.String("string"),
			StringSharedAs: pulumi.String("string"),
		},
	},
	Owner:           pulumi.String("string"),
	StorageLocation: pulumi.String("string"),
	StorageRoot:     pulumi.String("string"),
	UpdatedAt:       pulumi.Int(0),
	UpdatedBy:       pulumi.String("string"),
})
Copy
var shareResource = new Share("shareResource", ShareArgs.builder()
    .comment("string")
    .createdAt(0)
    .createdBy("string")
    .name("string")
    .objects(ShareObjectArgs.builder()
        .dataObjectType("string")
        .name("string")
        .historyDataSharingStatus("string")
        .comment("string")
        .content("string")
        .cdfEnabled(false)
        .addedAt(0)
        .addedBy("string")
        .partitions(ShareObjectPartitionArgs.builder()
            .values(ShareObjectPartitionValueArgs.builder()
                .name("string")
                .op("string")
                .recipientPropertyKey("string")
                .value("string")
                .build())
            .build())
        .sharedAs("string")
        .startVersion(0)
        .status("string")
        .stringSharedAs("string")
        .build())
    .owner("string")
    .storageLocation("string")
    .storageRoot("string")
    .updatedAt(0)
    .updatedBy("string")
    .build());
Copy
share_resource = databricks.Share("shareResource",
    comment="string",
    created_at=0,
    created_by="string",
    name="string",
    objects=[{
        "data_object_type": "string",
        "name": "string",
        "history_data_sharing_status": "string",
        "comment": "string",
        "content": "string",
        "cdf_enabled": False,
        "added_at": 0,
        "added_by": "string",
        "partitions": [{
            "values": [{
                "name": "string",
                "op": "string",
                "recipient_property_key": "string",
                "value": "string",
            }],
        }],
        "shared_as": "string",
        "start_version": 0,
        "status": "string",
        "string_shared_as": "string",
    }],
    owner="string",
    storage_location="string",
    storage_root="string",
    updated_at=0,
    updated_by="string")
Copy
const shareResource = new databricks.Share("shareResource", {
    comment: "string",
    createdAt: 0,
    createdBy: "string",
    name: "string",
    objects: [{
        dataObjectType: "string",
        name: "string",
        historyDataSharingStatus: "string",
        comment: "string",
        content: "string",
        cdfEnabled: false,
        addedAt: 0,
        addedBy: "string",
        partitions: [{
            values: [{
                name: "string",
                op: "string",
                recipientPropertyKey: "string",
                value: "string",
            }],
        }],
        sharedAs: "string",
        startVersion: 0,
        status: "string",
        stringSharedAs: "string",
    }],
    owner: "string",
    storageLocation: "string",
    storageRoot: "string",
    updatedAt: 0,
    updatedBy: "string",
});
Copy
type: databricks:Share
properties:
    comment: string
    createdAt: 0
    createdBy: string
    name: string
    objects:
        - addedAt: 0
          addedBy: string
          cdfEnabled: false
          comment: string
          content: string
          dataObjectType: string
          historyDataSharingStatus: string
          name: string
          partitions:
            - values:
                - name: string
                  op: string
                  recipientPropertyKey: string
                  value: string
          sharedAs: string
          startVersion: 0
          status: string
          stringSharedAs: string
    owner: string
    storageLocation: string
    storageRoot: string
    updatedAt: 0
    updatedBy: string
Copy

Share Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The Share resource accepts the following input properties:

Comment string
CreatedAt int
Time when the share was created.
CreatedBy string
The principal that created the share.
Name Changes to this property will trigger replacement. string
Name of share. Change forces creation of a new resource.
Objects List<ShareObject>
Owner string
User name/group name/sp application_id of the share owner.
StorageLocation string
StorageRoot string
UpdatedAt int
UpdatedBy string
Comment string
CreatedAt int
Time when the share was created.
CreatedBy string
The principal that created the share.
Name Changes to this property will trigger replacement. string
Name of share. Change forces creation of a new resource.
Objects []ShareObjectArgs
Owner string
User name/group name/sp application_id of the share owner.
StorageLocation string
StorageRoot string
UpdatedAt int
UpdatedBy string
comment String
createdAt Integer
Time when the share was created.
createdBy String
The principal that created the share.
name Changes to this property will trigger replacement. String
Name of share. Change forces creation of a new resource.
objects List<ShareObject>
owner String
User name/group name/sp application_id of the share owner.
storageLocation String
storageRoot String
updatedAt Integer
updatedBy String
comment string
createdAt number
Time when the share was created.
createdBy string
The principal that created the share.
name Changes to this property will trigger replacement. string
Name of share. Change forces creation of a new resource.
objects ShareObject[]
owner string
User name/group name/sp application_id of the share owner.
storageLocation string
storageRoot string
updatedAt number
updatedBy string
comment str
created_at int
Time when the share was created.
created_by str
The principal that created the share.
name Changes to this property will trigger replacement. str
Name of share. Change forces creation of a new resource.
objects Sequence[ShareObjectArgs]
owner str
User name/group name/sp application_id of the share owner.
storage_location str
storage_root str
updated_at int
updated_by str
comment String
createdAt Number
Time when the share was created.
createdBy String
The principal that created the share.
name Changes to this property will trigger replacement. String
Name of share. Change forces creation of a new resource.
objects List<Property Map>
owner String
User name/group name/sp application_id of the share owner.
storageLocation String
storageRoot String
updatedAt Number
updatedBy String

Outputs

All input properties are implicitly available as output properties. Additionally, the Share 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 Share Resource

Get an existing Share 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?: ShareState, opts?: CustomResourceOptions): Share
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        comment: Optional[str] = None,
        created_at: Optional[int] = None,
        created_by: Optional[str] = None,
        name: Optional[str] = None,
        objects: Optional[Sequence[ShareObjectArgs]] = None,
        owner: Optional[str] = None,
        storage_location: Optional[str] = None,
        storage_root: Optional[str] = None,
        updated_at: Optional[int] = None,
        updated_by: Optional[str] = None) -> Share
func GetShare(ctx *Context, name string, id IDInput, state *ShareState, opts ...ResourceOption) (*Share, error)
public static Share Get(string name, Input<string> id, ShareState? state, CustomResourceOptions? opts = null)
public static Share get(String name, Output<String> id, ShareState state, CustomResourceOptions options)
resources:  _:    type: databricks:Share    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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.
The following state arguments are supported:
Comment string
CreatedAt int
Time when the share was created.
CreatedBy string
The principal that created the share.
Name Changes to this property will trigger replacement. string
Name of share. Change forces creation of a new resource.
Objects List<ShareObject>
Owner string
User name/group name/sp application_id of the share owner.
StorageLocation string
StorageRoot string
UpdatedAt int
UpdatedBy string
Comment string
CreatedAt int
Time when the share was created.
CreatedBy string
The principal that created the share.
Name Changes to this property will trigger replacement. string
Name of share. Change forces creation of a new resource.
Objects []ShareObjectArgs
Owner string
User name/group name/sp application_id of the share owner.
StorageLocation string
StorageRoot string
UpdatedAt int
UpdatedBy string
comment String
createdAt Integer
Time when the share was created.
createdBy String
The principal that created the share.
name Changes to this property will trigger replacement. String
Name of share. Change forces creation of a new resource.
objects List<ShareObject>
owner String
User name/group name/sp application_id of the share owner.
storageLocation String
storageRoot String
updatedAt Integer
updatedBy String
comment string
createdAt number
Time when the share was created.
createdBy string
The principal that created the share.
name Changes to this property will trigger replacement. string
Name of share. Change forces creation of a new resource.
objects ShareObject[]
owner string
User name/group name/sp application_id of the share owner.
storageLocation string
storageRoot string
updatedAt number
updatedBy string
comment str
created_at int
Time when the share was created.
created_by str
The principal that created the share.
name Changes to this property will trigger replacement. str
Name of share. Change forces creation of a new resource.
objects Sequence[ShareObjectArgs]
owner str
User name/group name/sp application_id of the share owner.
storage_location str
storage_root str
updated_at int
updated_by str
comment String
createdAt Number
Time when the share was created.
createdBy String
The principal that created the share.
name Changes to this property will trigger replacement. String
Name of share. Change forces creation of a new resource.
objects List<Property Map>
owner String
User name/group name/sp application_id of the share owner.
storageLocation String
storageRoot String
updatedAt Number
updatedBy String

Supporting Types

ShareObject
, ShareObjectArgs

DataObjectType This property is required. string
Type of the data object, currently TABLE, VIEW, SCHEMA, VOLUME, and MODEL are supported.
Name This property is required. string
Full name of the object, e.g. catalog.schema.name for a tables, views, volumes and models, or catalog.schema for schemas.
AddedAt int
AddedBy string
CdfEnabled bool
Whether to enable Change Data Feed (cdf) on the shared object. When this field is set, field history_data_sharing_status can not be set.
Comment string
Description about the object.
Content string
HistoryDataSharingStatus string

Whether to enable history sharing, one of: ENABLED, DISABLED. When a table has history sharing enabled, recipients can query table data by version, starting from the current table version. If not specified, clients can only query starting from the version of the object at the time it was added to the share. NOTE: The start_version should be less than or equal the current version of the object. When this field is set, field cdf_enabled can not be set.

To share only part of a table when you add the table to a share, you can provide partition specifications. This is specified by a number of partition blocks. Each entry in partition block takes a list of value blocks. The field is documented below.

Partitions List<ShareObjectPartition>
SharedAs string
A user-provided new name for the data object within the share. If this new name is not provided, the object's original name will be used as the shared_as name. The shared_as name must be unique within a Share. Change forces creation of a new resource.
StartVersion int
The start version associated with the object for cdf. This allows data providers to control the lowest object version that is accessible by clients.
Status string
Status of the object, one of: ACTIVE, PERMISSION_DENIED.
StringSharedAs string
DataObjectType This property is required. string
Type of the data object, currently TABLE, VIEW, SCHEMA, VOLUME, and MODEL are supported.
Name This property is required. string
Full name of the object, e.g. catalog.schema.name for a tables, views, volumes and models, or catalog.schema for schemas.
AddedAt int
AddedBy string
CdfEnabled bool
Whether to enable Change Data Feed (cdf) on the shared object. When this field is set, field history_data_sharing_status can not be set.
Comment string
Description about the object.
Content string
HistoryDataSharingStatus string

Whether to enable history sharing, one of: ENABLED, DISABLED. When a table has history sharing enabled, recipients can query table data by version, starting from the current table version. If not specified, clients can only query starting from the version of the object at the time it was added to the share. NOTE: The start_version should be less than or equal the current version of the object. When this field is set, field cdf_enabled can not be set.

To share only part of a table when you add the table to a share, you can provide partition specifications. This is specified by a number of partition blocks. Each entry in partition block takes a list of value blocks. The field is documented below.

Partitions []ShareObjectPartition
SharedAs string
A user-provided new name for the data object within the share. If this new name is not provided, the object's original name will be used as the shared_as name. The shared_as name must be unique within a Share. Change forces creation of a new resource.
StartVersion int
The start version associated with the object for cdf. This allows data providers to control the lowest object version that is accessible by clients.
Status string
Status of the object, one of: ACTIVE, PERMISSION_DENIED.
StringSharedAs string
dataObjectType This property is required. String
Type of the data object, currently TABLE, VIEW, SCHEMA, VOLUME, and MODEL are supported.
name This property is required. String
Full name of the object, e.g. catalog.schema.name for a tables, views, volumes and models, or catalog.schema for schemas.
addedAt Integer
addedBy String
cdfEnabled Boolean
Whether to enable Change Data Feed (cdf) on the shared object. When this field is set, field history_data_sharing_status can not be set.
comment String
Description about the object.
content String
historyDataSharingStatus String

Whether to enable history sharing, one of: ENABLED, DISABLED. When a table has history sharing enabled, recipients can query table data by version, starting from the current table version. If not specified, clients can only query starting from the version of the object at the time it was added to the share. NOTE: The start_version should be less than or equal the current version of the object. When this field is set, field cdf_enabled can not be set.

To share only part of a table when you add the table to a share, you can provide partition specifications. This is specified by a number of partition blocks. Each entry in partition block takes a list of value blocks. The field is documented below.

partitions List<ShareObjectPartition>
sharedAs String
A user-provided new name for the data object within the share. If this new name is not provided, the object's original name will be used as the shared_as name. The shared_as name must be unique within a Share. Change forces creation of a new resource.
startVersion Integer
The start version associated with the object for cdf. This allows data providers to control the lowest object version that is accessible by clients.
status String
Status of the object, one of: ACTIVE, PERMISSION_DENIED.
stringSharedAs String
dataObjectType This property is required. string
Type of the data object, currently TABLE, VIEW, SCHEMA, VOLUME, and MODEL are supported.
name This property is required. string
Full name of the object, e.g. catalog.schema.name for a tables, views, volumes and models, or catalog.schema for schemas.
addedAt number
addedBy string
cdfEnabled boolean
Whether to enable Change Data Feed (cdf) on the shared object. When this field is set, field history_data_sharing_status can not be set.
comment string
Description about the object.
content string
historyDataSharingStatus string

Whether to enable history sharing, one of: ENABLED, DISABLED. When a table has history sharing enabled, recipients can query table data by version, starting from the current table version. If not specified, clients can only query starting from the version of the object at the time it was added to the share. NOTE: The start_version should be less than or equal the current version of the object. When this field is set, field cdf_enabled can not be set.

To share only part of a table when you add the table to a share, you can provide partition specifications. This is specified by a number of partition blocks. Each entry in partition block takes a list of value blocks. The field is documented below.

partitions ShareObjectPartition[]
sharedAs string
A user-provided new name for the data object within the share. If this new name is not provided, the object's original name will be used as the shared_as name. The shared_as name must be unique within a Share. Change forces creation of a new resource.
startVersion number
The start version associated with the object for cdf. This allows data providers to control the lowest object version that is accessible by clients.
status string
Status of the object, one of: ACTIVE, PERMISSION_DENIED.
stringSharedAs string
data_object_type This property is required. str
Type of the data object, currently TABLE, VIEW, SCHEMA, VOLUME, and MODEL are supported.
name This property is required. str
Full name of the object, e.g. catalog.schema.name for a tables, views, volumes and models, or catalog.schema for schemas.
added_at int
added_by str
cdf_enabled bool
Whether to enable Change Data Feed (cdf) on the shared object. When this field is set, field history_data_sharing_status can not be set.
comment str
Description about the object.
content str
history_data_sharing_status str

Whether to enable history sharing, one of: ENABLED, DISABLED. When a table has history sharing enabled, recipients can query table data by version, starting from the current table version. If not specified, clients can only query starting from the version of the object at the time it was added to the share. NOTE: The start_version should be less than or equal the current version of the object. When this field is set, field cdf_enabled can not be set.

To share only part of a table when you add the table to a share, you can provide partition specifications. This is specified by a number of partition blocks. Each entry in partition block takes a list of value blocks. The field is documented below.

partitions Sequence[ShareObjectPartition]
shared_as str
A user-provided new name for the data object within the share. If this new name is not provided, the object's original name will be used as the shared_as name. The shared_as name must be unique within a Share. Change forces creation of a new resource.
start_version int
The start version associated with the object for cdf. This allows data providers to control the lowest object version that is accessible by clients.
status str
Status of the object, one of: ACTIVE, PERMISSION_DENIED.
string_shared_as str
dataObjectType This property is required. String
Type of the data object, currently TABLE, VIEW, SCHEMA, VOLUME, and MODEL are supported.
name This property is required. String
Full name of the object, e.g. catalog.schema.name for a tables, views, volumes and models, or catalog.schema for schemas.
addedAt Number
addedBy String
cdfEnabled Boolean
Whether to enable Change Data Feed (cdf) on the shared object. When this field is set, field history_data_sharing_status can not be set.
comment String
Description about the object.
content String
historyDataSharingStatus String

Whether to enable history sharing, one of: ENABLED, DISABLED. When a table has history sharing enabled, recipients can query table data by version, starting from the current table version. If not specified, clients can only query starting from the version of the object at the time it was added to the share. NOTE: The start_version should be less than or equal the current version of the object. When this field is set, field cdf_enabled can not be set.

To share only part of a table when you add the table to a share, you can provide partition specifications. This is specified by a number of partition blocks. Each entry in partition block takes a list of value blocks. The field is documented below.

partitions List<Property Map>
sharedAs String
A user-provided new name for the data object within the share. If this new name is not provided, the object's original name will be used as the shared_as name. The shared_as name must be unique within a Share. Change forces creation of a new resource.
startVersion Number
The start version associated with the object for cdf. This allows data providers to control the lowest object version that is accessible by clients.
status String
Status of the object, one of: ACTIVE, PERMISSION_DENIED.
stringSharedAs String

ShareObjectPartition
, ShareObjectPartitionArgs

Values List<ShareObjectPartitionValue>
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.
Values []ShareObjectPartitionValue
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.
values List<ShareObjectPartitionValue>
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.
values ShareObjectPartitionValue[]
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.
values Sequence[ShareObjectPartitionValue]
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.
values List<Property Map>
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.

ShareObjectPartitionValue
, ShareObjectPartitionValueArgs

Name This property is required. string
The name of the partition column.
Op This property is required. string
The operator to apply for the value, one of: EQUAL, LIKE
RecipientPropertyKey string
The key of a Delta Sharing recipient's property. For example databricks-account-id. When this field is set, field value can not be set.
Value string
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.
Name This property is required. string
The name of the partition column.
Op This property is required. string
The operator to apply for the value, one of: EQUAL, LIKE
RecipientPropertyKey string
The key of a Delta Sharing recipient's property. For example databricks-account-id. When this field is set, field value can not be set.
Value string
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.
name This property is required. String
The name of the partition column.
op This property is required. String
The operator to apply for the value, one of: EQUAL, LIKE
recipientPropertyKey String
The key of a Delta Sharing recipient's property. For example databricks-account-id. When this field is set, field value can not be set.
value String
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.
name This property is required. string
The name of the partition column.
op This property is required. string
The operator to apply for the value, one of: EQUAL, LIKE
recipientPropertyKey string
The key of a Delta Sharing recipient's property. For example databricks-account-id. When this field is set, field value can not be set.
value string
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.
name This property is required. str
The name of the partition column.
op This property is required. str
The operator to apply for the value, one of: EQUAL, LIKE
recipient_property_key str
The key of a Delta Sharing recipient's property. For example databricks-account-id. When this field is set, field value can not be set.
value str
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.
name This property is required. String
The name of the partition column.
op This property is required. String
The operator to apply for the value, one of: EQUAL, LIKE
recipientPropertyKey String
The key of a Delta Sharing recipient's property. For example databricks-account-id. When this field is set, field value can not be set.
value String
The value of the partition column. When this value is not set, it means null value. When this field is set, field recipient_property_key can not be set.

Import

The share resource can be imported using the name of the share.

bash

$ pulumi import databricks:index/share:Share this <share_name>
Copy

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.