config

package
v0.12.1 Latest Latest
Warning

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

Go to latest
Published: Sep 23, 2022 License: AGPL-3.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Anonymize

type Anonymize struct {
	Device `json:"device"`
	User   `json:"user"`
}

type App

type App struct {
	Version           string `json:"version"`
	Name              string `json:"name"`
	Env               string `json:"env"`
	Port              string `json:"port"`
	TrackerDomain     string `json:"trackerDomain"`
	EnableConfigRoute bool   `json:"enableConfigRoute"`
}

type Backend

type Backend struct {
	Type string `json:"type"`
	Path string `json:"path"`
	// S3 and Gcs
	Bucket string `json:"bucket,omitempty"`
	// Gcs
	Region string `json:"region,omitempty"`
	// Http
	Host string `json:"host,omitempty"`
	// Db, general
	RegistryTable string `json:"registryTable,omitempty"`
	// Postgres Database
	PgHost   string `json:"-"`
	PgPort   uint16 `json:"-"`
	PgDbName string `json:"-"`
	PgUser   string `json:"-"`
	PgPass   string `json:"-"`
	// Mysql Database
	MysqlHost   string `json:"-"`
	MysqlPort   uint16 `json:"-"`
	MysqlDbName string `json:"-"`
	MysqlUser   string `json:"-"`
	MysqlPass   string `json:"-"`
	// Materialize Database
	MzHost   string `json:"-"`
	MzPort   uint16 `json:"-"`
	MzDbName string `json:"-"`
	MzUser   string `json:"-"`
	MzPass   string `json:"-"`
	// Clickhouse Database
	ClickhouseHost   string `json:"-"`
	ClickhousePort   uint16 `json:"-"`
	ClickhouseDbName string `json:"-"`
	ClickhouseUser   string `json:"-"`
	ClickhousePass   string `json:"-"`
	// Mongodb
	MongoHosts         []string `json:"mongoHosts,omitempty"`
	MongoPort          string   `json:"mongoDbPort,omitempty"`
	MongoDbName        string   `json:"mongoDbName,omitempty"`
	MongoUser          string   `json:"-"`
	MongoPass          string   `json:"-"`
	RegistryCollection string   `json:"registryCollection,omitempty"`
	// Minio
	MinioEndpoint   string `json:"minioEndpoint,omitempty"`
	AccessKeyId     string `json:"accessKeyId,omitempty"`
	SecretAccessKey string `json:"secretAccessKey,omitempty"`
}

type Cloudevents

type Cloudevents struct {
	Enabled bool   `json:"enabled"`
	Path    string `json:"path"`
}

type Config

type Config struct {
	App        `json:"app"`
	Middleware `json:"middleware"`
	Inputs     `json:"inputs"`
	Registry   `json:"registry"`
	Manifold   `json:"manifold,omitempty"`
	Sinks      []Sink `json:"sinks"`
	Squawkbox  `json:"squawkBox"`
	Privacy    `json:"privacy"`
	Tele       `json:"tele"`
}

type Cors

type Cors struct {
	Enabled          bool     `json:"enabled"`
	AllowOrigin      []string `json:"allowOrigin"`
	AllowCredentials bool     `json:"allowCredentials"`
	AllowMethods     []string `json:"allowMethods"`
	MaxAge           int      `json:"maxAge"`
}

type Device

type Device struct {
	Ip        bool `json:"ip"`
	Useragent bool `json:"useragent"`
}

type Http added in v0.12.0

type Http struct {
	Enabled bool `json:"enabled"`
}

type Identity

type Identity struct {
	Cookie   IdentityCookie `json:"cookie"`
	Fallback string         `json:"fallback"`
}

type IdentityCookie

type IdentityCookie struct {
	Enabled  bool   `json:"enabled"`
	Name     string `json:"name"`
	Secure   bool   `json:"secure"`
	TtlDays  int    `json:"ttlDays"`
	Domain   string `json:"domain"`
	Path     string `json:"path"`
	SameSite string `json:"sameSite"`
}

type Inputs

type Inputs struct {
	Snowplow       `json:"snowplow"`
	Cloudevents    `json:"cloudevents"`
	SelfDescribing `json:"selfDescribing"`
	Webhook        `json:"webhook"`
	Pixel          `json:"pixel"`
}

type Manifold

type Manifold struct {
}

type Middleware

type Middleware struct {
	Timeout       `json:"timeout"`
	RateLimiter   `json:"rateLimiter"`
	Identity      `json:"identity"`
	Cors          `json:"cors"`
	RequestLogger `json:"requestLogger"`
	Yeet          `json:"yeet"`
}

type Pixel

type Pixel struct {
	Enabled bool   `json:"enabled"`
	Path    string `json:"path"`
}

type Privacy

type Privacy struct {
	Anonymize `json:"anonymize"`
}

type Purge

type Purge struct {
	Enabled bool   `json:"enabled"`
	Path    string `json:"path"`
}

type RateLimiter

type RateLimiter struct {
	Enabled bool   `json:"enabled"`
	Period  string `json:"period"`
	Limit   int64  `json:"limit"`
}

type Registry added in v0.12.0

type Registry struct {
	Backend      `json:"backend"`
	TtlSeconds   int `json:"ttlSeconds"`
	MaxSizeBytes int `json:"maxSizeBytes"`
	Purge        `json:"purge"`
	Http         `json:"http"`
}

type Relay

type Relay struct {
	Enabled bool   `json:"enabled"`
	Path    string `json:"path"`
}

type RequestLogger

type RequestLogger struct {
	Enabled bool `json:"enabled"`
}

