Help us shape the future of Go! Take the 2026 Go Developer Survey

iceberg

package
v0.11.783 Latest Latest
Warning

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

Go to latest
Published: Oct 19, 2026 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package iceberg builds the ingestr destination URI for Apache Iceberg (iceberg+<catalog>://<location>?storage=s3&...), a write-only destination.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

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

Client is a thin wrapper around Config. Iceberg is only used as an ingestr destination in Bruin, so the client just exposes the ingestr URI.

func NewClient

func NewClient(c Config) (*Client, error)

func (*Client) GetIngestrURI

func (c *Client) GetIngestrURI() (string, error)

type Config

type Config struct {
	Catalog config.IcebergCatalog
	Storage config.IcebergStorage

	// CatalogName is the logical catalog identifier used by the Iceberg client.
	// ingestr defaults it to "ingestr" when empty.
	CatalogName string

	// Table/namespace write options.
	CreateNamespace *bool
	TableLocation   string
	TablePath       string
	// TableProperties are emitted as table.<key>=<value> (Iceberg table properties).
	TableProperties map[string]string
	// Properties is a passthrough for non-secret ingestr Iceberg URI parameters.
	// Applied last, so it wins on conflict. Its values are NOT masked in logs,
	// so credentials belong in the dedicated fields, never here.
	Properties map[string]string
}

func (Config) GetIngestrURI

func (c Config) GetIngestrURI() (string, error)

GetIngestrURI builds the ingestr Iceberg destination URI (iceberg+<catalog>://<location>?storage=s3&...).

Jump to

Keyboard shortcuts

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