aboutsummaryrefslogtreecommitdiffstats
path: root/bootstrap/jenkins/vagrant/bootstrap.sh
blob: 7c7fe5eb25f2772079ad62a8450d4ca8df1a427b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/bash

function restart_jenkins() {
    sudo systemctl restart jenkins
    sleep 1
    echo -n "Restarting jenkins"
    until $(curl --output /dev/null --silent --head --fail http://localhost:8080/login); do
	printf '.'
	sleep 3
    done
    echo
    sleep 1
}

sed -i 's|archive\.ubuntu\.com|mirrors.ocf.berkeley.edu|g' /etc/apt/sources.list

# Assume that the vagrant host is running a local Nexus proxy
echo "192.168.33.1 nexus-proxy" >> /etc/hosts


cat >> /etc/inputrc <<EOF
set show-all-if-ambiguous on
set show-all-if-unmodified on
set match-hidden-files off
set mark-symlinked-directories on
EOF


apt-get update
apt-get -y install git
git config --global user.email "jenkins@localhost"
git config --global user.name "jenkins"
apt-get -y install curl openjdk-8-jdk maven unzip

# install Jenkins
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
apt-get update
apt-get -y install jenkins jenkins-job-builder python-pip

apt-get -y install docker.io
sudo usermod -aG docker ubuntu
sudo usermod -aG docker jenkins

su -l jenkins -c "/vagrant/jenkins-init-1.sh"

restart_jenkins

su -l jenkins -c "/vagrant/jenkins-init-2.sh"

restart_jenkins

su -l jenkins -c "/vagrant/jjb-init.sh"