opts

package
v1.0.2 Latest Latest
Warning

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

Go to latest
Published: Jun 26, 2024 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConvertKVStringsToMap

func ConvertKVStringsToMap(values []string) map[string]string

convert "key=value" to {"key":"value"}

func ConvertKVStringsToMapWithNil

func ConvertKVStringsToMapWithNil(values []string) map[string]*string

func ParseCPUs

func ParseCPUs(value string) (int64, error)

ParseCPUs takes a string ratio and returns an integer value of nano cpus

func ParseEnvFile

func ParseEnvFile(filename string) ([]string, error)
func ParseLink(val string) (string, string, error)

ParseLink parses and validates the specified string as a link format (name:alias)

func ReadKVEnvStrings

func ReadKVEnvStrings(files []string, ovveride []string) ([]string, error)

func ReadKVStrings

func ReadKVStrings(files []string, override []string) ([]string, error)

func ValidateDNSSearch

func ValidateDNSSearch(val string) (string, error)

ValidateDNSSearch validates domain for resolvconf search configuration. A zero length domain is represented by a dot (.).

func ValidateEnv

func ValidateEnv(val string) (string, error)

func ValidateIPAddress

func ValidateIPAddress(val string) (string, error)

ValidateIPAddress validates if the given value is a correctly formatted IP address, and returns the value in normalized form. Leading and trailing whitespace is allowed, but it does not allow IPv6 addresses surrounded by square brackets ("[::1]").

Refer to net.ParseIP for accepted formats.

func ValidateLabel

func ValidateLabel(value string) (string, error)

ValidateLabel validates that the specified string is a valid label, and returns it.

Labels are in the form of key=value; key must be a non-empty string, and not contain whitespaces. A value is optional (defaults to an empty string if omitted).

Leading whitespace is removed during validation but values are kept as-is otherwise, so any string value is accepted for both, which includes whitespace (for values) and quotes (surrounding, or embedded in key or value).

TODO discuss if quotes (and other special characters) should be valid or invalid for keys TODO discuss if leading/trailing whitespace in keys should be preserved (and valid)

func ValidateLink(val string) (string, error)

ValidateLink validates that the specified string has a valid link format (containerName:alias).

func ValidateMACAddress

func ValidateMACAddress(val string) (string, error)

ValidateMACAddress validates a MAC address.

func ValidateSysctl

func ValidateSysctl(val string) (string, error)

ValidateSysctl validates a sysctl and returns it.

func ValidateThrottleBpsDevice

func ValidateThrottleBpsDevice(val string) (*devices.ThrottleDevice, error)

func ValidateThrottleIOpsDevice

func ValidateThrottleIOpsDevice(val string) (*devices.ThrottleDevice, error)

func ValidateWeightDevice

func ValidateWeightDevice(val string) (*devices.WeightDevice, error)

Types

type ErrBadKey

type ErrBadKey struct {
	// contains filtered or unexported fields
}

ErrBadKey typed error for bad environment variable

func (ErrBadKey) Error

func (e ErrBadKey) Error() string

type FilterOpt

type FilterOpt struct {
	// contains filtered or unexported fields
}

FilterOpt is a flag type for validating filters

func NewFilterOpt

func NewFilterOpt() FilterOpt

NewFilterOpt returns a new FilterOpt

func (*FilterOpt) Set

func (o *FilterOpt) Set(value string) error

Set sets the value of the opt by parsing the command line value

func (*FilterOpt) String

func (o *FilterOpt) String() string

func (*FilterOpt) Type

func (o *FilterOpt) Type() string

Type returns the option type

func (*FilterOpt) Value

func (o *FilterOpt) Value() filters.Args

Value returns the value of this option

type ListOpts

type ListOpts struct {
	// contains filtered or unexported fields
}

ListOpts holds a list of values and a validation function.

func NewListOpts

func NewListOpts(validator ValidatorFctType) ListOpts

NewListOpts creates a new ListOpts with the specified validator.

func NewListOptsRef

func NewListOptsRef(values *[]string, validator ValidatorFctType) *ListOpts

NewListOptsRef creates a new ListOpts with the specified values and validator.

func (*ListOpts) Delete

func (opts *ListOpts) Delete(key string)

Delete removes the specified element from the slice.

func (*ListOpts) Get

