1#!/bin/bash 2set -eu 3 4# Usage: update_prebuilts.sh BUILD_ID {all|car-apps-common|car-assist-lib|car-media-common|car-messaging-models|car-uxr-client-lib|car-telephony-common|car-ui-lib|car-app-card-lib|car-app-card-host-lib} [TARGET] 5 6if [ -z "${1+x}" ] 7then 8 echo "build id is required" 9 exit 1 10fi 11 12function downloadApp { 13 echo "Build: " $1 " Target: " $4 14 # See go/fetch_artifact for details on fetch_artifact. To install it use: 15 # sudo glinux-add-repo android stable && \ 16 # sudo apt update && \ 17 # sudo apt install android-fetch-artifact 18 19 CMD="fetch_artifact --bid $1 --target $4 --use_oauth2" 20 21 $CMD $2 $3 22} 23 24LIB_TARGET=${2-all} 25BUILD_TARGET=${3-car_apps_gradle-all} 26 27cd $(dirname $0) 28 29shopt -s nocasematch 30case $LIB_TARGET in 31 all) 32 echo "Downloading all the libs" 33 echo "Downloading car-apps-common" 34 downloadApp $1 "car-apps-common.aar" "car-apps-common.aar" $BUILD_TARGET 35 echo "Downloading car-assist-lib" 36 downloadApp $1 "car-assist-lib.aar" "car-assist-lib.aar" $BUILD_TARGET 37 echo "Downloading car-media-common" 38 downloadApp $1 "car-media-common.aar" "car-media-common.aar" $BUILD_TARGET 39 echo "Downloading car-media-extensions" 40 downloadApp $1 "car-media-extensions.aar" "car-media-extensions.aar" $BUILD_TARGET 41 echo "Downloading car-messaging-models" 42 downloadApp $1 "car-messaging-models.aar" "car-messaging-models.aar" $BUILD_TARGET 43 echo "Downloading car-telephony-common" 44 downloadApp $1 "car-telephony-common.aar" "car-telephony-common.aar" $BUILD_TARGET 45 echo "Downloading car-ui-lib" 46 downloadApp $1 "car-ui-lib.aar" "car-ui-lib.aar" "car_apps-user" 47 echo "Downloading car-ui-lib-oem-apis" 48 downloadApp $1 "car-ui-lib-oem-apis-source.jar" "car-ui-lib-oem-apis.jar" "car_apps-user" 49 echo "Downloading car-uxr-client-lib" 50 downloadApp $1 "car-uxr-client-lib.aar" "car-uxr-client-lib.aar" $BUILD_TARGET 51 echo "Downloading car-ui-lib-testing-support.aar" 52 downloadApp $1 "car-ui-lib-testing-support.aar" "car-ui-lib-testing-support.aar" "car_apps-user" 53 echo "Downloading car-ui-lib-no-overlayable.aar" 54 downloadApp $1 "car-ui-lib-no-overlayable.aar" "car-ui-lib-no-overlayable.aar" "car_apps-user" 55 echo "Downloading oem-token-lib" 56 downloadApp $1 "oem-token-lib.aar" "oem-token-lib.aar" "car_apps-user" 57 echo "Downloading oem-token-sharedlib" 58 downloadApp $1 "token-sharedlibrary.aar" "token-sharedlibrary.aar" "car_apps-user" 59 echo "Downloading token-sharedlibrary-res" 60 downloadApp $1 "token-sharedlibrary-res.zip" "token-sharedlibrary-res.zip" "car_apps-user" 61 echo "Downloading car-broadcastradio-support" 62 downloadApp $1 "car-broadcastradio-support.aar" "car-broadcastradio-support.aar" $BUILD_TARGET 63 echo "Downloading car-app-card-lib" 64 downloadApp $1 "car-app-card-lib.aar" "car-app-card-lib.aar" $BUILD_TARGET 65 echo "Downloading car-app-card-host-lib" 66 downloadApp $1 "car-app-card-host-lib.aar" "car-app-card-host-lib.aar" $BUILD_TARGET 67 ;; 68 car-apps-common) 69 echo "Downloading car-apps-common" 70 downloadApp $1 "car-apps-common.aar" "car-apps-common.aar" $BUILD_TARGET 71 ;; 72 car-assist-lib) 73 echo "Downloading car-assist-lib" 74 downloadApp $1 "car-assist-lib.aar" "car-assist-lib.aar" $BUILD_TARGET 75 ;; 76 car-media-common) 77 echo "Downloading car-media-common" 78 downloadApp $1 "car-media-common.aar" "car-media-common.aar" $BUILD_TARGET 79 echo "Downloading car-media-extensions" 80 downloadApp $1 "car-media-extensions.aar" "car-media-extensions.aar" $BUILD_TARGET 81 ;; 82 car-messaging-models) 83 echo "Downloading car-messaging-models" 84 downloadApp $1 "car-messaging-models.aar" "car-messaging-models.aar" $BUILD_TARGET 85 ;; 86 car-uxr-client-lib) 87 echo "Downloading car-uxr-client-lib" 88 downloadApp $1 "car-uxr-client-lib.aar" "car-uxr-client-lib.aar" $BUILD_TARGET 89 ;; 90 car-telephony-common) 91 echo "Downloading car-telephony-common" 92 downloadApp $1 "car-telephony-common.aar" "car-telephony-common.aar" $BUILD_TARGET 93 ;; 94 car-ui-lib) 95 echo "Downloading car-ui-lib" 96 downloadApp $1 "car-ui-lib.aar" "car-ui-lib.aar" "car_apps-user" 97 echo "Downloading car-ui-lib-oem-apis" 98 # TODO(b/258809109): car-ui-lib-oem-apis-jar.jar doesn't have a gradle target yet. 99 downloadApp $1 "car-ui-lib-oem-apis-source.jar" "car-ui-lib-oem-apis.jar" "car_apps-user" 100 # TODO(b/258809109): car-ui-lib-testing-support doesn't have a gradle target yet. 101 echo "Downloading car-ui-lib-testing-support.aar" 102 downloadApp $1 "car-ui-lib-testing-support.aar" "car-ui-lib-testing-support.aar" "car_apps-user" 103 # TODO(b/258809109): car-ui-lib-no-overlayable doesn't have a gradle target yet. 104 echo "Downloading car-ui-lib-no-overlayable.aar" 105 downloadApp $1 "car-ui-lib-no-overlayable.aar" "car-ui-lib-no-overlayable.aar" "car_apps-user" 106 ;; 107 oem-token-lib) 108 echo "Downloading oem-token-lib" 109 downloadApp $1 "oem-token-lib.aar" "oem-token-lib.aar" "car_apps-user" 110 echo "Downloading oem-token-sharedlib" 111 downloadApp $1 "token-sharedlibrary.aar" "token-sharedlibrary.aar" "car_apps-user" 112 echo "Downloading token-sharedlibrary-res" 113 downloadApp $1 "token-sharedlibrary-res.zip" "token-sharedlibrary-res.zip" "car_apps-user" 114 ;; 115 car-broadcastradio-support) 116 echo "Downloading car-broadcastradio-support" 117 downloadApp $1 "car-broadcastradio-support.aar" "car-broadcastradio-support.aar" $BUILD_TARGET 118 ;; 119 car-app-card-lib) 120 echo "Downloading car-app-card-lib" 121 downloadApp $1 "car-app-card-lib.aar" "car-app-card-lib.aar" $BUILD_TARGET 122 ;; 123 car-app-card-host-lib) 124 echo "Downloading car-app-card-host-lib" 125 downloadApp $1 "car-app-card-host-lib.aar" "car-app-card-host-lib.aar" $BUILD_TARGET 126 ;; 127 *) 128 echo "Invalid application option {all|car-apps-common|car-assist-lib|car-media-common|car-messaging-models|car-uxr-client-lib|car-telephony-common|car-ui-lib|oem-token-lib|car-app-card-lib|car-app-card-host-lib}" 129 ;; 130esac 131shopt -u nocasematch 132 133echo "Done. Don't forget to test and commit the new artifacts." 134