armdatabricks

package module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 23, 2023 License: MIT Imports: 14 Imported by: 1

README

Azure Databricks Module for Go

PkgGoDev

The armdatabricks module provides operations for working with Azure Databricks.

Source code

Getting started

Prerequisites

  • an Azure subscription
  • Go 1.18 or above (You could download and install the latest version of Go from here. It will replace the existing Go on your machine. If you want to install multiple Go versions on the same machine, you could refer this doc.)

Install the package

This project uses Go modules for versioning and dependency management.

Install the Azure Databricks module:

go get github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks

Authorization

When creating a client, you will need to provide a credential for authenticating with Azure Databricks. The azidentity module provides facilities for various ways of authenticating with Azure including client/secret, certificate, managed identity, and more.

cred, err := azidentity.NewDefaultAzureCredential(nil)

For more information on authentication, please see the documentation for azidentity at pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity.

Client Factory

Azure Databricks module consists of one or more clients. We provide a client factory which could be used to create any client in this module.

clientFactory, err := armdatabricks.NewClientFactory(<subscription ID>, cred, nil)

You can use ClientOptions in package github.com/Azure/azure-sdk-for-go/sdk/azcore/arm to set endpoint to connect with public and sovereign clouds as well as Azure Stack. For more information, please see the documentation for azcore at pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore.

options := arm.ClientOptions {
    ClientOptions: azcore.ClientOptions {
        Cloud: cloud.AzureChina,
    },
}
clientFactory, err := armdatabricks.NewClientFactory(<subscription ID>, cred, &options)

Clients

A client groups a set of related APIs, providing access to its functionality. Create one or more clients to access the APIs you require using client factory.

client := clientFactory.NewWorkspacesClient()

Fakes

The fake package contains types used for constructing in-memory fake servers used in unit tests. This allows writing tests to cover various success/error conditions without the need for connecting to a live service.

Please see https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/samples/fakes for details and examples on how to use fakes.

Provide Feedback

If you encounter bugs or have suggestions, please open an issue and assign the Databricks label.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessConnector added in v1.0.0

type AccessConnector struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// Managed service identity (system assigned and/or user assigned identities)
	Identity *ManagedServiceIdentity

	// Azure Databricks accessConnector properties
	Properties *AccessConnectorProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; The system metadata relating to this resource
	SystemData *SystemData

	// READ-ONLY; The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts.
	Type *string
}

AccessConnector - Information about azure databricks accessConnector.

func (AccessConnector) MarshalJSON added in v1.0.0

func (a AccessConnector) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AccessConnector.

func (*AccessConnector) UnmarshalJSON added in v1.0.0

func (a *AccessConnector) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AccessConnector.

type AccessConnectorListResult added in v1.0.0

type AccessConnectorListResult struct {
	// The URL to use for getting the next set of results.
	NextLink *string

	// The array of azure databricks accessConnector.
	Value []*AccessConnector
}

AccessConnectorListResult - List of azure databricks accessConnector.

func (AccessConnectorListResult) MarshalJSON added in v1.0.0