func (opts *ListOpts) Get(key string) bool

Get checks the existence of the specified key.

func (*ListOpts) GetAll

func (opts *ListOpts) GetAll() []string

GetAll returns the values of slice.

func (*ListOpts) GetAllOrEmpty

func (opts *ListOpts) GetAllOrEmpty() []string

GetAllOrEmpty returns the values of the slice or an empty slice when there are no values.

func (*ListOpts) GetMap

func (opts *ListOpts) GetMap() map[string]struct{}

GetMap returns the content of values in a map in order to avoid duplicates.

func (*ListOpts) Len

func (opts *ListOpts) Len() int

Len returns the amount of element in the slice.

func (*ListOpts) Set

func (opts *ListOpts) Set(value string) error

Set validates if needed the input value and adds it to the internal slice.

func (*ListOpts) String

func (opts *ListOpts) String() string

func (*ListOpts) Type

func (opts *ListOpts) Type() string

Type returns a string name for this Option type

func (*ListOpts) WithValidator

func (opts *ListOpts) WithValidator(validator ValidatorFctType) *ListOpts

WithValidator returns the ListOpts with validator set.

type MapOpts

type MapOpts struct {
	// contains filtered or unexported fields
}

MapOpts holds a map of values and a validation function.

func NewMapOpts

func NewMapOpts(values map[string]string, validator ValidatorFctType) *MapOpts

NewMapOpts creates a new MapOpts with the specified map of values and a validator.

func (*MapOpts) GetAll

func (opts *MapOpts) GetAll() map[string]string

GetAll returns the values of MapOpts as a map.

func (*MapOpts) Set

func (opts *MapOpts) Set(value string) error

Set validates if needed the input value and add it to the internal map, by splitting on '='.

func (*MapOpts) String

func (opts *MapOpts) String() string

func (*MapOpts) Type

func (opts *MapOpts) Type() string

Type returns a string name for this Option type

type MemBytes

type MemBytes int64

MemBytes is a type for human readable memory bytes (like 128M, 2g, etc)

func (*MemBytes) Set

func (m *MemBytes) Set(value string) error

Set sets the value of the MemBytes by passing a string

func (*MemBytes) String

func (m *MemBytes) String() string

String returns the string format of the human readable memory bytes

func (*MemBytes) Type

func (m *MemBytes) Type() string

Type returns the type

func (*MemBytes) UnmarshalJSON

func (m *MemBytes) UnmarshalJSON(s []byte) error

UnmarshalJSON is the customized unmarshaler for MemBytes

func (*MemBytes) Value

func (m *MemBytes) Value() int64

Value returns the value in int64

type MemSwapBytes

type MemSwapBytes int64

MemSwapBytes is a type for human readable memory bytes (like 128M, 2g, etc). It differs from MemBytes in that -1 is valid and the default.

func (*MemSwapBytes) Set

func (m *MemSwapBytes) Set(value string) error

Set sets the value of the MemSwapBytes by passing a string

func (*MemSwapBytes) String

func (m *MemSwapBytes) String() string

func (*MemSwapBytes) Type

func (m *MemSwapBytes) Type() string

Type returns the type

func (*MemSwapBytes) UnmarshalJSON

func (m *MemSwapBytes) UnmarshalJSON(s []byte) error

UnmarshalJSON is the customized unmarshaler for MemSwapBytes

func (*MemSwapBytes) Value

func (m *MemSwapBytes) Value() int64

Value returns the value in int64

type NamedListOpts

type NamedListOpts struct {
	ListOpts
	// contains filtered or unexported fields
}

NamedListOpts is a ListOpts with a configuration name. This struct is useful to keep reference to the assigned field name in the internal configuration struct.

func NewNamedListOptsRef

func NewNamedListOptsRef(name string, values *[]string, validator ValidatorFctType) *NamedListOpts

NewNamedListOptsRef creates a reference to a new NamedListOpts struct.

func (*NamedListOpts) Name

func (o *NamedListOpts) Name() string

Name returns the name of the NamedListOpts in the configuration.

type NamedMapOpts

type NamedMapOpts struct {
	MapOpts
	// contains filtered or unexported fields
}

NamedMapOpts is a MapOpts struct with a configuration name. This struct is useful to keep reference to the assigned field name in the internal configuration struct.

