Types

Here are the type you can use in your model

class cfgtree.types._CfgBase(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]
action
arg_type = None

argument type

cfgfile_value

Return value to save in config file.

cmd_line_name
default = None

Default value

environ_var
environ_var_prefix = None

prefix to use for environemn

get_cmd_line_params()[source]
ignore_in_args = False
ignore_in_cfg = False
ignore_in_envvars = False
long_param
metavar
n_args
name = None

name of the item

read_environ_var()[source]
safe_value

Return value as a string without compromizing information.

set_value(value)[source]

Setter method used in set_node_by_xpath.

value
xpath = None

xpath to reach this element

class cfgtree.types.BoolCfg(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]

Boolean value

Handle automatic integer convertion Example:

True
class cfgtree.types.ConfigFileCfg(*args, default_filename=None, **kwargs)[source]

Configuration file to load rest of configuration

Use to tell to your storage where the rest of the configuration should be used

Example:

"/path/to/my/config.json"
class cfgtree.types.ConfigVersionCfg(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]

Version of the configuration storage.

It does not present an environment variable nor a command line argument

Example:

"1.2.3"
class cfgtree.types.DirNameCfg(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]

Directory name

Example:

"/path/to/existing/folder"
class cfgtree.types.FloatCfg(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]

Float or double value

Example:

1,23
class cfgtree.types.HardcodedCfg(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]

Placeholder only used to store application value.

It does not present an environment variable nor a command line argument.

class cfgtree.types.IPCfg(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]

IPv4 or IPv6 value

Example:

"192.168.0.1"
class cfgtree.types.IntCfg(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]

Integer value

Example:

123
class cfgtree.types.ListOfStringCfg(*args, **kwargs)[source]

Comma separated list of string (1 argument).

Example:

"a,b,c,d"
cfgfile_value

Return value to save in config file.

class cfgtree.types.MultiChoiceCfg(*args, choices=None, **kwargs)[source]

Let user choose one or mode value between several string value

Example:

"a_value"
class cfgtree.types.PasswordCfg(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]

Password value

This can be used to handle value while limiting its exposition

safe_value

Hide password in logs.

class cfgtree.types.PortCfg(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]

Port value, with range from 1 to 65535

Example:

49670
class cfgtree.types.SingleChoiceCfg(*args, choices=None, **kwargs)[source]

Let user choose one value between several string value

Example:

"a_value"
class cfgtree.types.StringCfg(long_param: str = None, description: str = None, short_param: str = None, summary: str = None, required: bool = False, default: typing.Any = <object object>)[source]

String value

Example:

"a value"