chiark / gitweb /
Much better build server provisioning
[fdroidserver.git] / buildserver / cookbooks / android-sdk / recipes / default.rb
1 %w{openjdk-6-jdk}.each do |pkg|
2   package pkg do
3     action :install
4   end
5 end
6
7 sdk_loc = node[:settings][:sdk_loc]
8 user = node[:settings][:user]
9
10 script "setup-android-sdk" do
11   timeout 14400
12   interpreter "bash"
13   user user
14   cwd "/tmp"
15   code "
16     tar zxvf /vagrant/cache/android-sdk_r21.0.1-linux.tgz
17     mv android-sdk-linux #{sdk_loc}
18     #{sdk_loc}/tools/android update sdk --no-ui -t platform-tool
19     #{sdk_loc}/tools/android update sdk --no-ui -t tool
20   "
21   not_if "test -d #{sdk_loc}"
22 end
23
24 execute "add-android-sdk-path" do
25   user user
26   path = "#{sdk_loc}/tools:#{sdk_loc}/platform-tools"
27   command "echo \"export PATH=\\$PATH:#{path}\" >> /home/#{user}/.bashrc"
28   not_if "grep #{sdk_loc} /home/#{user}/.bashrc"
29 end
30
31 %w{android-3 android-4 android-7 android-8 android-10 android-11
32    android-12 android-13 android-14 android-15 android-16 android-17
33    extra-android-support}.each do |sdk|
34
35   script "add_sdk_#{sdk}" do
36     interpreter "bash"
37     user user
38     cwd "/tmp"
39     code "
40       if [ -f /vagrant/cache/platforms/#{sdk}.tar.gz ] ; then
41         echo Installing from cache
42         tar -C #{sdk_loc}/platforms -z -x -f /vagrant/cache/platforms/#{sdk}.tar.gz
43       else
44         echo Installing via 'android'
45         #{sdk_loc}/tools/android update sdk --no-ui -a -t #{sdk} <<X
46 y
47
48 X
49       fi
50     "
51     not_if "test -d #{sdk_loc}/platforms/#{sdk}"
52   end
53
54 end
55
56 %w{addon-google_apis-google-7 addon-google_apis-google-10 addon-google_apis-google-15 addon-google_apis-google-16 addon-google_apis-google-17}.each do |sdk|
57
58   script "add_addon_#{sdk}" do
59     interpreter "bash"
60     user user
61     cwd "/tmp"
62     code "
63       if [ -f /vagrant/cache/add-ons/#{sdk}.tar.gz ] ; then
64         echo Installing from cache
65         tar -C #{sdk_loc}/add-ons -z -x -f /vagrant/cache/add-ons/#{sdk}.tar.gz
66       else
67         echo Installing via 'android'
68         #{sdk_loc}/tools/android update sdk --no-ui -a -t #{sdk} <<X
69 y
70
71 X
72       fi
73     "
74
75     not_if "test -d #{sdk_loc}/add-ons/#{sdk}"
76
77   end
78
79 end
80
81