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/1_build.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/1_build.md')
-rw-r--r-- | docs/part-2/1_xds-server/1_build.md | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/docs/part-2/1_xds-server/1_build.md b/docs/part-2/1_xds-server/1_build.md new file mode 100644 index 0000000..5c5059f --- /dev/null +++ b/docs/part-2/1_xds-server/1_build.md @@ -0,0 +1,84 @@ +# Build xds-server from scratch + +## Dependencies + +Install [Go](https://golang.org/doc/install), [npm](https://www.npmjs.com/), +[nodejs](https://nodejs.org/en/) and some other tools. + +Refer to [Prerequisites chapter](../1_Prerequisites.html) for more details. + +## Building + +### Native build + +Clone sources under `$ROOTDIR/src/gerrit.automotivelinux.org/gerrit/src/xds/xds-server` +in order respect directory hierarchy that match Go package import logic (see +[How to Write Go Code](https://golang.org/doc/code.html) for more details). + +Then use delivered Makefile : + +```bash +# Declare ROOTDIR, can be any location (for example xds-build) +ROOTDIR=$HOME/xds-build + +# Create directory hierarchy that match Go package import logic +mkdir -p $ROOTDIR/src/gerrit.automotivelinux.org/gerrit/src/xds +cd $ROOTDIR/src/gerrit.automotivelinux.org/gerrit/src/xds + +# Clone sources +git clone https://gerrit.automotivelinux.org/gerrit/src/xds/xds-server +# or git clone ssh://YOUR_USERNAME@gerrit.automotivelinux.org:29418/src/xds/xds-server + +# Build xds-server +# (note that GOPATH will correctly be set by Makefile) +cd xds-server +make all +``` + +Generate xds-server package / tarball + +```bash +make package-all +``` + +And to install `xds-server` (by default in `/opt/AGL/xds/server`): + +```bash +make install +``` + +<!-- section-warning --> +**Warning:** + +Makefile install rule and default values in configuration file are set +to fit the docker setup. + +So you may need to adapt some settings when you want to install xds-server natively. +<!-- end-section-warning --> + +<!-- section-note --> +**Note:** + +Used `DESTDIR` to specify another install directory + +```bash +make install DESTDIR=$HOME/opt/xds-server +``` + +<!-- end-section-note --> + +### XDS docker image + +As an alternative to a pre-build image, you can rebuild the container from scratch. + +`xds-server` has been integrated as a flavour of AGL SDK docker image. + +So to rebuild docker image just execute following commands: + +```bash +# Clone docker-worker-generator git repo +git clone https://git.automotivelinux.org/AGL/docker-worker-generator +# Start build that will create a docker image +cd docker-worker-generator +make build FLAVOUR=xds +``` |