func NewNamedMapOpts

func NewNamedMapOpts(name string, values map[string]string, validator ValidatorFctType) *NamedMapOpts

NewNamedMapOpts creates a reference to a new NamedMapOpts struct.

func (*NamedMapOpts) Name

func (o *NamedMapOpts) Name() string

Name returns the name of the NamedMapOpts in the configuration.

type NamedOption

type NamedOption interface {
	Name() string
}

NamedOption is an interface that list and map options with names implement.

type NanoCPUs

type NanoCPUs int64

NanoCPUs is a type for fixed point fractional number.

func (*NanoCPUs) Set

func (c *NanoCPUs) Set(value string) error

Set sets the value of the NanoCPU by passing a string

func (*NanoCPUs) String

func (c *NanoCPUs) String() string

String returns the string format of the number

func (*NanoCPUs) Type

func (c *NanoCPUs) Type() string

Type returns the type

func (*NanoCPUs) Value

func (c *NanoCPUs) Value() int64

Value returns the value in int64

type NetworkAttachmentOpts

type NetworkAttachmentOpts struct {
	Target       string
	Aliases      []string
	DriverOpts   map[string]string
	Links        []string // TODO add support for links in the csv notation of `--network`
	IPv4Address  string
	IPv6Address  string
	LinkLocalIPs []string
	MacAddress   string
}

NetworkAttachmentOpts represents the network options for endpoint creation

type NetworkOpt

type NetworkOpt struct {
	// contains filtered or unexported fields
}

NetworkOpt represents a network config in swarm mode.

func (*NetworkOpt) NetworkMode

func (n *NetworkOpt) NetworkMode() string

NetworkMode return the network mode for the network option

func (*NetworkOpt) Set

func (n *NetworkOpt) Set(value string) error

Set networkopts value

func (*NetworkOpt) String

func (n *NetworkOpt) String() string

String returns the network opts as a string

func (*NetworkOpt) Type

func (n *NetworkOpt) Type() string

Type returns the type of this option

func (*NetworkOpt) Value

func (n *NetworkOpt) Value() []NetworkAttachmentOpts

Value returns the networkopts

type ThrottledeviceOpt

type ThrottledeviceOpt struct {
	// contains filtered or unexported fields
}

func NewThrottledeviceOpt

func NewThrottledeviceOpt(validator ValidatorThrottleFctType) ThrottledeviceOpt

func (*ThrottledeviceOpt) GetList

func (opt *ThrottledeviceOpt) GetList() []*devices.ThrottleDevice

func (*ThrottledeviceOpt) Set

func (opt *ThrottledeviceOpt) Set(val string) error

func (*ThrottledeviceOpt) String

func (opt *ThrottledeviceOpt) String() string

func (*ThrottledeviceOpt) Type

func (opt *ThrottledeviceOpt) Type() string

type ValidatorFctListType

type ValidatorFctListType func(val string) ([]string, error)

ValidatorFctListType defines a validator function that returns a validated list of string and/or an error

type ValidatorFctType

type ValidatorFctType func(val string) (string, error)

ValidatorFctType defines a validator function that returns a validated string and/or an error.

type ValidatorThrottleFctType

type ValidatorThrottleFctType func(val string) (*devices.ThrottleDevice, error)

type ValidatorWeightFctType

type ValidatorWeightFctType func(val string) (*devices.WeightDevice, error)

定义了一个validator函数

type WeightdeviceOpt

type WeightdeviceOpt struct {
	// contains filtered or unexported fields
}

func NewWeightdeviceOpt

func NewWeightdeviceOpt(validator ValidatorWeightFctType) WeightdeviceOpt

func (*WeightdeviceOpt) GetList

func (opt *WeightdeviceOpt) GetList() []*devices.WeightDevice

GetList returns a slice of pointers to WeightDevices.

func (*WeightdeviceOpt) Set

func (opt *WeightdeviceOpt) Set(val string) error

Set validates a WeightDevice and sets its name as a key in WeightdeviceOpt

func (*WeightdeviceOpt) String

func (opt *WeightdeviceOpt) String() string

String returns WeightdeviceOpt values as a string.

func (*WeightdeviceOpt) Type

func (opt *WeightdeviceOpt) Type() string

Type returns the option type

Jump to

Keyboard shortcuts

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