config

package
v0.0.0-...-6d13c91 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2024 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	APIRootPath       string        `envconfig:"APP_API_ROOT_PATH,default=/ias-adapter"`
	Address           string        `envconfig:"APP_ADDRESS,default=localhost:8080"`
	ReadTimeout       time.Duration `envconfig:"APP_READ_TIMEOUT,default=30s"`
	ReadHeaderTimeout time.Duration `envconfig:"APP_READ_HEADER_TIMEOUT,default=30s"`
	WriteTimeout      time.Duration `envconfig:"APP_WRITE_TIMEOUT,default=30s"`
	IdleTimeout       time.Duration `envconfig:"APP_IDLE_TIMEOUT,default=30s"`
	TenantInfo        TenantInfo
	IASConfig         IAS
	Postgres          Postgres
	JWKCache          JWKCache
}

func New

func New() (Config, error)

type IAS

type IAS struct {
	CockpitSecretPath string        `envconfig:"APP_IAS_COCKPIT_PATH"`
	RequestTimeout    time.Duration `envconfig:"APP_IAS_REQUEST_TIMEOUT,default=30s"`
}

type JWKCache

type JWKCache struct {
	Endpoint       string        `envconfig:"APP_JWK_CACHE_ENDPOINT"`
	SyncInterval   time.Duration `envconfig:"APP_JWK_CACHE_SYNC_INTERVAL,default=5m"`
	RequestTimeout time.Duration `envconfig:"APP_JWK_REQUEST_TIMEOUT,default=30s"`
}

type Postgres

type Postgres struct {
	User           string        `envconfig:"APP_POSTGRES_USER,default=user"`
	Password       string        `envconfig:"APP_POSTGRES_PASSWORD,default=password"`
	Host           string        `envconfig:"APP_POSTGRES_HOST,default=localhost"`
	Port           uint16        `envconfig:"APP_POSTGRES_PORT,default=5432"`
	DatabaseName   string        `envconfig:"APP_POSTGRES_DB_NAME,default=db_name"`
	SSLMode        string        `envconfig:"APP_POSTGRES_SSL_MODE,default=disable"`
	ConnectTimeout time.Duration `envconfig:"APP_POSTGRES_CONNECT_TIMEOUT,default=30s"`
	RequestTimeout time.Duration `envconfig:"APP_POSTGRES_REQUEST_TIMEOUT,default=30s"`
}

func (Postgres) ConnectionString

func (p Postgres) ConnectionString() string

type TenantInfo

type TenantInfo struct {
	Endpoint           string        `envconfig:"APP_TENANT_INFO_ENDPOINT,default=localhost:8080/v1/info"`
	RequestTimeout     time.Duration `envconfig:"APP_TENANT_INFO_REQUEST_TIMEOUT,default=30s"`
	InsecureSkipVerify bool          `envconfig:"APP_TENANT_INFO_INSECURE_SKIP_VERIFY,default=false"`
}

Jump to

Keyboard shortcuts

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