1. Packages
  2. Databricks
  3. API Docs
  4. Catalog
Databricks v1.24.0 published on Wednesday, Sep 27, 2023 by Pulumi

databricks.Catalog

Explore with Pulumi AI

databricks logo
Databricks v1.24.0 published on Wednesday, Sep 27, 2023 by Pulumi

    The following resources are used in the same context:

    • databricks.Table data to list tables within Unity Catalog.
    • databricks.Schema data to list schemas within Unity Catalog.
    • databricks.Catalog data to list catalogs within Unity Catalog.

    Example Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Databricks = Pulumi.Databricks;
    
    return await Deployment.RunAsync(() => 
    {
        var sandbox = new Databricks.Catalog("sandbox", new()
        {
            MetastoreId = databricks_metastore.This.Id,
            Comment = "this catalog is managed by terraform",
            Properties = 
            {
                { "purpose", "testing" },
            },
        });
    
    });
    
    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.NewCatalog(ctx, "sandbox", &databricks.CatalogArgs{
    			MetastoreId: pulumi.Any(databricks_metastore.This.Id),
    			Comment:     pulumi.String("this catalog is managed by terraform"),
    			Properties: pulumi.AnyMap{
    				"purpose": pulumi.Any("testing"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.databricks.Catalog;
    import com.pulumi.databricks.CatalogArgs;
    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 sandbox = new Catalog("sandbox", CatalogArgs.builder()        
                .metastoreId(databricks_metastore.this().id())
                .comment("this catalog is managed by terraform")
                .properties(Map.of("purpose", "testing"))
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_databricks as databricks
    
    sandbox = databricks.Catalog("sandbox",
        metastore_id=databricks_metastore["this"]["id"],
        comment="this catalog is managed by terraform",
        properties={
            "purpose": "testing",
        })
    
    import * as pulumi from "@pulumi/pulumi";
    import * as databricks from "@pulumi/databricks";
    
    const sandbox = new databricks.Catalog("sandbox", {
        metastoreId: databricks_metastore["this"].id,
        comment: "this catalog is managed by terraform",
        properties: {
            purpose: "testing",
        },
    });
    
    resources:
      sandbox:
        type: databricks:Catalog
        properties:
          metastoreId: ${databricks_metastore.this.id}
          comment: this catalog is managed by terraform
          properties:
            purpose: testing
    

    Create Catalog Resource

    new Catalog(name: string, args?: CatalogArgs, opts?: CustomResourceOptions);
    @overload
    def Catalog(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                comment: Optional[str] = None,
                connection_name: Optional[str] = None,
                force_destroy: Optional[bool] = None,
                isolation_mode: Optional[str] = None,
                metastore_id: Optional[str] = None,
                name: Optional[str] = None,
                options: Optional[Mapping[str, Any]] = None,
                owner: Optional[str] = None,
                properties: Optional[Mapping[str, Any]] = None,
                provider_name: Optional[str] = None,
                share_name: Optional[str] = None,
                storage_root: Optional[str] = None)
    @overload
    def Catalog(resource_name: str,
                args: Optional[CatalogArgs] = None,
                opts: Optional[ResourceOptions] = None)
    func NewCatalog(ctx *Context, name string, args *CatalogArgs, opts ...ResourceOption) (*Catalog, error)
    public Catalog(string name, CatalogArgs? args = null, CustomResourceOptions? opts = null)
    public Catalog(String name, CatalogArgs args)
    public Catalog(String name, CatalogArgs args, CustomResourceOptions options)
    
    type: databricks:Catalog
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args CatalogArgs
    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 CatalogArgs
    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 CatalogArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args CatalogArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args CatalogArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Catalog 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 Catalog resource accepts the following input properties:

    Comment string

    User-supplied free-form text.

    ConnectionName string

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    ForceDestroy bool

    Delete catalog regardless of its contents.

    IsolationMode string

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    MetastoreId string
    Name string

    Name of Catalog relative to parent metastore.

    Options Dictionary<string, object>

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    Owner string

    Username/groupname/sp application_id of the catalog owner.

    Properties Dictionary<string, object>

    Extensible Catalog properties.

    ProviderName string

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    ShareName string

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    StorageRoot string

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    Comment string

    User-supplied free-form text.

    ConnectionName string

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    ForceDestroy bool

    Delete catalog regardless of its contents.

    IsolationMode string

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    MetastoreId string
    Name string

    Name of Catalog relative to parent metastore.

    Options map[string]interface{}

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    Owner string

    Username/groupname/sp application_id of the catalog owner.

    Properties map[string]interface{}

    Extensible Catalog properties.

    ProviderName string

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    ShareName string

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    StorageRoot string

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    comment String

    User-supplied free-form text.

    connectionName String

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    forceDestroy Boolean

    Delete catalog regardless of its contents.

    isolationMode String

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    metastoreId String
    name String

    Name of Catalog relative to parent metastore.

    options Map<String,Object>

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    owner String

    Username/groupname/sp application_id of the catalog owner.

    properties Map<String,Object>

    Extensible Catalog properties.

    providerName String

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    shareName String

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    storageRoot String

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    comment string

    User-supplied free-form text.

    connectionName string

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    forceDestroy boolean

    Delete catalog regardless of its contents.

    isolationMode string

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    metastoreId string
    name string

    Name of Catalog relative to parent metastore.

    options {[key: string]: any}

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    owner string

    Username/groupname/sp application_id of the catalog owner.

    properties {[key: string]: any}

    Extensible Catalog properties.

    providerName string

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    shareName string

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    storageRoot string

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    comment str

    User-supplied free-form text.

    connection_name str

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    force_destroy bool

    Delete catalog regardless of its contents.

    isolation_mode str

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    metastore_id str
    name str

    Name of Catalog relative to parent metastore.

    options Mapping[str, Any]

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    owner str

    Username/groupname/sp application_id of the catalog owner.

    properties Mapping[str, Any]

    Extensible Catalog properties.

    provider_name str

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    share_name str

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    storage_root str

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    comment String

    User-supplied free-form text.

    connectionName String

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    forceDestroy Boolean

    Delete catalog regardless of its contents.

    isolationMode String

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    metastoreId String
    name String

    Name of Catalog relative to parent metastore.

    options Map<Any>

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    owner String

    Username/groupname/sp application_id of the catalog owner.

    properties Map<Any>

    Extensible Catalog properties.

    providerName String

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    shareName String

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    storageRoot String

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    Outputs

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

    Get an existing Catalog 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?: CatalogState, opts?: CustomResourceOptions): Catalog
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            comment: Optional[str] = None,
            connection_name: Optional[str] = None,
            force_destroy: Optional[bool] = None,
            isolation_mode: Optional[str] = None,
            metastore_id: Optional[str] = None,
            name: Optional[str] = None,
            options: Optional[Mapping[str, Any]] = None,
            owner: Optional[str] = None,
            properties: Optional[Mapping[str, Any]] = None,
            provider_name: Optional[str] = None,
            share_name: Optional[str] = None,
            storage_root: Optional[str] = None) -> Catalog
    func GetCatalog(ctx *Context, name string, id IDInput, state *CatalogState, opts ...ResourceOption) (*Catalog, error)
    public static Catalog Get(string name, Input<string> id, CatalogState? state, CustomResourceOptions? opts = null)
    public static Catalog get(String name, Output<String> id, CatalogState 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.
    The following state arguments are supported:
    Comment string

    User-supplied free-form text.

    ConnectionName string

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    ForceDestroy bool

    Delete catalog regardless of its contents.

    IsolationMode string

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    MetastoreId string
    Name string

    Name of Catalog relative to parent metastore.

    Options Dictionary<string, object>

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    Owner string

    Username/groupname/sp application_id of the catalog owner.

    Properties Dictionary<string, object>

    Extensible Catalog properties.

    ProviderName string

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    ShareName string

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    StorageRoot string

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    Comment string

    User-supplied free-form text.

    ConnectionName string

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    ForceDestroy bool

    Delete catalog regardless of its contents.

    IsolationMode string

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    MetastoreId string
    Name string

    Name of Catalog relative to parent metastore.

    Options map[string]interface{}

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    Owner string

    Username/groupname/sp application_id of the catalog owner.

    Properties map[string]interface{}

    Extensible Catalog properties.

    ProviderName string

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    ShareName string

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    StorageRoot string

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    comment String

    User-supplied free-form text.

    connectionName String

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    forceDestroy Boolean

    Delete catalog regardless of its contents.

    isolationMode String

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    metastoreId String
    name String

    Name of Catalog relative to parent metastore.

    options Map<String,Object>

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    owner String

    Username/groupname/sp application_id of the catalog owner.

    properties Map<String,Object>

    Extensible Catalog properties.

    providerName String

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    shareName String

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    storageRoot String

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    comment string

    User-supplied free-form text.

    connectionName string

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    forceDestroy boolean

    Delete catalog regardless of its contents.

    isolationMode string

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    metastoreId string
    name string

    Name of Catalog relative to parent metastore.

    options {[key: string]: any}

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    owner string

    Username/groupname/sp application_id of the catalog owner.

    properties {[key: string]: any}

    Extensible Catalog properties.

    providerName string

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    shareName string

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    storageRoot string

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    comment str

    User-supplied free-form text.

    connection_name str

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    force_destroy bool

    Delete catalog regardless of its contents.

    isolation_mode str

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    metastore_id str
    name str

    Name of Catalog relative to parent metastore.

    options Mapping[str, Any]

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    owner str

    Username/groupname/sp application_id of the catalog owner.

    properties Mapping[str, Any]

    Extensible Catalog properties.

    provider_name str

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    share_name str

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    storage_root str

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    comment String

    User-supplied free-form text.

    connectionName String

    For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.

    forceDestroy Boolean

    Delete catalog regardless of its contents.

    isolationMode String

    Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can be ISOLATED or OPEN. Setting the catalog to ISOLATED will automatically allow access from the current workspace.

    metastoreId String
    name String

    Name of Catalog relative to parent metastore.

    options Map<Any>

    For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.

    owner String

    Username/groupname/sp application_id of the catalog owner.

    properties Map<Any>

    Extensible Catalog properties.

    providerName String

    For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.

    shareName String

    For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.

    storageRoot String

    Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the metastore root location. Change forces creation of a new resource.

    Import

    This resource can be imported by namebash

     $ pulumi import databricks:index/catalog:Catalog this <name>
    

    Package Details

    Repository
    databricks pulumi/pulumi-databricks
    License
    Apache-2.0
    Notes

    This Pulumi package is based on the databricks Terraform Provider.

    databricks logo
    Databricks v1.24.0 published on Wednesday, Sep 27, 2023 by Pulumi