-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathk8psh_example.conf
45 lines (37 loc) · 3.56 KB
/
k8psh_example.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# K8PSH Configuration
# The configuration is divided into 2 sections: common settings and server settings.
# The common settings are used in client mode (when invoking an executable that will run in a different container) and / or server mode (listening for client to invoke an executable).
# The server settings are listed after all common settings and are divided into sections to configure the executables for each server daemon.
# Configuration strings can be of the following forms: value, "value", or 'value'. (Unquoted values cannot contain whitespace.)
# Double quoted strings can contain escape sequences: \" (alternate ""), \\, \', \b, \t, \n, \f, \r, \0, \x9e.
# Single quoted strings only have one escape sequence: ''
# Unquoted and double quoted strings can contain environment variable references of the form ${NAME:-default_value}.
# Common Settings
#
# The common settings consist of "key" = "value" pairs.
# The base directory is the common, shared directory that is used to specify relative working directories, and can be specified as an absolute directory or as a directory relative to the configuration file.
baseDirectory = ${WORKSPACE:-.} # This will set the base directory to the value of the environment variable WORKSPACE (or the directory of the configuration file if the environment variable does not exist).
connectTimeoutMs = -1 # The timeout in milliseconds before failing to connect to the server (or negative to retry forever). Defaults to 30000.
# Server Settings
#
# A server section starts with "[ name:port ]", identifying the hostname of the server and an optional port (unspecified ports are numbered sequentially from the previous port, with a default starting value of 1120).
# Each section contains a list of all executables in the form "[name] ENV_1=default-value ?OPTIONAL_ENV= =INHERITED_ENV= executable --arg1".
# The first argument that is not an environment variable (does not contain an equals sign) is considered to be the executable (argv[0]) to invoke (or the name of the command, if all arguments end in an equals sign).
# Additional arguments may also be specified.
# Any arguments sent by the client will be appended to the end of the argument list when invoking the executable.
# Required environment variables will be set to the default if not specified by the client.
# Optional environment variables begin with a '?' and will be set to the default if not specified by the client (empty means inherit from the running server).
# Inherited environment variables begin with a '=' and will be will be set to the specified value (empty means inherit from the running server).
# Note that default values of environment variables undergo reference expansion for any values in single quotes. (Unquoted or double quoted environment variables undergo reference expansion at configuration load time.)
[ gcc:2102 ] =PATH= --disable-client-executables # Environment variables for all commands followed by server arguments may be specified, if desired.
gcc
g++
[ java ]
java ?LD_LIBRARY_PATH= =LD_LIBRARY_PATH='${LD_LIBRARY_PATH}':. /lib/ld-linux-x86-64.so.2 /usr/bin/java # JNI testing example: Call the loader to execute java, and always update LD_LIBRARY_PATH to include '.'
[ gradle ]
gradle ?GRADLE_USER_HOME= ?GRADLE_OPTS= # No executable specified, so 'gradle' will be called using the environment variables, which default to the values from the server. (Note: ?GRADLE_OPTS= is essentially short-hand for GRADLE_OPTS='${GRADLE_OPTS}'.)
javac
[ make ]
make
[ DontDoThis ] --this-argument-will-not-be-processed
# Any server listed without any commands is ignored even if the name matches.