Prerequisites
XDS is written in Go and currently only build on Linux host has been validated.
So to build XDS binaries you need to install first Go
version 1.8.1 or higher and some other tools. To build xds-server
and xds-agent
you also need to install in addition nodejs
and python3
tools.
Ubuntu:
# Install various tools
sudo apt-get install git make npm curl git zip unzip wget
# Install Go
source /etc/os-release
wget -O - "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x52B59B1571A79DBC054901C0F6BC817356A3D45E" | sudo apt-key add -
sudo bash -c "cat >> /etc/apt/sources.list.d/golang.list <<EOF
deb http://ppa.launchpad.net/longsleep/golang-backports/ubuntu ${VERSION_CODENAME} main
EOF"
sudo apt-get update
sudo apt-get install golang-go
# Install python3
sudo apt-get install python3
openSUSE:
# Install various tools
sudo zypper install git make npm curl zip unzip
# Install Go
# ( the value 'DISTRO' can be set to {openSUSE_Leap_42.2, openSUSE_Leap_42.3, openSUSE_Tumbleweed} )
source /etc/os-release; export DISTRO="openSUSE_Leap_$VERSION"
sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/go/${DISTRO}/devel:languages:go.repo
sudo zypper --gpg-auto-import-keys ref
sudo zypper install go1.9
# Install python3
sudo zypper install python3
Don't forget to open new user session after installing these packages.
All Linux distro:
# Install nodejs LTS version (only mandatory for xds-server and xds-agent)
sudo npm install --global n
sudo n lts
Angular developers that's plan to modify XDS Dashboard webapp (part of
xds-agent
repo) may also need angular cli tool named ng
:
# Install angular cli tool (ng)
sudo npm install --global n @angular/cli