mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-10-03 17:50:11 +02:00
buildserver: move apt setup to a shell script
This makes it so there is only a single `apt-get install` command run, instead of one command per-package like with the chef script. It also adds `apt-get upgrade` to make sure that the base box is fully up-to-date.
This commit is contained in:
parent
2374b12a77
commit
aafad6b909
@ -1,120 +1,5 @@
|
||||
|
||||
user = node[:settings][:user]
|
||||
debian_mirror = node[:settings][:debian_mirror]
|
||||
|
||||
execute 'set_debian_mirror' do
|
||||
command "sed -i 's,http://ftp.uk.debian.org/debian/,#{debian_mirror},g' /etc/apt/sources.list"
|
||||
end
|
||||
|
||||
execute "jessie_backports" do
|
||||
command "echo 'deb #{debian_mirror} jessie-backports main' > /etc/apt/sources.list.d/backports.list"
|
||||
only_if "grep jessie /etc/apt/sources.list"
|
||||
end
|
||||
|
||||
if node['kernel']['machine'] == "x86_64"
|
||||
execute "archi386" do
|
||||
command "dpkg --add-architecture i386"
|
||||
end
|
||||
end
|
||||
|
||||
execute "apt-get-update" do
|
||||
command "apt-get update"
|
||||
end
|
||||
|
||||
%w{
|
||||
ant
|
||||
ant-contrib
|
||||
autoconf
|
||||
autoconf2.13
|
||||
automake1.11
|
||||
autopoint
|
||||
bison
|
||||
bzr
|
||||
cmake
|
||||
curl
|
||||
expect
|
||||
faketime
|
||||
flex
|
||||
gettext
|
||||
git-core
|
||||
git-svn
|
||||
gperf
|
||||
graphviz
|
||||
imagemagick
|
||||
inkscape
|
||||
javacc
|
||||
libarchive-zip-perl
|
||||
libexpat1-dev
|
||||
libglib2.0-dev
|
||||
liblzma-dev
|
||||
librsvg2-bin
|
||||
libsaxonb-java
|
||||
libssl-dev
|
||||
libssl1.0.0
|
||||
libtool
|
||||
libtool-bin
|
||||
make
|
||||
maven
|
||||
}.each do |pkg|
|
||||
package pkg do
|
||||
action :install
|
||||
end
|
||||
end
|
||||
|
||||
%w{
|
||||
mercurial
|
||||
nasm
|
||||
openjdk-8-jdk-headless
|
||||
optipng
|
||||
p7zip
|
||||
pandoc
|
||||
perlmagick
|
||||
pkg-config
|
||||
python-gnupg
|
||||
python-magic
|
||||
python-setuptools
|
||||
python3-gnupg
|
||||
python3-requests
|
||||
python3-yaml
|
||||
qt5-default
|
||||
qtbase5-dev
|
||||
quilt
|
||||
realpath
|
||||
scons
|
||||
subversion
|
||||
swig
|
||||
texinfo
|
||||
transfig
|
||||
unzip
|
||||
vorbis-tools
|
||||
xsltproc
|
||||
yasm
|
||||
zip
|
||||
}.each do |pkg|
|
||||
package pkg do
|
||||
action :install
|
||||
end
|
||||
end
|
||||
|
||||
if node['kernel']['machine'] == "x86_64"
|
||||
%w{libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386}.each do |pkg|
|
||||
package pkg do
|
||||
action :install
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
easy_install_package "compare-locales" do
|
||||
options "-U"
|
||||
action :install
|
||||
end
|
||||
|
||||
if node['kernel']['machine'] == "x86_64"
|
||||
execute "set-default-java" do
|
||||
command "update-java-alternatives --set java-1.8.0-openjdk-amd64"
|
||||
end
|
||||
else
|
||||
execute "set-default-java" do
|
||||
command "update-java-alternatives --set java-1.8.0-openjdk-i386"
|
||||
end
|
||||
end
|
||||
|
@ -1,6 +1,4 @@
|
||||
|
||||
user = node[:settings][:user]
|
||||
|
||||
%w{cython python-pygame python-pip python-virtualenv python-opengl python-gst0.10 python-enchant libgl1-mesa-dev libgles2-mesa-dev}.each do |pkg|
|
||||
package pkg do
|
||||
action :install
|
||||
|
90
buildserver/provision-apt-get-install
Normal file
90
buildserver/provision-apt-get-install
Normal file
@ -0,0 +1,90 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
set -x
|
||||
|
||||
debian_mirror=$1
|
||||
|
||||
sed -i "s,http://ftp.uk.debian.org/debian/,${debian_mirror},g" /etc/apt/sources.list
|
||||
|
||||
if grep --quiet jessie /etc/apt/sources.list; then
|
||||
echo "deb $debian_mirror jessie-backports main" > /etc/apt/sources.list.d/backports.list
|
||||
fi
|
||||
|
||||
dpkg --add-architecture i386
|
||||
|
||||
apt-get -y update
|
||||
apt-get -y upgrade
|
||||
|
||||
packages="
|
||||
ant
|
||||
ant-contrib
|
||||
autoconf
|
||||
autoconf2.13
|
||||
automake1.11
|
||||
autopoint
|
||||
bison
|
||||
bzr
|
||||
cmake
|
||||
curl
|
||||
expect
|
||||
faketime
|
||||
flex
|
||||
gettext
|
||||
git-core
|
||||
git-svn
|
||||
gperf
|
||||
graphviz
|
||||
imagemagick
|
||||
inkscape
|
||||
javacc
|
||||
libarchive-zip-perl
|
||||
libexpat1-dev
|
||||
libgcc1:i386
|
||||
libglib2.0-dev
|
||||
liblzma-dev
|
||||
libncurses5:i386
|
||||
librsvg2-bin
|
||||
libsaxonb-java
|
||||
libssl-dev
|
||||
libssl1.0.0
|
||||
libstdc++6:i386
|
||||
libtool
|
||||
libtool-bin
|
||||
make
|
||||
maven
|
||||
mercurial
|
||||
nasm
|
||||
openjdk-8-jdk-headless
|
||||
optipng
|
||||
p7zip
|
||||
pandoc
|
||||
perlmagick
|
||||
pkg-config
|
||||
python-gnupg
|
||||
python-magic
|
||||
python-setuptools
|
||||
python3-gnupg
|
||||
python3-requests
|
||||
python3-yaml
|
||||
qt5-default
|
||||
qtbase5-dev
|
||||
quilt
|
||||
realpath
|
||||
scons
|
||||
subversion
|
||||
swig
|
||||
texinfo
|
||||
transfig
|
||||
unzip
|
||||
vorbis-tools
|
||||
xsltproc
|
||||
yasm
|
||||
zip
|
||||
zlib1g:i386
|
||||
"
|
||||
|
||||
apt-get install --yes --no-install-recommends $packages
|
||||
|
||||
highestjava=`update-java-alternatives --list | sort -n | tail -1 | cut -d ' ' -f 1`
|
||||
update-java-alternatives --set $highestjava
|
@ -377,16 +377,12 @@ vagrantfile += """
|
||||
|
||||
config.vm.provision "shell", path: "setup-env-vars",
|
||||
args: ["/home/vagrant/android-sdk"]
|
||||
config.vm.provision "shell", path: "provision-apt-get-install",
|
||||
args: ["{0}"]
|
||||
|
||||
config.vm.provision :chef_solo do |chef|
|
||||
chef.cookbooks_path = "cookbooks"
|
||||
chef.log_level = :debug
|
||||
chef.json = {
|
||||
:settings => {
|
||||
:debian_mirror => "%s",
|
||||
:user => "vagrant"
|
||||
}
|
||||
}
|
||||
chef.add_recipe "fdroidbuild-general"
|
||||
chef.add_recipe "kivy"
|
||||
end
|
||||
@ -404,7 +400,7 @@ vagrantfile += """
|
||||
end
|
||||
|
||||
end
|
||||
""" % config['debian_mirror']
|
||||
""".format(config['debian_mirror'])
|
||||
|
||||
|
||||
# Check against the existing Vagrantfile, and if they differ, we need to
|
||||
|
Loading…
Reference in New Issue
Block a user