type SelfDescribing added in v0.12.0

type SelfDescribing struct {
	Enabled  bool                             `json:"enabled"`
	Path     string                           `json:"path"`
	Contexts SelfDescribingRootConfig         `json:"contexts"`
	Payload  SelfDescribingRootAndChildConfig `json:"payload"`
}

type SelfDescribingRootAndChildConfig added in v0.12.0

type SelfDescribingRootAndChildConfig struct {
	RootKey   string `json:"rootKey"`
	SchemaKey string `json:"schemaKey"`
	DataKey   string `json:"dataKey"`
}

type SelfDescribingRootConfig added in v0.12.0

type SelfDescribingRootConfig struct {
	RootKey string `json:"rootKey"`
}

type Sink

type Sink struct {
	Name             string   `json:"name"`
	Type             string   `json:"type"`
	DeliveryRequired bool     `json:"deliveryRequired"`
	Project          string   `json:"project,omitempty"`
	KafkaBrokers     []string `json:"kakfaBrokers,omitempty"`
	// Kafka, Pubsub
	ValidTopic   string `json:"validTopic,omitempty"`
	InvalidTopic string `json:"invalidTopic,omitempty"`
	// Kinesis
	ValidStream   string `json:"validStream,omitempty"`
	InvalidStream string `json:"invalidStream,omitempty"`
	// Relay, HTTP/S, etc
	ValidUrl   string `json:"validUrl,omitempty"`
	InvalidUrl string `json:"invalidUrl,omitempty"`
	// Subject-based
	ValidSubject   string `json:"validSubject,omitempty"`
	InvalidSubject string `json:"invalidSubject,omitempty"`
	// NATS
	NatsHost string `json:"-"`
	NatsUser string `json:"-"`
	NatsPass string `json:"-"`
	// Elasticsearch
	ValidIndex            string   `json:"validIndex,omitempty"`
	InvalidIndex          string   `json:"invalidIndex,omitempty"`
	ElasticsearchHosts    []string `json:"elasticsearchHosts,omitempty"`
	ElasticsearchUsername string   `json:"-"`
	ElasticsearchPassword string   `json:"-"`
	// File
	ValidFile   string `json:"validFile,omitempty"`
	InvalidFile string `json:"invalidFile,omitempty"`
	// Postgres Database
	PgHost   string `json:"-"`
	PgPort   uint16 `json:"-"`
	PgDbName string `json:"-"`
	PgUser   string `json:"-"`
	PgPass   string `json:"-"`
	// Mysql Database
	MysqlHost   string `json:"-"`
	MysqlPort   uint16 `json:"-"`
	MysqlDbName string `json:"-"`
	MysqlUser   string `json:"-"`
	MysqlPass   string `json:"-"`
	// Materialize Database
	MzHost   string `json:"-"`
	MzPort   uint16 `json:"-"`
	MzDbName string `json:"-"`
	MzUser   string `json:"-"`
	MzPass   string `json:"-"`
	// Timescale Database
	TimescaleHost   string `json:"-"`
	TimescalePort   uint16 `json:"-"`
	TimescaleDbName string `json:"-"`
	TimescaleUser   string `json:"-"`
	TimescalePass   string `json:"-"`
	// Clickhouse Database
	ClickhouseHost   string `json:"-"`
	ClickhousePort   uint16 `json:"-"`
	ClickhouseDbName string `json:"-"`
	ClickhouseUser   string `json:"-"`
	ClickhousePass   string `json:"-"`
	// Database
	ValidTable   string `json:"validTable,omitempty"`
	InvalidTable string `json:"invalidTable,omitempty"`
	// Pubnub
	ValidChannel   string `json:"validChannel,omitempty"`
	InvalidChannel string `json:"invalidChannel,omitempty"`
	PubnubPubKey   string `json:"pubnubPubKey,omitempty"`
	PubnubSubKey   string `json:"pubnubSubKey,omitempty"`
	// Mongodb
	MongoHosts        []string `json:"mongoHosts,omitempty"`
	MongoPort         string   `json:"mongoDbPort,omitempty"`
	MongoDbName       string   `json:"mongoDbName,omitempty"`
	MongoUser         string   `json:"-"`
	MongoPass         string   `json:"-"`
	ValidCollection   string   `json:"validCollection,omitempty"`
	InvalidCollection string   `json:"invalidCollection,omitempty"`
	// Indicative
	IndicativeApiKey string `json:"-"`
	// Amplitude
	AmplitudeApiKey string `json:"-"`
	AmplitudeRegion string `json:"amplitudeRegion,omitempty"`
}

type Snowplow

type Snowplow struct {
	Enabled               bool   `json:"enabled"`
	StandardRoutesEnabled bool   `json:"standardRoutesEnabled"`
	OpenRedirectsEnabled  bool   `json:"openRedirectsEnabled"`
	GetPath               string `json:"getPath"`
	PostPath              string `json:"postPath"`
	RedirectPath          string `json:"redirectPath"`
}

type Squawkbox

type Squawkbox struct {
	Enabled bool `json:"enabled"`
}

type Tele

type Tele struct {
	Enabled bool   `json:"enabled,omitempty"`
	Host    string `json:"host,omitempty"`
}

type Timeout

type Timeout struct {
	Enabled bool `json:"enabled"`
	Ms      int  `json:"ms"`
}

type User

type User struct {
	Id bool `json:"id"`
}

type Webhook

type Webhook struct {
	Enabled bool   `json:"enabled"`
	Path    string `json:"path"`
}

type Yeet

type Yeet struct {
	Enabled bool `json:"enabled"`
}

Jump to

Keyboard shortcuts

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