config

package
v1.0.18 Latest Latest
Warning

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

Go to latest
Published: Apr 29, 2024 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 API

type API struct {
	Enabled             bool   `yaml:"enabled" env:"SCRATCH_API_ENABLED"`
	Port                int    `yaml:"port"`
	HealthCheckFailFile string `yaml:"healthcheck_fail_file"`
	APIKeyCacheTTL      int    `yaml:"api_key_cache_ttl"`
}

type APIKey

type APIKey struct {
	Key string `yaml:"key"`
}

type BlobStore

type BlobStore struct {
	Type     string         `yaml:"type"`
	Settings map[string]any `yaml:"settings"`
}

type Cache

type Cache struct {
	Type     string         `yaml:"type"`
	Settings map[string]any `yaml:"settings"`
}

type CryptoConfig

type CryptoConfig struct {
	JWTPrivateKey string `yaml:"jwt_private_key"`
}

type DashboardConfig

type DashboardConfig struct {
	Enabled            bool   `yaml:"enabled"`
	LiveReload         bool   `yaml:"live_reload"`
	CSRFSecret         string `yaml:"csrf_secret"`
	ExternalURL        string `yaml:"external_url"`
	GoogleRedirectURL  string `yaml:"google_redirect_url"`
	GoogleClientID     string `yaml:"google_client_id"`
	GoogleClientSecret string `yaml:"google_client_secret"`
}

type DataSink

type DataSink struct {
	Type     string         `yaml:"type"`
	Settings map[string]any `yaml:"settings"`
}

type Database

type Database struct {
	Type     string         `yaml:"type"`
	Settings map[string]any `yaml:"settings"`
}

type Destination

type Destination struct {
	ID       int64          `yaml:"id" json:"id"`
	Type     string         `yaml:"type" json:"type"`
	Name     string         `yaml:"name" json:"name"`
	Settings map[string]any `yaml:"settings" json:"settings"`
	APIKeys  []string       `yaml:"api_keys" json:"api_keys"`
}

type Logging

type Logging struct {
	JSONFormat bool   `yaml:"json_format"`
	Level      string `yaml:"level"`
}

type Prometheus

type Prometheus struct {
	Enabled  bool   `yaml:"enabled"`
	Port     int    `yaml:"port"`
	Username string `yaml:"username"`
	Password string `yaml:"password"`
}

type Queue

type Queue struct {
	Type     string         `yaml:"type"`
	Settings map[string]any `yaml:"settings"`
}

type ScratchDataConfig

type ScratchDataConfig struct {
	Logging      Logging       `yaml:"logging"`
	API          API           `yaml:"api"`
	Workers      Workers       `yaml:"workers"`
	DataSink     DataSink      `yaml:"data_sink"`
	Queue        Queue         `yaml:"queue"`
	Cache        Cache         `yaml:"cache"`
	Database     Database      `yaml:"database"`
	BlobStore    BlobStore     `yaml:"blob_store"`
	Destinations []Destination `yaml:"destinations"`
	APIKeys      []APIKey      `yaml:"api_keys"`
	Prometheus   Prometheus    `yaml:"prometheus"`

	Crypto CryptoConfig `yaml:"crypto"`

	Dashboard DashboardConfig `yaml:"dashboard"`
}

type Workers

type Workers struct {
	Enabled                bool   `yaml:"enabled" env:"SCRATCH_WORKERS_ENABLED"`
	Count                  int    `yaml:"count"`
	DataDirectory          string `yaml:"data_directory"`
	FreeSpaceRequiredBytes int64  `yaml:"free_space_required_bytes"`

	MaxBulkQuerySizeBytes int `yaml:"max_bulk_query_size_bytes"`
	BulkChunkSizeBytes    int `yaml:"bulk_chunk_size_bytes"`
}

Jump to

Keyboard shortcuts

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