github.phpd.cn/cilium/cilium@v1.6.12/test/packet/scripts/install.sh (about) 1 #!/bin/bash 2 3 set -e 4 5 # Ensure no prompts from apt & co. 6 export DEBIAN_FRONTEND=noninteractive 7 8 GOLANG_VERSION="1.12.5" 9 VAGRANT_VERSION="2.2.4" 10 PACKER_VERSION="1.3.5" 11 VIRTUALBOX_VERSION="6.0" 12 13 #repositories 14 15 echo "deb http://download.virtualbox.org/virtualbox/debian bionic contrib" > /etc/apt/sources.list.d/virtualbox.list 16 17 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 18 sudo apt-key fingerprint 0EBFCD88 19 wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox_2016.asc -O- | sudo apt-key add - 20 wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add - 21 sudo add-apt-repository \ 22 "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ 23 $(lsb_release -cs) \ 24 stable" 25 26 sudo --preserve-env=DEBIAN_FRONTEND apt-get update 27 sudo --preserve-env=DEBIAN_FRONTEND apt-get install -y \ 28 curl jq apt-transport-https htop bmon zip \ 29 linux-tools-common linux-tools-generic \ 30 ca-certificates software-properties-common \ 31 git openjdk-8-jdk gcc make perl unzip awscli \ 32 linux-headers-`uname -r` \ 33 virtualbox-${VIRTUALBOX_VERSION} docker-ce 34 35 cd /tmp/ 36 wget https://releases.hashicorp.com/vagrant/${VAGRANT_VERSION}/vagrant_${VAGRANT_VERSION}_x86_64.deb 37 dpkg -i vagrant_*.deb 38 39 # this block will attempt to preload required vagrant boxes from the vagrant cache server 40 # (it's configuration is in vagrant-cache directory in root of this repo). 41 # vagrant cache server is a separate packet box which vagrant-cache.ci.cilium.io points to 42 cp /provision/add_vagrant_box /usr/local/bin/ 43 chmod 755 /usr/local/bin/add_vagrant_box 44 45 curl -s https://raw.githubusercontent.com/cilium/cilium/master/vagrant_box_defaults.rb > defaults.rb 46 /usr/local/bin/add_vagrant_box defaults.rb 47 48 wget https://releases.hashicorp.com/packer/${PACKER_VERSION}/packer_${PACKER_VERSION}_linux_amd64.zip 49 unzip packer_${PACKER_VERSION}_linux_amd64.zip 50 mv packer /usr/local/bin/ 51 52 # Kernel parameters 53 export CPU=$(($(nproc)-1)) 54 for i in $(seq 0 $CPU); 55 do 56 echo performance > /sys/devices/system/cpu/cpu$i/cpufreq/scaling_governor 57 done 58 59 #Install Golang 60 cd /tmp/ 61 sudo curl -Sslk -o go.tar.gz "https://storage.googleapis.com/golang/go${GOLANG_VERSION}.linux-amd64.tar.gz" 62 sudo tar -C /usr/local -xzf go.tar.gz 63 sudo rm go.tar.gz 64 sudo ln -s /usr/local/go/bin/* /usr/local/bin/ 65 go version 66 sudo mkdir /go/ 67 export GOPATH=/go/ 68 go get -u github.com/cilium/go-bindata/... 69 go get -u github.com/google/gops 70 go get -u github.com/onsi/ginkgo/ginkgo 71 go get -u github.com/onsi/gomega/... 72 sudo ln -sf /go/bin/* /usr/local/bin/ 73 74 sudo curl -L https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose 75 sudo chmod +x /usr/local/bin/docker-compose 76 77 echo 'cd /root/go/src/github.com/cilium/cilium' >> /root/.bashrc