Documentation
¶
Overview ¶
Package databrew implements an in-memory AWS Glue DataBrew service backend.
Index ¶
- Variables
- type DataCatalogInput
- type DatabaseInput
- type Dataset
- type DatasetFormatOptions
- type DatasetInput
- type Handler
- func (h *Handler) ExtractOperation(c *echo.Context) string
- func (h *Handler) ExtractResource(c *echo.Context) string
- func (h *Handler) GetSupportedOperations() []string
- func (h *Handler) Handler() echo.HandlerFunc
- func (h *Handler) MatchPriority() int
- func (h *Handler) Name() string
- func (h *Handler) Reset()
- func (h *Handler) Restore(ctx context.Context, data []byte) error
- func (h *Handler) RouteMatcher() service.Matcher
- func (h *Handler) Shutdown(ctx context.Context)
- func (h *Handler) Snapshot(ctx context.Context) []byte
- func (h *Handler) StartWorker(_ context.Context) error
- type InMemoryBackend
- func (b *InMemoryBackend) AccountID() string
- func (b *InMemoryBackend) CreateDataset(ctx context.Context, name, format string, input DatasetInput, ...) (*Dataset, error)
- func (b *InMemoryBackend) CreateJob(ctx context.Context, ...) (*Job, error)
- func (b *InMemoryBackend) CreateProject(ctx context.Context, name, datasetName, recipeName, roleArn string, ...) (*Project, error)
- func (b *InMemoryBackend) CreateRecipe(ctx context.Context, name, description string, steps []RecipeStep, ...) (*Recipe, error)
- func (b *InMemoryBackend) CreateRuleset(ctx context.Context, name, description, targetArn string, rules []Rule, ...) (*Ruleset, error)
- func (b *InMemoryBackend) CreateSchedule(ctx context.Context, name string, jobNames []string, cron string, ...) (*Schedule, error)
- func (b *InMemoryBackend) DeleteDataset(ctx context.Context, name string) error
- func (b *InMemoryBackend) DeleteJob(ctx context.Context, name string) error
- func (b *InMemoryBackend) DeleteProject(ctx context.Context, name string) error
- func (b *InMemoryBackend) DeleteRecipe(ctx context.Context, name string) error
- func (b *InMemoryBackend) DeleteRuleset(ctx context.Context, name string) error
- func (b *InMemoryBackend) DeleteSchedule(ctx context.Context, name string) error
- func (b *InMemoryBackend) DescribeDataset(ctx context.Context, name string) (*Dataset, error)
- func (b *InMemoryBackend) DescribeJob(ctx context.Context, name string) (*Job, error)
- func (b *InMemoryBackend) DescribeJobRun(ctx context.Context, name, runID string) (*JobRun, error)
- func (b *InMemoryBackend) DescribeProject(ctx context.Context, name string) (*Project, error)
- func (b *InMemoryBackend) DescribeRecipe(ctx context.Context, name string) (*Recipe, error)
- func (b *InMemoryBackend) DescribeRuleset(ctx context.Context, name string) (*Ruleset, error)
- func (b *InMemoryBackend) DescribeSchedule(ctx context.Context, name string) (*Schedule, error)
- func (b *InMemoryBackend) FindTagsByArn(ctx context.Context, arnVal string) (map[string]string, error)
- func (b *InMemoryBackend) ListDatasets(ctx context.Context, maxResults int, nextToken string) ([]*Dataset, string)
- func (b *InMemoryBackend) ListJobRuns(ctx context.Context, jobName string, maxResults int, nextToken string) ([]*JobRun, string, error)
- func (b *InMemoryBackend) ListJobs(ctx context.Context, maxResults int, ...) ([]*Job, string)
- func (b *InMemoryBackend) ListProjects(ctx context.Context, maxResults int, nextToken string) ([]*Project, string)
- func (b *InMemoryBackend) ListRecipes(ctx context.Context, maxResults int, nextToken string) ([]*Recipe, string)
- func (b *InMemoryBackend) ListRulesets(ctx context.Context, maxResults int, nextToken, targetArn string) ([]*Ruleset, string)
- func (b *InMemoryBackend) ListSchedules(ctx context.Context, maxResults int, nextToken string) ([]*Schedule, string)
- func (b *InMemoryBackend) PublishRecipe(ctx context.Context, name, description string) error
- func (b *InMemoryBackend) Region() string
- func (b *InMemoryBackend) Reset()
- func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error
- func (b *InMemoryBackend) Shutdown(ctx context.Context)
- func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte
- func (b *InMemoryBackend) StartJobRun(ctx context.Context, jobName string) (*JobRun, error)
- func (b *InMemoryBackend) StopJobRun(ctx context.Context, name, runID string) (*JobRun, error)
- func (b *InMemoryBackend) UpdateDataset(ctx context.Context, name, format string, input DatasetInput, ...) error
- func (b *InMemoryBackend) UpdateJob(ctx context.Context, name, roleArn string, outputs []Output, ...) error
- func (b *InMemoryBackend) UpdateProject(ctx context.Context, name, datasetName, roleArn string, sample Sample) error
- func (b *InMemoryBackend) UpdateRecipe(ctx context.Context, name, description string, steps []RecipeStep) error
- func (b *InMemoryBackend) UpdateRuleset(ctx context.Context, name, description string, rules []Rule) error
- func (b *InMemoryBackend) UpdateSchedule(ctx context.Context, name string, jobNames []string, cron string) error
- func (b *InMemoryBackend) UpdateTagsByArn(ctx context.Context, arnVal string, add map[string]string, remove []string) error
- type Job
- type JobRun
- type Output
- type Project
- type Provider
- type Recipe
- type RecipeRef
- type RecipeStep
- type Rule
- type Ruleset
- type S3Location
- type Sample
- type Schedule
- type StorageBackend
Constants ¶
This section is empty.
Variables ¶
var ( // ErrNotFound is returned when a requested resource does not exist. ErrNotFound = awserr.New("ResourceNotFoundException", awserr.ErrNotFound) // ErrAlreadyExists is returned when a resource already exists. ErrAlreadyExists = awserr.New("ConflictException", awserr.ErrAlreadyExists) // ErrValidation is returned when input validation fails. ErrValidation = awserr.New("ValidationException", awserr.ErrInvalidParameter) )
var ErrNilAppContext = errors.New("nil AppContext passed to DataBrew Provider.Init")
ErrNilAppContext is returned by Init when a nil AppContext is passed.
Functions ¶
This section is empty.
Types ¶
type DataCatalogInput ¶
type DataCatalogInput struct {
DatabaseName string `json:"DatabaseName"`
TableName string `json:"TableName"`
}
DataCatalogInput references a Glue Data Catalog table.
type DatabaseInput ¶
type DatabaseInput struct {
GlueConnectionName string `json:"GlueConnectionName"`
DatabaseTableName string `json:"DatabaseTableName"`
}
DatabaseInput references a database table.
type Dataset ¶
type Dataset struct {
FormatOptions DatasetFormatOptions `json:"FormatOptions,omitzero"`
Input DatasetInput `json:"Input,omitzero"`
Tags map[string]string `json:"Tags,omitempty"`
Name string `json:"Name"`
Arn string `json:"ResourceArn"`
Format string `json:"Format,omitempty"`
Source string `json:"Source,omitempty"`
CreatedBy string `json:"CreatedBy,omitempty"`
LastModifiedBy string `json:"LastModifiedBy,omitempty"`
CreateDate float64 `json:"CreateDate,omitempty"`
LastModifiedDate float64 `json:"LastModifiedDate,omitempty"`
}
Dataset represents a DataBrew dataset.
type DatasetFormatOptions ¶
type DatasetFormatOptions struct {
Csv map[string]any `json:"Csv,omitempty"`
Excel map[string]any `json:"Excel,omitempty"`
JSON map[string]any `json:"Json,omitempty"`
}
DatasetFormatOptions holds format-specific options for a dataset.
The JSON field's wire key is "Json" (mixed case), NOT "JSON" -- confirmed against aws-sdk-go-v2/service/databrew's deserializer (awsRestjson1_deserializeDocumentFormatOptions switches on the exact, case-sensitive key "Json"). A response emitting the Go-idiomatic "JSON" falls through that switch's default case and the client silently drops the field, so a dataset created with JSON format options would appear to have none on describe/list.
type DatasetInput ¶
type DatasetInput struct {
S3InputDefinition *S3Location `json:"S3InputDefinition,omitempty"`
DataCatalogInputDefinition *DataCatalogInput `json:"DataCatalogInputDefinition,omitempty"`
DatabaseInputDefinition *DatabaseInput `json:"DatabaseInputDefinition,omitempty"`
}
DatasetInput holds the data source for a dataset.
type Handler ¶
type Handler struct {
Backend StorageBackend
AccountID string
Region string
}
Handler is the HTTP handler for AWS Glue DataBrew operations.
func NewHandler ¶
func NewHandler(backend StorageBackend) *Handler
NewHandler creates a new DataBrew handler.
func (*Handler) GetSupportedOperations ¶
func (*Handler) Handler ¶
func (h *Handler) Handler() echo.HandlerFunc
func (*Handler) MatchPriority ¶
MatchPriority returns PriorityPathVersioned+1 so DataBrew is evaluated before IoT Analytics, which also claims /datasets at PriorityPathVersioned.
func (*Handler) RouteMatcher ¶
func (*Handler) Shutdown ¶
Shutdown implements service.Shutdowner. It cancels in-flight job run transition goroutines and waits for them to drain, bounded by ctx.
func (*Handler) Snapshot ¶
Snapshot implements persistence.Persistable by delegating to the backend. Handler previously had no Snapshot/Restore of its own -- and neither did InMemoryBackend -- so cli.go's generic setupPersistence (which type-asserts the registered service.Registerable, i.e. the Handler, for a Snapshot/Restore pair) never picked DataBrew up at all: dead wiring, with no persistence underneath it either. This delegation (matching the codecommit/codepipeline/cleanrooms pattern) is what wires DataBrew into persistence for the first time.
type InMemoryBackend ¶
type InMemoryBackend struct {
// contains filtered or unexported fields
}
InMemoryBackend stores DataBrew state in memory.
All resource collections are nested by region (outer key = region) so that same-named resources are isolated across regions. datasets/recipes/ projects/jobs/rulesets/schedules each hold one *store.Table[T] per region, created lazily via the *Table accessors in store_setup.go — mirroring the lazy map creation the hand-rolled *Store helpers did before the Phase 3.3 pkgs/store conversion (see store_setup.go's package doc for why jobRuns is NOT converted). Callers must hold b.mu while accessing any of them.
func NewInMemoryBackend ¶
func NewInMemoryBackend(accountID, region string) *InMemoryBackend
NewInMemoryBackend creates a new in-memory DataBrew backend with a background lifecycle context.
func NewInMemoryBackendWithContext ¶
func NewInMemoryBackendWithContext( svcCtx context.Context, accountID, region string, ) *InMemoryBackend
NewInMemoryBackendWithContext creates a new in-memory DataBrew backend whose delayed lifecycle goroutines are tied to svcCtx. When svcCtx (or the backend's Shutdown) is cancelled, in-flight transition goroutines exit promptly. If svcCtx is nil, context.Background is used.
func (*InMemoryBackend) AccountID ¶
func (b *InMemoryBackend) AccountID() string
func (*InMemoryBackend) CreateDataset ¶
func (b *InMemoryBackend) CreateDataset( ctx context.Context, name, format string, input DatasetInput, formatOpts DatasetFormatOptions, tags map[string]string, ) (*Dataset, error)
func (*InMemoryBackend) CreateProject ¶
func (*InMemoryBackend) CreateRecipe ¶
func (b *InMemoryBackend) CreateRecipe( ctx context.Context, name, description string, steps []RecipeStep, tags map[string]string, ) (*Recipe, error)
func (*InMemoryBackend) CreateRuleset ¶
func (*InMemoryBackend) CreateSchedule ¶
func (*InMemoryBackend) DeleteDataset ¶
func (b *InMemoryBackend) DeleteDataset(ctx context.Context, name string) error
func (*InMemoryBackend) DeleteJob ¶
func (b *InMemoryBackend) DeleteJob(ctx context.Context, name string) error
func (*InMemoryBackend) DeleteProject ¶
func (b *InMemoryBackend) DeleteProject(ctx context.Context, name string) error
func (*InMemoryBackend) DeleteRecipe ¶
func (b *InMemoryBackend) DeleteRecipe(ctx context.Context, name string) error
func (*InMemoryBackend) DeleteRuleset ¶
func (b *InMemoryBackend) DeleteRuleset(ctx context.Context, name string) error
func (*InMemoryBackend) DeleteSchedule ¶
func (b *InMemoryBackend) DeleteSchedule(ctx context.Context, name string) error
func (*InMemoryBackend) DescribeDataset ¶
func (*InMemoryBackend) DescribeJob ¶
func (*InMemoryBackend) DescribeJobRun ¶
func (*InMemoryBackend) DescribeProject ¶
func (*InMemoryBackend) DescribeRecipe ¶
func (*InMemoryBackend) DescribeRuleset ¶
func (*InMemoryBackend) DescribeSchedule ¶
func (*InMemoryBackend) FindTagsByArn ¶
func (b *InMemoryBackend) FindTagsByArn( ctx context.Context, arnVal string, ) (map[string]string, error)
FindTagsByArn searches all resources in the request region for a specific ARN and returns its tags.
func (*InMemoryBackend) ListDatasets ¶
func (*InMemoryBackend) ListJobRuns ¶
func (*InMemoryBackend) ListProjects ¶
func (*InMemoryBackend) ListRecipes ¶
func (*InMemoryBackend) ListRulesets ¶
func (*InMemoryBackend) ListSchedules ¶
func (*InMemoryBackend) PublishRecipe ¶
func (b *InMemoryBackend) PublishRecipe(ctx context.Context, name, description string) error
func (*InMemoryBackend) Region ¶
func (b *InMemoryBackend) Region() string
func (*InMemoryBackend) Reset ¶
func (b *InMemoryBackend) Reset()
func (*InMemoryBackend) Restore ¶
func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error
Restore loads backend state from a JSON snapshot. It implements persistence.Persistable.
func (*InMemoryBackend) Shutdown ¶
func (b *InMemoryBackend) Shutdown(ctx context.Context)
Shutdown cancels the backend's lifecycle context and waits for in-flight delayed goroutines to finish, bounded by ctx. After Shutdown the backend no longer schedules state transitions.
func (*InMemoryBackend) Snapshot ¶
func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte
Snapshot serialises the backend state to JSON. It implements persistence.Persistable.
func (*InMemoryBackend) StartJobRun ¶
StartJobRun creates a new job run with STARTING state, transitioning to SUCCEEDED asynchronously.
func (*InMemoryBackend) StopJobRun ¶
func (*InMemoryBackend) UpdateDataset ¶
func (b *InMemoryBackend) UpdateDataset( ctx context.Context, name, format string, input DatasetInput, formatOpts DatasetFormatOptions, ) error
func (*InMemoryBackend) UpdateProject ¶
func (*InMemoryBackend) UpdateRecipe ¶
func (b *InMemoryBackend) UpdateRecipe( ctx context.Context, name, description string, steps []RecipeStep, ) error
func (*InMemoryBackend) UpdateRuleset ¶
func (*InMemoryBackend) UpdateSchedule ¶
func (*InMemoryBackend) UpdateTagsByArn ¶
func (b *InMemoryBackend) UpdateTagsByArn( ctx context.Context, arnVal string, add map[string]string, remove []string, ) error
UpdateTagsByArn searches all resources in the request region and applies tags additions/removals.
type Job ¶
type Job struct {
ProfileConfiguration map[string]any `json:"ProfileConfiguration,omitempty"`
JobSample map[string]any `json:"JobSample,omitempty"`
Tags map[string]string `json:"Tags,omitempty"`
RecipeReference *RecipeRef `json:"RecipeReference,omitempty"`
EncryptionMode string `json:"EncryptionMode,omitempty"`
EncryptionKeyArn string `json:"EncryptionKeyArn,omitempty"`
DatasetName string `json:"DatasetName,omitempty"`
ProjectName string `json:"ProjectName,omitempty"`
Name string `json:"Name"`
CreatedBy string `json:"CreatedBy,omitempty"`
RecipeName string `json:"-"`
RoleArn string `json:"RoleArn,omitempty"`
LogSubscription string `json:"LogSubscription,omitempty"`
Type string `json:"Type,omitempty"`
LastModifiedBy string `json:"LastModifiedBy,omitempty"`
Arn string `json:"ResourceArn"`
ValidationConfigurations []map[string]any `json:"ValidationConfigurations,omitempty"`
DataCatalogOutputs []map[string]any `json:"DataCatalogOutputs,omitempty"`
DatabaseOutputs []map[string]any `json:"DatabaseOutputs,omitempty"`
Outputs []Output `json:"Outputs,omitempty"`
Timeout int `json:"Timeout,omitempty"`
MaxRetries int `json:"MaxRetries,omitempty"`
MaxCapacity int `json:"MaxCapacity,omitempty"`
LastModifiedDate float64 `json:"LastModifiedDate,omitempty"`
CreateDate float64 `json:"CreateDate,omitempty"`
}
Job represents a DataBrew job.
type JobRun ¶
type JobRun struct {
DatasetName string `json:"DatasetName,omitempty"`
JobName string `json:"JobName"`
RunID string `json:"RunId"`
State string `json:"State"`
LogGroupName string `json:"LogGroupName,omitempty"`
StartedOn float64 `json:"StartedOn,omitempty"`
CompletedOn float64 `json:"CompletedOn,omitempty"`
ExecutionTime int `json:"ExecutionTime,omitempty"`
}
JobRun represents a single execution of a DataBrew job.
type Output ¶
type Output struct {
FormatOptions map[string]any `json:"FormatOptions,omitempty"`
Location S3Location `json:"Location,omitzero"`
Format string `json:"Format,omitempty"`
CompressionFormat string `json:"CompressionFormat,omitempty"`
PartitionColumns []string `json:"PartitionColumns,omitempty"`
MaxOutputFiles int `json:"MaxOutputFiles,omitempty"`
Overwrite bool `json:"Overwrite,omitempty"`
}
Output describes a DataBrew job output destination.
type Project ¶
type Project struct {
Tags map[string]string `json:"Tags,omitempty"`
Name string `json:"Name"`
Arn string `json:"ResourceArn"`
DatasetName string `json:"DatasetName,omitempty"`
RecipeName string `json:"RecipeName"`
RoleArn string `json:"RoleArn,omitempty"`
SessionStatus string `json:"SessionStatus,omitempty"`
CreatedBy string `json:"CreatedBy,omitempty"`
LastModifiedBy string `json:"LastModifiedBy,omitempty"`
Sample Sample `json:"Sample,omitzero"`
CreateDate float64 `json:"CreateDate,omitempty"`
LastModifiedDate float64 `json:"LastModifiedDate,omitempty"`
}
Project represents a DataBrew project.
type Provider ¶
type Provider struct{}
Provider implements service.Provider for AWS Glue DataBrew.
func (*Provider) Init ¶
func (p *Provider) Init(ctx *service.AppContext) (service.Registerable, error)
Init initializes the DataBrew service backend and handler.
type Recipe ¶
type Recipe struct {
Tags map[string]string `json:"Tags,omitempty"`
Name string `json:"Name"`
Arn string `json:"ResourceArn"`
Description string `json:"Description,omitempty"`
PublishedBy string `json:"PublishedBy,omitempty"`
RecipeVersion string `json:"RecipeVersion,omitempty"`
CreatedBy string `json:"CreatedBy,omitempty"`
LastModifiedBy string `json:"LastModifiedBy,omitempty"`
Steps []RecipeStep `json:"Steps,omitempty"`
PublishedDate float64 `json:"PublishedDate,omitempty"`
CreateDate float64 `json:"CreateDate,omitempty"`
LastModifiedDate float64 `json:"LastModifiedDate,omitempty"`
}
Recipe represents a DataBrew recipe.
type RecipeRef ¶
type RecipeRef struct {
Name string `json:"Name"`
RecipeVersion string `json:"RecipeVersion,omitempty"`
}
RecipeRef holds a reference to a DataBrew recipe and optional version.
type RecipeStep ¶
type RecipeStep struct {
Action map[string]any `json:"Action,omitempty"`
ConditionExpressions []map[string]any `json:"ConditionExpressions,omitempty"`
}
RecipeStep is one transformation step in a recipe.
type Rule ¶
type Rule struct {
SubstitutionMap map[string]string `json:"SubstitutionMap,omitempty"`
Threshold map[string]any `json:"Threshold,omitempty"`
Name string `json:"Name"`
CheckExpression string `json:"CheckExpression"`
ColumnSelectors []map[string]any `json:"ColumnSelectors,omitempty"`
Disabled bool `json:"Disabled,omitempty"`
}
Rule represents a data quality rule.
type Ruleset ¶
type Ruleset struct {
Tags map[string]string `json:"Tags,omitempty"`
Name string `json:"Name"`
Arn string `json:"ResourceArn"`
Description string `json:"Description,omitempty"`
TargetArn string `json:"TargetArn"`
CreatedBy string `json:"CreatedBy,omitempty"`
LastModifiedBy string `json:"LastModifiedBy,omitempty"`
Rules []Rule `json:"Rules"`
CreateDate float64 `json:"CreateDate,omitempty"`
LastModifiedDate float64 `json:"LastModifiedDate,omitempty"`
}
Ruleset represents a DataBrew data quality ruleset.
type S3Location ¶
S3Location references an S3 path.
type Schedule ¶
type Schedule struct {
Tags map[string]string `json:"Tags,omitempty"`
Name string `json:"Name"`
Arn string `json:"ResourceArn"`
CronExpression string `json:"CronExpression"`
CreatedBy string `json:"CreatedBy,omitempty"`
LastModifiedBy string `json:"LastModifiedBy,omitempty"`
JobNames []string `json:"JobNames,omitempty"`
CreateDate float64 `json:"CreateDate,omitempty"`
LastModifiedDate float64 `json:"LastModifiedDate,omitempty"`
}
Schedule represents a DataBrew schedule.
type StorageBackend ¶
type StorageBackend interface {
Region() string
AccountID() string
Reset()
// Snapshot and Restore implement persistence.Persistable. Handler
// delegates to them (see persistence.go) so cli.go's generic
// setupPersistence picks DataBrew up.
Snapshot(ctx context.Context) []byte
Restore(ctx context.Context, data []byte) error
// Dataset operations.
CreateDataset(
ctx context.Context,
name, format string,
input DatasetInput,
formatOpts DatasetFormatOptions,
tags map[string]string,
) (*Dataset, error)
DescribeDataset(ctx context.Context, name string) (*Dataset, error)
ListDatasets(ctx context.Context, maxResults int, nextToken string) ([]*Dataset, string)
UpdateDataset(
ctx context.Context,
name, format string,
input DatasetInput,
formatOpts DatasetFormatOptions,
) error
DeleteDataset(ctx context.Context, name string) error
// Recipe operations.
CreateRecipe(
ctx context.Context,
name, description string,
steps []RecipeStep,
tags map[string]string,
) (*Recipe, error)
DescribeRecipe(ctx context.Context, name string) (*Recipe, error)
ListRecipes(ctx context.Context, maxResults int, nextToken string) ([]*Recipe, string)
PublishRecipe(ctx context.Context, name, description string) error
UpdateRecipe(ctx context.Context, name, description string, steps []RecipeStep) error
DeleteRecipe(ctx context.Context, name string) error
// Project operations.
CreateProject(
ctx context.Context,
name, datasetName, recipeName, roleArn string,
sample Sample,
tags map[string]string,
) (*Project, error)
DescribeProject(ctx context.Context, name string) (*Project, error)
ListProjects(ctx context.Context, maxResults int, nextToken string) ([]*Project, string)
UpdateProject(ctx context.Context, name, datasetName, roleArn string, sample Sample) error
DeleteProject(ctx context.Context, name string) error
// Job operations.
CreateJob(
ctx context.Context,
name, jobType, datasetName, projectName, recipeName, roleArn string,
outputs []Output,
tags map[string]string,
) (*Job, error)
DescribeJob(ctx context.Context, name string) (*Job, error)
ListJobs(ctx context.Context, maxResults int, nextToken, datasetName, projectName string) ([]*Job, string)
UpdateJob(
ctx context.Context,
name, roleArn string,
outputs []Output,
maxCapacity, maxRetries, timeout int,
) error
DeleteJob(ctx context.Context, name string) error
StartJobRun(ctx context.Context, jobName string) (*JobRun, error)
ListJobRuns(
ctx context.Context,
jobName string,
maxResults int,
nextToken string,
) ([]*JobRun, string, error)
DescribeJobRun(ctx context.Context, name, runID string) (*JobRun, error)
StopJobRun(ctx context.Context, name, runID string) (*JobRun, error)
// Ruleset operations.
CreateRuleset(
ctx context.Context,
name, description, targetArn string,
rules []Rule,
tags map[string]string,
) (*Ruleset, error)
DescribeRuleset(ctx context.Context, name string) (*Ruleset, error)
ListRulesets(ctx context.Context, maxResults int, nextToken, targetArn string) ([]*Ruleset, string)
UpdateRuleset(ctx context.Context, name, description string, rules []Rule) error
DeleteRuleset(ctx context.Context, name string) error
// Schedule operations.
CreateSchedule(
ctx context.Context,
name string,
jobNames []string,
cron string,
tags map[string]string,
) (*Schedule, error)
DescribeSchedule(ctx context.Context, name string) (*Schedule, error)
ListSchedules(ctx context.Context, maxResults int, nextToken string) ([]*Schedule, string)
UpdateSchedule(ctx context.Context, name string, jobNames []string, cron string) error
DeleteSchedule(ctx context.Context, name string) error
// Tag operations.
FindTagsByArn(ctx context.Context, arn string) (map[string]string, error)
UpdateTagsByArn(ctx context.Context, arn string, add map[string]string, remove []string) error
}
StorageBackend defines the interface for all DataBrew backend operations.
Source Files
¶
- datasets.go
- errors.go
- handler.go
- handler_datasets.go
- handler_jobs.go
- handler_projects.go
- handler_recipes.go
- handler_rulesets.go
- handler_schedules.go
- handler_tags.go
- interfaces.go
- jobs.go
- models.go
- paginate_helper.go
- persistence.go
- projects.go
- provider.go
- recipes.go
- rulesets.go
- schedules.go
- store.go
- store_setup.go
- tags.go