mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-10-02 09:10:11 +02:00
buildserver: unpack gradle versions with provisioning shell script
This was not using anything special from chef, so do it in a shell script instead. This makes the script easier for the python/shell people, and probably uses less memory, since chef is a memory hog. This might even make the provision go faster since it uploads the whole script as a file to the VM, then runs it there. I think chef sends each command via SSH.
This commit is contained in:
parent
02a835ff95
commit
6ea2508127
@ -1,42 +0,0 @@
|
||||
|
||||
user = node[:settings][:user]
|
||||
|
||||
gradle_script = IO.read(File.join(
|
||||
File.expand_path(File.dirname(__FILE__)), "gradle"))
|
||||
|
||||
script "add-gradle-bindir" do
|
||||
cwd "/tmp"
|
||||
interpreter "bash"
|
||||
code "mkdir -p /opt/gradle/bin"
|
||||
not_if "test -d /opt/gradle/bin"
|
||||
end
|
||||
|
||||
script "add-gradle-verdir" do
|
||||
cwd "/tmp"
|
||||
interpreter "bash"
|
||||
code "mkdir -p /opt/gradle/versions"
|
||||
not_if "test -d /opt/gradle/versions"
|
||||
end
|
||||
|
||||
%w{1.4 1.6 1.7 1.8 1.9 1.10 1.11 1.12 2.1 2.2.1 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 2.13}.each do |ver|
|
||||
script "install-gradle-#{ver}" do
|
||||
cwd "/tmp"
|
||||
interpreter "bash"
|
||||
code "
|
||||
unzip /vagrant/cache/gradle-#{ver}-bin.zip
|
||||
mv gradle-#{ver} /opt/gradle/versions/#{ver}
|
||||
"
|
||||
not_if "test -d /opt/gradle/versions/#{ver}"
|
||||
end
|
||||
end
|
||||
|
||||
script "add-gradle-wrapper" do
|
||||
cwd "/tmp"
|
||||
interpreter "bash"
|
||||
code "
|
||||
cat << \"EOF\" > /opt/gradle/bin/gradle
|
||||
#{gradle_script}
|
||||
EOF
|
||||
chmod a+x /opt/gradle/bin/gradle
|
||||
"
|
||||
end
|
20
buildserver/provision-gradle
Normal file
20
buildserver/provision-gradle
Normal file
@ -0,0 +1,20 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
test -e /opt/gradle/versions || mkdir -p /opt/gradle/versions
|
||||
cd /opt/gradle/versions
|
||||
for f in /vagrant/cache/gradle-*.zip; do
|
||||
ver=`echo $f | sed 's,.*gradle-\([0-9][0-9.]*\).*\.zip,\1,'`
|
||||
if [ ! -d /opt/gradle/versions/${ver} ]; then
|
||||
unzip -qq $f
|
||||
mv gradle-${ver} /opt/gradle/versions/${ver}
|
||||
fi
|
||||
done
|
||||
|
||||
chmod -R a+rX /opt/gradle
|
||||
|
||||
test -e /opt/gradle/bin || mkdir -p /opt/gradle/bin
|
||||
touch /opt/gradle/bin/gradle
|
||||
chown vagrant.vagrant /opt/gradle/bin/gradle
|
||||
chmod 0755 /opt/gradle/bin/gradle
|
@ -392,12 +392,14 @@ vagrantfile += """
|
||||
}
|
||||
}
|
||||
chef.add_recipe "fdroidbuild-general"
|
||||
chef.add_recipe "gradle"
|
||||
chef.add_recipe "kivy"
|
||||
end
|
||||
|
||||
config.vm.provision "shell", path: "provision-android-sdk"
|
||||
config.vm.provision "shell", path: "provision-android-ndk"
|
||||
config.vm.provision "shell", path: "provision-gradle"
|
||||
config.vm.provision "file", source: "gradle",
|
||||
destination: "/opt/gradle/bin/gradle"
|
||||
|
||||
end
|
||||
""" % (config['debian_mirror'],
|
||||
|
Loading…
Reference in New Issue
Block a user