diff --git a/.github/workflows/ccpp.yml b/.github/workflows/ccpp.yml index 1bedf85..f0f0148 100644 --- a/.github/workflows/ccpp.yml +++ b/.github/workflows/ccpp.yml @@ -20,16 +20,50 @@ jobs: path: | ./adbfs test: - needs: build runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + emulator: + - { 'api_level': 35, 'api_type_target': 'google_apis', 'arch': 'x86_64' } + - { 'api_level': 34, 'api_type_target': 'default', 'arch': 'x86_64' } + - { 'api_level': 33, 'api_type_target': 'aosp_atd', 'arch': 'x86_64' } + - { 'api_level': 32, 'api_type_target': 'aosp_atd', 'arch': 'x86_64' } + - { 'api_level': 31, 'api_type_target': 'aosp_atd', 'arch': 'x86_64' } + - { 'api_level': 30, 'api_type_target': 'aosp_atd', 'arch': 'x86_64' } + - { 'api_level': 30, 'api_type_target': 'aosp_atd', 'arch': 'x86' } + - { 'api_level': 29, 'api_type_target': 'default', 'arch': 'x86_64' } + - { 'api_level': 29, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 28, 'api_type_target': 'default', 'arch': 'x86_64' } + - { 'api_level': 28, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 27, 'api_type_target': 'default', 'arch': 'x86_64' } + - { 'api_level': 27, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 26, 'api_type_target': 'default', 'arch': 'x86_64' } + - { 'api_level': 26, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 25, 'api_type_target': 'default', 'arch': 'x86_64' } + - { 'api_level': 25, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 24, 'api_type_target': 'default', 'arch': 'x86_64' } + - { 'api_level': 24, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 23, 'api_type_target': 'default', 'arch': 'x86_64' } + - { 'api_level': 23, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 22, 'api_type_target': 'default', 'arch': 'x86_64' } + - { 'api_level': 22, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 21, 'api_type_target': 'default', 'arch': 'x86_64' } + - { 'api_level': 21, 'api_type_target': 'default', 'arch': 'x86' } + + - { 'api_level': 19, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 18, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 17, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 16, 'api_type_target': 'default', 'arch': 'x86' } + - { 'api_level': 15, 'api_type_target': 'default', 'arch': 'x86' } steps: - uses: actions/checkout@v4 - name: prepare run: sudo apt-get update && sudo apt-get install -y fuse libfuse-dev - - name: get-adbfs-binary - uses: actions/download-artifact@v4 - with: - name: adbfs-bin + + - name: make + run: make + - name: copy adbfs binary run: | sudo cp ${{ github.workspace }}/adbfs /usr/bin/adbfs @@ -42,7 +76,9 @@ jobs: - name: run tests uses: reactivecircus/android-emulator-runner@v2 with: - api-level: 29 + api-level: ${{ matrix.emulator.api_level }} + arch: ${{ matrix.emulator.arch }} + target: ${{ matrix.emulator.api_type_target }} script: sudo ./docker/run-docker-test.sh # services: # emulator: diff --git a/docker/run-docker-test.sh b/docker/run-docker-test.sh index 6a0c4bd..1803edf 100755 --- a/docker/run-docker-test.sh +++ b/docker/run-docker-test.sh @@ -59,6 +59,8 @@ echo Ready to run adbfs tests BASE_DIR=/adbfs/sdcard/test +adb shell ls -l /sdcard/ + test_mkdir() { local_timestamp=$(date "+%s") @@ -75,6 +77,8 @@ test_mkdir() { if [ "$abs_diff" -gt 120 ]; then echo "FAIL test_mkdir: file timestamp difference exceeds 120s: $abs_diff" + echo "timestamp: $timestamp" + echo "local timestamp: $local_timestamp" exit 1 fi @@ -107,6 +111,8 @@ test_catfile() { if [ "$abs_diff" -gt 120 ]; then echo "FAIL test_catfile: file timestamp difference exceeds 120s: $abs_diff" + echo "timestamp: $timestamp" + echo "local timestamp: $local_timestamp" exit 1 fi