Documentation
¶
Index ¶
- Constants
- Variables
- func CleanupEnvironment() func()
- func ResetCommonEnvironmentClient()
- func Version() string
- type APIError
- type APIErrorBody
- type AzureAuth
- type CommandExecutor
- type CommandMock
- type DatabricksClient
- func (c *DatabricksClient) Authenticate() error
- func (c *DatabricksClient) CommandExecutor(ctx context.Context) CommandExecutor
- func (c *DatabricksClient) Configure() error
- func (c *DatabricksClient) Delete(ctx context.Context, path string, request interface{}) error
- func (c *DatabricksClient) Get(ctx context.Context, path string, request interface{}, response interface{}) error
- func (c *DatabricksClient) IsAzure() bool
- func (c *DatabricksClient) OldAPI(ctx context.Context, method, path string, request interface{}, ...) error
- func (c *DatabricksClient) Patch(ctx context.Context, path string, request interface{}) error
- func (c *DatabricksClient) Post(ctx context.Context, path string, request interface{}, response interface{}) error
- func (c *DatabricksClient) Put(ctx context.Context, path string, request interface{}) error
- func (c *DatabricksClient) Scim(ctx context.Context, method, path string, request interface{}, ...) error
- func (c *DatabricksClient) WithCommandExecutor(cef func(context.Context, *DatabricksClient) CommandExecutor)
- func (c *DatabricksClient) WithCommandMock(mock CommandMock)
- type TokenInfo
- type TokenRequest
- type TokenResponse
Constants ¶
const ( DefaultTruncateBytes = 96 DefaultRateLimitPerSecond = 15 DefaultHTTPTimeoutSeconds = 60 )
Default settings
const (
AzureDatabricksResourceID string = "2ff814a6-3304-4ab8-85cb-cd0e6f879c1d"
)
List of management information
Variables ¶
var ( // ResourceName is resource name without databricks_ prefix ResourceName contextKey = 1 // Provider is the current instance of provider Provider contextKey = 2 // Current is the current name of integration test Current contextKey = 3 )
Functions ¶
func CleanupEnvironment ¶
func CleanupEnvironment() func()
CleanupEnvironment backs up environment - use as `defer CleanupEnvironment()()` clears it and restores it in the end. It's meant strictly for "unit" tests as last resort, because it slows down parallel execution with mutex.
func ResetCommonEnvironmentClient ¶
func ResetCommonEnvironmentClient()
ResetCommonEnvironmentClient resets test dummy
Types ¶
type APIError ¶
APIError is a generic struct for an api error on databricks
func (APIError) DocumentationURL ¶
DocumentationURL guesses doc link
func (APIError) IsRetriable ¶
IsRetriable returns true if error is retriable
func (APIError) IsTooManyRequests ¶
IsTooManyRequests shows rate exceeded limits
type APIErrorBody ¶
type APIErrorBody struct { ErrorCode string `json:"error_code,omitempty"` Message string `json:"message,omitempty"` // The following two are for scim api only // for RFC 7644 Section 3.7.3 https://tools.ietf.org/html/rfc7644#section-3.7.3 ScimDetail string `json:"detail,omitempty"` ScimStatus string `json:"status,omitempty"` API12Error string `json:"error,omitempty"` }
APIErrorBody maps "proper" databricks rest api errors to a struct
type AzureAuth ¶
type AzureAuth struct { WorkspaceName string ResourceGroup string SubscriptionID string // azurerm_databricks_workspace.this.id ResourceID string ClientSecret string ClientID string TenantID string Environment string // temporary workaround for SP-based auth PATTokenDurationSeconds string UsePATForCLI bool // contains filtered or unexported fields }
AzureAuth contains all the auth information for azure sp authentication
func (*AzureAuth) IsClientSecretSet ¶
IsClientSecretSet returns true if client id/secret and tenand id are supplied
type CommandExecutor ¶
CommandExecutor creates a spark context and executes a command and then closes context
type CommandMock ¶
CommandMock mocks the execution of command
type DatabricksClient ¶
type DatabricksClient struct { Host string Token string Username string Password string Profile string ConfigFile string AzureAuth AzureAuth InsecureSkipVerify bool HTTPTimeoutSeconds int DebugTruncateBytes int DebugHeaders bool RateLimitPerSecond int Provider *schema.Provider // contains filtered or unexported fields }
DatabricksClient is the client struct that contains clients for all the services available on Databricks
func CommonEnvironmentClient ¶
func CommonEnvironmentClient() *DatabricksClient
CommonEnvironmentClient configured once per run of application
func NewClientFromEnvironment ¶
func NewClientFromEnvironment() *DatabricksClient
NewClientFromEnvironment makes very good client for testing purposes
func (*DatabricksClient) Authenticate ¶
func (c *DatabricksClient) Authenticate() error
Authenticate authenticates across providers or returns error
func (*DatabricksClient) CommandExecutor ¶
func (c *DatabricksClient) CommandExecutor(ctx context.Context) CommandExecutor
CommandExecutor service
func (*DatabricksClient) Configure ¶
func (c *DatabricksClient) Configure() error
Configure client to work
func (*DatabricksClient) Delete ¶
func (c *DatabricksClient) Delete(ctx context.Context, path string, request interface{}) error
Delete on path
func (*DatabricksClient) Get ¶
func (c *DatabricksClient) Get(ctx context.Context, path string, request interface{}, response interface{}) error
Get on path
func (*DatabricksClient) IsAzure ¶ added in v0.2.5
func (c *DatabricksClient) IsAzure() bool
IsAzure returns true if client is configured for Azure Databricks - either by using AAD auth or with host+token combination
func (*DatabricksClient) OldAPI ¶
func (c *DatabricksClient) OldAPI(ctx context.Context, method, path string, request interface{}, response interface{}) error
OldAPI performs call on context api
func (*DatabricksClient) Patch ¶
func (c *DatabricksClient) Patch(ctx context.Context, path string, request interface{}) error
Patch on path
func (*DatabricksClient) Post ¶
func (c *DatabricksClient) Post(ctx context.Context, path string, request interface{}, response interface{}) error
Post on path
func (*DatabricksClient) Put ¶
func (c *DatabricksClient) Put(ctx context.Context, path string, request interface{}) error
Put on path
func (*DatabricksClient) Scim ¶
func (c *DatabricksClient) Scim(ctx context.Context, method, path string, request interface{}, response interface{}) error
Scim sets SCIM headers
func (*DatabricksClient) WithCommandExecutor ¶
func (c *DatabricksClient) WithCommandExecutor(cef func(context.Context, *DatabricksClient) CommandExecutor)
WithCommandExecutor sets command executor implementation to use
func (*DatabricksClient) WithCommandMock ¶
func (c *DatabricksClient) WithCommandMock(mock CommandMock)
WithCommandMock mocks all command executions for this client
type TokenInfo ¶
type TokenInfo struct { TokenID string `json:"token_id,omitempty"` CreationTime int64 `json:"creation_time,omitempty"` ExpiryTime int64 `json:"expiry_time,omitempty"` Comment string `json:"comment,omitempty"` }
TokenInfo is a struct that contains metadata about a given token