9e5f22a8a0
Also add testkey for signed builds
66 lines
3 KiB
YAML
66 lines
3 KiB
YAML
container:
|
|
image: ghcr.io/cirruslabs/android-sdk:34
|
|
kvm: true
|
|
cpu: 8
|
|
memory: 16G
|
|
|
|
instrumentation_tests_task:
|
|
name: "Cirrus CI Instrumentation Tests"
|
|
start_avd_background_script:
|
|
sdkmanager --install "system-images;android-34;default;x86_64" "emulator";
|
|
echo no | avdmanager create avd -n seedvault -k "system-images;android-34;default;x86_64";
|
|
$ANDROID_HOME/emulator/emulator
|
|
-avd seedvault
|
|
-no-audio
|
|
-no-boot-anim
|
|
-gpu swiftshader_indirect
|
|
-no-snapshot
|
|
-no-window
|
|
-writable-system;
|
|
provision_avd_background_script:
|
|
wget https://github.com/seedvault-app/seedvault-test-data/releases/download/3/backup.tar.gz;
|
|
|
|
adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;';
|
|
adb root;
|
|
sleep 5;
|
|
adb remount;
|
|
adb reboot;
|
|
adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;';
|
|
adb root;
|
|
sleep 5;
|
|
adb remount;
|
|
sleep 5;
|
|
assemble_script:
|
|
./gradlew :app:assembleRelease :contacts:assembleRelease assembleAndroidTest
|
|
install_app_script:
|
|
timeout 180s bash -c 'while [[ -z $(adb shell mount | grep "/system " | grep "(rw,") ]]; do sleep 1; done;';
|
|
adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;';
|
|
|
|
adb shell mkdir -p /sdcard/seedvault_baseline;
|
|
adb push backup.tar.gz /sdcard/seedvault_baseline/backup.tar.gz;
|
|
adb shell tar xzf /sdcard/seedvault_baseline/backup.tar.gz --directory=/sdcard/seedvault_baseline;
|
|
|
|
adb shell mkdir -p /system/priv-app/Seedvault;
|
|
adb push app/build/outputs/apk/release/app-release.apk /system/priv-app/Seedvault/Seedvault.apk;
|
|
adb push permissions_com.stevesoltys.seedvault.xml /system/etc/permissions/privapp-permissions-seedvault.xml;
|
|
adb push allowlist_com.stevesoltys.seedvault.xml /system/etc/sysconfig/allowlist-seedvault.xml;
|
|
|
|
adb shell mkdir -p /system/priv-app/ContactsBackup;
|
|
adb push contactsbackup/build/outputs/apk/release/contactsbackup-release.apk /system/priv-app/ContactsBackup/contactsbackup.apk;
|
|
adb push contactsbackup/default-permissions_org.calyxos.backup.contacts.xml /system/etc/default-permissions/default-permissions_org.calyxos.backup.contacts.xml;
|
|
|
|
adb shell bmgr enable true;
|
|
adb reboot;
|
|
adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;';
|
|
adb shell bmgr transport com.stevesoltys.seedvault.transport.ConfigurableBackupTransport;
|
|
adb reboot;
|
|
adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;';
|
|
run_large_tests_script: ./gradlew -Pandroid.testInstrumentationRunnerArguments.size=large :app:connectedAndroidTest
|
|
run_other_tests_script: ./gradlew -Pandroid.testInstrumentationRunnerArguments.notAnnotation=androidx.test.filters.LargeTest connectedAndroidTest
|
|
always:
|
|
pull_screenshots_script:
|
|
adb pull /sdcard/seedvault_test_results
|
|
screenshots_artifacts:
|
|
path: "seedvault_test_results/**/*.mp4"
|
|
logcat_artifacts:
|
|
path: "seedvault_test_results/**/*.log"
|