diff options
author | Johann CAHIER <johann.cahier@iot.bzh> | 2018-10-09 10:45:08 +0200 |
---|---|---|
committer | Johann CAHIER <johann.cahier@iot.bzh> | 2018-10-11 13:38:39 +0200 |
commit | bbbe9c168526bbb729022f9de903aff5690b328d (patch) | |
tree | e20b465e03d23d4c85a62dbfbc2aa1d8f8c13a4f /docs/part-2/1_xds-server/2_config.md | |
parent | 48374d29bcc3bcf2b055b49d56eac49247772271 (diff) |
Improves documentation
* Describes better available source tree sharing method (between
xds-agent and xds-server), and which to prefer depending on the
deployment setup.
* Gives indication about how to pass RSYNC_TARGET and RSYNC_PREFIX
env vars to the helloworld-native-application build process.
* Swap chapter order (build before config)
Change-Id: Ie4c22f277a59b0405744d71b0fadff67c5d5d025
Signed-off-by: Johann CAHIER <johann.cahier@iot.bzh>
Diffstat (limited to 'docs/part-2/1_xds-server/2_config.md')
-rw-r--r-- | docs/part-2/1_xds-server/2_config.md | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/docs/part-2/1_xds-server/2_config.md b/docs/part-2/1_xds-server/2_config.md new file mode 100644 index 0000000..ad86043 --- /dev/null +++ b/docs/part-2/1_xds-server/2_config.md @@ -0,0 +1,89 @@ +# Configuration + +`xds-server` configuration is driven by a JSON config file (`server-config.json`). + +Here is the logic to determine which `server-config.json` file will be used: + +1. from command line option: `--config myConfig.json` +1. `$HOME/.xds/server/server-config.json` file +1. `/etc/xds/server/server-config.json` file +1. `<xds-server executable dir>/server-config.json` file + +Supported fields in configuration file are: + +- **httpPort** : HTTP port of client webapp/REST API +- **webAppDir** : location of client web application (default: webapp/dist) +- **shareRootDir** : root directory where projects will be copied +- **logsDir** : directory to store logs (eg. syncthing output) +- **sdkScriptsDir** : directory where scripts, used to managed SDKs, are installed +- **sdkDbUpdate** : define how SDK database(s) is(are) updated, supported values are: + `disable`, `startup` (default: `startup`) +- **syncthing.binDir** : syncthing binaries directory (default: executable directory) +- **syncthing.home"** : syncthing home directory (usually .../syncthing-config) +- **syncthing.gui-address** : syncthing gui url (default <http://localhost:8385>) +- **syncthing.gui-apikey** : syncthing api-key to use (default auto-generated) + +All fields are optional and example below corresponds to the default values. + +```json +{ + "httpPort": 8000, + "webAppDir": "webapp/dist", + "shareRootDir": "${HOME}/.xds/server/projects", + "logsDir": "/tmp/logs", + "sdkScriptsDir": "${EXEPATH}/scripts/sdks", + "sdkDbUpdate": "startup", + "syncthing": { + "binDir": "./bin", + "home": "${HOME}/.xds/server/syncthing-config", + "gui-address": "http://localhost:8385", + "gui-apikey": "123456789", + } +} +``` + +>**Notes:** +> +>Environment variables are supported by using `${MY_VAR}` syntax. +> + +When `xds-server` is started as a systemd service, default environment variables +are set into `/etc/default/xds-server` file. + +`xds-server` configuration is also driven by a JSON config file (`server-config.json`), +and default JSON config is `/etc/xds/server/server-config.json`. + +<!-- section-note --> +**Note:** +You can use your own JSON config by settings `APP_CONFIG` variable of +`/etc/default/xds-server` file to your file, for example `/home/MYUSER/.xds/server/server-config.json` +<!-- end-section-note --> + +## Disable syncthing + +`CloudSync` synchronization type based on `syncthing` tool can be disabled by +simply removing (or renaming) `"syncthing"` key in configuration file. +Here is a JSON configuration file example where syncthing key as been renamed: + +```json +{ + "httpPort": 8000, + "webAppDir": "webapp/dist", + "shareRootDir": "${HOME}/.xds/server/projects", + "logsDir": "/tmp/logs", + "sdkScriptsDir": "${EXEPATH}/scripts/sdks", + "syncthing_DISABLE": { + "binDir": "./bin", + "home": "${HOME}/.xds/server/syncthing-config", + } +} +``` + +On benefit to do that is to increase XDS-Server startup time. + +<!-- section-note --> +**Note:** + +- `CloudSync` (AKA syncthing) synchronization type can also be disabled when `"syncthing"` key is not defined in JSON configuration file. + +<!-- end-section-note --> |