chiark / gitweb /
makebuildserver: use original names for downloaded SDK components
[fdroidserver.git] / buildserver / cookbooks / android-sdk / recipes / default.rb
index 929268dc5a6c710cd545f86cabdc8d955a26ea0e..82d68972c7e24d9b1928307996dc112d420eecf9 100644 (file)
@@ -8,12 +8,24 @@ script "setup-android-sdk" do
   user user
   cwd "/tmp"
   code "
-    tar zxvf /vagrant/cache/android-sdk_r24.4.1-linux.tgz
-    mv android-sdk-linux #{sdk_loc}
+    tools=`ls -1 /vagrant/cache/tools_*.zip | sort -n | tail -1`
+    unzip $tools
+    mkdir #{sdk_loc}
+    mkdir #{sdk_loc}/platforms
+    mkdir #{sdk_loc}/build-tools
+    mv tools #{sdk_loc}/
   "
   not_if "test -d #{sdk_loc}"
 end
 
+script "setup-sdk-dirs" do
+  interpreter "bash"
+  user user
+  code "
+    mkdir -p #{sdk_loc}/build-tools
+  "
+end
+
 execute "add-android-sdk-path" do
   user user
   path = "#{sdk_loc}/tools:#{sdk_loc}/platform-tools"
@@ -22,30 +34,7 @@ execute "add-android-sdk-path" do
 end
 
 %w{
-    tools
     platform-tools
-    build-tools-17.0.0
-    build-tools-18.0.1
-    build-tools-18.1.0
-    build-tools-18.1.1
-    build-tools-19.0.0
-    build-tools-19.0.1
-    build-tools-19.0.2
-    build-tools-19.0.3
-    build-tools-19.1.0
-    build-tools-20.0.0
-    build-tools-21.0.0
-    build-tools-21.0.1
-    build-tools-21.0.2
-    build-tools-21.1.0
-    build-tools-21.1.1
-    build-tools-21.1.2
-    build-tools-22.0.0
-    build-tools-22.0.1
-    build-tools-23.0.0
-    build-tools-23.0.1
-    build-tools-23.0.2
-    extra-android-support
     extra-android-m2repository
 }.each do |pkg|
   script "add_pkg_#{pkg}" do
@@ -58,19 +47,47 @@ y
 X
     "
   end
+end
 
+script "add-platforms" do
+  interpreter "bash"
+  user user
+  cwd "/tmp"
+  code "
+    rm -rf current-platform
+    mkdir current-platform
+    cd current-platform
+    for f in `ls -1 /vagrant/cache/android-[0-9]*.zip /vagrant/cache/platform-[0-9]*.zip`; do
+      unzip $f
+      sdk=`sed -n 's,^ro.build.version.sdk=,,p' */build.prop`
+      rm -rf #{sdk_loc}/platforms/android-$sdk
+      mv * #{sdk_loc}/platforms/android-$sdk
+    done
+  "
 end
 
-%w{3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23}.each do |api|
-  script "add_sdk_#{api}" do
+%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
+   21.1.1 21.1.2 22 22.0.1 23 23.0.1 23.0.2 23.0.3
+}.each do |ver|
+  script "add_btools_#{ver}" do
     interpreter "bash"
     user user
     cwd "/tmp"
     code "
-      unzip /vagrant/cache/android-platform-#{api}.zip
-      mv android-*/ #{sdk_loc}/platforms/android-#{api}
+      unzip /vagrant/cache/build-tools_r#{ver}-linux.zip
+      case `echo #{ver} | wc -c` in
+        3)
+            dirver=#{ver}.0.0
+            ;;
+        5)
+            dirver=#{ver}.0
+            ;;
+        7)
+            dirver=#{ver}
+            ;;
+      esac
+      rm -rf #{sdk_loc}/build-tools/${dirver}
+      mv android-*/ #{sdk_loc}/build-tools/${dirver}
     "
-    not_if "test -d #{sdk_loc}/platforms/android-#{api}"
   end
 end
-