Skip to content

Configuration

Marko Marinković edited this page Jul 21, 2017 · 2 revisions

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.