glue

package
v0.0.1-alpha.33 Latest Latest
Warning

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

Go to latest
Published: Aug 9, 2026 License: MIT Imports: 14 Imported by: 0

Documentation

Overview

Package glue provides a basic emulation of AWS Glue Data Catalog.

Implemented operations: CreateDatabase, GetDatabase, GetDatabases, DeleteDatabase, CreateTable, GetTable, GetTables, DeleteTable.

Enough for data-layer stacks referencing AWS::Glue::Database and Table.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Database

type Database struct {
	Name        string            `json:"Name"`
	Description string            `json:"Description,omitempty"`
	CatalogId   string            `json:"CatalogId,omitempty"`
	Tags        map[string]string `json:"Tags,omitempty"`
}

Database represents a Glue database.

func (*Database) GetTags

func (d *Database) GetTags() map[string]string

func (*Database) SetTags

func (d *Database) SetTags(t map[string]string)

type Service

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

Service implements router.Service and router.TargetDispatcher for Glue.

func New

func New(cfg *config.Config, st state.Store, logger *zap.Logger, _ clock.Clock) *Service

New returns a configured Glue Service.

func (*Service) Dispatch

func (s *Service) Dispatch(w http.ResponseWriter, r *http.Request)

func (*Service) Name

func (s *Service) Name() string

func (*Service) Operations

func (s *Service) Operations() []op.Operation

func (*Service) RegisterRoutes

func (s *Service) RegisterRoutes(_ chi.Router)

func (*Service) SupportedProtocols

func (s *Service) SupportedProtocols() []codec.Codec

func (*Service) TargetPrefix

func (s *Service) TargetPrefix() string

type Table

type Table struct {
	Name         string            `json:"Name"`
	DatabaseName string            `json:"DatabaseName"`
	Description  string            `json:"Description,omitempty"`
	TableType    string            `json:"TableType,omitempty"`
	CatalogId    string            `json:"CatalogId,omitempty"`
	Tags         map[string]string `json:"Tags,omitempty"`
}

Table represents a Glue table.

func (*Table) GetTags

func (t *Table) GetTags() map[string]string

func (*Table) SetTags

func (t *Table) SetTags(tags map[string]string)

Jump to

Keyboard shortcuts

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