Rabix Executor configuration

Estimated reading time: 5 minutes

Rabix Executor configuration parameters are stored in its configuration file named core.properties. By default, the configuration file is located in the config subdirectory.

If necessary, you are able to point to a different folder where the config file is stored, using the -c option in the command line on execution (see Command line reference for more details).

The configuration file consists of key - value pairs. The following keys are available:

Key Value Description

backend.execution.directory

path

Specify the execution directory, which will contain the directory structure of the app that is being executed and the output files.

backend.embedded.types

LOCAL/TES (one of these options, or both separated by comma)

List of all embedded backends that will be available when Rabix Executor is started.

executor.calculate_file_checksum

true or false

If set to true, checksum of all files detected as outputs will be calculated.

executor.checksum_algorithm

SHA1 or MD5

Define the algorithm that is used to output the checksum. Available algorithms are SHA1 and MD5.

executor.set_permissions

true or false

If set to true, applies the UID and GID defined in the config file or the UID and GID of the current user if no UID and GID are set in the config file (see the two parameters below).

executor.permission.uid

number

Set UID of the user who will own the files. Execution in a Docker container is done with root permissions. In order to avoid all files resulting from execution having root permissions, you need to set up the UID of the user who will own the files.

executor.permission.gid

number

Set GID of the group owner of the files. Execution in a Docker container is done with root permissions. In order to avoid all files resulting from execution having root permissions, you need to set up the GID of the group that will own the files.

engine.delete_intermediary_files

true or false

Deletes all files except output files.

engine.treat_inputs_as_intermediary

true or false

If set to true and if engine.delete_intermediary_files is also set to true, input files will also be deleted along with other intermediary files.

engine.set_resources

true or false

Sets the resources per job to match the available resources on the machine where the execution is taking place.

engine.store

IN_MEMORY or POSTGRES

The location where the execution engine will store its internal data. If set to POSTGRES, database connection details need to be provided in the store.properties file.

resource.fitter.enabled

true or false

If enabled, limits the number of jobs which can be executed in parallel based on the CPU and memory requirements of the jobs.

cache.enabled

true or false

Enables or disables cache.directory.

cache.directory

path

Path to the directory where the same task has already been executed, but has failed at some point during execution. This will allow you to continue the execution from the point of failure.

docker.enabled

true or false

If set to false, the execution will take place on your local machine instead of a Docker container. For the execution to be successful, you will need all prerequisites for the app(s) you are running the be already installed on your machine. For example, if the app you are running is essentially a Python script, you will need Python on your machine to be able to run it without an adequate Docker container.

docker.remove_containers

true or false

Removes docker containers from the local machine after execution.

docker.host

string

Path to the docker host. The default path is unix:///var/run/docker.sock.

docker.username

string

Docker registry username. Used if the registry you are pulling the base image from requires authentication.

docker.password

string

Docker registry password. Used if the registry you are pulling the base image from requires authentication.

docker.override.auth.enabled

true or false

Needs to be set to true in order to use docker.username and docker.password values to pull an image from a registry that requires authentication.

top