Set install dir to /opt/AGL and move conf to $HOME/.xds-server
[src/xds/xds-server.git] / README.md
index da1c60c..edac7c4 100644 (file)
--- a/README.md
+++ b/README.md
@@ -62,7 +62,7 @@ Use provided script to create a new docker image and start a new container:
 seb@laptop ~$ wget https://raw.githubusercontent.com/iotbzh/xds-server/master/scripts/xds-docker-create-container.sh
 
 # Create new XDS worker container
-seb@laptop ~$ bash ./xds-docker-create-container.sh docker.automotivelinux.org/agl/worker-xds:X.Y
+seb@laptop ~$ bash ./xds-docker-create-container.sh
 
 # Check that new container is running
 seb@laptop ~$ docker ps | grep worker-xds
@@ -76,6 +76,29 @@ This container (ID=0) exposes following ports:
 - 69   : TFTP
 - 2222 : ssh
 
+#### Manually setup docker user id
+
+If you plan to **use path-mapping sharing type for your projects**, you need to have the same user id and group id inside and outside docker. By default user and group name inside docker is set `devel` (id `1664`), use following commands to replace id `1664` with your user/group id:
+```bash
+# Set docker container name to use (usually agl-xds-xxx where xxx is USERNAME@MACHINENAME-IDX-NAME)
+seb@laptop ~$ export CONTAINER_NAME=agl-xds-seb@laptop-0-seb
+
+# First stop xds-server
+seb@laptop ~$ docker exec ${CONTAINER_NAME} bash -c "systemctl stop xds-server"
+
+# Change user and group id inside docker to match your ids
+seb@laptop ~$ docker exec ${CONTAINER_NAME} bash -c "usermod -u $(id -u) devel"
+seb@laptop ~$ docker exec ${CONTAINER_NAME} bash -c "groupmod -g $(id -g) devel"
+
+# Update some files ownership
+seb@laptop ~$ docker exec ${CONTAINER_NAME} bash -c "chown -R devel:devel /home/devel /tmp/xds*"
+
+# Restart xds-server
+seb@laptop ~$ docker exec ${CONTAINER_NAME} bash -c "systemctl start xds-server"
+```
+
+## Check if xds-server is running (open XDS Dashboard)
+
 **`xds-server` is automatically started** as a service on container startup.
 
 If the container is running on your localhost, you can access the web interface (what we call the "Dashboard"):
@@ -111,16 +134,16 @@ XDS server is started as a service by Systemd.
 /lib/systemd/system/xds-server.service
 ```
 
-This Systemd service starts a bash script `/usr/local/bin/xds-server-start.sh`
+This Systemd service starts a bash script `/opt/AGL/xds/server/xds-server-start.sh`
 
 If you needed you can change default setting by defining specific environment
 variables in `/etc/default/xds-server`.
-For example to control log level, just set LOGLEVEL env variable knowing that
+For example to control log level, just set LOG_LEVEL env variable knowing that
 supported *level* are: panic, fatal, error, warn, info, debug.
 
 ```bash
 seb@laptop ~$ ssh -p 2222 devel@localhost
-devel@docker ~$ echo 'LOGLEVEL=debug' | sudo tee --append /etc/default/xds-server > /dev/null
+devel@docker ~$ echo 'LOG_LEVEL=debug' | sudo tee --append /etc/default/xds-server > /dev/null
 devel@docker ~$ sudo systemctl restart xds-server.service
 devel@docker ~$ tail -f /tmp/xds-server/logs/xds-server.log
 ```
@@ -139,10 +162,10 @@ Intel corei7-64:
 seb@laptop ~$ ssh -p 2222 devel@localhost
 
 # Install ARM64 SDK (automatic download)
-devel@docker ~$ sudo /usr/local/bin/xds-utils/install-agl-sdks.sh --arch aarch64
+devel@docker ~$ sudo /opt/AGL/xds/server/xds-utils/install-agl-sdks.sh --arch aarch64
 
 # Install Intel corei7-64 SDK (using an SDK tarball that has been built or downloaded manually)
-devel@docker ~$ sudo /usr/local/bin/xds-utils/install-agl-sdks.sh --arch corei7-64 --file /tmp/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-toolchain-
+devel@docker ~$ sudo /opt/AGL/xds/server/xds-utils/install-agl-sdks.sh --arch corei7-64 --file /tmp/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-toolchain-
 3.99.1+snapshot.sh
 
 ```
@@ -211,7 +234,7 @@ Clone this repo into your `$GOPATH/src/github.com/iotbzh` and use delivered Make
  make all
 ```
 
-And to install `xds-server` (by default in `/usr/local/bin`):
+And to install `xds-server` (by default in `/opt/AGL/xds/server`):
 
 ```bash
  make install
@@ -243,8 +266,8 @@ make build FLAVOUR=xds
 Here is the logic to determine which `config.json` file will be used:
 
 1. from command line option: `--config myConfig.json`
-1. `$HOME/.xds/config.json` file
-1. `<current dir>/config.json` file
+1. `$HOME/.xds-server/config.json` file
+1. `/etc/xds-server/config.json` file
 1. `<xds-server executable dir>/config.json` file
 
 Supported fields in configuration file are (all fields are optional and example
@@ -264,12 +287,12 @@ below corresponds to the default values):
 {
     "httpPort": 8000,
     "webAppDir": "webapp/dist",
-    "shareRootDir": "${HOME}/.xds/projects",
+    "shareRootDir": "${HOME}/.xds-server/projects",
     "logsDir": "/tmp/logs",
     "sdkRootDir": "/xdt/sdk",
     "syncthing": {
         "binDir": "./bin",
-        "home": "${HOME}/.xds/syncthing-config",
+        "home": "${HOME}/.xds-server/syncthing-config",
         "gui-address": "http://localhost:8384",
         "gui-apikey": "123456789",
     }