The SnowFox daemon binary. Responsible for orchestrating the execution of the manager and the spawner.

Daemon options

These options tweak the daemonisation process.

--daemonise: run SnowFox in daemon mode

Type Boolean
Default true

When run in daemon mode, snow-fox detaches itself from the parent process. It then starts the snow-fox-spawner with root privileges, drops them, and starts the snow-fox-manager process.

You can use --group and --user options to change the group/user to drop to.

--drop_privileges: drop privileges when not in daemon mode

Type Boolean
Default false

When run outside daemon mode, snow-fox starts the snow-fox-spawner and snow-fox-manager with the same group/user that started the process, which needs to be root.

Because this is a security risk, --drop_privileges can be specified to still drop group and user privileges even without daemonising the process.

--group: group to drop privileges to

Type String
Default snow-fox

When run in daemon mode, or when --drop_privileges is specified, the effective group is set to this option.

--user: user to drop privileges to

Type String
Default snow-fox

When run in daemon mode, or when --drop_privileges is specified, the effective user is set to this option.

Cluster options

--node_name: unique name of the node

Type String
Default node

Used to set the name for the node. Names must be unique within the cluster.

I/O options

Customise the processes Input/Output.

--stderr: redirect standard error to file

Type String
Default

When the specified value is not the empty string, the standard error of the SnowFox processes is redirected to the file at this path.

--stdin: redirect standard input from file

Type String
Default

When the specified value is not the empty string, the standard input of the SnowFox processes is read from the file at this path.

--stdout: redirect standard output to file

Type String
Default

When the specified value is not the empty string, the standard output of the SnowFox processes is redirected to the file at this path.

--work_dir: set the working directory.

Type String
Default .

Set the given path as the process working directory.

Repository options

Configuration repository related options.

--repo_path: path to the configuration repository

Type String
Default None This option is required

Location on the file system of the configuration repository.

This option is forwarded to the Manager.

--repo_type: type of configuration repository

Type String
Default git

Type of version control system repository where the configuration is stored. The only supported type of repository is git.

This option is forwarded to the Manager.

--repo_ver: version of the configuration to use

Type String
Default git

The identifier of the configuration version to use. It may be a logical name (such as master) or an actual version (a commit hash).

This option is forwarded to the Manager.

Inter-Process communication

Configure how daemon, manager, and spawner talk to each other.

--manager_socket: socket file to connect daemon and manager

Type String
Default /var/run/snow-fox-manager.socket

Daemon and Manager use UNIX sockets to exchange protocol buffer messages. The path to the UNIX socket can be specified with this option.

--spawner_manager_socket: socket file to connect manager and spawner

Type String
Default /var/run/snow-fox-manager-spawner.socket

Manager and Spawner use UNIX sockets to exchange protocol buffer messages. The path to the UNIX socket can be specified with this option.

This option is forwarded from the daemon to both manager and spawner.

--spawner_socket: socket file to connect daemon and spawner

Type String
Default /var/run/snow-fox-spawner.socket

Daemon and Spawner use UNIX sockets to exchange protocol buffer messages. The path to the UNIX socket can be specified with this option.

Other

Miscellaneous options.

--help: show available options

Print the list of available options and parameters and exits.

--Version: show version and exit

Print the version of the binary and exits.