-
Notifications
You must be signed in to change notification settings - Fork 28
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. |