server

package
v0.0.0-...-d2a3a15 Latest Latest
Warning

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

Go to latest
Published: Jun 23, 2025 License: EUPL-1.2 Imports: 43 Imported by: 0

Documentation

Overview

Package server provides the server subcommand.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Command

type Command struct {
	ListenAddr      string `help:"Listen address" default:"0.0.0.0" env:"LISTEN_ADDR"`
	Port            int    `help:"Listen port" default:"8080" env:"PORT"`
	PrometheusPort  int    `help:"Listen port" default:"8081" env:"PORT"`
	TracingEnabled  bool   `help:"Enable tracing" default:"false" env:"TRACING_ENABLED"`
	TracingEndpoint string `help:"Tracing endpoint as <host>:<port>"  env:"TRACING_ENDPOINT"`

	ProviderLister        string `help:"Provider lister to use" enum:"static,fc" default:"static" env:"PROVIDER_LISTER"` //nolint:lll
	ProviderCatalogURL    string `help:"Link to the federated catalog" default:"" env:"PROVIDER_CATALOG_URL"`
	ProviderPublicKeyFile string `help:"JSON file with map of provider_url -> base64 JWK public key" default:"" env:"PROVIDER_PUBLIC_KEY_FILE"` //nolint:lll

	StudyManager        string `help:"Study manager to use." enum:"static,dsp" default:"static" env:"STUDY_MANAGER"`
	StudyCatalogBaseUri string `help:"Study catalog base URI." default:"https://study.dev-dataloft-ionos.de/api" env:"STUDY_CATALOG_BASE_URI"` //nolint:lll

	RedisHost                  string `help:"Redis host" default:"localhost" env:"REDIS_HOST"`
	RedisPort                  int    `help:"Redis port" default:"6379" env:"REDIS_PORT"`
	RedisPassword              string `help:"Redis password" default:"" env:"REDIS_PASSWORD"`
	RedisDB                    int    `help:"Redis DB" default:"0" env:"REDIS_DB"`
	RedisTLS                   bool   `help:"Redis enable TLS" default:"false" env:"REDIS_TLS"`
	RedisTLSInsecureSkipVerify bool   `help:"Redis skip TLS verification" default:"false" env:"REDIS_TLS_INSECURE_SKIP_VERIFY"` //nolint:lll
	RedisCacheTimeout          int    `help:"Redis cache timeout in minutes" default:"10" env:"REDIS_CACHE_TIMEOUT"`

	RunDspAddress       string `help:"Address of run-dsp GRPC endpoint" default:"" env:"RUNDSP_URL"`
	RunDspInsecure      bool   `help:"RunDsp connection does not use TLS" default:"false" env:"RUNDSP_INSECURE"`
	RunDspCACert        string `help:"Custom CA certificate for rundsp's TLS certificate" env:"RUNDSP_CA"`
	RunDspClientCert    string `help:"Client certificate to use to authenticate with rundsp" env:"RUNDSP_CLIENT_CERT"`
	RunDspClientCertKey string `help:"Key to the client certificate" env:"RUNDSP_CLIENT_CERT_KEY"`
	// contains filtered or unexported fields
}

Command contains all the options for running the server.

func (*Command) Run

func (c *Command) Run(p cli.Params) error

Run runs the server.

Directories

Path Synopsis
api
Package api contains the API implementation.
Package api contains the API implementation.
implementations/providerlisters/fc
Package fc contains the interface to the federated catalog.
Package fc contains the interface to the federated catalog.
implementations/providerlisters/static
Package static contains a static provider lister implementation, made for basic testing.
Package static contains a static provider lister implementation, made for basic testing.
implementations/studymanagers
Package simple provides primitives to interact with the openapi HTTP API.
Package simple provides primitives to interact with the openapi HTTP API.
implementations/studymanagers/dsp
Package simple contains a simple Study lister implementation, made for basic testing.
Package simple contains a simple Study lister implementation, made for basic testing.
implementations/studymanagers/static
Package static contains a static Study lister implementation, made for basic testing.
Package static contains a static Study lister implementation, made for basic testing.
types
Package types provides types and interfaces for the API and its backends.
Package types provides types and interfaces for the API and its backends.

Jump to

Keyboard shortcuts

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