func (a AccessConnectorListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AccessConnectorListResult.

func (*AccessConnectorListResult) UnmarshalJSON added in v1.0.0

func (a *AccessConnectorListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AccessConnectorListResult.

type AccessConnectorProperties added in v1.0.0

type AccessConnectorProperties struct {
	// READ-ONLY; Provisioning status of the accessConnector.
	ProvisioningState *ProvisioningState
}

func (AccessConnectorProperties) MarshalJSON added in v1.0.0

func (a AccessConnectorProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AccessConnectorProperties.

func (*AccessConnectorProperties) UnmarshalJSON added in v1.0.0

func (a *AccessConnectorProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AccessConnectorProperties.

type AccessConnectorUpdate added in v1.0.0

type AccessConnectorUpdate struct {
	// Managed service identity (system assigned and/or user assigned identities)
	Identity *ManagedServiceIdentity

	// Resource tags.
	Tags map[string]*string
}

AccessConnectorUpdate - An update to an azure databricks accessConnector.

func (AccessConnectorUpdate) MarshalJSON added in v1.0.0

func (a AccessConnectorUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AccessConnectorUpdate.

func (*AccessConnectorUpdate) UnmarshalJSON added in v1.0.0

func (a *AccessConnectorUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AccessConnectorUpdate.

type AccessConnectorsClient added in v1.0.0

type AccessConnectorsClient struct {
	// contains filtered or unexported fields
}

AccessConnectorsClient contains the methods for the AccessConnectors group. Don't use this type directly, use NewAccessConnectorsClient() instead.

func NewAccessConnectorsClient added in v1.0.0

func NewAccessConnectorsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*AccessConnectorsClient, error)

NewAccessConnectorsClient creates a new instance of AccessConnectorsClient with the specified values.

  • subscriptionID - The ID of the target subscription.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*AccessConnectorsClient) BeginCreateOrUpdate added in v1.0.0

BeginCreateOrUpdate - Creates or updates azure databricks accessConnector. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-05-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • connectorName - The name of the azure databricks accessConnector.
  • parameters - Parameters supplied to the create or update an azure databricks accessConnector.
  • options - AccessConnectorsClientBeginCreateOrUpdateOptions contains the optional parameters for the AccessConnectorsClient.BeginCreateOrUpdate method.
Example (CreateAnAzureDatabricksAccessConnectorWithSystemAssignedIdentity)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-05-01/examples/AccessConnectorCreateOrUpdate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewAccessConnectorsClient().BeginCreateOrUpdate(ctx, "rg", "myAccessConnector", armdatabricks.AccessConnector{
		Location: to.Ptr("westus"),
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.AccessConnector = armdatabricks.AccessConnector{
	// 	Name: to.Ptr("myAccessConnector"),
	// 	Type: to.Ptr("Microsoft.Databricks/accessConnectors"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/accessConnectors/myAccessConnector2"),
	// 	Location: to.Ptr("West US"),
	// 	Tags: map[string]*string{
	// 		"key1": to.Ptr("value1"),
	// 	},
	// 	Identity: &armdatabricks.ManagedServiceIdentity{
	// 		Type: to.Ptr(armdatabricks.ManagedServiceIdentityTypeSystemAssigned),
	// 		PrincipalID: to.Ptr("5619ff16-afe1-47e5-ae67-8393c6c3223d"),
	// 		TenantID: to.Ptr("e3fe3f22-4b98-4c04-82cc-d8817d1b17da"),
	// 	},
	// 	Properties: &armdatabricks.AccessConnectorProperties{
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 	},
	// }
}
Output:

Example (CreateAnAzureDatabricksAccessConnectorWithUserAssignedIdentity)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-05-01/examples/AccessConnectorCreateOrUpdateWithUserAssigned.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewAccessConnectorsClient().BeginCreateOrUpdate(ctx, "rg", "myAccessConnector", armdatabricks.AccessConnector{
		Location: to.Ptr("westus"),
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.AccessConnector = armdatabricks.AccessConnector{
	// 	Name: to.Ptr("myAccessConnector"),
	// 	Type: to.Ptr("Microsoft.Databricks/accessConnectors"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/accessConnectors/myAccessConnector2"),
	// 	Location: to.Ptr("West US"),
	// 	Tags: map[string]*string{
	// 		"key1": to.Ptr("value1"),
	// 	},
	// 	Identity: &armdatabricks.ManagedServiceIdentity{
	// 		Type: to.Ptr(armdatabricks.ManagedServiceIdentityTypeUserAssigned),
	// 		UserAssignedIdentities: map[string]*armdatabricks.UserAssignedIdentity{
	// 			"/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuseridentity": &armdatabricks.UserAssignedIdentity{
	// 				ClientID: to.Ptr("329419bc-adec-4dce-9568-25a6d486e468"),
	// 				PrincipalID: to.Ptr("329429bc-adec-4dce-9568-25a6d486e468"),
	// 			},
	// 		},
	// 	},
	// 	Properties: &armdatabricks.AccessConnectorProperties{
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 	},
	// }
}
Output:

func (*AccessConnectorsClient) BeginDelete added in v1.0.0

BeginDelete - Deletes the azure databricks accessConnector. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-05-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • connectorName - The name of the azure databricks accessConnector.
  • options - AccessConnectorsClientBeginDeleteOptions contains the optional parameters for the AccessConnectorsClient.BeginDelete method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-05-01/examples/AccessConnectorDelete.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewAccessConnectorsClient().BeginDelete(ctx, "rg", "myAccessConnector", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

func (*AccessConnectorsClient) BeginUpdate added in v1.0.0

BeginUpdate - Updates an azure databricks accessConnector. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-05-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • connectorName - The name of the azure databricks accessConnector.
  • parameters - The update to the azure databricks accessConnector.
  • options - AccessConnectorsClientBeginUpdateOptions contains the optional parameters for the AccessConnectorsClient.BeginUpdate method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-05-01/examples/AccessConnectorPatchUpdate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewAccessConnectorsClient().BeginUpdate(ctx, "rg", "myAccessConnector", armdatabricks.AccessConnectorUpdate{
		Tags: map[string]*string{
			"key1": to.Ptr("value1"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.AccessConnector = armdatabricks.AccessConnector{
	// 	Name: to.Ptr("myAccessConnector"),
	// 	Type: to.Ptr("Microsoft.Databricks/accessConnectors"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/accessConnectors/myAccessConnector"),
	// 	Location: to.Ptr("West US"),
	// 	Tags: map[string]*string{
	// 		"key1": to.Ptr("value1"),
	// 	},
	// 	Identity: &armdatabricks.ManagedServiceIdentity{
	// 		Type: to.Ptr(armdatabricks.ManagedServiceIdentityTypeSystemAssigned),
	// 		PrincipalID: to.Ptr("5619ff16-afe1-47e5-ae67-8393c6c3223d"),
	// 		TenantID: to.Ptr("e3fe3f22-4b98-4c04-82cc-d8817d1b17da"),
	// 	},
	// 	Properties: &armdatabricks.AccessConnectorProperties{
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 	},
	// }
}
Output:

func (*AccessConnectorsClient) Get added in v1.0.0

func (client *AccessConnectorsClient) Get(ctx context.Context, resourceGroupName string, connectorName string, options *AccessConnectorsClientGetOptions) (AccessConnectorsClientGetResponse, error)

Get - Gets an azure databricks accessConnector. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-05-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • connectorName - The name of the azure databricks accessConnector.
  • options - AccessConnectorsClientGetOptions contains the optional parameters for the AccessConnectorsClient.Get method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-05-01/examples/AccessConnectorGet.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewAccessConnectorsClient().Get(ctx, "rg", "myAccessConnector", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.AccessConnector = armdatabricks.AccessConnector{
	// 	Name: to.Ptr("myAccessConnector"),
	// 	Type: to.Ptr("Microsoft.Databricks/accessConnectors"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/accessConnectors/myAccessConnector"),
	// 	Location: to.Ptr("West US"),
	// 	Tags: map[string]*string{
	// 		"key1": to.Ptr("value1"),
	// 	},
	// 	Identity: &armdatabricks.ManagedServiceIdentity{
	// 		Type: to.Ptr(armdatabricks.ManagedServiceIdentityTypeSystemAssigned),
	// 		PrincipalID: to.Ptr("5619ff16-afe1-47e5-ae67-8393c6c3223d"),
	// 		TenantID: to.Ptr("e3fe3f22-4b98-4c04-82cc-d8817d1b17da"),
	// 	},
	// 	Properties: &armdatabricks.AccessConnectorProperties{
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 	},
	// }
}
Output:

func (*AccessConnectorsClient) NewListByResourceGroupPager added in v1.0.0

NewListByResourceGroupPager - Gets all the azure databricks accessConnectors within a resource group.

Generated from API version 2023-05-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • options - AccessConnectorsClientListByResourceGroupOptions contains the optional parameters for the AccessConnectorsClient.NewListByResourceGroupPager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-05-01/examples/AccessConnectorsListByResourceGroup.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewAccessConnectorsClient().NewListByResourceGroupPager("rg", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.AccessConnectorListResult = armdatabricks.AccessConnectorListResult{
		// 	Value: []*armdatabricks.AccessConnector{
		// 		{
		// 			Name: to.Ptr("myAccessConnector1"),
		// 			Type: to.Ptr("Microsoft.Databricks/accessConnectors"),
		// 			ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/accessConnectors/myAccessConnector1"),
		// 			Location: to.Ptr("West US"),
		// 			Tags: map[string]*string{
		// 			},
		// 			Identity: &armdatabricks.ManagedServiceIdentity{
		// 				Type: to.Ptr(armdatabricks.ManagedServiceIdentityTypeSystemAssigned),
		// 				PrincipalID: to.Ptr("5619ff16-afe1-47e5-ae67-8393c6c3223d"),
		// 				TenantID: to.Ptr("e3fe3f22-4b98-4c04-82cc-d8817d1b17da"),
		// 			},
		// 			Properties: &armdatabricks.AccessConnectorProperties{
		// 				ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
		// 			},
		// 		},
		// 		{
		// 			Name: to.Ptr("myAccessConnector"),
		// 			Type: to.Ptr("Microsoft.Databricks/accessConnectors"),
		// 			ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/accessConnectors/myAccessConnector2"),
		// 			Location: to.Ptr("West US"),
		// 			Tags: map[string]*string{
		// 			},
		// 			Identity: &armdatabricks.ManagedServiceIdentity{
		// 				Type: to.Ptr(armdatabricks.ManagedServiceIdentityTypeSystemAssigned),
		// 				PrincipalID: to.Ptr("7ad2bae1-37d0-413e-91f8-b0b7bef807fc"),
		// 				TenantID: to.Ptr("e3fe3f22-4b98-4c04-82cc-d8817d1b17da"),
		// 			},
		// 			Properties: &armdatabricks.AccessConnectorProperties{
		// 				ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
		// 			},
		// 	}},
		// }
	}
}
Output:

func (*AccessConnectorsClient) NewListBySubscriptionPager added in v1.0.0

NewListBySubscriptionPager - Gets all the azure databricks accessConnectors within a subscription.

Generated from API version 2023-05-01

  • options - AccessConnectorsClientListBySubscriptionOptions contains the optional parameters for the AccessConnectorsClient.NewListBySubscriptionPager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-05-01/examples/AccessConnectorsListBySubscriptionId.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewAccessConnectorsClient().NewListBySubscriptionPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.AccessConnectorListResult = armdatabricks.AccessConnectorListResult{
		// 	Value: []*armdatabricks.AccessConnector{
		// 		{
		// 			Name: to.Ptr("myAccessConnector1"),
		// 			Type: to.Ptr("Microsoft.Databricks/accessConnectors"),
		// 			ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Databricks/accessConnectors/myAccessConnector1"),
		// 			Location: to.Ptr("West US"),
		// 			Tags: map[string]*string{
		// 			},
		// 			Identity: &armdatabricks.ManagedServiceIdentity{
		// 				Type: to.Ptr(armdatabricks.ManagedServiceIdentityTypeSystemAssigned),
		// 				PrincipalID: to.Ptr("7ad2bae1-37d0-413e-91f8-b0b7bef807fc"),
		// 				TenantID: to.Ptr("e3fe3f22-4b98-4c04-82cc-d8817d1b17da"),
		// 			},
		// 			Properties: &armdatabricks.AccessConnectorProperties{
		// 				ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
		// 			},
		// 		},
		// 		{
		// 			Name: to.Ptr("myAccessConnector2"),
		// 			Type: to.Ptr("Microsoft.Databricks/accessConnectors"),
		// 			ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Databricks/accessConnectors/myAccessConnector2"),
		// 			Location: to.Ptr("West US"),
		// 			Tags: map[string]*string{
		// 			},
		// 			Identity: &armdatabricks.ManagedServiceIdentity{
		// 				Type: to.Ptr(armdatabricks.ManagedServiceIdentityTypeSystemAssigned),
		// 				PrincipalID: to.Ptr("5619ff16-afe1-47e5-ae67-8393c6c3223d"),
		// 				TenantID: to.Ptr("e3fe3f22-4b98-4c04-82cc-d8817d1b17da"),
		// 			},
		// 			Properties: &armdatabricks.AccessConnectorProperties{
		// 				ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
		// 			},
		// 		},
		// 		{
		// 			Name: to.Ptr("myAccessConnector3"),
		// 			Type: to.Ptr("Microsoft.Databricks/accessConnectors"),
		// 			ID: to.Ptr("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Databricks/accessConnectors/myAccessConnector3"),
		// 			Location: to.Ptr("West US"),
		// 			Tags: map[string]*string{
		// 			},
		// 			Identity: &armdatabricks.ManagedServiceIdentity{
		// 				Type: to.Ptr(armdatabricks.ManagedServiceIdentityTypeSystemAssigned),
		// 				PrincipalID: to.Ptr("04b25430-8db1-48a0-9c2f-32270ed63eef"),
		// 				TenantID: to.Ptr("e3fe3f22-4b98-4c04-82cc-d8817d1b17da"),
		// 			},
		// 			Properties: &armdatabricks.AccessConnectorProperties{
		// 				ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
		// 			},
		// 		},
		// 		{
		// 			Name: to.Ptr("myAccessConnector4"),
		// 			Type: to.Ptr("Microsoft.Databricks/accessConnectors"),
		// 			ID: to.Ptr("/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Databricks/accessConnectors/myAccessConnector4"),
		// 			Location: to.Ptr("West US"),
		// 			Tags: map[string]*string{
		// 			},
		// 			Identity: &armdatabricks.ManagedServiceIdentity{
		// 				Type: to.Ptr(armdatabricks.ManagedServiceIdentityTypeSystemAssigned),
		// 				PrincipalID: to.Ptr("4856ceed-0a99-4df7-b9fc-35603650af06"),
		// 				TenantID: to.Ptr("e3fe3f22-4b98-4c04-82cc-d8817d1b17da"),
		// 			},
		// 			Properties: &armdatabricks.AccessConnectorProperties{
		// 				ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
		// 			},
		// 	}},
		// }
	}
}
Output:

type AccessConnectorsClientBeginCreateOrUpdateOptions added in v1.0.0

type AccessConnectorsClientBeginCreateOrUpdateOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

AccessConnectorsClientBeginCreateOrUpdateOptions contains the optional parameters for the AccessConnectorsClient.BeginCreateOrUpdate method.

type AccessConnectorsClientBeginDeleteOptions added in v1.0.0

type AccessConnectorsClientBeginDeleteOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

AccessConnectorsClientBeginDeleteOptions contains the optional parameters for the AccessConnectorsClient.BeginDelete method.

type AccessConnectorsClientBeginUpdateOptions added in v1.0.0

type AccessConnectorsClientBeginUpdateOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

AccessConnectorsClientBeginUpdateOptions contains the optional parameters for the AccessConnectorsClient.BeginUpdate method.

type AccessConnectorsClientCreateOrUpdateResponse added in v1.0.0

type AccessConnectorsClientCreateOrUpdateResponse struct {
	// Information about azure databricks accessConnector.
	AccessConnector
}

AccessConnectorsClientCreateOrUpdateResponse contains the response from method AccessConnectorsClient.BeginCreateOrUpdate.

type AccessConnectorsClientDeleteResponse added in v1.0.0

type AccessConnectorsClientDeleteResponse struct {
}

AccessConnectorsClientDeleteResponse contains the response from method AccessConnectorsClient.BeginDelete.

type AccessConnectorsClientGetOptions added in v1.0.0

type AccessConnectorsClientGetOptions struct {
}

AccessConnectorsClientGetOptions contains the optional parameters for the AccessConnectorsClient.Get method.

type AccessConnectorsClientGetResponse added in v1.0.0

type AccessConnectorsClientGetResponse struct {
	// Information about azure databricks accessConnector.
	AccessConnector
}

AccessConnectorsClientGetResponse contains the response from method AccessConnectorsClient.Get.

type AccessConnectorsClientListByResourceGroupOptions added in v1.0.0

type AccessConnectorsClientListByResourceGroupOptions struct {
}

AccessConnectorsClientListByResourceGroupOptions contains the optional parameters for the AccessConnectorsClient.NewListByResourceGroupPager method.

type AccessConnectorsClientListByResourceGroupResponse added in v1.0.0

type AccessConnectorsClientListByResourceGroupResponse struct {
	// List of azure databricks accessConnector.
	AccessConnectorListResult
}

AccessConnectorsClientListByResourceGroupResponse contains the response from method AccessConnectorsClient.NewListByResourceGroupPager.

type AccessConnectorsClientListBySubscriptionOptions added in v1.0.0

type AccessConnectorsClientListBySubscriptionOptions struct {
}

AccessConnectorsClientListBySubscriptionOptions contains the optional parameters for the AccessConnectorsClient.NewListBySubscriptionPager method.

type AccessConnectorsClientListBySubscriptionResponse added in v1.0.0

type AccessConnectorsClientListBySubscriptionResponse struct {
	// List of azure databricks accessConnector.
	AccessConnectorListResult
}

AccessConnectorsClientListBySubscriptionResponse contains the response from method AccessConnectorsClient.NewListBySubscriptionPager.

type AccessConnectorsClientUpdateResponse added in v1.0.0

type AccessConnectorsClientUpdateResponse struct {
	// Information about azure databricks accessConnector.
	AccessConnector
}

AccessConnectorsClientUpdateResponse contains the response from method AccessConnectorsClient.BeginUpdate.

type AddressSpace

type AddressSpace struct {
	// A list of address blocks reserved for this virtual network in CIDR notation.
	AddressPrefixes []*string
}

AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network.

func (AddressSpace) MarshalJSON

func (a AddressSpace) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AddressSpace.

func (*AddressSpace) UnmarshalJSON added in v0.7.0

func (a *AddressSpace) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AddressSpace.

type ClientFactory added in v0.7.0

type ClientFactory struct {
	// contains filtered or unexported fields
}

ClientFactory is a client factory used to create any client in this module. Don't use this type directly, use NewClientFactory instead.

func NewClientFactory added in v0.7.0

func NewClientFactory(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ClientFactory, error)

NewClientFactory creates a new instance of ClientFactory with the specified values. The parameter values will be propagated to any client created from this factory.

  • subscriptionID - The ID of the target subscription.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*ClientFactory) NewAccessConnectorsClient added in v1.0.0

func (c *ClientFactory) NewAccessConnectorsClient() *AccessConnectorsClient

NewAccessConnectorsClient creates a new instance of AccessConnectorsClient.

func (*ClientFactory) NewOperationsClient added in v0.7.0

func (c *ClientFactory) NewOperationsClient() *OperationsClient

NewOperationsClient creates a new instance of OperationsClient.

func (*ClientFactory) NewOutboundNetworkDependenciesEndpointsClient added in v0.7.0

func (c *ClientFactory) NewOutboundNetworkDependenciesEndpointsClient() *OutboundNetworkDependenciesEndpointsClient

NewOutboundNetworkDependenciesEndpointsClient creates a new instance of OutboundNetworkDependenciesEndpointsClient.

func (*ClientFactory) NewPrivateEndpointConnectionsClient added in v0.7.0

func (c *ClientFactory) NewPrivateEndpointConnectionsClient() *PrivateEndpointConnectionsClient

NewPrivateEndpointConnectionsClient creates a new instance of PrivateEndpointConnectionsClient.

func (*ClientFactory) NewPrivateLinkResourcesClient added in v0.7.0

func (c *ClientFactory) NewPrivateLinkResourcesClient() *PrivateLinkResourcesClient

NewPrivateLinkResourcesClient creates a new instance of PrivateLinkResourcesClient.

func (*ClientFactory) NewVNetPeeringClient added in v0.7.0

func (c *ClientFactory) NewVNetPeeringClient() *VNetPeeringClient

NewVNetPeeringClient creates a new instance of VNetPeeringClient.

func (*ClientFactory) NewWorkspacesClient added in v0.7.0

func (c *ClientFactory) NewWorkspacesClient() *WorkspacesClient

NewWorkspacesClient creates a new instance of WorkspacesClient.

type CreatedBy

type CreatedBy struct {
	// READ-ONLY; The application ID of the application that initiated the creation of the workspace. For example, Azure Portal.
	ApplicationID *string

	// READ-ONLY; The Object ID that created the workspace.
	Oid *string

	// READ-ONLY; The Personal Object ID corresponding to the object ID above
	Puid *string
}

CreatedBy - Provides details of the entity that created/updated the workspace.

func (CreatedBy) MarshalJSON added in v0.7.0

func (c CreatedBy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CreatedBy.

func (*CreatedBy) UnmarshalJSON added in v0.7.0

func (c *CreatedBy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CreatedBy.

type CreatedByType

type CreatedByType string

CreatedByType - The type of identity that created the resource.

const (
	CreatedByTypeApplication     CreatedByType = "Application"
	CreatedByTypeKey             CreatedByType = "Key"
	CreatedByTypeManagedIdentity CreatedByType = "ManagedIdentity"
	CreatedByTypeUser            CreatedByType = "User"
)

func PossibleCreatedByTypeValues

func PossibleCreatedByTypeValues() []CreatedByType

PossibleCreatedByTypeValues returns the possible values for the CreatedByType const type.

type CustomParameterType

type CustomParameterType string

CustomParameterType - Provisioning status of the workspace.

const (
	CustomParameterTypeBool   CustomParameterType = "Bool"
	CustomParameterTypeObject CustomParameterType = "Object"
	CustomParameterTypeString CustomParameterType = "String"
)

func PossibleCustomParameterTypeValues

func PossibleCustomParameterTypeValues() []CustomParameterType

PossibleCustomParameterTypeValues returns the possible values for the CustomParameterType const type.

type Encryption

type Encryption struct {
	// The name of KeyVault key.
	KeyName *string

	// The encryption keySource (provider). Possible values (case-insensitive): Default, Microsoft.Keyvault
	KeySource *KeySource

	// The Uri of KeyVault.
	KeyVaultURI *string

	// The version of KeyVault key.
	KeyVersion *string
}

Encryption - The object that contains details of encryption used on the workspace.

func (Encryption) MarshalJSON added in v0.7.0

func (e Encryption) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Encryption.

func (*Encryption) UnmarshalJSON added in v0.7.0

func (e *Encryption) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Encryption.

type EncryptionEntitiesDefinition

type EncryptionEntitiesDefinition struct {
	// Encryption properties for the databricks managed disks.
	ManagedDisk *ManagedDiskEncryption

	// Encryption properties for the databricks managed services.
	ManagedServices *EncryptionV2
}

EncryptionEntitiesDefinition - Encryption entities for databricks workspace resource.

func (EncryptionEntitiesDefinition) MarshalJSON added in v0.7.0

func (e EncryptionEntitiesDefinition) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EncryptionEntitiesDefinition.

func (*EncryptionEntitiesDefinition) UnmarshalJSON added in v0.7.0

func (e *EncryptionEntitiesDefinition) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EncryptionEntitiesDefinition.

type EncryptionKeySource

type EncryptionKeySource string

EncryptionKeySource - The encryption keySource (provider). Possible values (case-insensitive): Microsoft.Keyvault

const (
	EncryptionKeySourceMicrosoftKeyvault EncryptionKeySource = "Microsoft.Keyvault"
)

func PossibleEncryptionKeySourceValues

func PossibleEncryptionKeySourceValues() []EncryptionKeySource

PossibleEncryptionKeySourceValues returns the possible values for the EncryptionKeySource const type.

type EncryptionV2

type EncryptionV2 struct {
	// REQUIRED; The encryption keySource (provider). Possible values (case-insensitive): Microsoft.Keyvault
	KeySource *EncryptionKeySource

	// Key Vault input properties for encryption.
	KeyVaultProperties *EncryptionV2KeyVaultProperties
}

EncryptionV2 - The object that contains details of encryption used on the workspace.

func (EncryptionV2) MarshalJSON added in v0.7.0

func (e EncryptionV2) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EncryptionV2.

func (*EncryptionV2) UnmarshalJSON added in v0.7.0

func (e *EncryptionV2) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EncryptionV2.

type EncryptionV2KeyVaultProperties

type EncryptionV2KeyVaultProperties struct {
	// REQUIRED; The name of KeyVault key.
	KeyName *string

	// REQUIRED; The Uri of KeyVault.
	KeyVaultURI *string

	// REQUIRED; The version of KeyVault key.
	KeyVersion *string
}

EncryptionV2KeyVaultProperties - Key Vault input properties for encryption.

func (EncryptionV2KeyVaultProperties) MarshalJSON added in v0.7.0

func (e EncryptionV2KeyVaultProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EncryptionV2KeyVaultProperties.

func (*EncryptionV2KeyVaultProperties) UnmarshalJSON added in v0.7.0

func (e *EncryptionV2KeyVaultProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EncryptionV2KeyVaultProperties.

type EndpointDependency

type EndpointDependency struct {
	// The domain name of the dependency.
	DomainName *string

	// The Ports used when connecting to domainName.
	EndpointDetails []*EndpointDetail
}

EndpointDependency - A domain name or IP address the Workspace is reaching at.

func (EndpointDependency) MarshalJSON

func (e EndpointDependency) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EndpointDependency.

func (*EndpointDependency) UnmarshalJSON added in v0.7.0

func (e *EndpointDependency) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EndpointDependency.

type EndpointDetail

type EndpointDetail struct {
	// An IP Address that Domain Name currently resolves to.
	IPAddress *string

	// Whether it is possible to create a connection from the Workspace to this IpAddress at this Port.
	IsAccessible *bool

	// The time in milliseconds it takes for the connection to be created from the Workspace to this IpAddress at this Port.
	Latency *float64

	// The port an endpoint is connected to.
	Port *int32
}

EndpointDetail - Connect information from the Workspace to a single endpoint.

func (EndpointDetail) MarshalJSON added in v0.7.0

func (e EndpointDetail) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EndpointDetail.

func (*EndpointDetail) UnmarshalJSON added in v0.7.0

func (e *EndpointDetail) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EndpointDetail.

type GroupIDInformation

type GroupIDInformation struct {
	// REQUIRED; The group id properties.
	Properties *GroupIDInformationProperties

	// READ-ONLY; Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts.
	Type *string
}

GroupIDInformation - The group information for creating a private endpoint on a workspace

func (GroupIDInformation) MarshalJSON

func (g GroupIDInformation) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GroupIDInformation.

func (*GroupIDInformation) UnmarshalJSON added in v0.7.0

func (g *GroupIDInformation) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type GroupIDInformation.

type GroupIDInformationProperties

type GroupIDInformationProperties struct {
	// The group id
	GroupID *string

	// The required members for a specific group id
	RequiredMembers []*string

	// The required DNS zones for a specific group id
	RequiredZoneNames []*string
}

GroupIDInformationProperties - The properties for a group information object

func (GroupIDInformationProperties) MarshalJSON

func (g GroupIDInformationProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GroupIDInformationProperties.

func (*GroupIDInformationProperties) UnmarshalJSON added in v0.7.0

func (g *GroupIDInformationProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type GroupIDInformationProperties.

type KeySource

type KeySource string

KeySource - The encryption keySource (provider). Possible values (case-insensitive): Default, Microsoft.Keyvault

const (
	KeySourceDefault           KeySource = "Default"
	KeySourceMicrosoftKeyvault KeySource = "Microsoft.Keyvault"
)

func PossibleKeySourceValues

func PossibleKeySourceValues() []KeySource

PossibleKeySourceValues returns the possible values for the KeySource const type.

type ManagedDiskEncryption added in v1.0.0

type ManagedDiskEncryption struct {
	// REQUIRED; The encryption keySource (provider). Possible values (case-insensitive): Microsoft.Keyvault
	KeySource *EncryptionKeySource

	// REQUIRED; Key Vault input properties for encryption.
	KeyVaultProperties *ManagedDiskEncryptionKeyVaultProperties

	// Indicate whether the latest key version should be automatically used for Managed Disk Encryption.
	RotationToLatestKeyVersionEnabled *bool
}

ManagedDiskEncryption - The object that contains details of encryption used on the workspace.

func (ManagedDiskEncryption) MarshalJSON added in v1.0.0

func (m ManagedDiskEncryption) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ManagedDiskEncryption.

func (*ManagedDiskEncryption) UnmarshalJSON added in v1.0.0

func (m *ManagedDiskEncryption) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ManagedDiskEncryption.

type ManagedDiskEncryptionKeyVaultProperties added in v1.0.0

type ManagedDiskEncryptionKeyVaultProperties struct {
	// REQUIRED; The name of KeyVault key.
	KeyName *string

	// REQUIRED; The URI of KeyVault.
	KeyVaultURI *string

	// REQUIRED; The version of KeyVault key.
	KeyVersion *string
}

ManagedDiskEncryptionKeyVaultProperties - Key Vault input properties for encryption.

func (ManagedDiskEncryptionKeyVaultProperties) MarshalJSON added in v1.0.0

func (m ManagedDiskEncryptionKeyVaultProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ManagedDiskEncryptionKeyVaultProperties.

func (*ManagedDiskEncryptionKeyVaultProperties) UnmarshalJSON added in v1.0.0

func (m *ManagedDiskEncryptionKeyVaultProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ManagedDiskEncryptionKeyVaultProperties.

type ManagedIdentityConfiguration

type ManagedIdentityConfiguration struct {
	// READ-ONLY; The objectId of the Managed Identity that is linked to the Managed Storage account.
	PrincipalID *string

	// READ-ONLY; The tenant Id where the Managed Identity is created.
	TenantID *string

	// READ-ONLY; The type of Identity created. It can be either SystemAssigned or UserAssigned.
	Type *string
}

ManagedIdentityConfiguration - The Managed Identity details for storage account.

func (ManagedIdentityConfiguration) MarshalJSON added in v0.7.0

func (m ManagedIdentityConfiguration) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ManagedIdentityConfiguration.

func (*ManagedIdentityConfiguration) UnmarshalJSON added in v0.7.0

func (m *ManagedIdentityConfiguration) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ManagedIdentityConfiguration.

type ManagedServiceIdentity added in v1.0.0

type ManagedServiceIdentity struct {
	// REQUIRED; Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
	Type *ManagedServiceIdentityType

	// The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM
	// resource ids in the form:
	// '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}.
	// The dictionary values can be empty objects ({}) in
	// requests.
	UserAssignedIdentities map[string]*UserAssignedIdentity

	// READ-ONLY; The service principal ID of the system assigned identity. This property will only be provided for a system assigned
	// identity.
	PrincipalID *string

	// READ-ONLY; The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
	TenantID *string
}

ManagedServiceIdentity - Managed service identity (system assigned and/or user assigned identities)

func (ManagedServiceIdentity) MarshalJSON added in v1.0.0

func (m ManagedServiceIdentity) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ManagedServiceIdentity.

func (*ManagedServiceIdentity) UnmarshalJSON added in v1.0.0

func (m *ManagedServiceIdentity) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ManagedServiceIdentity.

type ManagedServiceIdentityType added in v1.0.0

type ManagedServiceIdentityType string

ManagedServiceIdentityType - Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).

const (
	ManagedServiceIdentityTypeNone                       ManagedServiceIdentityType = "None"
	ManagedServiceIdentityTypeSystemAssigned             ManagedServiceIdentityType = "SystemAssigned"
	ManagedServiceIdentityTypeSystemAssignedUserAssigned ManagedServiceIdentityType = "SystemAssigned,UserAssigned"
	ManagedServiceIdentityTypeUserAssigned               ManagedServiceIdentityType = "UserAssigned"
)

func PossibleManagedServiceIdentityTypeValues added in v1.0.0

func PossibleManagedServiceIdentityTypeValues() []ManagedServiceIdentityType

PossibleManagedServiceIdentityTypeValues returns the possible values for the ManagedServiceIdentityType const type.

type Operation

type Operation struct {
	// The object that represents the operation.
	Display *OperationDisplay

	// Operation name: {provider}/{resource}/{operation}
	Name *string
}

Operation - REST API operation

func (Operation) MarshalJSON added in v0.7.0

func (o Operation) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Operation.

func (*Operation) UnmarshalJSON added in v0.7.0

func (o *Operation) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Operation.

type OperationDisplay

type OperationDisplay struct {
	// Description for the resource operation.
	Description *string

	// Operation type: Read, write, delete, etc.
	Operation *string

	// Service provider: ex Microsoft.Databricks
	Provider *string

	// Resource on which the operation is performed.
	Resource *string
}

OperationDisplay - The object that represents the operation.

func (OperationDisplay) MarshalJSON added in v0.7.0

func (o OperationDisplay) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OperationDisplay.

func (*OperationDisplay) UnmarshalJSON added in v0.7.0

func (o *OperationDisplay) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationDisplay.

type OperationListResult

type OperationListResult struct {
	// URL to get the next set of operation list results if there are any.
	NextLink *string

	// List of Resource Provider operations supported by the Resource Provider resource provider.
	Value []*Operation
}

OperationListResult - Result of the request to list Resource Provider operations. It contains a list of operations and a URL link to get the next set of results.

func (OperationListResult) MarshalJSON

func (o OperationListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OperationListResult.

func (*OperationListResult) UnmarshalJSON added in v0.7.0

func (o *OperationListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationListResult.

type OperationsClient

type OperationsClient struct {
	// contains filtered or unexported fields
}

OperationsClient contains the methods for the Operations group. Don't use this type directly, use NewOperationsClient() instead.

func NewOperationsClient

func NewOperationsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*OperationsClient, error)

NewOperationsClient creates a new instance of OperationsClient with the specified values.

  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*OperationsClient) NewListPager added in v0.5.0

NewListPager - Lists all of the available RP operations.

Generated from API version 2023-02-01

  • options - OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/OperationsList.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewOperationsClient().NewListPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.OperationListResult = armdatabricks.OperationListResult{
		// }
	}
}
Output:

type OperationsClientListOptions added in v0.3.0

type OperationsClientListOptions struct {
}

OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method.

type OperationsClientListResponse added in v0.3.0

type OperationsClientListResponse struct {
	// Result of the request to list Resource Provider operations. It contains a list of operations and a URL link to get the
	// next set of results.
	OperationListResult
}

OperationsClientListResponse contains the response from method OperationsClient.NewListPager.

type OutboundEnvironmentEndpoint

type OutboundEnvironmentEndpoint struct {
	// The category of endpoints accessed by the Workspace, e.g. azure-storage, azure-mysql, etc.
	Category *string

	// The endpoints that Workspace connect to
	Endpoints []*EndpointDependency
}

OutboundEnvironmentEndpoint - Egress endpoints which Workspace connects to for common purposes.

func (OutboundEnvironmentEndpoint) MarshalJSON

func (o OutboundEnvironmentEndpoint) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OutboundEnvironmentEndpoint.

func (*OutboundEnvironmentEndpoint) UnmarshalJSON added in v0.7.0

func (o *OutboundEnvironmentEndpoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OutboundEnvironmentEndpoint.

type OutboundNetworkDependenciesEndpointsClient

type OutboundNetworkDependenciesEndpointsClient struct {
	// contains filtered or unexported fields
}

OutboundNetworkDependenciesEndpointsClient contains the methods for the OutboundNetworkDependenciesEndpoints group. Don't use this type directly, use NewOutboundNetworkDependenciesEndpointsClient() instead.

func NewOutboundNetworkDependenciesEndpointsClient

func NewOutboundNetworkDependenciesEndpointsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*OutboundNetworkDependenciesEndpointsClient, error)

NewOutboundNetworkDependenciesEndpointsClient creates a new instance of OutboundNetworkDependenciesEndpointsClient with the specified values.

  • subscriptionID - The ID of the target subscription.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*OutboundNetworkDependenciesEndpointsClient) List

List - Gets the list of endpoints that VNET Injected Workspace calls Azure Databricks Control Plane. You must configure outbound access with these endpoints. For more information, see https://docs.microsoft.com/en-us/azure/databricks/administration-guide/cloud-configurations/azure/udr If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • options - OutboundNetworkDependenciesEndpointsClientListOptions contains the optional parameters for the OutboundNetworkDependenciesEndpointsClient.List method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/OutboundNetworkDependenciesEndpointsList.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewOutboundNetworkDependenciesEndpointsClient().List(ctx, "myResourceGroup", "myWorkspace", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.OutboundEnvironmentEndpointArray = []*armdatabricks.OutboundEnvironmentEndpoint{
	// 	{
	// 		Category: to.Ptr("Webapp"),
	// 		Endpoints: []*armdatabricks.EndpointDependency{
	// 			{
	// 				EndpointDetails: []*armdatabricks.EndpointDetail{
	// 					{
	// 						IPAddress: to.Ptr("11.111.111.11/11"),
	// 						Port: to.Ptr[int32](123),
	// 					},
	// 					{
	// 						IPAddress: to.Ptr("22.222.222.22/22"),
	// 						Port: to.Ptr[int32](123),
	// 				}},
	// 		}},
	// 	},
	// 	{
	// 		Category: to.Ptr("Control Plane NAT"),
	// 		Endpoints: []*armdatabricks.EndpointDependency{
	// 			{
	// 				EndpointDetails: []*armdatabricks.EndpointDetail{
	// 					{
	// 						IPAddress: to.Ptr("33.33.333.333/33"),
	// 						Port: to.Ptr[int32](123),
	// 				}},
	// 		}},
	// 	},
	// 	{
	// 		Category: to.Ptr("Extended infrastructure"),
	// 		Endpoints: []*armdatabricks.EndpointDependency{
	// 			{
	// 				EndpointDetails: []*armdatabricks.EndpointDetail{
	// 					{
	// 						IPAddress: to.Ptr("44.44.44.44/44"),
	// 						Port: to.Ptr[int32](123),
	// 				}},
	// 		}},
	// 	},
	// 	{
	// 		Category: to.Ptr("Azure Storage"),
	// 		Endpoints: []*armdatabricks.EndpointDependency{
	// 			{
	// 				DomainName: to.Ptr("xxx.blob.core.windows.net"),
	// 				EndpointDetails: []*armdatabricks.EndpointDetail{
	// 					{
	// 						Port: to.Ptr[int32](123),
	// 				}},
	// 			},
	// 			{
	// 				DomainName: to.Ptr("yyy.blob.core.windows.net"),
	// 				EndpointDetails: []*armdatabricks.EndpointDetail{
	// 					{
	// 						Port: to.Ptr[int32](123),
	// 				}},
	// 			},
	// 			{
	// 				DomainName: to.Ptr("zzz.blob.core.windows.net"),
	// 				EndpointDetails: []*armdatabricks.EndpointDetail{
	// 					{
	// 						Port: to.Ptr[int32](123),
	// 				}},
	// 		}},
	// 	},
	// 	{
	// 		Category: to.Ptr("Azure My SQL"),
	// 		Endpoints: []*armdatabricks.EndpointDependency{
	// 			{
	// 				DomainName: to.Ptr("xxx.mysql.database.azure.com"),
	// 				EndpointDetails: []*armdatabricks.EndpointDetail{
	// 					{
	// 						Port: to.Ptr[int32](1234),
	// 				}},
	// 			},
	// 			{
	// 				DomainName: to.Ptr("yyy.mysql.database.azure.com"),
	// 				EndpointDetails: []*armdatabricks.EndpointDetail{
	// 					{
	// 						Port: to.Ptr[int32](1234),
	// 				}},
	// 		}},
	// 	},
	// 	{
	// 		Category: to.Ptr("Azure Servicebus"),
	// 		Endpoints: []*armdatabricks.EndpointDependency{
	// 			{
	// 				DomainName: to.Ptr("xxx.servicebus.windows.net"),
	// 				EndpointDetails: []*armdatabricks.EndpointDetail{
	// 					{
	// 						Port: to.Ptr[int32](1234),
	// 				}},
	// 		}},
	// }}
}
Output:

type OutboundNetworkDependenciesEndpointsClientListOptions added in v0.3.0

type OutboundNetworkDependenciesEndpointsClientListOptions struct {
}

OutboundNetworkDependenciesEndpointsClientListOptions contains the optional parameters for the OutboundNetworkDependenciesEndpointsClient.List method.

type OutboundNetworkDependenciesEndpointsClientListResponse added in v0.3.0

type OutboundNetworkDependenciesEndpointsClientListResponse struct {
	// Collection of outbound network dependency endpoints
	OutboundEnvironmentEndpointArray []*OutboundEnvironmentEndpoint
}

OutboundNetworkDependenciesEndpointsClientListResponse contains the response from method OutboundNetworkDependenciesEndpointsClient.List.

type PeeringProvisioningState

type PeeringProvisioningState string

PeeringProvisioningState - The current provisioning state.

const (
	PeeringProvisioningStateDeleting  PeeringProvisioningState = "Deleting"
	PeeringProvisioningStateFailed    PeeringProvisioningState = "Failed"
	PeeringProvisioningStateSucceeded PeeringProvisioningState = "Succeeded"
	PeeringProvisioningStateUpdating  PeeringProvisioningState = "Updating"
)

func PossiblePeeringProvisioningStateValues

func PossiblePeeringProvisioningStateValues() []PeeringProvisioningState

PossiblePeeringProvisioningStateValues returns the possible values for the PeeringProvisioningState const type.

type PeeringState

type PeeringState string

PeeringState - The status of the virtual network peering.

const (
	PeeringStateConnected    PeeringState = "Connected"
	PeeringStateDisconnected PeeringState = "Disconnected"
	PeeringStateInitiated    PeeringState = "Initiated"
)

func PossiblePeeringStateValues

func PossiblePeeringStateValues() []PeeringState

PossiblePeeringStateValues returns the possible values for the PeeringState const type.

type PrivateEndpoint

type PrivateEndpoint struct {
	// READ-ONLY; The resource identifier.
	ID *string
}

PrivateEndpoint - The private endpoint property of a private endpoint connection

func (PrivateEndpoint) MarshalJSON added in v0.7.0

func (p PrivateEndpoint) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PrivateEndpoint.

func (*PrivateEndpoint) UnmarshalJSON added in v0.7.0

func (p *PrivateEndpoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PrivateEndpoint.

type PrivateEndpointConnection

type PrivateEndpointConnection struct {
	// REQUIRED; The private endpoint connection properties.
	Properties *PrivateEndpointConnectionProperties

	// READ-ONLY; The resource identifier.
	ID *string

	// READ-ONLY; The resource name.
	Name *string

	// READ-ONLY; The resource type.
	Type *string
}

PrivateEndpointConnection - The private endpoint connection of a workspace

func (PrivateEndpointConnection) MarshalJSON added in v0.7.0

func (p PrivateEndpointConnection) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PrivateEndpointConnection.

func (*PrivateEndpointConnection) UnmarshalJSON added in v0.7.0

func (p *PrivateEndpointConnection) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PrivateEndpointConnection.

type PrivateEndpointConnectionProperties

type PrivateEndpointConnectionProperties struct {
	// REQUIRED; Private endpoint connection state
	PrivateLinkServiceConnectionState *PrivateLinkServiceConnectionState

	// GroupIds from the private link service resource.
	GroupIDs []*string

	// Private endpoint
	PrivateEndpoint *PrivateEndpoint

	// READ-ONLY; Provisioning state of the private endpoint connection.
	ProvisioningState *PrivateEndpointConnectionProvisioningState
}

PrivateEndpointConnectionProperties - The properties of a private endpoint connection

func (PrivateEndpointConnectionProperties) MarshalJSON added in v0.7.0

func (p PrivateEndpointConnectionProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PrivateEndpointConnectionProperties.

func (*PrivateEndpointConnectionProperties) UnmarshalJSON added in v0.7.0

func (p *PrivateEndpointConnectionProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PrivateEndpointConnectionProperties.

type PrivateEndpointConnectionProvisioningState

type PrivateEndpointConnectionProvisioningState string

PrivateEndpointConnectionProvisioningState - The current provisioning state.

const (
	PrivateEndpointConnectionProvisioningStateCreating  PrivateEndpointConnectionProvisioningState = "Creating"
	PrivateEndpointConnectionProvisioningStateDeleting  PrivateEndpointConnectionProvisioningState = "Deleting"
	PrivateEndpointConnectionProvisioningStateFailed    PrivateEndpointConnectionProvisioningState = "Failed"
	PrivateEndpointConnectionProvisioningStateSucceeded PrivateEndpointConnectionProvisioningState = "Succeeded"
	PrivateEndpointConnectionProvisioningStateUpdating  PrivateEndpointConnectionProvisioningState = "Updating"
)

func PossiblePrivateEndpointConnectionProvisioningStateValues

func PossiblePrivateEndpointConnectionProvisioningStateValues() []PrivateEndpointConnectionProvisioningState

PossiblePrivateEndpointConnectionProvisioningStateValues returns the possible values for the PrivateEndpointConnectionProvisioningState const type.

type PrivateEndpointConnectionsClient

type PrivateEndpointConnectionsClient struct {
	// contains filtered or unexported fields
}

PrivateEndpointConnectionsClient contains the methods for the PrivateEndpointConnections group. Don't use this type directly, use NewPrivateEndpointConnectionsClient() instead.

func NewPrivateEndpointConnectionsClient

func NewPrivateEndpointConnectionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*PrivateEndpointConnectionsClient, error)

NewPrivateEndpointConnectionsClient creates a new instance of PrivateEndpointConnectionsClient with the specified values.

  • subscriptionID - The ID of the target subscription.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*PrivateEndpointConnectionsClient) BeginCreate

func (client *PrivateEndpointConnectionsClient) BeginCreate(ctx context.Context, resourceGroupName string, workspaceName string, privateEndpointConnectionName string, privateEndpointConnection PrivateEndpointConnection, options *PrivateEndpointConnectionsClientBeginCreateOptions) (*runtime.Poller[PrivateEndpointConnectionsClientCreateResponse], error)

BeginCreate - Update the status of a private endpoint connection with the specified name If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • privateEndpointConnectionName - The name of the private endpoint connection
  • privateEndpointConnection - The private endpoint connection with updated properties
  • options - PrivateEndpointConnectionsClientBeginCreateOptions contains the optional parameters for the PrivateEndpointConnectionsClient.BeginCreate method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/PrivateEndpointConnectionsUpdate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewPrivateEndpointConnectionsClient().BeginCreate(ctx, "myResourceGroup", "myWorkspace", "myWorkspace.23456789-1111-1111-1111-111111111111", armdatabricks.PrivateEndpointConnection{
		Properties: &armdatabricks.PrivateEndpointConnectionProperties{
			PrivateLinkServiceConnectionState: &armdatabricks.PrivateLinkServiceConnectionState{
				Description: to.Ptr("Approved by databricksadmin@contoso.com"),
				Status:      to.Ptr(armdatabricks.PrivateLinkServiceConnectionStatusApproved),
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.PrivateEndpointConnection = armdatabricks.PrivateEndpointConnection{
	// 	Name: to.Ptr("myWorkspace.23456789-1111-1111-1111-111111111111"),
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces/PrivateEndpointConnections"),
	// 	ID: to.Ptr("/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Databricks/workspaces/myWorkspace/PrivateEndpointConnections/myWorkspace.23456789-1111-1111-1111-111111111111"),
	// 	Properties: &armdatabricks.PrivateEndpointConnectionProperties{
	// 		PrivateEndpoint: &armdatabricks.PrivateEndpoint{
	// 			ID: to.Ptr("/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"),
	// 		},
	// 		PrivateLinkServiceConnectionState: &armdatabricks.PrivateLinkServiceConnectionState{
	// 			Description: to.Ptr("Approved by databricksadmin@contoso.com"),
	// 			ActionsRequired: to.Ptr("None"),
	// 			Status: to.Ptr(armdatabricks.PrivateLinkServiceConnectionStatusApproved),
	// 		},
	// 		ProvisioningState: to.Ptr(armdatabricks.PrivateEndpointConnectionProvisioningStateSucceeded),
	// 	},
	// }
}
Output:

func (*PrivateEndpointConnectionsClient) BeginDelete

func (client *PrivateEndpointConnectionsClient) BeginDelete(ctx context.Context, resourceGroupName string, workspaceName string, privateEndpointConnectionName string, options *PrivateEndpointConnectionsClientBeginDeleteOptions) (*runtime.Poller[PrivateEndpointConnectionsClientDeleteResponse], error)

BeginDelete - Remove private endpoint connection with the specified name If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • privateEndpointConnectionName - The name of the private endpoint connection
  • options - PrivateEndpointConnectionsClientBeginDeleteOptions contains the optional parameters for the PrivateEndpointConnectionsClient.BeginDelete method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/PrivateEndpointConnectionsDelete.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewPrivateEndpointConnectionsClient().BeginDelete(ctx, "myResourceGroup", "myWorkspace", "myWorkspace.23456789-1111-1111-1111-111111111111", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

func (*PrivateEndpointConnectionsClient) Get

func (client *PrivateEndpointConnectionsClient) Get(ctx context.Context, resourceGroupName string, workspaceName string, privateEndpointConnectionName string, options *PrivateEndpointConnectionsClientGetOptions) (PrivateEndpointConnectionsClientGetResponse, error)

Get - Get a private endpoint connection properties for a workspace If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • privateEndpointConnectionName - The name of the private endpoint connection
  • options - PrivateEndpointConnectionsClientGetOptions contains the optional parameters for the PrivateEndpointConnectionsClient.Get method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/PrivateEndpointConnectionsGet.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewPrivateEndpointConnectionsClient().Get(ctx, "myResourceGroup", "myWorkspace", "myWorkspace.23456789-1111-1111-1111-111111111111", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.PrivateEndpointConnection = armdatabricks.PrivateEndpointConnection{
	// 	Name: to.Ptr("myWorkspace.23456789-1111-1111-1111-111111111111"),
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces/PrivateEndpointConnections"),
	// 	ID: to.Ptr("/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Databricks/workspaces/myWorkspace/PrivateEndpointConnections/myWorkspace.23456789-1111-1111-1111-111111111111"),
	// 	Properties: &armdatabricks.PrivateEndpointConnectionProperties{
	// 		PrivateEndpoint: &armdatabricks.PrivateEndpoint{
	// 			ID: to.Ptr("/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"),
	// 		},
	// 		PrivateLinkServiceConnectionState: &armdatabricks.PrivateLinkServiceConnectionState{
	// 			Description: to.Ptr("Please approve my request!"),
	// 			ActionsRequired: to.Ptr("None"),
	// 			Status: to.Ptr(armdatabricks.PrivateLinkServiceConnectionStatusPending),
	// 		},
	// 		ProvisioningState: to.Ptr(armdatabricks.PrivateEndpointConnectionProvisioningStateSucceeded),
	// 	},
	// }
}
Output:

func (*PrivateEndpointConnectionsClient) NewListPager added in v0.5.0

NewListPager - List private endpoint connections of the workspace

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • options - PrivateEndpointConnectionsClientListOptions contains the optional parameters for the PrivateEndpointConnectionsClient.NewListPager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/ListPrivateEndpointConnections.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewPrivateEndpointConnectionsClient().NewListPager("myResourceGroup", "myWorkspace", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.PrivateEndpointConnectionsList = armdatabricks.PrivateEndpointConnectionsList{
		// 	Value: []*armdatabricks.PrivateEndpointConnection{
		// 		{
		// 			Name: to.Ptr("myWorkspace.23456789-1111-1111-1111-111111111111"),
		// 			Type: to.Ptr("Microsoft.Databricks/workspaces/PrivateEndpointConnections"),
		// 			ID: to.Ptr("/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Databricks/workspaces/myWorkspace/PrivateEndpointConnections/myWorkspace.23456789-1111-1111-1111-111111111111"),
		// 			Properties: &armdatabricks.PrivateEndpointConnectionProperties{
		// 				PrivateEndpoint: &armdatabricks.PrivateEndpoint{
		// 					ID: to.Ptr("/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"),
		// 				},
		// 				PrivateLinkServiceConnectionState: &armdatabricks.PrivateLinkServiceConnectionState{
		// 					Description: to.Ptr("Approved by johndoe@company.com"),
		// 					ActionsRequired: to.Ptr("None"),
		// 					Status: to.Ptr(armdatabricks.PrivateLinkServiceConnectionStatusApproved),
		// 				},
		// 				ProvisioningState: to.Ptr(armdatabricks.PrivateEndpointConnectionProvisioningStateSucceeded),
		// 			},
		// 	}},
		// }
	}
}
Output:

type PrivateEndpointConnectionsClientBeginCreateOptions added in v0.3.0

type PrivateEndpointConnectionsClientBeginCreateOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

PrivateEndpointConnectionsClientBeginCreateOptions contains the optional parameters for the PrivateEndpointConnectionsClient.BeginCreate method.

type PrivateEndpointConnectionsClientBeginDeleteOptions added in v0.3.0

type PrivateEndpointConnectionsClientBeginDeleteOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

PrivateEndpointConnectionsClientBeginDeleteOptions contains the optional parameters for the PrivateEndpointConnectionsClient.BeginDelete method.

type PrivateEndpointConnectionsClientCreateResponse added in v0.3.0

type PrivateEndpointConnectionsClientCreateResponse struct {
	// The private endpoint connection of a workspace
	PrivateEndpointConnection
}

PrivateEndpointConnectionsClientCreateResponse contains the response from method PrivateEndpointConnectionsClient.BeginCreate.

type PrivateEndpointConnectionsClientDeleteResponse added in v0.3.0

type PrivateEndpointConnectionsClientDeleteResponse struct {
}

PrivateEndpointConnectionsClientDeleteResponse contains the response from method PrivateEndpointConnectionsClient.BeginDelete.

type PrivateEndpointConnectionsClientGetOptions added in v0.3.0

type PrivateEndpointConnectionsClientGetOptions struct {
}

PrivateEndpointConnectionsClientGetOptions contains the optional parameters for the PrivateEndpointConnectionsClient.Get method.

type PrivateEndpointConnectionsClientGetResponse added in v0.3.0

type PrivateEndpointConnectionsClientGetResponse struct {
	// The private endpoint connection of a workspace
	PrivateEndpointConnection
}

PrivateEndpointConnectionsClientGetResponse contains the response from method PrivateEndpointConnectionsClient.Get.

type PrivateEndpointConnectionsClientListOptions added in v0.3.0

type PrivateEndpointConnectionsClientListOptions struct {
}

PrivateEndpointConnectionsClientListOptions contains the optional parameters for the PrivateEndpointConnectionsClient.NewListPager method.

type PrivateEndpointConnectionsClientListResponse added in v0.3.0

type PrivateEndpointConnectionsClientListResponse struct {
	// List of private link connections.
	PrivateEndpointConnectionsList
}

PrivateEndpointConnectionsClientListResponse contains the response from method PrivateEndpointConnectionsClient.NewListPager.

type PrivateEndpointConnectionsList

type PrivateEndpointConnectionsList struct {
	// The URL to get the next set of endpoint connections.
	NextLink *string

	// The list of returned private endpoint connection.
	Value []*PrivateEndpointConnection
}

PrivateEndpointConnectionsList - List of private link connections.

func (PrivateEndpointConnectionsList) MarshalJSON

func (p PrivateEndpointConnectionsList) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PrivateEndpointConnectionsList.

func (*PrivateEndpointConnectionsList) UnmarshalJSON added in v0.7.0

func (p *PrivateEndpointConnectionsList) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PrivateEndpointConnectionsList.

type PrivateLinkResourcesClient

type PrivateLinkResourcesClient struct {
	// contains filtered or unexported fields
}

PrivateLinkResourcesClient contains the methods for the PrivateLinkResources group. Don't use this type directly, use NewPrivateLinkResourcesClient() instead.

func NewPrivateLinkResourcesClient

func NewPrivateLinkResourcesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*PrivateLinkResourcesClient, error)

NewPrivateLinkResourcesClient creates a new instance of PrivateLinkResourcesClient with the specified values.

  • subscriptionID - The ID of the target subscription.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*PrivateLinkResourcesClient) Get

Get - Get the specified private link resource for the given group id (sub-resource) If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • groupID - The name of the private link resource
  • options - PrivateLinkResourcesClientGetOptions contains the optional parameters for the PrivateLinkResourcesClient.Get method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/PrivateLinkResourcesGet.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewPrivateLinkResourcesClient().Get(ctx, "myResourceGroup", "myWorkspace", "databricks_ui_api", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.GroupIDInformation = armdatabricks.GroupIDInformation{
	// 	Name: to.Ptr("databricks_ui_api"),
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces/PrivateLinkResources"),
	// 	ID: to.Ptr("/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Databricks/workspaces/myWorkspace/PrivateLinkResources/databricks_ui_api"),
	// 	Properties: &armdatabricks.GroupIDInformationProperties{
	// 		GroupID: to.Ptr("databricks_ui_api"),
	// 		RequiredMembers: []*string{
	// 			to.Ptr("databricks_ui_api")},
	// 			RequiredZoneNames: []*string{
	// 				to.Ptr("privatelink.azuredatabricks.net")},
	// 			},
	// 		}
}
Output:

func (*PrivateLinkResourcesClient) NewListPager added in v0.5.0

NewListPager - List private link resources for a given workspace

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • options - PrivateLinkResourcesClientListOptions contains the optional parameters for the PrivateLinkResourcesClient.NewListPager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/ListPrivateLinkResources.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewPrivateLinkResourcesClient().NewListPager("myResourceGroup", "myWorkspace", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.PrivateLinkResourcesList = armdatabricks.PrivateLinkResourcesList{
		// 	Value: []*armdatabricks.GroupIDInformation{
		// 		{
		// 			Name: to.Ptr("databricks_ui_api"),
		// 			Type: to.Ptr("Microsoft.Databricks/workspaces/PrivateLinkResources"),
		// 			ID: to.Ptr("/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Databricks/workspaces/myWorkspace/PrivateLinkResources/databricks_ui_api"),
		// 			Properties: &armdatabricks.GroupIDInformationProperties{
		// 				GroupID: to.Ptr("databricks_ui_api"),
		// 				RequiredMembers: []*string{
		// 					to.Ptr("databricks_ui_api")},
		// 					RequiredZoneNames: []*string{
		// 						to.Ptr("privatelink.azuredatabricks.net")},
		// 					},
		// 			}},
		// 		}
	}
}
Output:

type PrivateLinkResourcesClientGetOptions added in v0.3.0

type PrivateLinkResourcesClientGetOptions struct {
}

PrivateLinkResourcesClientGetOptions contains the optional parameters for the PrivateLinkResourcesClient.Get method.

type PrivateLinkResourcesClientGetResponse added in v0.3.0

type PrivateLinkResourcesClientGetResponse struct {
	// The group information for creating a private endpoint on a workspace
	GroupIDInformation
}

PrivateLinkResourcesClientGetResponse contains the response from method PrivateLinkResourcesClient.Get.

type PrivateLinkResourcesClientListOptions added in v0.3.0

type PrivateLinkResourcesClientListOptions struct {
}

PrivateLinkResourcesClientListOptions contains the optional parameters for the PrivateLinkResourcesClient.NewListPager method.

type PrivateLinkResourcesClientListResponse added in v0.3.0

type PrivateLinkResourcesClientListResponse struct {
	// The available private link resources for a workspace
	PrivateLinkResourcesList
}

PrivateLinkResourcesClientListResponse contains the response from method PrivateLinkResourcesClient.NewListPager.

type PrivateLinkResourcesList

type PrivateLinkResourcesList struct {
	// The URL to get the next set of private link resources.
	NextLink *string

	// The list of available private link resources for a workspace
	Value []*GroupIDInformation
}

PrivateLinkResourcesList - The available private link resources for a workspace

func (PrivateLinkResourcesList) MarshalJSON

func (p PrivateLinkResourcesList) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PrivateLinkResourcesList.

func (*PrivateLinkResourcesList) UnmarshalJSON added in v0.7.0

func (p *PrivateLinkResourcesList) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PrivateLinkResourcesList.

type PrivateLinkServiceConnectionState

type PrivateLinkServiceConnectionState struct {
	// REQUIRED; The status of a private endpoint connection
	Status *PrivateLinkServiceConnectionStatus

	// Actions required for a private endpoint connection
	ActionsRequired *string

	// The description for the current state of a private endpoint connection
	Description *string
}

PrivateLinkServiceConnectionState - The current state of a private endpoint connection

func (PrivateLinkServiceConnectionState) MarshalJSON added in v0.7.0

func (p PrivateLinkServiceConnectionState) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PrivateLinkServiceConnectionState.

func (*PrivateLinkServiceConnectionState) UnmarshalJSON added in v0.7.0

func (p *PrivateLinkServiceConnectionState) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PrivateLinkServiceConnectionState.

type PrivateLinkServiceConnectionStatus

type PrivateLinkServiceConnectionStatus string

PrivateLinkServiceConnectionStatus - The status of a private endpoint connection

const (
	PrivateLinkServiceConnectionStatusApproved     PrivateLinkServiceConnectionStatus = "Approved"
	PrivateLinkServiceConnectionStatusDisconnected PrivateLinkServiceConnectionStatus = "Disconnected"
	PrivateLinkServiceConnectionStatusPending      PrivateLinkServiceConnectionStatus = "Pending"
	PrivateLinkServiceConnectionStatusRejected     PrivateLinkServiceConnectionStatus = "Rejected"
)

func PossiblePrivateLinkServiceConnectionStatusValues

func PossiblePrivateLinkServiceConnectionStatusValues() []PrivateLinkServiceConnectionStatus

PossiblePrivateLinkServiceConnectionStatusValues returns the possible values for the PrivateLinkServiceConnectionStatus const type.

type ProvisioningState

type ProvisioningState string

ProvisioningState - Provisioning status of the workspace.

const (
	ProvisioningStateAccepted  ProvisioningState = "Accepted"
	ProvisioningStateCanceled  ProvisioningState = "Canceled"
	ProvisioningStateCreated   ProvisioningState = "Created"
	ProvisioningStateCreating  ProvisioningState = "Creating"
	ProvisioningStateDeleted   ProvisioningState = "Deleted"
	ProvisioningStateDeleting  ProvisioningState = "Deleting"
	ProvisioningStateFailed    ProvisioningState = "Failed"
	ProvisioningStateReady     ProvisioningState = "Ready"
	ProvisioningStateRunning   ProvisioningState = "Running"
	ProvisioningStateSucceeded ProvisioningState = "Succeeded"
	ProvisioningStateUpdating  ProvisioningState = "Updating"
)

func PossibleProvisioningStateValues

func PossibleProvisioningStateValues() []ProvisioningState

PossibleProvisioningStateValues returns the possible values for the ProvisioningState const type.

type PublicNetworkAccess

type PublicNetworkAccess string

PublicNetworkAccess - The network access type for accessing workspace. Set value to disabled to access workspace only via private link.

const (
	PublicNetworkAccessDisabled PublicNetworkAccess = "Disabled"
	PublicNetworkAccessEnabled  PublicNetworkAccess = "Enabled"
)

func PossiblePublicNetworkAccessValues

func PossiblePublicNetworkAccessValues() []PublicNetworkAccess

PossiblePublicNetworkAccessValues returns the possible values for the PublicNetworkAccess const type.

type RequiredNsgRules

type RequiredNsgRules string

RequiredNsgRules - Gets or sets a value indicating whether data plane (clusters) to control plane communication happen over private endpoint. Supported values are 'AllRules' and 'NoAzureDatabricksRules'. 'NoAzureServiceRules' value is for internal use only.

const (
	RequiredNsgRulesAllRules               RequiredNsgRules = "AllRules"
	RequiredNsgRulesNoAzureDatabricksRules RequiredNsgRules = "NoAzureDatabricksRules"
	RequiredNsgRulesNoAzureServiceRules    RequiredNsgRules = "NoAzureServiceRules"
)

func PossibleRequiredNsgRulesValues

func PossibleRequiredNsgRulesValues() []RequiredNsgRules

PossibleRequiredNsgRulesValues returns the possible values for the RequiredNsgRules const type.

type SKU

type SKU struct {
	// REQUIRED; The SKU name.
	Name *string

	// The SKU tier.
	Tier *string
}

SKU for the resource.

func (SKU) MarshalJSON added in v0.7.0

func (s SKU) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SKU.

func (*SKU) UnmarshalJSON added in v0.7.0

func (s *SKU) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SKU.

type SystemData

type SystemData struct {
	// The timestamp of resource creation (UTC).
	CreatedAt *time.Time

	// The identity that created the resource.
	CreatedBy *string

	// The type of identity that created the resource.
	CreatedByType *CreatedByType

	// The timestamp of resource last modification (UTC)
	LastModifiedAt *time.Time

	// The identity that last modified the resource.
	LastModifiedBy *string

	// The type of identity that last modified the resource.
	LastModifiedByType *CreatedByType
}

SystemData - Metadata pertaining to creation and last modification of the resource.

func (SystemData) MarshalJSON

func (s SystemData) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SystemData.

func (*SystemData) UnmarshalJSON

func (s *SystemData) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SystemData.

type UserAssignedIdentity added in v1.0.0

type UserAssignedIdentity struct {
	// READ-ONLY; The client ID of the assigned identity.
	ClientID *string

	// READ-ONLY; The principal ID of the assigned identity.
	PrincipalID *string
}

UserAssignedIdentity - User assigned identity properties

func (UserAssignedIdentity) MarshalJSON added in v1.0.0

func (u UserAssignedIdentity) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type UserAssignedIdentity.

func (*UserAssignedIdentity) UnmarshalJSON added in v1.0.0

func (u *UserAssignedIdentity) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type UserAssignedIdentity.

type VNetPeeringClient

type VNetPeeringClient struct {
	// contains filtered or unexported fields
}

VNetPeeringClient contains the methods for the VNetPeering group. Don't use this type directly, use NewVNetPeeringClient() instead.

func NewVNetPeeringClient

func NewVNetPeeringClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*VNetPeeringClient, error)

NewVNetPeeringClient creates a new instance of VNetPeeringClient with the specified values.

  • subscriptionID - The ID of the target subscription.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*VNetPeeringClient) BeginCreateOrUpdate

func (client *VNetPeeringClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, workspaceName string, peeringName string, virtualNetworkPeeringParameters VirtualNetworkPeering, options *VNetPeeringClientBeginCreateOrUpdateOptions) (*runtime.Poller[VNetPeeringClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates vNet Peering for workspace. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • peeringName - The name of the workspace vNet peering.
  • virtualNetworkPeeringParameters - Parameters supplied to the create workspace vNet Peering.
  • options - VNetPeeringClientBeginCreateOrUpdateOptions contains the optional parameters for the VNetPeeringClient.BeginCreateOrUpdate method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceVirtualNetworkPeeringCreateOrUpdate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewVNetPeeringClient().BeginCreateOrUpdate(ctx, "rg", "myWorkspace", "vNetPeeringTest", armdatabricks.VirtualNetworkPeering{
		Properties: &armdatabricks.VirtualNetworkPeeringPropertiesFormat{
			AllowForwardedTraffic:     to.Ptr(false),
			AllowGatewayTransit:       to.Ptr(false),
			AllowVirtualNetworkAccess: to.Ptr(true),
			RemoteVirtualNetwork: &armdatabricks.VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork{
				ID: to.Ptr("/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Network/virtualNetworks/subramanvnet"),
			},
			UseRemoteGateways: to.Ptr(false),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.VirtualNetworkPeering = armdatabricks.VirtualNetworkPeering{
	// 	Name: to.Ptr("vNetPeeringTest"),
	// 	ID: to.Ptr("/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Databricks/workspaces/adbworkspace/virtualNetworkPeerings/vNetPeeringTest"),
	// 	Properties: &armdatabricks.VirtualNetworkPeeringPropertiesFormat{
	// 		AllowForwardedTraffic: to.Ptr(false),
	// 		AllowGatewayTransit: to.Ptr(false),
	// 		AllowVirtualNetworkAccess: to.Ptr(true),
	// 		DatabricksAddressSpace: &armdatabricks.AddressSpace{
	// 			AddressPrefixes: []*string{
	// 				to.Ptr("10.139.0.0/16")},
	// 			},
	// 			DatabricksVirtualNetwork: &armdatabricks.VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork{
	// 				ID: to.Ptr("/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/databricks-rg-adbworkspace-2jsxhmzoyooxm/providers/Microsoft.Network/virtualNetworks/workers-vnet"),
	// 			},
	// 			PeeringState: to.Ptr(armdatabricks.PeeringStateInitiated),
	// 			ProvisioningState: to.Ptr(armdatabricks.PeeringProvisioningStateSucceeded),
	// 			RemoteAddressSpace: &armdatabricks.AddressSpace{
	// 				AddressPrefixes: []*string{
	// 					to.Ptr("10.203.0.0/16")},
	// 				},
	// 				RemoteVirtualNetwork: &armdatabricks.VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork{
	// 					ID: to.Ptr("/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Network/virtualNetworks/subramanvnet"),
	// 				},
	// 				UseRemoteGateways: to.Ptr(false),
	// 			},
	// 		}
}
Output:

func (*VNetPeeringClient) BeginDelete

func (client *VNetPeeringClient) BeginDelete(ctx context.Context, resourceGroupName string, workspaceName string, peeringName string, options *VNetPeeringClientBeginDeleteOptions) (*runtime.Poller[VNetPeeringClientDeleteResponse], error)

BeginDelete - Deletes the workspace vNetPeering. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • peeringName - The name of the workspace vNet peering.
  • options - VNetPeeringClientBeginDeleteOptions contains the optional parameters for the VNetPeeringClient.BeginDelete method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceVirtualNetworkPeeringDelete.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewVNetPeeringClient().BeginDelete(ctx, "rg", "myWorkspace", "vNetPeering", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

func (*VNetPeeringClient) Get

func (client *VNetPeeringClient) Get(ctx context.Context, resourceGroupName string, workspaceName string, peeringName string, options *VNetPeeringClientGetOptions) (VNetPeeringClientGetResponse, error)

Get - Gets the workspace vNet Peering. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • peeringName - The name of the workspace vNet peering.
  • options - VNetPeeringClientGetOptions contains the optional parameters for the VNetPeeringClient.Get method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceVirtualNetPeeringGet.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewVNetPeeringClient().Get(ctx, "rg", "myWorkspace", "vNetPeering", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.VirtualNetworkPeering = armdatabricks.VirtualNetworkPeering{
	// 	Name: to.Ptr("vNetPeeringTest"),
	// 	ID: to.Ptr("/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Databricks/workspaces/adbworkspace/virtualNetworkPeerings/vNetPeeringTest"),
	// 	Properties: &armdatabricks.VirtualNetworkPeeringPropertiesFormat{
	// 		AllowForwardedTraffic: to.Ptr(false),
	// 		AllowGatewayTransit: to.Ptr(false),
	// 		AllowVirtualNetworkAccess: to.Ptr(true),
	// 		DatabricksAddressSpace: &armdatabricks.AddressSpace{
	// 			AddressPrefixes: []*string{
	// 				to.Ptr("10.139.0.0/16")},
	// 			},
	// 			DatabricksVirtualNetwork: &armdatabricks.VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork{
	// 				ID: to.Ptr("/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/databricks-rg-adbworkspace-2jsxhmzoyooxm/providers/Microsoft.Network/virtualNetworks/workers-vnet"),
	// 			},
	// 			PeeringState: to.Ptr(armdatabricks.PeeringStateInitiated),
	// 			ProvisioningState: to.Ptr(armdatabricks.PeeringProvisioningStateSucceeded),
	// 			RemoteAddressSpace: &armdatabricks.AddressSpace{
	// 				AddressPrefixes: []*string{
	// 					to.Ptr("10.203.0.0/16")},
	// 				},
	// 				RemoteVirtualNetwork: &armdatabricks.VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork{
	// 					ID: to.Ptr("/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Network/virtualNetworks/subramanvnet"),
	// 				},
	// 				UseRemoteGateways: to.Ptr(false),
	// 			},
	// 		}
}
Output:

func (*VNetPeeringClient) NewListByWorkspacePager added in v0.5.0

func (client *VNetPeeringClient) NewListByWorkspacePager(resourceGroupName string, workspaceName string, options *VNetPeeringClientListByWorkspaceOptions) *runtime.Pager[VNetPeeringClientListByWorkspaceResponse]

NewListByWorkspacePager - Lists the workspace vNet Peerings.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • options - VNetPeeringClientListByWorkspaceOptions contains the optional parameters for the VNetPeeringClient.NewListByWorkspacePager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceVirtualNetPeeringList.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewVNetPeeringClient().NewListByWorkspacePager("rg", "myWorkspace", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.VirtualNetworkPeeringList = armdatabricks.VirtualNetworkPeeringList{
		// 	Value: []*armdatabricks.VirtualNetworkPeering{
		// 		{
		// 			Name: to.Ptr("vNetPeeringTest"),
		// 			ID: to.Ptr("/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Databricks/workspaces/adbworkspace/virtualNetworkPeerings/vNetPeeringTest"),
		// 			Properties: &armdatabricks.VirtualNetworkPeeringPropertiesFormat{
		// 				AllowForwardedTraffic: to.Ptr(false),
		// 				AllowGatewayTransit: to.Ptr(false),
		// 				AllowVirtualNetworkAccess: to.Ptr(true),
		// 				DatabricksAddressSpace: &armdatabricks.AddressSpace{
		// 					AddressPrefixes: []*string{
		// 						to.Ptr("10.139.0.0/16")},
		// 					},
		// 					DatabricksVirtualNetwork: &armdatabricks.VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork{
		// 						ID: to.Ptr("/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/databricks-rg-adbworkspace-2jsxhmzoyooxm/providers/Microsoft.Network/virtualNetworks/workers-vnet"),
		// 					},
		// 					PeeringState: to.Ptr(armdatabricks.PeeringStateInitiated),
		// 					ProvisioningState: to.Ptr(armdatabricks.PeeringProvisioningStateSucceeded),
		// 					RemoteAddressSpace: &armdatabricks.AddressSpace{
		// 						AddressPrefixes: []*string{
		// 							to.Ptr("10.203.0.0/16")},
		// 						},
		// 						RemoteVirtualNetwork: &armdatabricks.VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork{
		// 							ID: to.Ptr("/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Network/virtualNetworks/subramanvnet"),
		// 						},
		// 						UseRemoteGateways: to.Ptr(false),
		// 					},
		// 			}},
		// 		}
	}
}
Output:

type VNetPeeringClientBeginCreateOrUpdateOptions added in v0.3.0

type VNetPeeringClientBeginCreateOrUpdateOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

VNetPeeringClientBeginCreateOrUpdateOptions contains the optional parameters for the VNetPeeringClient.BeginCreateOrUpdate method.

type VNetPeeringClientBeginDeleteOptions added in v0.3.0

type VNetPeeringClientBeginDeleteOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

VNetPeeringClientBeginDeleteOptions contains the optional parameters for the VNetPeeringClient.BeginDelete method.

type VNetPeeringClientCreateOrUpdateResponse added in v0.3.0

type VNetPeeringClientCreateOrUpdateResponse struct {
	// Peerings in a VirtualNetwork resource
	VirtualNetworkPeering
}

VNetPeeringClientCreateOrUpdateResponse contains the response from method VNetPeeringClient.BeginCreateOrUpdate.

type VNetPeeringClientDeleteResponse added in v0.3.0

type VNetPeeringClientDeleteResponse struct {
}

VNetPeeringClientDeleteResponse contains the response from method VNetPeeringClient.BeginDelete.

type VNetPeeringClientGetOptions added in v0.3.0

type VNetPeeringClientGetOptions struct {
}

VNetPeeringClientGetOptions contains the optional parameters for the VNetPeeringClient.Get method.

type VNetPeeringClientGetResponse added in v0.3.0

type VNetPeeringClientGetResponse struct {
	// Peerings in a VirtualNetwork resource
	VirtualNetworkPeering
}

VNetPeeringClientGetResponse contains the response from method VNetPeeringClient.Get.

type VNetPeeringClientListByWorkspaceOptions added in v0.3.0

type VNetPeeringClientListByWorkspaceOptions struct {
}

VNetPeeringClientListByWorkspaceOptions contains the optional parameters for the VNetPeeringClient.NewListByWorkspacePager method.

type VNetPeeringClientListByWorkspaceResponse added in v0.3.0

type VNetPeeringClientListByWorkspaceResponse struct {
	// Gets all virtual network peerings under a workspace.
	VirtualNetworkPeeringList
}

VNetPeeringClientListByWorkspaceResponse contains the response from method VNetPeeringClient.NewListByWorkspacePager.

type VirtualNetworkPeering

type VirtualNetworkPeering struct {
	// REQUIRED; List of properties for vNet Peering
	Properties *VirtualNetworkPeeringPropertiesFormat

	// READ-ONLY; Resource ID.
	ID *string

	// READ-ONLY; Name of the virtual network peering resource
	Name *string

	// READ-ONLY; type of the virtual network peering resource
	Type *string
}

VirtualNetworkPeering - Peerings in a VirtualNetwork resource

func (VirtualNetworkPeering) MarshalJSON added in v0.7.0

func (v VirtualNetworkPeering) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type VirtualNetworkPeering.

func (*VirtualNetworkPeering) UnmarshalJSON added in v0.7.0

func (v *VirtualNetworkPeering) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkPeering.

type VirtualNetworkPeeringList

type VirtualNetworkPeeringList struct {
	// URL to get the next set of virtual network peering list results if there are any.
	NextLink *string

	// List of virtual network peerings on workspace.
	Value []*VirtualNetworkPeering
}

VirtualNetworkPeeringList - Gets all virtual network peerings under a workspace.

func (VirtualNetworkPeeringList) MarshalJSON

func (v VirtualNetworkPeeringList) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type VirtualNetworkPeeringList.

func (*VirtualNetworkPeeringList) UnmarshalJSON added in v0.7.0

func (v *VirtualNetworkPeeringList) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkPeeringList.

type VirtualNetworkPeeringPropertiesFormat

type VirtualNetworkPeeringPropertiesFormat struct {
	// REQUIRED; The remote virtual network should be in the same region. See here to learn more (https://docs.microsoft.com/en-us/azure/databricks/administration-guide/cloud-configurations/azure/vnet-peering).
	RemoteVirtualNetwork *VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork

	// Whether the forwarded traffic from the VMs in the local virtual network will be allowed/disallowed in remote virtual network.
	AllowForwardedTraffic *bool

	// If gateway links can be used in remote virtual networking to link to this virtual network.
	AllowGatewayTransit *bool

	// Whether the VMs in the local virtual network space would be able to access the VMs in remote virtual network space.
	AllowVirtualNetworkAccess *bool

	// The reference to the databricks virtual network address space.
	DatabricksAddressSpace *AddressSpace

	// The remote virtual network should be in the same region. See here to learn more (https://docs.microsoft.com/en-us/azure/databricks/administration-guide/cloud-configurations/azure/vnet-peering).
	DatabricksVirtualNetwork *VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork

	// The reference to the remote virtual network address space.
	RemoteAddressSpace *AddressSpace

	// If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering
	// is also true, virtual network will use gateways of remote virtual network
	// for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a
	// gateway.
	UseRemoteGateways *bool

	// READ-ONLY; The status of the virtual network peering.
	PeeringState *PeeringState

	// READ-ONLY; The provisioning state of the virtual network peering resource.
	ProvisioningState *PeeringProvisioningState
}

VirtualNetworkPeeringPropertiesFormat - Properties of the virtual network peering.

func (VirtualNetworkPeeringPropertiesFormat) MarshalJSON added in v0.7.0

func (v VirtualNetworkPeeringPropertiesFormat) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type VirtualNetworkPeeringPropertiesFormat.

func (*VirtualNetworkPeeringPropertiesFormat) UnmarshalJSON added in v0.7.0

func (v *VirtualNetworkPeeringPropertiesFormat) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkPeeringPropertiesFormat.

type VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork

type VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork struct {
	// The Id of the databricks virtual network.
	ID *string
}

VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork - The remote virtual network should be in the same region. See here to learn more (https://docs.microsoft.com/en-us/azure/databricks/administration-guide/cloud-configurations/azure/vnet-peering).

func (VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork) MarshalJSON added in v0.7.0

MarshalJSON implements the json.Marshaller interface for type VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork.

func (*VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork) UnmarshalJSON added in v0.7.0

UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkPeeringPropertiesFormatDatabricksVirtualNetwork.

type VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork

type VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork struct {
	// The Id of the remote virtual network.
	ID *string
}

VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork - The remote virtual network should be in the same region. See here to learn more (https://docs.microsoft.com/en-us/azure/databricks/administration-guide/cloud-configurations/azure/vnet-peering).

func (VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork) MarshalJSON added in v0.7.0

MarshalJSON implements the json.Marshaller interface for type VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork.

func (*VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork) UnmarshalJSON added in v0.7.0

UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkPeeringPropertiesFormatRemoteVirtualNetwork.

type Workspace

type Workspace struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// REQUIRED; The workspace properties.
	Properties *WorkspaceProperties

	// The SKU of the resource.
	SKU *SKU

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; The system metadata relating to this resource
	SystemData *SystemData

	// READ-ONLY; The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts.
	Type *string
}

Workspace - Information about workspace.

func (Workspace) MarshalJSON

func (w Workspace) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Workspace.

func (*Workspace) UnmarshalJSON added in v0.7.0

func (w *Workspace) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Workspace.

type WorkspaceCustomBooleanParameter

type WorkspaceCustomBooleanParameter struct {
	// REQUIRED; The value which should be used for this field.
	Value *bool

	// READ-ONLY; The type of variable that this is
	Type *CustomParameterType
}

WorkspaceCustomBooleanParameter - The value which should be used for this field.

func (WorkspaceCustomBooleanParameter) MarshalJSON added in v0.7.0

func (w WorkspaceCustomBooleanParameter) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspaceCustomBooleanParameter.

func (*WorkspaceCustomBooleanParameter) UnmarshalJSON added in v0.7.0

func (w *WorkspaceCustomBooleanParameter) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspaceCustomBooleanParameter.

type WorkspaceCustomObjectParameter

type WorkspaceCustomObjectParameter struct {
	// REQUIRED; The value which should be used for this field.
	Value any

	// READ-ONLY; The type of variable that this is
	Type *CustomParameterType
}

WorkspaceCustomObjectParameter - The value which should be used for this field.

func (WorkspaceCustomObjectParameter) MarshalJSON added in v0.7.0

func (w WorkspaceCustomObjectParameter) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspaceCustomObjectParameter.

func (*WorkspaceCustomObjectParameter) UnmarshalJSON added in v0.7.0

func (w *WorkspaceCustomObjectParameter) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspaceCustomObjectParameter.

type WorkspaceCustomParameters

type WorkspaceCustomParameters struct {
	// The ID of a Azure Machine Learning workspace to link with Databricks workspace
	AmlWorkspaceID *WorkspaceCustomStringParameter

	// The name of the Private Subnet within the Virtual Network
	CustomPrivateSubnetName *WorkspaceCustomStringParameter

	// The name of a Public Subnet within the Virtual Network
	CustomPublicSubnetName *WorkspaceCustomStringParameter

	// The ID of a Virtual Network where this Databricks Cluster should be created
	CustomVirtualNetworkID *WorkspaceCustomStringParameter

	// Should the Public IP be Disabled?
	EnableNoPublicIP *WorkspaceCustomBooleanParameter

	// Contains the encryption details for Customer-Managed Key (CMK) enabled workspace.
	Encryption *WorkspaceEncryptionParameter

	// Name of the outbound Load Balancer Backend Pool for Secure Cluster Connectivity (No Public IP).
	LoadBalancerBackendPoolName *WorkspaceCustomStringParameter

	// Resource URI of Outbound Load balancer for Secure Cluster Connectivity (No Public IP) workspace.
	LoadBalancerID *WorkspaceCustomStringParameter

	// Name of the NAT gateway for Secure Cluster Connectivity (No Public IP) workspace subnets.
	NatGatewayName *WorkspaceCustomStringParameter

	// Prepare the workspace for encryption. Enables the Managed Identity for managed storage account.
	PrepareEncryption *WorkspaceCustomBooleanParameter

	// Name of the Public IP for No Public IP workspace with managed vNet.
	PublicIPName *WorkspaceCustomStringParameter

	// A boolean indicating whether or not the DBFS root file system will be enabled with secondary layer of encryption with platform
	// managed keys for data at rest.
	RequireInfrastructureEncryption *WorkspaceCustomBooleanParameter

	// Default DBFS storage account name.
	StorageAccountName *WorkspaceCustomStringParameter

	// Storage account SKU name, ex: StandardGRS, StandardLRS. Refer https://aka.ms/storageskus for valid inputs.
	StorageAccountSKUName *WorkspaceCustomStringParameter

	// Address prefix for Managed virtual network. Default value for this input is 10.139.
	VnetAddressPrefix *WorkspaceCustomStringParameter

	// READ-ONLY; Tags applied to resources under Managed resource group. These can be updated by updating tags at workspace level.
	ResourceTags *WorkspaceCustomObjectParameter
}

WorkspaceCustomParameters - Custom Parameters used for Cluster Creation.

func (WorkspaceCustomParameters) MarshalJSON added in v0.7.0

func (w WorkspaceCustomParameters) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspaceCustomParameters.

func (*WorkspaceCustomParameters) UnmarshalJSON added in v0.7.0

func (w *WorkspaceCustomParameters) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspaceCustomParameters.

type WorkspaceCustomStringParameter

type WorkspaceCustomStringParameter struct {
	// REQUIRED; The value which should be used for this field.
	Value *string

	// READ-ONLY; The type of variable that this is
	Type *CustomParameterType
}

WorkspaceCustomStringParameter - The Value.

func (WorkspaceCustomStringParameter) MarshalJSON added in v0.7.0

func (w WorkspaceCustomStringParameter) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspaceCustomStringParameter.

func (*WorkspaceCustomStringParameter) UnmarshalJSON added in v0.7.0

func (w *WorkspaceCustomStringParameter) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspaceCustomStringParameter.

type WorkspaceEncryptionParameter

type WorkspaceEncryptionParameter struct {
	// The value which should be used for this field.
	Value *Encryption

	// READ-ONLY; The type of variable that this is
	Type *CustomParameterType
}

WorkspaceEncryptionParameter - The object that contains details of encryption used on the workspace.

func (WorkspaceEncryptionParameter) MarshalJSON added in v0.7.0

func (w WorkspaceEncryptionParameter) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspaceEncryptionParameter.

func (*WorkspaceEncryptionParameter) UnmarshalJSON added in v0.7.0

func (w *WorkspaceEncryptionParameter) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspaceEncryptionParameter.

type WorkspaceListResult

type WorkspaceListResult struct {
	// The URL to use for getting the next set of results.
	NextLink *string

	// The array of workspaces.
	Value []*Workspace
}

WorkspaceListResult - List of workspaces.

func (WorkspaceListResult) MarshalJSON

func (w WorkspaceListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspaceListResult.

func (*WorkspaceListResult) UnmarshalJSON added in v0.7.0

func (w *WorkspaceListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspaceListResult.

type WorkspaceProperties

type WorkspaceProperties struct {
	// REQUIRED; The managed resource group Id.
	ManagedResourceGroupID *string

	// The workspace provider authorizations.
	Authorizations []*WorkspaceProviderAuthorization

	// Indicates the Object ID, PUID and Application ID of entity that created the workspace.
	CreatedBy *CreatedBy

	// Encryption properties for databricks workspace
	Encryption *WorkspacePropertiesEncryption

	// The details of Managed Identity of Disk Encryption Set used for Managed Disk Encryption
	ManagedDiskIdentity *ManagedIdentityConfiguration

	// The workspace's custom parameters.
	Parameters *WorkspaceCustomParameters

	// The network access type for accessing workspace. Set value to disabled to access workspace only via private link.
	PublicNetworkAccess *PublicNetworkAccess

	// Gets or sets a value indicating whether data plane (clusters) to control plane communication happen over private endpoint.
	// Supported values are 'AllRules' and 'NoAzureDatabricksRules'.
	// 'NoAzureServiceRules' value is for internal use only.
	RequiredNsgRules *RequiredNsgRules

	// The details of Managed Identity of Storage Account
	StorageAccountIdentity *ManagedIdentityConfiguration

	// The blob URI where the UI definition file is located.
	UIDefinitionURI *string

	// Indicates the Object ID, PUID and Application ID of entity that last updated the workspace.
	UpdatedBy *CreatedBy

	// READ-ONLY; Specifies the date and time when the workspace is created.
	CreatedDateTime *time.Time

	// READ-ONLY; The resource Id of the managed disk encryption set.
	DiskEncryptionSetID *string

	// READ-ONLY; Private endpoint connections created on the workspace
	PrivateEndpointConnections []*PrivateEndpointConnection

	// READ-ONLY; The workspace provisioning state.
	ProvisioningState *ProvisioningState

	// READ-ONLY; The unique identifier of the databricks workspace in databricks control plane.
	WorkspaceID *string

	// READ-ONLY; The workspace URL which is of the format 'adb-{workspaceId}.{random}.azuredatabricks.net'
	WorkspaceURL *string
}

WorkspaceProperties - The workspace properties.

func (WorkspaceProperties) MarshalJSON

func (w WorkspaceProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspaceProperties.

func (*WorkspaceProperties) UnmarshalJSON

func (w *WorkspaceProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspaceProperties.

type WorkspacePropertiesEncryption

type WorkspacePropertiesEncryption struct {
	// REQUIRED; Encryption entities definition for the workspace.
	Entities *EncryptionEntitiesDefinition
}

WorkspacePropertiesEncryption - Encryption properties for databricks workspace

func (WorkspacePropertiesEncryption) MarshalJSON added in v0.7.0

func (w WorkspacePropertiesEncryption) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspacePropertiesEncryption.

func (*WorkspacePropertiesEncryption) UnmarshalJSON added in v0.7.0

func (w *WorkspacePropertiesEncryption) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspacePropertiesEncryption.

type WorkspaceProviderAuthorization

type WorkspaceProviderAuthorization struct {
	// REQUIRED; The provider's principal identifier. This is the identity that the provider will use to call ARM to manage the
	// workspace resources.
	PrincipalID *string

	// REQUIRED; The provider's role definition identifier. This role will define all the permissions that the provider must have
	// on the workspace's container resource group. This role definition cannot have
	// permission to delete the resource group.
	RoleDefinitionID *string
}

WorkspaceProviderAuthorization - The workspace provider authorization.

func (WorkspaceProviderAuthorization) MarshalJSON added in v0.7.0

func (w WorkspaceProviderAuthorization) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspaceProviderAuthorization.

func (*WorkspaceProviderAuthorization) UnmarshalJSON added in v0.7.0

func (w *WorkspaceProviderAuthorization) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspaceProviderAuthorization.

type WorkspaceUpdate

type WorkspaceUpdate struct {
	// Resource tags.
	Tags map[string]*string
}

WorkspaceUpdate - An update to a workspace.

func (WorkspaceUpdate) MarshalJSON

func (w WorkspaceUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspaceUpdate.

func (*WorkspaceUpdate) UnmarshalJSON added in v0.7.0

func (w *WorkspaceUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspaceUpdate.

type WorkspacesClient

type WorkspacesClient struct {
	// contains filtered or unexported fields
}

WorkspacesClient contains the methods for the Workspaces group. Don't use this type directly, use NewWorkspacesClient() instead.

func NewWorkspacesClient

func NewWorkspacesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*WorkspacesClient, error)

NewWorkspacesClient creates a new instance of WorkspacesClient with the specified values.

  • subscriptionID - The ID of the target subscription.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*WorkspacesClient) BeginCreateOrUpdate

func (client *WorkspacesClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, workspaceName string, parameters Workspace, options *WorkspacesClientBeginCreateOrUpdateOptions) (*runtime.Poller[WorkspacesClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates a new workspace. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • parameters - Parameters supplied to the create or update a workspace.
  • options - WorkspacesClientBeginCreateOrUpdateOptions contains the optional parameters for the WorkspacesClient.BeginCreateOrUpdate method.
Example (CreateAWorkspaceWhichIsReadyForCustomerManagedKeyCmkEncryption)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/PrepareEncryption.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewWorkspacesClient().BeginCreateOrUpdate(ctx, "rg", "myWorkspace", armdatabricks.Workspace{
		Location: to.Ptr("westus"),
		Properties: &armdatabricks.WorkspaceProperties{
			ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
			Parameters: &armdatabricks.WorkspaceCustomParameters{
				PrepareEncryption: &armdatabricks.WorkspaceCustomBooleanParameter{
					Value: to.Ptr(true),
				},
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Name: to.Ptr("myWorkspace"),
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		StorageAccountIdentity: &armdatabricks.ManagedIdentityConfiguration{
	// 			Type: to.Ptr("SystemAssigned"),
	// 			PrincipalID: to.Ptr("55555555-5555-5555-5555-555555555555"),
	// 			TenantID: to.Ptr("66666666-6666-6666-6666-666666666666"),
	// 		},
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("5555555555555555"),
	// 		WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

Example (CreateAWorkspaceWithCustomerManagedKeyCmkEncryptionForManagedDisks)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceManagedDiskEncryptionCreate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewWorkspacesClient().BeginCreateOrUpdate(ctx, "rg", "myWorkspace", armdatabricks.Workspace{
		Location: to.Ptr("westus"),
		Properties: &armdatabricks.WorkspaceProperties{
			Encryption: &armdatabricks.WorkspacePropertiesEncryption{
				Entities: &armdatabricks.EncryptionEntitiesDefinition{
					ManagedDisk: &armdatabricks.ManagedDiskEncryption{
						KeySource: to.Ptr(armdatabricks.EncryptionKeySourceMicrosoftKeyvault),
						KeyVaultProperties: &armdatabricks.ManagedDiskEncryptionKeyVaultProperties{
							KeyName:     to.Ptr("test-cmk-key"),
							KeyVaultURI: to.Ptr("https://test-vault-name.vault.azure.net/"),
							KeyVersion:  to.Ptr("00000000000000000000000000000000"),
						},
						RotationToLatestKeyVersionEnabled: to.Ptr(true),
					},
				},
			},
			ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		DiskEncryptionSetID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet"),
	// 		Encryption: &armdatabricks.WorkspacePropertiesEncryption{
	// 			Entities: &armdatabricks.EncryptionEntitiesDefinition{
	// 				ManagedDisk: &armdatabricks.ManagedDiskEncryption{
	// 					KeySource: to.Ptr(armdatabricks.EncryptionKeySourceMicrosoftKeyvault),
	// 					KeyVaultProperties: &armdatabricks.ManagedDiskEncryptionKeyVaultProperties{
	// 						KeyName: to.Ptr("test-cmk-key"),
	// 						KeyVaultURI: to.Ptr("https://test-vault-name.vault.azure.net/"),
	// 						KeyVersion: to.Ptr("00000000000000000000000000000000"),
	// 					},
	// 					RotationToLatestKeyVersionEnabled: to.Ptr(true),
	// 				},
	// 			},
	// 		},
	// 		ManagedDiskIdentity: &armdatabricks.ManagedIdentityConfiguration{
	// 			Type: to.Ptr("SystemAssigned"),
	// 			PrincipalID: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			TenantID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 		},
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("5555555555555555"),
	// 		WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

Example (CreateOrUpdateWorkspace)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceCreate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewWorkspacesClient().BeginCreateOrUpdate(ctx, "rg", "myWorkspace", armdatabricks.Workspace{
		Location: to.Ptr("westus"),
		Properties: &armdatabricks.WorkspaceProperties{
			ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("5555555555555555"),
	// 		WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

Example (CreateOrUpdateWorkspaceWithCustomParameters)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceCreateWithParameters.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewWorkspacesClient().BeginCreateOrUpdate(ctx, "rg", "myWorkspace", armdatabricks.Workspace{
		Location: to.Ptr("westus"),
		Properties: &armdatabricks.WorkspaceProperties{
			ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
			Parameters: &armdatabricks.WorkspaceCustomParameters{
				CustomPrivateSubnetName: &armdatabricks.WorkspaceCustomStringParameter{
					Value: to.Ptr("myPrivateSubnet"),
				},
				CustomPublicSubnetName: &armdatabricks.WorkspaceCustomStringParameter{
					Value: to.Ptr("myPublicSubnet"),
				},
				CustomVirtualNetworkID: &armdatabricks.WorkspaceCustomStringParameter{
					Value: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork"),
				},
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		Parameters: &armdatabricks.WorkspaceCustomParameters{
	// 			CustomPrivateSubnetName: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("myPrivateSubnet"),
	// 			},
	// 			CustomPublicSubnetName: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("myPublicSubnet"),
	// 			},
	// 			CustomVirtualNetworkID: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork"),
	// 			},
	// 		},
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("5555555555555555"),
	// 		WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

Example (EnableCustomerManagedKeyCmkEncryptionOnAWorkspaceWhichIsPreparedForEncryption)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/EnableEncryption.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewWorkspacesClient().BeginCreateOrUpdate(ctx, "rg", "myWorkspace", armdatabricks.Workspace{
		Location: to.Ptr("westus"),
		Properties: &armdatabricks.WorkspaceProperties{
			ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
			Parameters: &armdatabricks.WorkspaceCustomParameters{
				Encryption: &armdatabricks.WorkspaceEncryptionParameter{
					Value: &armdatabricks.Encryption{
						KeyName:     to.Ptr("myKeyName"),
						KeySource:   to.Ptr(armdatabricks.KeySourceMicrosoftKeyvault),
						KeyVaultURI: to.Ptr("https://myKeyVault.vault.azure.net/"),
						KeyVersion:  to.Ptr("00000000000000000000000000000000"),
					},
				},
				PrepareEncryption: &armdatabricks.WorkspaceCustomBooleanParameter{
					Value: to.Ptr(true),
				},
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Name: to.Ptr("myWorkspace"),
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		Parameters: &armdatabricks.WorkspaceCustomParameters{
	// 			CustomPrivateSubnetName: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("PrivateBob"),
	// 			},
	// 			CustomPublicSubnetName: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("PublicSarah"),
	// 			},
	// 			CustomVirtualNetworkID: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork"),
	// 			},
	// 			Encryption: &armdatabricks.WorkspaceEncryptionParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeObject),
	// 				Value: &armdatabricks.Encryption{
	// 					KeyName: to.Ptr("myKeyName"),
	// 					KeySource: to.Ptr(armdatabricks.KeySourceMicrosoftKeyvault),
	// 					KeyVaultURI: to.Ptr("https://myKeyVault.vault.azure.net/"),
	// 					KeyVersion: to.Ptr("00000000000000000000000000000000"),
	// 				},
	// 			},
	// 			PrepareEncryption: &armdatabricks.WorkspaceCustomBooleanParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeBool),
	// 				Value: to.Ptr(true),
	// 			},
	// 		},
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		StorageAccountIdentity: &armdatabricks.ManagedIdentityConfiguration{
	// 			Type: to.Ptr("SystemAssigned"),
	// 			PrincipalID: to.Ptr("55555555-5555-5555-5555-555555555555"),
	// 			TenantID: to.Ptr("66666666-6666-6666-6666-666666666666"),
	// 		},
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("5555555555555555"),
	// 		WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

Example (RevertCustomerManagedKeyCmkEncryptionToMicrosoftManagedKeysEncryptionOnAWorkspace)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/DisableEncryption.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewWorkspacesClient().BeginCreateOrUpdate(ctx, "rg", "myWorkspace", armdatabricks.Workspace{
		Location: to.Ptr("westus"),
		Properties: &armdatabricks.WorkspaceProperties{
			ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
			Parameters: &armdatabricks.WorkspaceCustomParameters{
				Encryption: &armdatabricks.WorkspaceEncryptionParameter{
					Value: &armdatabricks.Encryption{
						KeySource: to.Ptr(armdatabricks.KeySourceDefault),
					},
				},
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Name: to.Ptr("myWorkspace"),
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		Parameters: &armdatabricks.WorkspaceCustomParameters{
	// 			CustomPrivateSubnetName: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("PrivateBob"),
	// 			},
	// 			CustomPublicSubnetName: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("PublicSarah"),
	// 			},
	// 			CustomVirtualNetworkID: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork"),
	// 			},
	// 			Encryption: &armdatabricks.WorkspaceEncryptionParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeObject),
	// 				Value: &armdatabricks.Encryption{
	// 					KeySource: to.Ptr(armdatabricks.KeySourceDefault),
	// 				},
	// 			},
	// 			PrepareEncryption: &armdatabricks.WorkspaceCustomBooleanParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeBool),
	// 				Value: to.Ptr(true),
	// 			},
	// 		},
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		StorageAccountIdentity: &armdatabricks.ManagedIdentityConfiguration{
	// 			Type: to.Ptr("SystemAssigned"),
	// 			PrincipalID: to.Ptr("55555555-5555-5555-5555-555555555555"),
	// 			TenantID: to.Ptr("66666666-6666-6666-6666-666666666666"),
	// 		},
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("5555555555555555"),
	// 		WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

Example (UpdateAWorkspaceWithCustomerManagedKeyCmkEncryptionForManagedDisks)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceManagedDiskEncryptionUpdate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewWorkspacesClient().BeginCreateOrUpdate(ctx, "rg", "myWorkspace", armdatabricks.Workspace{
		Location: to.Ptr("westus"),
		Tags: map[string]*string{
			"mytag1": to.Ptr("myvalue1"),
		},
		Properties: &armdatabricks.WorkspaceProperties{
			Encryption: &armdatabricks.WorkspacePropertiesEncryption{
				Entities: &armdatabricks.EncryptionEntitiesDefinition{
					ManagedDisk: &armdatabricks.ManagedDiskEncryption{
						KeySource: to.Ptr(armdatabricks.EncryptionKeySourceMicrosoftKeyvault),
						KeyVaultProperties: &armdatabricks.ManagedDiskEncryptionKeyVaultProperties{
							KeyName:     to.Ptr("test-cmk-key"),
							KeyVaultURI: to.Ptr("https://test-vault-name.vault.azure.net/"),
							KeyVersion:  to.Ptr("00000000000000000000000000000000"),
						},
						RotationToLatestKeyVersionEnabled: to.Ptr(true),
					},
				},
			},
			ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Tags: map[string]*string{
	// 		"mytag1": to.Ptr("myvalue1"),
	// 	},
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		DiskEncryptionSetID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet"),
	// 		Encryption: &armdatabricks.WorkspacePropertiesEncryption{
	// 			Entities: &armdatabricks.EncryptionEntitiesDefinition{
	// 				ManagedDisk: &armdatabricks.ManagedDiskEncryption{
	// 					KeySource: to.Ptr(armdatabricks.EncryptionKeySourceMicrosoftKeyvault),
	// 					KeyVaultProperties: &armdatabricks.ManagedDiskEncryptionKeyVaultProperties{
	// 						KeyName: to.Ptr("test-cmk-key"),
	// 						KeyVaultURI: to.Ptr("https://test-vault-name.vault.azure.net/"),
	// 						KeyVersion: to.Ptr("00000000000000000000000000000000"),
	// 					},
	// 					RotationToLatestKeyVersionEnabled: to.Ptr(true),
	// 				},
	// 			},
	// 		},
	// 		ManagedDiskIdentity: &armdatabricks.ManagedIdentityConfiguration{
	// 			Type: to.Ptr("SystemAssigned"),
	// 			PrincipalID: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			TenantID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 		},
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("6666666666666666"),
	// 		WorkspaceURL: to.Ptr("adb-6666666666666666.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

func (*WorkspacesClient) BeginDelete

func (client *WorkspacesClient) BeginDelete(ctx context.Context, resourceGroupName string, workspaceName string, options *WorkspacesClientBeginDeleteOptions) (*runtime.Poller[WorkspacesClientDeleteResponse], error)

BeginDelete - Deletes the workspace. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • options - WorkspacesClientBeginDeleteOptions contains the optional parameters for the WorkspacesClient.BeginDelete method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceDelete.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewWorkspacesClient().BeginDelete(ctx, "rg", "myWorkspace", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

func (*WorkspacesClient) BeginUpdate

func (client *WorkspacesClient) BeginUpdate(ctx context.Context, resourceGroupName string, workspaceName string, parameters WorkspaceUpdate, options *WorkspacesClientBeginUpdateOptions) (*runtime.Poller[WorkspacesClientUpdateResponse], error)

BeginUpdate - Updates a workspace. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • parameters - The update to the workspace.
  • options - WorkspacesClientBeginUpdateOptions contains the optional parameters for the WorkspacesClient.BeginUpdate method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceUpdate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewWorkspacesClient().BeginUpdate(ctx, "rg", "myWorkspace", armdatabricks.WorkspaceUpdate{
		Tags: map[string]*string{
			"mytag1": to.Ptr("myvalue1"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Tags: map[string]*string{
	// 		"mytag1": to.Ptr("myvalue1"),
	// 	},
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("6666666666666666"),
	// 		WorkspaceURL: to.Ptr("adb-6666666666666666.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

func (*WorkspacesClient) Get

func (client *WorkspacesClient) Get(ctx context.Context, resourceGroupName string, workspaceName string, options *WorkspacesClientGetOptions) (WorkspacesClientGetResponse, error)

Get - Gets the workspace. If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • workspaceName - The name of the workspace.
  • options - WorkspacesClientGetOptions contains the optional parameters for the WorkspacesClient.Get method.
Example (GetAWorkspace)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceGet.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewWorkspacesClient().Get(ctx, "rg", "myWorkspace", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Name: to.Ptr("myWorkspace"),
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("5555555555555555"),
	// 		WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

Example (GetAWorkspaceWithCustomParameters)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceGetParameters.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewWorkspacesClient().Get(ctx, "rg", "myWorkspace", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Name: to.Ptr("myWorkspace"),
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		Parameters: &armdatabricks.WorkspaceCustomParameters{
	// 			CustomPrivateSubnetName: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("PrivateBob"),
	// 			},
	// 			CustomPublicSubnetName: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("PublicSarah"),
	// 			},
	// 			CustomVirtualNetworkID: &armdatabricks.WorkspaceCustomStringParameter{
	// 				Type: to.Ptr(armdatabricks.CustomParameterTypeString),
	// 				Value: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork"),
	// 			},
	// 		},
	// 		PrivateEndpointConnections: []*armdatabricks.PrivateEndpointConnection{
	// 			{
	// 				Name: to.Ptr("myWorkspace.23456789-1111-1111-1111-111111111111"),
	// 				Type: to.Ptr("Microsoft.Databricks/workspaces/privateEndpointConnections"),
	// 				ID: to.Ptr("/subscriptions/subscriptionId/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace/privateEndpointConnections/myWorkspace.23456789-1111-1111-1111-111111111111"),
	// 				Properties: &armdatabricks.PrivateEndpointConnectionProperties{
	// 					PrivateEndpoint: &armdatabricks.PrivateEndpoint{
	// 						ID: to.Ptr("/subscriptions/subscriptionId/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"),
	// 					},
	// 					PrivateLinkServiceConnectionState: &armdatabricks.PrivateLinkServiceConnectionState{
	// 						Description: to.Ptr("Auto-Approved"),
	// 						ActionsRequired: to.Ptr("None"),
	// 						Status: to.Ptr(armdatabricks.PrivateLinkServiceConnectionStatusApproved),
	// 					},
	// 					ProvisioningState: to.Ptr(armdatabricks.PrivateEndpointConnectionProvisioningStateSucceeded),
	// 				},
	// 		}},
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		PublicNetworkAccess: to.Ptr(armdatabricks.PublicNetworkAccessDisabled),
	// 		RequiredNsgRules: to.Ptr(armdatabricks.RequiredNsgRulesNoAzureDatabricksRules),
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("5555555555555555"),
	// 		WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

Example (GetAWorkspaceWithCustomerManagedKeyCmkEncryptionForManagedDisks)

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspaceManagedDiskEncryptionGet.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewWorkspacesClient().Get(ctx, "rg", "myWorkspace", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.Workspace = armdatabricks.Workspace{
	// 	Name: to.Ptr("myWorkspace"),
	// 	Type: to.Ptr("Microsoft.Databricks/workspaces"),
	// 	ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace"),
	// 	Location: to.Ptr("East US 2"),
	// 	Properties: &armdatabricks.WorkspaceProperties{
	// 		Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
	// 			{
	// 				PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
	// 				RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 		}},
	// 		CreatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
	// 		DiskEncryptionSetID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet"),
	// 		Encryption: &armdatabricks.WorkspacePropertiesEncryption{
	// 			Entities: &armdatabricks.EncryptionEntitiesDefinition{
	// 				ManagedDisk: &armdatabricks.ManagedDiskEncryption{
	// 					KeySource: to.Ptr(armdatabricks.EncryptionKeySourceMicrosoftKeyvault),
	// 					KeyVaultProperties: &armdatabricks.ManagedDiskEncryptionKeyVaultProperties{
	// 						KeyName: to.Ptr("test-cmk-key"),
	// 						KeyVaultURI: to.Ptr("https://test-vault-name.vault.azure.net/"),
	// 						KeyVersion: to.Ptr("00000000000000000000000000000000"),
	// 					},
	// 					RotationToLatestKeyVersionEnabled: to.Ptr(true),
	// 				},
	// 			},
	// 		},
	// 		ManagedDiskIdentity: &armdatabricks.ManagedIdentityConfiguration{
	// 			Type: to.Ptr("SystemAssigned"),
	// 			PrincipalID: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			TenantID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 		},
	// 		ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
	// 		ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
	// 		UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
	// 		UpdatedBy: &armdatabricks.CreatedBy{
	// 			ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
	// 			Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 			Puid: to.Ptr("33333333"),
	// 		},
	// 		WorkspaceID: to.Ptr("5555555555555555"),
	// 		WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
	// 	},
	// 	SKU: &armdatabricks.SKU{
	// 		Name: to.Ptr("premium"),
	// 	},
	// }
}
Output:

func (*WorkspacesClient) NewListByResourceGroupPager added in v0.5.0

func (client *WorkspacesClient) NewListByResourceGroupPager(resourceGroupName string, options *WorkspacesClientListByResourceGroupOptions) *runtime.Pager[WorkspacesClientListByResourceGroupResponse]

NewListByResourceGroupPager - Gets all the workspaces within a resource group.

Generated from API version 2023-02-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • options - WorkspacesClientListByResourceGroupOptions contains the optional parameters for the WorkspacesClient.NewListByResourceGroupPager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspacesListByResourceGroup.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewWorkspacesClient().NewListByResourceGroupPager("rg", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.WorkspaceListResult = armdatabricks.WorkspaceListResult{
		// 	Value: []*armdatabricks.Workspace{
		// 		{
		// 			Name: to.Ptr("myWorkspace1"),
		// 			Type: to.Ptr("Microsoft.Databricks/workspaces"),
		// 			ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace1"),
		// 			Location: to.Ptr("East US 2"),
		// 			Properties: &armdatabricks.WorkspaceProperties{
		// 				Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
		// 					{
		// 						PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
		// 						RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
		// 				}},
		// 				CreatedBy: &armdatabricks.CreatedBy{
		// 					ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
		// 					Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
		// 					Puid: to.Ptr("33333333"),
		// 				},
		// 				CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
		// 				ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
		// 				ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
		// 				UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
		// 				UpdatedBy: &armdatabricks.CreatedBy{
		// 					ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
		// 					Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
		// 					Puid: to.Ptr("33333333"),
		// 				},
		// 				WorkspaceID: to.Ptr("5555555555555555"),
		// 				WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
		// 			},
		// 			SKU: &armdatabricks.SKU{
		// 				Name: to.Ptr("premium"),
		// 			},
		// 		},
		// 		{
		// 			Name: to.Ptr("myWorkspace2"),
		// 			Type: to.Ptr("Microsoft.Databricks/workspaces"),
		// 			ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace2"),
		// 			Location: to.Ptr("East US 2"),
		// 			Properties: &armdatabricks.WorkspaceProperties{
		// 				Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
		// 					{
		// 						PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
		// 						RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
		// 				}},
		// 				CreatedBy: &armdatabricks.CreatedBy{
		// 					ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
		// 					Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
		// 					Puid: to.Ptr("33333333"),
		// 				},
		// 				CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
		// 				ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
		// 				ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
		// 				UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
		// 				UpdatedBy: &armdatabricks.CreatedBy{
		// 					ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
		// 					Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
		// 					Puid: to.Ptr("33333333"),
		// 				},
		// 				WorkspaceID: to.Ptr("6666666666666666"),
		// 				WorkspaceURL: to.Ptr("adb-6666666666666666.19.azuredatabricks.net"),
		// 			},
		// 			SKU: &armdatabricks.SKU{
		// 				Name: to.Ptr("standard"),
		// 			},
		// 	}},
		// }
	}
}
Output:

func (*WorkspacesClient) NewListBySubscriptionPager added in v0.5.0

NewListBySubscriptionPager - Gets all the workspaces within a subscription.

Generated from API version 2023-02-01

  • options - WorkspacesClientListBySubscriptionOptions contains the optional parameters for the WorkspacesClient.NewListBySubscriptionPager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/e1a87e1a5deb3f986ea1474d233d6680f1e19fc1/specification/databricks/resource-manager/Microsoft.Databricks/stable/2023-02-01/examples/WorkspacesListBySubscription.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/databricks/armdatabricks"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdatabricks.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewWorkspacesClient().NewListBySubscriptionPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.WorkspaceListResult = armdatabricks.WorkspaceListResult{
		// 	Value: []*armdatabricks.Workspace{
		// 		{
		// 			Name: to.Ptr("myWorkspace1"),
		// 			Type: to.Ptr("Microsoft.Databricks/workspaces"),
		// 			ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace1"),
		// 			Location: to.Ptr("East US 2"),
		// 			Properties: &armdatabricks.WorkspaceProperties{
		// 				Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
		// 					{
		// 						PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
		// 						RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
		// 				}},
		// 				CreatedBy: &armdatabricks.CreatedBy{
		// 					ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
		// 					Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
		// 					Puid: to.Ptr("33333333"),
		// 				},
		// 				CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
		// 				ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
		// 				ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
		// 				UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
		// 				UpdatedBy: &armdatabricks.CreatedBy{
		// 					ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
		// 					Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
		// 					Puid: to.Ptr("33333333"),
		// 				},
		// 				WorkspaceID: to.Ptr("5555555555555555"),
		// 				WorkspaceURL: to.Ptr("adb-5555555555555555.19.azuredatabricks.net"),
		// 			},
		// 			SKU: &armdatabricks.SKU{
		// 				Name: to.Ptr("premium"),
		// 			},
		// 		},
		// 		{
		// 			Name: to.Ptr("myWorkspace2"),
		// 			Type: to.Ptr("Microsoft.Databricks/workspaces"),
		// 			ID: to.Ptr("/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace2"),
		// 			Location: to.Ptr("East US 2"),
		// 			Properties: &armdatabricks.WorkspaceProperties{
		// 				Authorizations: []*armdatabricks.WorkspaceProviderAuthorization{
		// 					{
		// 						PrincipalID: to.Ptr("00000000-0000-0000-0000-000000000000"),
		// 						RoleDefinitionID: to.Ptr("11111111-1111-1111-1111-111111111111"),
		// 				}},
		// 				CreatedBy: &armdatabricks.CreatedBy{
		// 					ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
		// 					Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
		// 					Puid: to.Ptr("33333333"),
		// 				},
		// 				CreatedDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-20T00:10:29.285Z"); return t}()),
		// 				ManagedResourceGroupID: to.Ptr("/subscriptions/subid/resourceGroups/myManagedRG"),
		// 				ProvisioningState: to.Ptr(armdatabricks.ProvisioningStateSucceeded),
		// 				UIDefinitionURI: to.Ptr("https://path/to/workspaceCreateUiDefinition.json"),
		// 				UpdatedBy: &armdatabricks.CreatedBy{
		// 					ApplicationID: to.Ptr("44444444-4444-4444-4444-444444444444"),
		// 					Oid: to.Ptr("22222222-2222-2222-2222-222222222222"),
		// 					Puid: to.Ptr("33333333"),
		// 				},
		// 				WorkspaceID: to.Ptr("6666666666666666"),
		// 				WorkspaceURL: to.Ptr("adb-6666666666666666.19.azuredatabricks.net"),
		// 			},
		// 			SKU: &armdatabricks.SKU{
		// 				Name: to.Ptr("standard"),
		// 			},
		// 	}},
		// }
	}
}
Output:

type WorkspacesClientBeginCreateOrUpdateOptions added in v0.3.0

type WorkspacesClientBeginCreateOrUpdateOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

WorkspacesClientBeginCreateOrUpdateOptions contains the optional parameters for the WorkspacesClient.BeginCreateOrUpdate method.

type WorkspacesClientBeginDeleteOptions added in v0.3.0

type WorkspacesClientBeginDeleteOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

WorkspacesClientBeginDeleteOptions contains the optional parameters for the WorkspacesClient.BeginDelete method.

type WorkspacesClientBeginUpdateOptions added in v0.3.0

type WorkspacesClientBeginUpdateOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

WorkspacesClientBeginUpdateOptions contains the optional parameters for the WorkspacesClient.BeginUpdate method.

type WorkspacesClientCreateOrUpdateResponse added in v0.3.0

type WorkspacesClientCreateOrUpdateResponse struct {
	// Information about workspace.
	Workspace
}

WorkspacesClientCreateOrUpdateResponse contains the response from method WorkspacesClient.BeginCreateOrUpdate.

type WorkspacesClientDeleteResponse added in v0.3.0

type WorkspacesClientDeleteResponse struct {
}

WorkspacesClientDeleteResponse contains the response from method WorkspacesClient.BeginDelete.

type WorkspacesClientGetOptions added in v0.3.0

type WorkspacesClientGetOptions struct {
}

WorkspacesClientGetOptions contains the optional parameters for the WorkspacesClient.Get method.

type WorkspacesClientGetResponse added in v0.3.0

type WorkspacesClientGetResponse struct {
	// Information about workspace.
	Workspace
}

WorkspacesClientGetResponse contains the response from method WorkspacesClient.Get.

type WorkspacesClientListByResourceGroupOptions added in v0.3.0

type WorkspacesClientListByResourceGroupOptions struct {
}

WorkspacesClientListByResourceGroupOptions contains the optional parameters for the WorkspacesClient.NewListByResourceGroupPager method.

type WorkspacesClientListByResourceGroupResponse added in v0.3.0

type WorkspacesClientListByResourceGroupResponse struct {
	// List of workspaces.
	WorkspaceListResult
}

WorkspacesClientListByResourceGroupResponse contains the response from method WorkspacesClient.NewListByResourceGroupPager.

type WorkspacesClientListBySubscriptionOptions added in v0.3.0

type WorkspacesClientListBySubscriptionOptions struct {
}

WorkspacesClientListBySubscriptionOptions contains the optional parameters for the WorkspacesClient.NewListBySubscriptionPager method.

type WorkspacesClientListBySubscriptionResponse added in v0.3.0

type WorkspacesClientListBySubscriptionResponse struct {
	// List of workspaces.
	WorkspaceListResult
}

WorkspacesClientListBySubscriptionResponse contains the response from method WorkspacesClient.NewListBySubscriptionPager.

type WorkspacesClientUpdateResponse added in v0.3.0

type WorkspacesClientUpdateResponse struct {
	// Information about workspace.
	Workspace
}

WorkspacesClientUpdateResponse contains the response from method WorkspacesClient.BeginUpdate.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL