config

package
v0.0.0-...-773c202 Latest Latest
Warning

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

Go to latest
Published: May 20, 2024 License: Apache-2.0 Imports: 9 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Browser

type Browser struct {
	Image           interface{}       `json:"image"`
	Port            string            `json:"port"`
	Path            string            `json:"path"`
	Tmpfs           map[string]string `json:"tmpfs,omitempty"`
	Volumes         []string          `json:"volumes,omitempty"`
	Env             []string          `json:"env,omitempty"`
	Hosts           []string          `json:"hosts,omitempty"`
	ShmSize         int64             `json:"shmSize,omitempty"`
	Labels          map[string]string `json:"labels,omitempty"`
	Sysctl          map[string]string `json:"sysctl,omitempty"`
	Mem             string            `json:"mem,omitempty"`
	Cpu             string            `json:"cpu,omitempty"`
	PublishAllPorts bool              `json:"publishAllPorts,omitempty"`
}

Browser configuration

type Browsers

type Browsers map[string]Version

Browsers - browser names for versions

type Config

type Config struct {
	LastReloadTime time.Time
	Browsers       map[string]Versions
	ContainerLogs  *container.LogConfig
	// contains filtered or unexported fields
}

Config current configuration

func NewConfig

func NewConfig() *Config

NewConfig creates new config

func (*Config) Find

func (config *Config) Find(name string, version string) (*Browser, string, bool)

Find - find concrete browser

func (*Config) Load

func (config *Config) Load(browsers, containerLogs string) error

Load loads config from file

func (*Config) State

func (config *Config) State(sessions *session.Map, limit, queued, pending int) *State

State - get current state

type Quota

type Quota map[string]*Sessions

Quota - list of sessions for quota user

type Session

type Session struct {
	ID            string             `json:"id"`
	Container     string             `json:"container,omitempty"`
	ContainerInfo *session.Container `json:"containerInfo,omitempty"`
	VNC           bool               `json:"vnc"`
	Screen        string             `json:"screen"`
	Caps          session.Caps       `json:"caps"`
	Started       time.Time          `json:"started"`
}

Session - session id and vnc flag

type Sessions

type Sessions struct {
	Count    int       `json:"count"`
	Sessions []Session `json:"sessions"`
}

Sessions - used count and individual sessions for quota user

type State

type State struct {
	Total    int      `json:"total"`
	Used     int      `json:"used"`
	Queued   int      `json:"queued"`
	Pending  int      `json:"pending"`
	Browsers Browsers `json:"browsers"`
}

State - current state

type Version

type Version map[string]Quota

Version - browser version for quota

type Versions

type Versions struct {
	Default  string              `json:"default"`
	Versions map[string]*Browser `json:"versions"`
}

Versions configuration

Jump to

Keyboard shortcuts

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