Merge "Remove dependencies by projects no longer active"
[releng/builder.git] / packer / provision / java-builder.sh
1 #!/bin/bash
2
3 # vim: sw=4 ts=4 sts=4 et tw=72 :
4
5 # Force any errors to cause the script and job to end in failure
6 set -xeu -o pipefail
7
8 # The following packages are not needed by all projects, but they are
9 # needed by enough to make them useful everywhere
10 yum install -y @development perl-{Digest-SHA,ExtUtils-MakeMaker} \
11     ant {boost,gtest,json-c,libcurl,libxml2,libvirt,openssl}-devel \
12     {readline,unixODBC}-devel yum-utils fedora-packager \
13     libxslt-devel crudini
14
15 # Install python3 and dependencies, needed for Coala linting at least
16 yum install -y python34
17 yum install -y python34-{devel,virtualenv,setuptools,pip}
18
19 # Install python dependencies, useful generally
20 yum install -y python-{devel,virtualenv,setuptools,pip}
21
22 # Needed by autorelease scripts
23 yum install -y xmlstarlet
24
25 # Needed by docs project
26 yum install -y graphviz
27
28 # Needed by deploy test
29 yum install -y sshpass
30
31 #########################
32 # Integration/Packaging #
33 #########################
34
35 # Install software for building RPMs
36 yum install -y fedora-packager
37
38 # Needed for vsemprovider build in vtn project to enable C# compilation.
39 rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
40 # Add the mono tools repository
41 yum-config-manager -y --add-repo http://download.mono-project.com/repo/centos/
42 # Install the mono toolchain and nuget
43 yum -y install mono-complete nuget
44
45 # Needed by TSDR
46 echo "---> Installing the Hbase Server..."
47 mkdir /tmp/Hbase
48 cd /tmp/Hbase
49 wget --no-verbose https://archive.apache.org/dist/hbase/hbase-0.94.27/hbase-0.94.27.tar.gz
50 tar -xvf hbase-0.94.27.tar.gz
51
52 # Needed by TSDR
53 echo "---> Installing the Cassandra Server..."
54 mkdir /tmp/cassandra
55 cd /tmp/cassandra
56 wget --no-verbose https://archive.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz
57 tar -xvf apache-cassandra-2.1.16-bin.tar.gz
58
59 # Generally useful for all projects
60 echo "---> Installing the Elasticsearch node..."
61 mkdir /tmp/elasticsearch
62 cd /tmp/elasticsearch
63 wget --no-verbose https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.5.tar.gz
64 tar -xvzf elasticsearch-1.7.5.tar.gz
65
66 # Installs Hashicorp's Packer binary, required for {verify,merge}-packer jobs
67 mkdir /tmp/packer
68 cd /tmp/packer
69 wget https://releases.hashicorp.com/packer/0.12.2/packer_0.12.2_linux_amd64.zip
70 unzip packer_0.12.2_linux_amd64.zip -d /usr/local/bin/
71 # rename packer to avoid conflict with binary in cracklib
72 mv /usr/local/bin/packer /usr/local/bin/packer.io
73
74 #Check out 6Wind quagga with tag name '20170418', compile and install for router functionalities
75 echo "---> Installing the Quagga..."
76 mkdir -p /tmp/build_quagga
77 cd /tmp/build_quagga
78 git clone https://github.com/6WIND/zrpcd.git
79 cd zrpcd
80 git checkout 20170418
81 chmod a+x /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh
82 /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t -v 2
83
84 # Removing the build_quagga folder
85 rm -rf /tmp/build_quagga/