chiark / gitweb /
makebuildserver: use original names for downloaded SDK components
[fdroidserver.git] / buildserver / cookbooks / android-sdk / recipes / default.rb
1
2 sdk_loc = node[:settings][:sdk_loc]
3 user = node[:settings][:user]
4
5 script "setup-android-sdk" do
6   timeout 14400
7   interpreter "bash"
8   user user
9   cwd "/tmp"
10   code "
11     tools=`ls -1 /vagrant/cache/tools_*.zip | sort -n | tail -1`
12     unzip $tools
13     mkdir #{sdk_loc}
14     mkdir #{sdk_loc}/platforms
15     mkdir #{sdk_loc}/build-tools
16     mv tools #{sdk_loc}/
17   "
18   not_if "test -d #{sdk_loc}"
19 end
20
21 script "setup-sdk-dirs" do
22   interpreter "bash"
23   user user
24   code "
25     mkdir -p #{sdk_loc}/build-tools
26   "
27 end
28
29 execute "add-android-sdk-path" do
30   user user
31   path = "#{sdk_loc}/tools:#{sdk_loc}/platform-tools"
32   command "echo \"export PATH=\\$PATH:#{path} #PATH-SDK\" >> /home/#{user}/.bsenv"
33   not_if "grep PATH-SDK /home/#{user}/.bsenv"
34 end
35
36 %w{
37     platform-tools
38     extra-android-m2repository
39 }.each do |pkg|
40   script "add_pkg_#{pkg}" do
41     interpreter "bash"
42     user user
43     code "
44       #{sdk_loc}/tools/android update sdk --no-ui -a -t #{pkg} <<X
45 y
46
47 X
48     "
49   end
50 end
51
52 script "add-platforms" do
53   interpreter "bash"
54   user user
55   cwd "/tmp"
56   code "
57     rm -rf current-platform
58     mkdir current-platform
59     cd current-platform
60     for f in `ls -1 /vagrant/cache/android-[0-9]*.zip /vagrant/cache/platform-[0-9]*.zip`; do
61       unzip $f
62       sdk=`sed -n 's,^ro.build.version.sdk=,,p' */build.prop`
63       rm -rf #{sdk_loc}/platforms/android-$sdk
64       mv * #{sdk_loc}/platforms/android-$sdk
65     done
66   "
67 end
68
69 %w{17 18.0.1 18.1 18.1.1 19 19.0.1 19.0.2 19.0.3 19.1 20 21 21.0.1 21.0.2 21.1
70    21.1.1 21.1.2 22 22.0.1 23 23.0.1 23.0.2 23.0.3
71 }.each do |ver|
72   script "add_btools_#{ver}" do
73     interpreter "bash"
74     user user
75     cwd "/tmp"
76     code "
77       unzip /vagrant/cache/build-tools_r#{ver}-linux.zip
78       case `echo #{ver} | wc -c` in
79         3)
80             dirver=#{ver}.0.0
81             ;;
82         5)
83             dirver=#{ver}.0
84             ;;
85         7)
86             dirver=#{ver}
87             ;;
88       esac
89       rm -rf #{sdk_loc}/build-tools/${dirver}
90       mv android-*/ #{sdk_loc}/build-tools/${dirver}
91     "
92   end
93 end