xref: /aosp_15_r20/art/tools/cloud_profiles/fetch_profile_info.sh (revision 795d594fd825385562da6b089ea9b2033f3abf5a)
1*795d594fSAndroid Build Coastguard Worker#!/bin/bash
2*795d594fSAndroid Build Coastguard Worker# Running this script requires "gcert" login.
3*795d594fSAndroid Build Coastguard Worker#
4*795d594fSAndroid Build Coastguard Worker# This script is used to query the PROD database to fetch the info about the ART
5*795d594fSAndroid Build Coastguard Worker# cloud profiles for a given package name and version code (optional)
6*795d594fSAndroid Build Coastguard Worker# For example, `bash fetch_profile.sh com.abc`
7*795d594fSAndroid Build Coastguard Worker# or `bash fetch_profile com.abc 123`
8*795d594fSAndroid Build Coastguard Worker# The output if any will contain a "blob_key" for each profile info and
9*795d594fSAndroid Build Coastguard Worker# it could be used to download the content of the profile via
10*795d594fSAndroid Build Coastguard Worker# "fetch_blob_key.sh".
11*795d594fSAndroid Build Coastguard Workerif [[ "$#" == 1 ]];
12*795d594fSAndroid Build Coastguard Workerthen
13*795d594fSAndroid Build Coastguard Worker  PKG=$1
14*795d594fSAndroid Build Coastguard Worker  echo "fetching for $PKG..."
15*795d594fSAndroid Build Coastguard Worker  span sql /span/global/play-gateway:art "select PackageName, VersionCode, DerivedId, SplitName, DeviceType, SdkVersion, ApkSignType, PlayArtProfilePublishStatus.profile_dex_metadata.blob_key FROM AggregatedPlayArtProfileV3 WHERE PlayArtProfilePublishStatus IS NOT NULL AND PackageName='$1';";
16*795d594fSAndroid Build Coastguard Worker  echo "$PKG"
17*795d594fSAndroid Build Coastguard Workerelif [[ "$#" == 2 ]];
18*795d594fSAndroid Build Coastguard Workerthen
19*795d594fSAndroid Build Coastguard Worker  PKG=$1
20*795d594fSAndroid Build Coastguard Worker  VERSION=$2
21*795d594fSAndroid Build Coastguard Worker  echo "fetching for $PKG $VERSION..."
22*795d594fSAndroid Build Coastguard Worker  span sql /span/global/play-gateway:art "select PackageName, VersionCode, DerivedId, SplitName, DeviceType, SdkVersion, ApkSignType, PlayArtProfilePublishStatus.profile_dex_metadata.blob_key FROM AggregatedPlayArtProfileV3 WHERE PlayArtProfilePublishStatus IS NOT NULL AND PackageName='$1' and VersionCode=$2;";
23*795d594fSAndroid Build Coastguard Workerelse
24*795d594fSAndroid Build Coastguard Worker  echo "Illegal number of parameters. It should be one or two."
25*795d594fSAndroid Build Coastguard Workerfi
26