summaryrefslogtreecommitdiff
path: root/host-tools/download_throttled.sh
blob: 1701daef90a4db1552879e1046236be73abc5885 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
#!/bin/bash -ex

# https://ci.android.com/builds/branches/aosp-master-throttled-copped/grid?head=6986658&tail=6922500

function download_till_finished(){
    local img_url=$1 && shift
    local target_path=$1

    if [ -z "${target_path}" ]; then
        while ! wget --max-redirect 50 -c ${img_url}; do
            sleep 5
        done
    else
        while ! wget --max-redirect 50 -c ${img_url} -O ${target_path}; do
            sleep 5
        done
    fi
}

function download_linaro_ci_prebuilts(){
    local url_build=$1 && shift
    local f_list="list.html"
    local url_snapshots="https://snapshots.linaro.org/"

    mkdir -p ${url_build}
    cd ${url_build}
    wget "https://snapshots.linaro.org/${url_build}" -O ${f_list}
    url_files=$(grep "<a href=\"/${url_build}/" ${f_list} |cut -d\" -f2|grep -v "/$")

    for url_f in ${url_files}; do
       download_till_finished "${url_snapshots}/${url_f}"
    done
    cd -
}

function download_google_ci_prebuilts(){
    local build_num=$1 && shift
    local board=$1 && shift

    mkdir -p ${board}-userdebug
    local old_pwd=${PWD}
    cd ${board}-userdebug

    echo "https://ci.android.com/builds/submitted/${build_num}/${board}-userdebug/latest/">url.txt
    download_till_finished https://ci.android.com/builds/submitted/${build_num}/${board}-userdebug/latest/raw/${board}-img-${build_num}.zip
    download_till_finished https://ci.android.com/builds/submitted/${build_num}/${board}-userdebug/latest/raw/ramdisk-debug.img
    download_till_finished https://ci.android.com/builds/submitted/${build_num}/${board}-userdebug/latest/raw/ramdisk.img
    download_till_finished https://ci.android.com/builds/submitted/${build_num}/${board}-userdebug/latest/raw/build.prop
    download_till_finished https://ci.android.com/builds/submitted/${build_num}/${board}-userdebug/latest/raw/manifest_${build_num}.xml
    grep ro.system.build.fingerprint build.prop |cut -d= -f2 > build_fingerprint.txt
    cd ${old_pwd}
}

function download_vts_cts(){
    local build_num=$1 && shift
    local branch="aosp-master"
    local dir_target="${branch}/${build_num}/test_suites_arm64"
    mkdir -p "${dir_target}"
    local old_pwd=${PWD}
    cd ${dir_target}

    local url="https://ci.android.com/builds/submitted/${build_num}/test_suites_arm64/latest/raw/"
    echo ${url} >url.txt

    #download_till_finished ${url}/android-cts.zip
    download_till_finished ${url}/android-vts.zip
    download_till_finished ${url}/android-cts.zip
    download_till_finished ${url}/manifest_${build_num}.xml
    cp manifest_${build_num}.xml pinned-manifest.xml

    cd ${old_pwd}
}

function download_aosp_master_db845c(){
    local branch="aosp-master"
    local build_num=$1 && shift
    download_google_db845c "${branch}" "${build_num}"
}

function download_android11_gsi_db845c(){
    local branch="aosp-android11-gsi"
    local build_num=$1 && shift
    download_google_db845c "${branch}" "${build_num}"
}

function download_google_db845c(){
    local branch="$1" && shift
    local build_num=$1 && shift

    mkdir -p ${branch}/${build_num}
    local old_pwd=${PWD}
    cd ${branch}/${build_num}
    echo "https://ci.android.com/builds/branches/${branch}/grid?head=${build_num}&tail=${build_num}" >url.txt

    download_google_ci_prebuilts ${build_num} "db845c"

    cd ${old_pwd}

    cd ${branch}/${build_num}/db845c-userdebug
    local url="https://ci.android.com/builds/submitted/${build_num}/db845c-userdebug/latest/raw"
    download_till_finished ${url}/otatools.zip
    download_till_finished ${url}/super_misc_info.txt

    lpunpack_files="bin/lpunpack bin/simg2img lib64/libbase.so lib64/liblog.so lib64/liblp.so lib64/libsparse-host.so lib64/libc++.so lib64/libcrypto-host.so lib64/libcrypto_utils.so lib64/libext4_utils.so lib64/libz-host.so"
    rm -fr bin lib64
    unzip otatools.zip ${lpunpack_files}

    rm -f android-info.txt super.img userdata.img boot.img cache.img
    unzip db845c-img-${build_num}.zip

    rm -f super-raw.img
    ./bin/simg2img super.img super-raw.img

    for f in product system system_ext vendor; do
        [ -f ${f}.img ] && rm -f ${f}.img
        [ -f ${f}_a.img ] && rm -f ${f}_a.img
        [ -f ${f}_b.img ] && rm -f ${f}_b.img
    done
    ./bin/lpunpack super-raw.img
    for f in product system system_ext vendor; do
        [ -f ${f}_b.img ] && rm -f ${f}_b.img
        [ -f ${f}_a.img ] && mv -v ${f}_a.img ${f}.img
        [ -f ${f}.img ] && rm -f ${f}.img.xz && xz -T 0 ${f}.img
    done

    for f in boot.img super.img userdata.img cache.img; do
        rm -f ${f}.xz
        if [ -f ${f} ]; then
            xz -T 0 $f
        fi
    done

    rm -f super-raw.img
    cd -
}

function download_throttled_x15(){
    local build_num=$1 && shift
    local branch=aosp-master-throttled
    local board="beagle_x15"

    mkdir -p ${branch}/${build_num}
    local old_pwd=${PWD}
    cd ${branch}/${build_num}
    echo "https://ci.android.com/builds/branches/${branch}/grid?head=${build_num}&tail=${build_num}" >url.txt

    download_google_ci_prebuilts ${build_num} "${board}"

    cd ${old_pwd}

    cd ${branch}/${build_num}/${board}-userdebug
    local url="https://ci.android.com/builds/submitted/${build_num}/${board}-userdebug/latest/raw"
    download_till_finished ${url}/otatools.zip
    download_till_finished ${url}/super_misc_info.txt
    download_till_finished ${url}/build.prop

    lpunpack_files="bin/avbtool bin/lpunpack bin/simg2img lib64/libbase.so lib64/liblog.so lib64/liblp.so lib64/libsparse-host.so lib64/libc++.so lib64/libcrypto-host.so lib64/libcrypto_utils.so lib64/libext4_utils.so lib64/libz-host.so"
    rm -f ${lpunpack_files}
    unzip otatools.zip ${lpunpack_files}

    rm -f boot.img vbmeta.img super.img userdata.img recovery.img
    unzip ${board}-img-${build_num}.zip boot.img vbmeta.img super.img userdata.img recovery.img

    rm -f super-raw.img
    ./bin/simg2img super.img super-raw.img

    rm -f system_a.img system.img vendor_a.img vendor.img
    ./bin/lpunpack -p system_a -p vendor_a super-raw.img
    mv -f system_a.img system.img
    mv -f vendor_a.img vendor.img

    for f in boot.img vbmeta.img super.img system.img vendor.img recovery.img userdata.img; do
        rm -f ${f}.xz
        xz -T 0 $f
    done

    rm -f super-raw.img
    cd -
}

function download_throttled_copped_cuttefish(){
    local build_num=$1 && shift
    local branch=aosp-master-throttled-copped

    mkdir -p ${branch}/${build_num}
    local old_pwd=${PWD}
    cd ${branch}/${build_num}
    echo "https://ci.android.com/builds/branches/${branch}/grid?head=${build_num}&tail=${build_num}" >url.txt

    download_google_ci_prebuilts ${build_num} "aosp_cf_arm64_only_phone"
    download_till_finished https://ci.android.com/builds/submitted/${build_num}/${board}-userdebug/latest/raw/cvd-host_package.tar.gz
    cd ${old_pwd}
}

function download_throttled_copped(){
    local build_num=$1 && shift
    local branch=aosp-master-throttled-copped

    mkdir -p ${branch}/${build_num}
    local old_pwd=${PWD}
    cd ${branch}/${build_num}
    echo "https://ci.android.com/builds/branches/${branch}/grid?head=${build_num}&tail=${build_num}" >url.txt

    download_google_ci_prebuilts ${build_num} "hikey960"
    download_google_ci_prebuilts ${build_num} "hikey"
    cd ${old_pwd}

    for board in hikey hikey960; do
        cd ${branch}/${build_num}/${board}-userdebug

        if [ "X${board}X" = "Xhikey960X" ]; then
            local img_files="android-info.txt boot.img super.img userdata.img"
            rm -f ${img_files}
            unzip ${board}-img-${build_num}.zip ${img_files}

            for f in ${img_files}; do
                rm -f ${f}.xz
                xz -T 0 $f
            done
        else
            local img_files="android-info.txt boot.img system.img vendor.img userdata.img"
            rm -f ${img_files}
            unzip ${board}-img-${build_num}.zip ${img_files}

            for f in ${img_files}; do
                rm -f ${f}.xz
                xz -T 0 $f
            done
        fi

        cd -
    done

    if [ "X${board}X" = "Xhikey960X" ]; then
        cd ${branch}/${build_num}/${board}-userdebug
        local url="https://ci.android.com/builds/submitted/${build_num}/${board}-userdebug/latest/raw"
        download_till_finished ${url}/otatools.zip
        #download_till_finished ${url}/super.img
        download_till_finished ${url}/super_misc_info.txt
        download_till_finished ${url}/build.prop

        lpunpack_files="bin/lpunpack bin/simg2img lib64/libbase.so lib64/liblog.so lib64/liblp.so lib64/libsparse-host.so lib64/libc++.so lib64/libcrypto-host.so lib64/libcrypto_utils.so lib64/libext4_utils.so lib64/libz-host.so"
        rm -fr bin lib64
        unzip otatools.zip ${lpunpack_files}

        rm -f super-raw.img
        xz -d super.img.xz
        ./bin/simg2img super.img super-raw.img

        for f in product system system_ext vendor; do
            [ -f ${f}.img ] && rm -f ${f}.img
            [ -f ${f}_a.img ] && rm -f ${f}_a.img
            [ -f ${f}_b.img ] && rm -f ${f}_b.img
        done
        ./bin/lpunpack super-raw.img
        for f in product system system_ext vendor; do
            [ -f ${f}_b.img ] && rm -f ${f}_b.img
            [ -f ${f}_a.img ] && mv -v ${f}_a.img ${f}.img
            [ -f ${f}.img ] && rm -f ${f}.img.xz && xz -T 0 ${f}.img
        done

        for f in boot.img super.img userdata.img; do
            if [ -f ${f} ]; then
                rm -f ${f}.xz
                xz -T 0 $f
            fi
        done
        rm -f super-raw.img

        cd -
   fi
}

function download_master_gsi(){
    local build_num=$1 && shift
    download_gsi "aosp-master" ${build_num}
}

function download_android13_gsi(){
    local build_num=$1 && shift
    download_gsi "aosp-android13-gsi" ${build_num}
}

function download_android12_gsi(){
    local build_num=$1 && shift
    download_gsi "aosp-android12-gsi" ${build_num}
}

function download_android11_gsi(){
    local build_num=$1 && shift
    download_gsi "aosp-android11-gsi" ${build_num}
}

function download_android10_gsi(){
    local build_num=$1 && shift
    download_gsi "aosp-android10-gsi" ${build_num}
}

function download_gsi(){
    local branch=$1 && shift
    local build_num=$1 && shift

    mkdir -p ${branch}/${build_num}
    local old_pwd=${PWD}
    cd ${branch}/${build_num}
    echo "https://ci.android.com/builds/branches/${branch}/grid?head=${build_num}&tail=${build_num}" >url.txt

    download_google_ci_prebuilts ${build_num} "aosp_arm64"

    cd ${old_pwd}

    cd ${branch}/${build_num}/aosp_arm64-userdebug
    local url="https://ci.android.com/builds/submitted/${build_num}/aosp_arm64-userdebug/latest/raw"
    download_till_finished ${url}/otatools.zip
    download_till_finished ${url}/userdebug_plat_sepolicy.cil

    rm -fr system.img system.img.xz
    unzip aosp_arm64-img-${build_num}.zip system.img
    xz -T 0 system.img
    cd -
}

function download_lkft_aosp_master_x15(){
    local build_num=$1 && shift

    local target_dir=android/lkft/lkft-aosp-master-x15/${build_num}
    local base_url=http://snapshots.linaro.org/android/lkft/lkft-aosp-master-x15/${build_num}

    mkdir -p ${target_dir}
    cd ${target_dir}

    ANDROID_IMAGE_FILES="boot.img dtb.img dtbo.img super.img vbmeta.img userdata.img ramdisk.img ramdisk-debug.img recovery.img"
    rm -fr 4.14 4.19 aosp
    mkdir -p 4.14 4.19 aosp
    for img in ${ANDROID_IMAGE_FILES}; do
        download_till_finished ${base_url}/4.14-${img}.xz
        xz -T0 -k -d 4.14-${img}.xz
        mv 4.14-${img} 4.14/${img}
    done
    for img in ${ANDROID_IMAGE_FILES}; do
        download_till_finished ${base_url}/4.19-${img}.xz
        xz -T0 -k -d 4.19-${img}.xz
        mv 4.19-${img} 4.19/${img}
    done
    for img in ${ANDROID_IMAGE_FILES}; do
        download_till_finished ${base_url}/aosp-${img}.xz
        xz -T0 -k -d aosp-${img}.xz
        mv aosp-${img} aosp/${img}
    done
    download_till_finished ${base_url}/u-boot.img
    download_till_finished ${base_url}/MLO
    cd -
}

function copy_to_testdata(){
    if [ -z "${PUBLISH_TOKEN}" ] &&  [ -f ~/.private/linaro ]; then
        source ~/.private/linaro
        export PUBLISH_TOKEN=${PUBLISH_TOKEN}
    fi

    if [ -z "${PUBLISH_TOKEN}" ]; then
        echo "Please set PUBLISH_TOKEN for publish files"
        exit 1
    fi
    #python linaro-cp.py 6004124/hikey-userdebug/ lkft/aosp-stable/aosp-master-throttled/6004124/hikey-userdebug/ --server=https://testdata.linaro.org/
    # https://snapshots.linaro.org/android/android-lcr-reference-am65x-p/61/
    #dir_local=/home/yongqin.liu/public_html/images/x15-auto/pie/9
    #dir_remote=lkft/aosp-stable/android-lcr-reference-x15-p-auto/9
    #dir_local=/home/yongqin.liu/public_html/images/am65x-auto/12
    #dir_remote=lkft/aosp-stable/android-lcr-reference-am65x-p-auto/12

    local url_build=$1 && shift
    local no_build_info=$1

#    rm -f linaro-cp.py
#    wget https://git.linaro.org/ci/publishing-api.git/plain/linaro-cp.py -O linaro-cp.py
    opt_no_build_info=""
    if [ -n "${no_build_info}" ] && [ "X${no_build_info}X" = "XtrueX" ]; then
        opt_no_build_info="--no-build-info"
    fi
    python ./linaro-cp.py \
        ${opt_no_build_info} \
        ${url_build} \
        lkft/aosp-stable/${url_build} \
        --server=https://testdata.linaro.org/
}

function download_google_release_cts(){
    local tag="${1}" && shift
    local url="https://dl.google.com/dl/android/cts/${tag}-linux_x86-arm.zip"
    local target_dir="google-released-cts/${tag}"
    mkdir -p ${target_dir}
    cd ${target_dir}
    echo ${url} >url.txt
    download_till_finished ${url} android-cts.zip
    #mv ${tag}-linux_x86-arm.zip android-cts.zip
    cd -
}

function download_hikey960_super_prm_ptable(){
    local url_build=$1 && shift

    mkdir -p "${url_build}"
    url_ptable="https://android-git.linaro.org/android-build-configs.git/plain/lkft/scripts/hikey/prm_ptable-hikey960.img?h=lkft"
    wget -c "${url_ptable}" -O "${url_build}/prm_ptable.img"
}

function download_hikey_uefi_firmware(){
    local build_num="${1}"
    local dir_prefix="reference-platform/components/uefi-staging/"
    local url_prefix="https://snapshots.linaro.org/${dir_prefix}/"
    local url_suffix="/hikey/release/"

    local dir_local="${dir_prefix}/${build_num}/${url_suffix}"
    mkdir -p "${dir_local}"
    cd "${dir_local}"
    for f in MD5SUMS.txt fip.bin hisi-idt.py l-loader.bin nvme.img optee-arm-plat-hikey.tar.xz prm_ptable.img recovery.bin sec_ptable.img ; do
        wget -c "${url_prefix}/${build_num}/${url_suffix}/${f}"
    done
    md5sum -c MD5SUMS.txt || true
    cd -
}
function download_hikey960_uefi_firmware(){
    local build_num="${1}"
    local dir_prefix="reference-platform/components/uefi-staging/"
    local url_prefix="https://snapshots.linaro.org/${dir_prefix}/"
    local url_suffix="/hikey960/release/"

    local dir_local="${dir_prefix}/${build_num}/${url_suffix}"
    mkdir -p "${dir_local}"
    cd "${dir_local}"
    for f in MD5SUMS.txt config fip.bin \
            hikey_idt hisi-sec_uce_boot.img hisi-sec_usb_xloader.img hisi-sec_xloader.img \
            l-loader.bin prm_ptable.img recovery.bin sec_ptable.img ; do
        wget -c "${url_prefix}/${build_num}/${url_suffix}/${f}"
    done
    md5sum -c MD5SUMS.txt || true
    cd -
}


########## download hikey/hikey960 uefi firmware ########
#download_hikey_uefi_firmware 123
#download_hikey960_uefi_firmware 123
########## upload firmware files #####################
#copy_to_testdata reference-platform/components/uefi-staging/123

########## download aosp master images ########
#download_vts_cts 10314606
download_linaro_ci_prebuilts android/lkft/lkft-aosp-main-cts/1903
download_linaro_ci_prebuilts android/lkft/lkft-aosp-main-vts/1904
#download_master_gsi 10314606
#download_linaro_ci_prebuilts android/lkft/lkft-aosp-main-arm64/1905
#download_throttled_x15 10072465
download_linaro_ci_prebuilts android/lkft/lkft-aosp-main-db845c/1900
#download_linaro_ci_prebuilts android/lkft/lkft-aosp-main-hikey960/1901
download_hikey960_super_prm_ptable android/lkft/lkft-aosp-main-linaro-hikey960/1902
download_hikey960_super_prm_ptable android/lkft/lkft-aosp-main-linaro-hikey960/1902
########## upload aosp master files #####################
#copy_to_testdata android/lkft/lkft-aosp-main-cts/1780
#copy_to_testdata android/lkft/lkft-aosp-main-vts/1781
#copy_to_testdata android/lkft/lkft-aosp-main-arm64/1782
#copy_to_testdata android/lkft/lkft-aosp-main-db845c/1778
#copy_to_testdata android/lkft/lkft-aosp-main-hikey960/1779
#copy_to_testdata android/lkft/lkft-aosp-main-linaro-hikey960/1779

########## download android14 images ########
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android14-db845c/1897
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android14-cts/1898
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android14-vts/1899
########## upload android13 files #####################
#copy_to_testdata android/lkft/lkft-aosp-android14-db845c/1897
#copy_to_testdata android/lkft/lkft-aosp-android14-cts/1898
#copy_to_testdata android/lkft/lkft-aosp-android14-vts/1899

########## download android13 images ########
download_android13_gsi 11206184
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android13-db845c/1893
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android13-hikey960/1894
download_hikey960_super_prm_ptable android/lkft/lkft-aosp-android13-hikey960/1894
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android13-cts/1895
#download_google_release_cts android-cts-13_r4
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android13-vts/1896
########## upload android13 files #####################
#copy_to_testdata aosp-android13-gsi/11206184/aosp_arm64-userdebug
#copy_to_testdata android/lkft/lkft-aosp-android13-db845c/1893
#copy_to_testdata android/lkft/lkft-aosp-android13-hikey960/1894
#copy_to_testdata android/lkft/lkft-aosp-android13-cts/1895
#copy_to_testdata google-released-cts/android-cts-13_r4
#copy_to_testdata android/lkft/lkft-aosp-android13-vts/1896

########## download android12 images ########
download_android12_gsi 11206180
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android12-hikey/1888
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android12-hikey960/1889
download_hikey960_super_prm_ptable android/lkft/lkft-aosp-android12-hikey960/1889
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android12-db845c/1890
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android12-cts/1891
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android12-vts/1892
########## upload android12 files #####################
#copy_to_testdata aosp-android12-gsi/11206180/aosp_arm64-userdebug
#copy_to_testdata android/lkft/lkft-aosp-android12-hikey/1888
#copy_to_testdata android/lkft/lkft-aosp-android12-hikey960/1889
#copy_to_testdata android/lkft/lkft-aosp-android12-db845c/1890
#copy_to_testdata android/lkft/lkft-aosp-android12-cts/1891
#copy_to_testdata android/lkft/lkft-aosp-android12-vts/1892

########## download android11 images ########
download_android11_gsi_db845c 11212928
download_android11_gsi 11212928
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android11-hikey960/1883
download_hikey960_super_prm_ptable android/lkft/lkft-aosp-android11-hikey960/1883
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android11-hikey/1885
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android11-cts/1886
download_linaro_ci_prebuilts android/lkft/lkft-aosp-android11-vts/1887
########## upload android11 files #####################
#copy_to_testdata aosp-android11-gsi/11212928/aosp_arm64-userdebug
#copy_to_testdata aosp-android11-gsi/11212928/db845c-userdebug
#copy_to_testdata android/lkft/lkft-aosp-android11-hikey960/1883
#copy_to_testdata android/lkft/lkft-aosp-android11-hikey/1885
#copy_to_testdata android/lkft/lkft-aosp-android11-cts/1886
#copy_to_testdata android/lkft/lkft-aosp-android11-vts/1887