From e41b5ae92b49a24853daedb7aeccf142f4845733 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:03:27 -0400 Subject: [PATCH 01/35] Use setup-skip action --- .github/workflows/ci.yml | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 710e291..c357ef3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -52,8 +52,6 @@ jobs: - name: "Launch emulator" timeout-minutes: 10 run: | - which adb - yes Y | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses # Install AVD files @@ -75,21 +73,7 @@ jobs: run: | $ANDROID_HOME/platform-tools/adb shell 'echo Hello Android!' - - name: "Install Skip (macOS)" - if: ${{ startsWith(matrix.os, 'macos-') }} - run: | - brew install skiptools/skip/skip - skip android sdk install - - - name: Install Skip (Ubuntu) - if: ${{ startsWith(matrix.os, 'ubuntu-') }} - run: | - mkdir -p ~/bin/skiptools - cd ~/bin/skiptools - curl -fsSLO https://github.com/skiptools/skip/releases/latest/download/skip-linux.zip - unzip skip-linux.zip - echo "PATH=${PWD}/skip.artifactbundle/$(uname -m)-swift-linux-musl:${PATH}" >> $GITHUB_ENV - cd - + - uses: skiptools/actions/setup-skip@setup-skip - name: "Test Swift Package" run: | From a9f68ea029afe5c379348b49a79f3d2aa6013cb1 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:05:04 -0400 Subject: [PATCH 02/35] Update CI to run on pull_request --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c357ef3..4309ae1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,7 +3,7 @@ on: push: branches: [ main ] workflow_dispatch: - + pull_request: jobs: install-sdk: strategy: From f7b2918f8a92f0d7ffcfa62add51827da6f32bd4 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:11:41 -0400 Subject: [PATCH 03/35] Try setup-skip action From c45cd9ef80684476f0bc51159a4c6b2834bae7e3 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:16:07 -0400 Subject: [PATCH 04/35] Try setup-skip action --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4309ae1..ab810d0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -73,7 +73,7 @@ jobs: run: | $ANDROID_HOME/platform-tools/adb shell 'echo Hello Android!' - - uses: skiptools/actions/setup-skip@setup-skip + - uses: skiptools/actions/setup-skip/action.yml@setup-skip - name: "Test Swift Package" run: | From 649358509df5fca58a2eb00d05a4f2716886f04f Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:16:58 -0400 Subject: [PATCH 05/35] Try setup-skip action --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ab810d0..7260cfe 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -73,7 +73,7 @@ jobs: run: | $ANDROID_HOME/platform-tools/adb shell 'echo Hello Android!' - - uses: skiptools/actions/setup-skip/action.yml@setup-skip + - uses: skiptools/actions/setup-skip@skip-action - name: "Test Swift Package" run: | From 2500114839ede9f55782dda9c16cb2efa5808497 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:18:33 -0400 Subject: [PATCH 06/35] Try setup-skip action From 98eeb879de95183f3700ac61b36e36652197e95d Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:19:59 -0400 Subject: [PATCH 07/35] Try setup-skip action --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7260cfe..af073fe 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -45,6 +45,8 @@ jobs: ANDROID_BUILD_TOOLS_VERSION: 'latest' ANDROID_EMULATOR_NAME: 'test' steps: + - uses: skiptools/actions/setup-skip@skip-action + - name: "Setup Environment" run: | echo "$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/emulator:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/${{ env.ANDROID_BUILD_TOOLS_VERSION }}" >> $GITHUB_PATH @@ -72,8 +74,6 @@ jobs: - name: "Check Emulator" run: | $ANDROID_HOME/platform-tools/adb shell 'echo Hello Android!' - - - uses: skiptools/actions/setup-skip@skip-action - name: "Test Swift Package" run: | From 5e801534c648d1096a76663561c54c581f7ce420 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:25:31 -0400 Subject: [PATCH 08/35] Try setup-skip action From fa57586bfe1aabfc8504c189de33c39767c7fa87 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:31:09 -0400 Subject: [PATCH 09/35] Try setup-skip action --- .github/workflows/ci.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index af073fe..ac41cfc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -54,13 +54,14 @@ jobs: - name: "Launch emulator" timeout-minutes: 10 run: | - yes Y | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses + yes Y | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses 2>&1 >> /dev/null # Install AVD files - yes Y | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" - yes Y | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --channel=3 emulator + $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" + $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --channel=3 emulator # Create emulator - echo "no" | $ANDROID_HOME/cmdline-tools/latest/bin/avdmanager create avd -f -n test -d "Nexus 10" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force + $ANDROID_HOME/cmdline-tools/latest/bin/avdmanager create avd -f -n test -d "Nexus 10" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force + $ANDROID_HOME/emulator/emulator -list-avds echo "Starting emulator" From 795f5b8f855def0916d27fc9f67d84c648e18931 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:34:36 -0400 Subject: [PATCH 10/35] Try setup-skip action --- .github/workflows/ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ac41cfc..ec86200 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,7 +43,7 @@ jobs: ANDROID_TARGET: 'default' #ANDROID_BUILD_TOOLS_VERSION: 36.0.0 ANDROID_BUILD_TOOLS_VERSION: 'latest' - ANDROID_EMULATOR_NAME: 'test' + ANDROID_EMULATOR_NAME: 'demo' steps: - uses: skiptools/actions/setup-skip@skip-action @@ -59,8 +59,12 @@ jobs: # Install AVD files $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --channel=3 emulator + # Create emulator - $ANDROID_HOME/cmdline-tools/latest/bin/avdmanager create avd -f -n test -d "Nexus 10" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force + echo "Creating emulator: ${ANDROID_EMULATOR_NAME}" + $ANDROID_HOME/cmdline-tools/latest/bin/avdmanager create avd -f -n "${ANDROID_EMULATOR_NAME}" -d "Nexus 10" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force + + echo "Listing emulators" $ANDROID_HOME/emulator/emulator -list-avds echo "Starting emulator" From da3f4e24614be30acf1b8e7c136a0bcdb9ea514c Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:36:13 -0400 Subject: [PATCH 11/35] Try setup-skip action --- .github/workflows/ci.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ec86200..deafac1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -57,28 +57,29 @@ jobs: yes Y | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses 2>&1 >> /dev/null # Install AVD files - $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" - $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --channel=3 emulator + sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" + sdkmanager --channel=3 emulator # Create emulator echo "Creating emulator: ${ANDROID_EMULATOR_NAME}" - $ANDROID_HOME/cmdline-tools/latest/bin/avdmanager create avd -f -n "${ANDROID_EMULATOR_NAME}" -d "Nexus 10" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force + avdmanager create avd -f -n "${ANDROID_EMULATOR_NAME}" -d "Nexus 10" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force echo "Listing emulators" - $ANDROID_HOME/emulator/emulator -list-avds + emulator -list-avds echo "Starting emulator" # Start emulator in background - nohup $ANDROID_HOME/emulator/emulator -avd ${ANDROID_EMULATOR_NAME} -no-snapshot -no-window -no-audio -no-boot-anim -no-accel -no-metrics -camera-back none -accel off -gpu ${ANDROID_GPU} & + nohup emulator -avd ${ANDROID_EMULATOR_NAME} -no-snapshot -no-window -no-audio -no-boot-anim -no-accel -no-metrics -camera-back none -accel off -gpu ${ANDROID_GPU} & # Fixed quoting around "\r" - $ANDROID_HOME/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d "\r") ]]; do sleep 1; done; input keyevent 82' - $ANDROID_HOME/platform-tools/adb devices + adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d "\r") ]]; do sleep 1; done; input keyevent 82' + + adb devices echo "Emulator started" - name: "Check Emulator" run: | - $ANDROID_HOME/platform-tools/adb shell 'echo Hello Android!' + adb shell 'echo Hello Android!' - name: "Test Swift Package" run: | From 6daf5b7cada983c217c394156bd3904599d281d9 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:42:36 -0400 Subject: [PATCH 12/35] Try setup-skip action --- .github/workflows/ci.yml | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index deafac1..e2b5ab3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -52,6 +52,7 @@ jobs: echo "$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/emulator:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/${{ env.ANDROID_BUILD_TOOLS_VERSION }}" >> $GITHUB_PATH - name: "Launch emulator" + if: false timeout-minutes: 10 run: | yes Y | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses 2>&1 >> /dev/null @@ -76,7 +77,23 @@ jobs: adb devices echo "Emulator started" - + + - name: SKDs - download required images + run: $ANDROID_HOME/tools/bin/sdkmanager "system-images;android-30;default;x86_64" + + - name: SDKs - accept licenses + run: y | $ANDROID_HOME/tools/bin/sdkmanager --licenses + + - name: Emulator - Create + run: $ANDROID_HOME/tools/bin/avdmanager create avd -n Pixel_API_30 --device 'Nexus 5X' --package "system-images;android-30;default;x86_64" --sdcard 512M + + - name: Emulator - Boot + run: $ANDROID_HOME/emulator/emulator -memory 4096 -avd Pixel_API_30 -wipe-data -no-window -gpu swiftshader_indirect -no-snapshot -noaudio -no-boot-anim & + + - name: ADB Wait For Device + run: adb wait-for-any-device + timeout-minutes: 3 + - name: "Check Emulator" run: | adb shell 'echo Hello Android!' From 44fe5d72986a2de1465aaf2c0cef67f7aeecb566 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:46:05 -0400 Subject: [PATCH 13/35] Try setup-skip action --- .github/workflows/ci.yml | 48 ++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e2b5ab3..501fc1d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,26 +9,26 @@ jobs: strategy: matrix: include: - - name: 'macOS 26' - os: 'macos-26' - ANDROID_API: 28 - ANDROID_ARCH: 'arm64-v8a' - ANDROID_GPU: 'swiftshader_indirect' - - name: 'macOS 15' - os: 'macos-15' - ANDROID_API: 28 - ANDROID_ARCH: 'arm64-v8a' - ANDROID_GPU: 'swiftshader_indirect' - - name: 'macOS 14' - os: 'macos-14' - ANDROID_API: 28 - ANDROID_ARCH: 'arm64-v8a' - ANDROID_GPU: 'swiftshader_indirect' - - name: 'macOS 13' - os: 'macos-13' - ANDROID_API: 28 - ANDROID_ARCH: 'x86_64' - ANDROID_GPU: 'swiftshader_indirect' + #- name: 'macOS 26' + # os: 'macos-26' + # ANDROID_API: 28 + # ANDROID_ARCH: 'arm64-v8a' + # ANDROID_GPU: 'swiftshader_indirect' + #- name: 'macOS 15' + # os: 'macos-15' + # ANDROID_API: 28 + # ANDROID_ARCH: 'arm64-v8a' + # ANDROID_GPU: 'swiftshader_indirect' + #- name: 'macOS 14' + # os: 'macos-14' + # ANDROID_API: 28 + # ANDROID_ARCH: 'arm64-v8a' + # ANDROID_GPU: 'swiftshader_indirect' + #- name: 'macOS 13' + # os: 'macos-13' + # ANDROID_API: 28 + # ANDROID_ARCH: 'x86_64' + # ANDROID_GPU: 'swiftshader_indirect' - name: 'Ubuntu Latest' os: 'ubuntu-latest' ANDROID_API: 28 @@ -79,16 +79,16 @@ jobs: echo "Emulator started" - name: SKDs - download required images - run: $ANDROID_HOME/tools/bin/sdkmanager "system-images;android-30;default;x86_64" + run: sdkmanager "system-images;android-30;default;x86_64" - name: SDKs - accept licenses - run: y | $ANDROID_HOME/tools/bin/sdkmanager --licenses + run: y | sdkmanager --licenses - name: Emulator - Create - run: $ANDROID_HOME/tools/bin/avdmanager create avd -n Pixel_API_30 --device 'Nexus 5X' --package "system-images;android-30;default;x86_64" --sdcard 512M + run: avdmanager create avd -n Pixel_API_30 --device 'Nexus 5X' --package "system-images;android-30;default;x86_64" --sdcard 512M - name: Emulator - Boot - run: $ANDROID_HOME/emulator/emulator -memory 4096 -avd Pixel_API_30 -wipe-data -no-window -gpu swiftshader_indirect -no-snapshot -noaudio -no-boot-anim & + run: emulator -memory 4096 -avd Pixel_API_30 -wipe-data -no-window -gpu swiftshader_indirect -no-snapshot -noaudio -no-boot-anim & - name: ADB Wait For Device run: adb wait-for-any-device From e510a70e327e01471f8ae7eb3927ecda4e5eee18 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:51:06 -0400 Subject: [PATCH 14/35] Try setup-skip action --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 501fc1d..75f56d9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -85,7 +85,7 @@ jobs: run: y | sdkmanager --licenses - name: Emulator - Create - run: avdmanager create avd -n Pixel_API_30 --device 'Nexus 5X' --package "system-images;android-30;default;x86_64" --sdcard 512M + run: echo no | avdmanager create avd -n Pixel_API_30 --device 'Nexus 5X' --package "system-images;android-30;default;x86_64" --sdcard 512M - name: Emulator - Boot run: emulator -memory 4096 -avd Pixel_API_30 -wipe-data -no-window -gpu swiftshader_indirect -no-snapshot -noaudio -no-boot-anim & From 72de5979eeb6b780143879e88449b62b48894676 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:55:34 -0400 Subject: [PATCH 15/35] Try setup-skip action --- .github/workflows/ci.yml | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 75f56d9..c907efa 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,11 +9,11 @@ jobs: strategy: matrix: include: - #- name: 'macOS 26' - # os: 'macos-26' - # ANDROID_API: 28 - # ANDROID_ARCH: 'arm64-v8a' - # ANDROID_GPU: 'swiftshader_indirect' + - name: 'macOS 26' + os: 'macos-26' + ANDROID_API: 28 + ANDROID_ARCH: 'arm64-v8a' + ANDROID_GPU: 'swiftshader_indirect' #- name: 'macOS 15' # os: 'macos-15' # ANDROID_API: 28 @@ -24,11 +24,11 @@ jobs: # ANDROID_API: 28 # ANDROID_ARCH: 'arm64-v8a' # ANDROID_GPU: 'swiftshader_indirect' - #- name: 'macOS 13' - # os: 'macos-13' - # ANDROID_API: 28 - # ANDROID_ARCH: 'x86_64' - # ANDROID_GPU: 'swiftshader_indirect' + - name: 'macOS 13' + os: 'macos-13' + ANDROID_API: 28 + ANDROID_ARCH: 'x86_64' + ANDROID_GPU: 'swiftshader_indirect' - name: 'Ubuntu Latest' os: 'ubuntu-latest' ANDROID_API: 28 @@ -79,16 +79,19 @@ jobs: echo "Emulator started" - name: SKDs - download required images - run: sdkmanager "system-images;android-30;default;x86_64" + run: sdkmanager "system-images;android-${ANDROID_API};default;x86_64" - name: SDKs - accept licenses - run: y | sdkmanager --licenses + run: yes Y | sdkmanager --licenses - name: Emulator - Create - run: echo no | avdmanager create avd -n Pixel_API_30 --device 'Nexus 5X' --package "system-images;android-30;default;x86_64" --sdcard 512M + run: echo no | avdmanager create avd -n "${ANDROID_EMULATOR_NAME}" --device 'Nexus 5X' --package "system-images;android-${ANDROID_API};default;x86_64" --sdcard 512M + + - name: Emulator - List AVDs + run: emulator -list-avds - name: Emulator - Boot - run: emulator -memory 4096 -avd Pixel_API_30 -wipe-data -no-window -gpu swiftshader_indirect -no-snapshot -noaudio -no-boot-anim & + run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -gpu swiftshader_indirect -no-snapshot -noaudio -no-boot-anim & - name: ADB Wait For Device run: adb wait-for-any-device From e57ff10cc6c25fcf299c230b1c7963737829ab80 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 11:58:16 -0400 Subject: [PATCH 16/35] Try setup-skip action --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c907efa..d20da32 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -78,14 +78,14 @@ jobs: adb devices echo "Emulator started" - - name: SKDs - download required images - run: sdkmanager "system-images;android-${ANDROID_API};default;x86_64" - - name: SDKs - accept licenses run: yes Y | sdkmanager --licenses + - name: SKDs - download required images + run: yes no | sdkmanager "system-images;android-${ANDROID_API};default;x86_64" + - name: Emulator - Create - run: echo no | avdmanager create avd -n "${ANDROID_EMULATOR_NAME}" --device 'Nexus 5X' --package "system-images;android-${ANDROID_API};default;x86_64" --sdcard 512M + run: yes no | avdmanager create avd -n "${ANDROID_EMULATOR_NAME}" --device 'Nexus 5X' --package "system-images;android-${ANDROID_API};default;x86_64" --sdcard 512M - name: Emulator - List AVDs run: emulator -list-avds From f2d6176e6730f0d81faa9ffe21f42078a6173959 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 12:00:29 -0400 Subject: [PATCH 17/35] Try setup-skip action --- .github/workflows/ci.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d20da32..37d1d27 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -79,13 +79,16 @@ jobs: echo "Emulator started" - name: SDKs - accept licenses - run: yes Y | sdkmanager --licenses + run: yes y | sdkmanager --licenses - name: SKDs - download required images - run: yes no | sdkmanager "system-images;android-${ANDROID_API};default;x86_64" + run: yes no | sdkmanager "system-images;android-${ANDROID_API};${ANDROID_TARGET};x86_64" + + - name: SKDs - setup emulator + run: yes no | sdkmanager --channel=3 emulator - name: Emulator - Create - run: yes no | avdmanager create avd -n "${ANDROID_EMULATOR_NAME}" --device 'Nexus 5X' --package "system-images;android-${ANDROID_API};default;x86_64" --sdcard 512M + run: yes no | avdmanager create avd -n "${ANDROID_EMULATOR_NAME}" --device 'Nexus 5X' --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};x86_64" --sdcard 512M - name: Emulator - List AVDs run: emulator -list-avds From 675cbec06f14b32ea3fd66b6e00f0fc6fff07a7c Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 12:14:02 -0400 Subject: [PATCH 18/35] Try setup-skip action --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 37d1d27..0b0250e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -82,13 +82,13 @@ jobs: run: yes y | sdkmanager --licenses - name: SKDs - download required images - run: yes no | sdkmanager "system-images;android-${ANDROID_API};${ANDROID_TARGET};x86_64" + run: yes no | sdkmanager "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" - name: SKDs - setup emulator run: yes no | sdkmanager --channel=3 emulator - name: Emulator - Create - run: yes no | avdmanager create avd -n "${ANDROID_EMULATOR_NAME}" --device 'Nexus 5X' --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};x86_64" --sdcard 512M + run: echo no | avdmanager create avd --force -n "${ANDROID_EMULATOR_NAME}" --device 'Nexus 5X' --abi "${ANDROID_API}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M - name: Emulator - List AVDs run: emulator -list-avds From 17c886ba8892fbc52aaac66b3bba7fc29968b685 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 12:17:37 -0400 Subject: [PATCH 19/35] Try setup-skip action --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0b0250e..653d56a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -88,7 +88,7 @@ jobs: run: yes no | sdkmanager --channel=3 emulator - name: Emulator - Create - run: echo no | avdmanager create avd --force -n "${ANDROID_EMULATOR_NAME}" --device 'Nexus 5X' --abi "${ANDROID_API}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M + run: echo no | avdmanager create avd --force -n "${ANDROID_EMULATOR_NAME}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M - name: Emulator - List AVDs run: emulator -list-avds From cd26d411dd5c7655b72ce9a7a617e8398f6752f3 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 12:28:47 -0400 Subject: [PATCH 20/35] Try setup-skip action --- .github/workflows/ci.yml | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 653d56a..107dff9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -44,6 +44,9 @@ jobs: #ANDROID_BUILD_TOOLS_VERSION: 36.0.0 ANDROID_BUILD_TOOLS_VERSION: 'latest' ANDROID_EMULATOR_NAME: 'demo' + ANDROID_PROFILE: "Nexus 10" + ANDROID_CHANNEL: "3" + BUILD_TOOLS_VERSION: "35.0.0" steps: - uses: skiptools/actions/setup-skip@skip-action @@ -63,7 +66,7 @@ jobs: # Create emulator echo "Creating emulator: ${ANDROID_EMULATOR_NAME}" - avdmanager create avd -f -n "${ANDROID_EMULATOR_NAME}" -d "Nexus 10" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force + avdmanager create avd -f -n "${ANDROID_EMULATOR_NAME}" -d "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force echo "Listing emulators" @@ -81,14 +84,17 @@ jobs: - name: SDKs - accept licenses run: yes y | sdkmanager --licenses - - name: SKDs - download required images - run: yes no | sdkmanager "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" + - name: SKDs - setup build tools + run: sdkmanager --install "build-tools;${BUILD_TOOLS_VERSION}" platform-tools "platforms;android-${ANDROID_API}" --channel="${ANDROID_CHANNEL}" - name: SKDs - setup emulator - run: yes no | sdkmanager --channel=3 emulator + run: sdkmanager --install emulator --channel="${ANDROID_CHANNEL}" + + - name: SKDs - download required images + run: sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --channel="${ANDROID_CHANNEL}" - name: Emulator - Create - run: echo no | avdmanager create avd --force -n "${ANDROID_EMULATOR_NAME}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M + run: echo no | avdmanager create avd --force -n "${ANDROID_EMULATOR_NAME}" --device "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M - name: Emulator - List AVDs run: emulator -list-avds From 49d561bc2122a02627b304fcffe4752985a3b34d Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 12:38:24 -0400 Subject: [PATCH 21/35] Try setup-skip action --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 107dff9..77116ec 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -66,7 +66,7 @@ jobs: # Create emulator echo "Creating emulator: ${ANDROID_EMULATOR_NAME}" - avdmanager create avd -f -n "${ANDROID_EMULATOR_NAME}" -d "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force + avdmanager --verbose create avd -f -n "${ANDROID_EMULATOR_NAME}" -d "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force echo "Listing emulators" @@ -94,7 +94,7 @@ jobs: run: sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --channel="${ANDROID_CHANNEL}" - name: Emulator - Create - run: echo no | avdmanager create avd --force -n "${ANDROID_EMULATOR_NAME}" --device "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M + run: echo no | avdmanager --verbose create avd --force -n "${ANDROID_EMULATOR_NAME}" --device "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M - name: Emulator - List AVDs run: emulator -list-avds From 0b7887d318e15b135903a7db3952f6d894382a66 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 12:40:50 -0400 Subject: [PATCH 22/35] Try setup-skip action --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 77116ec..2a64e60 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,7 +94,7 @@ jobs: run: sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --channel="${ANDROID_CHANNEL}" - name: Emulator - Create - run: echo no | avdmanager --verbose create avd --force -n "${ANDROID_EMULATOR_NAME}" --device "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M + run: avdmanager --verbose create avd --force -n "${ANDROID_EMULATOR_NAME}" --device "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M - name: Emulator - List AVDs run: emulator -list-avds From 30fec4ded495070c8d78b056641ac4062253c775 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 12:47:07 -0400 Subject: [PATCH 23/35] Try setup-skip action --- .github/workflows/ci.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2a64e60..3afba19 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -49,6 +49,9 @@ jobs: BUILD_TOOLS_VERSION: "35.0.0" steps: - uses: skiptools/actions/setup-skip@skip-action + - uses: skiptools/swift-android-action@v2 + with: + build-package: false - name: "Setup Environment" run: | @@ -100,7 +103,7 @@ jobs: run: emulator -list-avds - name: Emulator - Boot - run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -gpu swiftshader_indirect -no-snapshot -noaudio -no-boot-anim & + run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -gpu "${ANDROID_GPU}" -no-snapshot -noaudio -no-boot-anim & - name: ADB Wait For Device run: adb wait-for-any-device From a4e1d7d4884fd92d2a4b22611641c182cfb60d9d Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 12:49:26 -0400 Subject: [PATCH 24/35] Try setup-skip action --- .github/workflows/ci.yml | 31 ++++--------------------------- 1 file changed, 4 insertions(+), 27 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3afba19..a8e7f06 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -56,33 +56,10 @@ jobs: - name: "Setup Environment" run: | echo "$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/emulator:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/${{ env.ANDROID_BUILD_TOOLS_VERSION }}" >> $GITHUB_PATH - - - name: "Launch emulator" - if: false - timeout-minutes: 10 - run: | - yes Y | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses 2>&1 >> /dev/null - - # Install AVD files - sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" - sdkmanager --channel=3 emulator - - # Create emulator - echo "Creating emulator: ${ANDROID_EMULATOR_NAME}" - avdmanager --verbose create avd -f -n "${ANDROID_EMULATOR_NAME}" -d "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" -k "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --force - - echo "Listing emulators" - - emulator -list-avds - echo "Starting emulator" - - # Start emulator in background - nohup emulator -avd ${ANDROID_EMULATOR_NAME} -no-snapshot -no-window -no-audio -no-boot-anim -no-accel -no-metrics -camera-back none -accel off -gpu ${ANDROID_GPU} & - # Fixed quoting around "\r" - adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d "\r") ]]; do sleep 1; done; input keyevent 82' - - adb devices - echo "Emulator started" + # needed for Linux + if [[ "${RUNNER_OS}" == "Linux" ]]; then + echo "ANDROID_AVD_HOME=${HOME}/.android/avd" >> $GITHUB_ENV + fi - name: SDKs - accept licenses run: yes y | sdkmanager --licenses From 28af61f765b8f14e75d3efed0ad25e2ff942426d Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 12:56:14 -0400 Subject: [PATCH 25/35] Try setup-skip action --- .github/workflows/ci.yml | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a8e7f06..c86d906 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -49,18 +49,25 @@ jobs: BUILD_TOOLS_VERSION: "35.0.0" steps: - uses: skiptools/actions/setup-skip@skip-action - - uses: skiptools/swift-android-action@v2 + + - uses: nttld/setup-ndk@v1 + id: setup-ndk with: - build-package: false + ndk-version: r27d - name: "Setup Environment" run: | echo "$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/emulator:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/${{ env.ANDROID_BUILD_TOOLS_VERSION }}" >> $GITHUB_PATH + echo "ANDROID_NDK_HOME=${{ steps.setup-ndk.outputs.ndk-path }}" >> $GITHUB_ENV # needed for Linux if [[ "${RUNNER_OS}" == "Linux" ]]; then echo "ANDROID_AVD_HOME=${HOME}/.android/avd" >> $GITHUB_ENV fi + - uses: skiptools/swift-android-action@v2 + with: + build-package: false + - name: SDKs - accept licenses run: yes y | sdkmanager --licenses @@ -68,7 +75,7 @@ jobs: run: sdkmanager --install "build-tools;${BUILD_TOOLS_VERSION}" platform-tools "platforms;android-${ANDROID_API}" --channel="${ANDROID_CHANNEL}" - name: SKDs - setup emulator - run: sdkmanager --install emulator --channel="${ANDROID_CHANNEL}" + run: sdkmanager --install emulator --channel="${ANDROID_CHANNEL}" - name: SKDs - download required images run: sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --channel="${ANDROID_CHANNEL}" From b380a916a94adcebe36374326e514f80651fadd6 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 13:00:58 -0400 Subject: [PATCH 26/35] Try setup-skip action --- .github/workflows/ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c86d906..46ee419 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -83,6 +83,9 @@ jobs: - name: Emulator - Create run: avdmanager --verbose create avd --force -n "${ANDROID_EMULATOR_NAME}" --device "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M + - name: Emulator - Find AVDs + run: find ~/ -type d -name '*.avd' + - name: Emulator - List AVDs run: emulator -list-avds From 9d1f3b5c29ad612f10bf4812ecdf64a538ec56d7 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 13:09:25 -0400 Subject: [PATCH 27/35] Try setup-skip action --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 46ee419..3afb203 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -61,7 +61,7 @@ jobs: echo "ANDROID_NDK_HOME=${{ steps.setup-ndk.outputs.ndk-path }}" >> $GITHUB_ENV # needed for Linux if [[ "${RUNNER_OS}" == "Linux" ]]; then - echo "ANDROID_AVD_HOME=${HOME}/.android/avd" >> $GITHUB_ENV + echo "ANDROID_AVD_HOME=${XDG_CONFIG_HOME}/.android/avd" >> $GITHUB_ENV fi - uses: skiptools/swift-android-action@v2 From 3671b13926fb71d9d12baa87adbe28389c45925b Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 13:16:57 -0400 Subject: [PATCH 28/35] Try setup-skip action --- .github/workflows/ci.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3afb203..1cf841c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -59,7 +59,8 @@ jobs: run: | echo "$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/emulator:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/${{ env.ANDROID_BUILD_TOOLS_VERSION }}" >> $GITHUB_PATH echo "ANDROID_NDK_HOME=${{ steps.setup-ndk.outputs.ndk-path }}" >> $GITHUB_ENV - # needed for Linux + # needed for Linux or else the emulator will be created in + # ~/.android/avd but it will be sought in ~/.config/.android/avd if [[ "${RUNNER_OS}" == "Linux" ]]; then echo "ANDROID_AVD_HOME=${XDG_CONFIG_HOME}/.android/avd" >> $GITHUB_ENV fi @@ -90,7 +91,7 @@ jobs: run: emulator -list-avds - name: Emulator - Boot - run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -gpu "${ANDROID_GPU}" -no-snapshot -noaudio -no-boot-anim & + run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-snapshot -noaudio -no-boot-anim & - name: ADB Wait For Device run: adb wait-for-any-device From 0fe250c65d282e5d72133e2995cd5bbb5006e213 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 13:28:37 -0400 Subject: [PATCH 29/35] Try setup-skip action --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1cf841c..9293f5a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -91,7 +91,7 @@ jobs: run: emulator -list-avds - name: Emulator - Boot - run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-snapshot -noaudio -no-boot-anim & + run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-accel -gpu off -engine classic -no-snapshot -noaudio -no-boot-anim & - name: ADB Wait For Device run: adb wait-for-any-device From 8b02f1f7e930c2cc52e5198176783bdb4e0c5831 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 13:30:59 -0400 Subject: [PATCH 30/35] Try setup-skip action --- .github/workflows/ci.yml | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9293f5a..aed1fd7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,7 +33,17 @@ jobs: os: 'ubuntu-latest' ANDROID_API: 28 ANDROID_ARCH: 'x86_64' - ANDROID_GPU: 'none' + ANDROID_GPU: 'off' + - name: 'Ubuntu Latest' + os: 'ubuntu-latest' + ANDROID_API: 28 + ANDROID_ARCH: 'x86_64' + ANDROID_GPU: 'swiftshader_indirect' + - name: 'Ubuntu Latest' + os: 'ubuntu-latest' + ANDROID_API: 28 + ANDROID_ARCH: 'x86_64' + ANDROID_GPU: 'swiftshader' fail-fast: false runs-on: ${{ matrix.os }} env: @@ -91,7 +101,7 @@ jobs: run: emulator -list-avds - name: Emulator - Boot - run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-accel -gpu off -engine classic -no-snapshot -noaudio -no-boot-anim & + run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-accel -gpu "${ANDROID_GPU}" -engine classic -no-snapshot -noaudio -no-boot-anim & - name: ADB Wait For Device run: adb wait-for-any-device From e7e14498dbf575efd957542c2d0a8074cb32ad93 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 13:35:07 -0400 Subject: [PATCH 31/35] Try setup-skip action --- .github/workflows/ci.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index aed1fd7..d580948 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,6 +14,16 @@ jobs: ANDROID_API: 28 ANDROID_ARCH: 'arm64-v8a' ANDROID_GPU: 'swiftshader_indirect' + - name: 'macOS 26' + os: 'macos-26' + ANDROID_API: 28 + ANDROID_ARCH: 'arm64-v8a' + ANDROID_GPU: 'swiftshader' + - name: 'macOS 26' + os: 'macos-26' + ANDROID_API: 28 + ANDROID_ARCH: 'arm64-v8a' + ANDROID_GPU: 'off' #- name: 'macOS 15' # os: 'macos-15' # ANDROID_API: 28 From 72e9565b1ed089d5b33655c855262bdd033dc3d0 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 13:36:17 -0400 Subject: [PATCH 32/35] Try setup-skip action --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d580948..2ec7cf2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -111,7 +111,7 @@ jobs: run: emulator -list-avds - name: Emulator - Boot - run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-accel -gpu "${ANDROID_GPU}" -engine classic -no-snapshot -noaudio -no-boot-anim & + run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-accel -gpu "${ANDROID_GPU}" -no-snapshot -noaudio -no-boot-anim & - name: ADB Wait For Device run: adb wait-for-any-device From f25e7e6b8860cbabbfec1865567557cbb020ac3a Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 14:56:13 -0400 Subject: [PATCH 33/35] Try setup-skip action --- .github/workflows/ci.yml | 55 ++++++++++++++++++++++------------------ 1 file changed, 30 insertions(+), 25 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2ec7cf2..4334944 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,54 +12,59 @@ jobs: - name: 'macOS 26' os: 'macos-26' ANDROID_API: 28 - ANDROID_ARCH: 'arm64-v8a' - ANDROID_GPU: 'swiftshader_indirect' + EMULATOR_ARCH: 'arm64-v8a' + #EMULATOR_ARCH: 'armv7' + EMULATOR_GPU: 'swiftshader_indirect' + EMULATOR_ENGINE: 'classic' - name: 'macOS 26' os: 'macos-26' ANDROID_API: 28 - ANDROID_ARCH: 'arm64-v8a' - ANDROID_GPU: 'swiftshader' + EMULATOR_ARCH: 'arm64-v8a' + EMULATOR_GPU: 'swiftshader' + EMULATOR_ENGINE: 'classic' - name: 'macOS 26' os: 'macos-26' ANDROID_API: 28 - ANDROID_ARCH: 'arm64-v8a' - ANDROID_GPU: 'off' + EMULATOR_ARCH: 'arm64-v8a' + EMULATOR_GPU: 'off' + EMULATOR_ENGINE: 'classic' #- name: 'macOS 15' # os: 'macos-15' # ANDROID_API: 28 - # ANDROID_ARCH: 'arm64-v8a' - # ANDROID_GPU: 'swiftshader_indirect' + # EMULATOR_ARCH: 'arm64-v8a' + # EMULATOR_GPU: 'swiftshader_indirect' #- name: 'macOS 14' # os: 'macos-14' # ANDROID_API: 28 - # ANDROID_ARCH: 'arm64-v8a' - # ANDROID_GPU: 'swiftshader_indirect' + # EMULATOR_ARCH: 'arm64-v8a' + # EMULATOR_GPU: 'swiftshader_indirect' - name: 'macOS 13' os: 'macos-13' ANDROID_API: 28 - ANDROID_ARCH: 'x86_64' - ANDROID_GPU: 'swiftshader_indirect' + EMULATOR_ARCH: 'x86_64' + EMULATOR_GPU: 'swiftshader_indirect' - name: 'Ubuntu Latest' os: 'ubuntu-latest' ANDROID_API: 28 - ANDROID_ARCH: 'x86_64' - ANDROID_GPU: 'off' + EMULATOR_ARCH: 'x86_64' + EMULATOR_GPU: 'off' - name: 'Ubuntu Latest' os: 'ubuntu-latest' ANDROID_API: 28 - ANDROID_ARCH: 'x86_64' - ANDROID_GPU: 'swiftshader_indirect' + EMULATOR_ARCH: 'x86_64' + EMULATOR_GPU: 'swiftshader_indirect' - name: 'Ubuntu Latest' os: 'ubuntu-latest' ANDROID_API: 28 - ANDROID_ARCH: 'x86_64' - ANDROID_GPU: 'swiftshader' + EMULATOR_ARCH: 'x86_64' + EMULATOR_GPU: 'swiftshader' fail-fast: false runs-on: ${{ matrix.os }} env: ANDROID_API: ${{ matrix.ANDROID_API }} - ANDROID_ARCH: ${{ matrix.ANDROID_ARCH }} - ANDROID_GPU: ${{ matrix.ANDROID_GPU }} + EMULATOR_ARCH: ${{ matrix.EMULATOR_ARCH }} + EMULATOR_GPU: ${{ matrix.EMULATOR_GPU }} + EMULATOR_ENGINE: ${{ matrix.EMULATOR_ENGINE }} ANDROID_TARGET: 'default' #ANDROID_BUILD_TOOLS_VERSION: 36.0.0 ANDROID_BUILD_TOOLS_VERSION: 'latest' @@ -85,7 +90,7 @@ jobs: echo "ANDROID_AVD_HOME=${XDG_CONFIG_HOME}/.android/avd" >> $GITHUB_ENV fi - - uses: skiptools/swift-android-action@v2 + - uses: skiptools/swift-android-action@main with: build-package: false @@ -99,10 +104,10 @@ jobs: run: sdkmanager --install emulator --channel="${ANDROID_CHANNEL}" - name: SKDs - download required images - run: sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --channel="${ANDROID_CHANNEL}" + run: sdkmanager --install "system-images;android-${ANDROID_API};${ANDROID_TARGET};${EMULATOR_ARCH}" --channel="${ANDROID_CHANNEL}" - name: Emulator - Create - run: avdmanager --verbose create avd --force -n "${ANDROID_EMULATOR_NAME}" --device "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${ANDROID_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${ANDROID_ARCH}" --sdcard 512M + run: avdmanager --verbose create avd --force -n "${ANDROID_EMULATOR_NAME}" --device "${ANDROID_PROFILE}" --abi "${ANDROID_TARGET}/${EMULATOR_ARCH}" --package "system-images;android-${ANDROID_API};${ANDROID_TARGET};${EMULATOR_ARCH}" --sdcard 512M - name: Emulator - Find AVDs run: find ~/ -type d -name '*.avd' @@ -111,7 +116,7 @@ jobs: run: emulator -list-avds - name: Emulator - Boot - run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-accel -gpu "${ANDROID_GPU}" -no-snapshot -noaudio -no-boot-anim & + run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-accel -gpu "${EMULATOR_GPU}" -engine "${EMULATOR_ENGINE}" -no-snapshot -noaudio -no-boot-anim & - name: ADB Wait For Device run: adb wait-for-any-device @@ -127,5 +132,5 @@ jobs: cd PackageDemo swift package init swift test - skip android test + skip android test --arch ${EMULATOR_ARCH} From 02806999b48a043494810898408ce77f8a51edef Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 15:55:21 -0400 Subject: [PATCH 34/35] Update versions of actions --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4334944..eb8573b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -73,7 +73,7 @@ jobs: ANDROID_CHANNEL: "3" BUILD_TOOLS_VERSION: "35.0.0" steps: - - uses: skiptools/actions/setup-skip@skip-action + - uses: skiptools/actions/setup-skip@v1 - uses: nttld/setup-ndk@v1 id: setup-ndk @@ -90,7 +90,7 @@ jobs: echo "ANDROID_AVD_HOME=${XDG_CONFIG_HOME}/.android/avd" >> $GITHUB_ENV fi - - uses: skiptools/swift-android-action@main + - uses: skiptools/swift-android-action@v2 with: build-package: false From 301007e1820ea8878fd6fbff470215f862e68684 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sun, 28 Sep 2025 16:02:06 -0400 Subject: [PATCH 35/35] Cleanup --- .github/workflows/ci.yml | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index eb8573b..eb839a4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,21 +13,7 @@ jobs: os: 'macos-26' ANDROID_API: 28 EMULATOR_ARCH: 'arm64-v8a' - #EMULATOR_ARCH: 'armv7' EMULATOR_GPU: 'swiftshader_indirect' - EMULATOR_ENGINE: 'classic' - - name: 'macOS 26' - os: 'macos-26' - ANDROID_API: 28 - EMULATOR_ARCH: 'arm64-v8a' - EMULATOR_GPU: 'swiftshader' - EMULATOR_ENGINE: 'classic' - - name: 'macOS 26' - os: 'macos-26' - ANDROID_API: 28 - EMULATOR_ARCH: 'arm64-v8a' - EMULATOR_GPU: 'off' - EMULATOR_ENGINE: 'classic' #- name: 'macOS 15' # os: 'macos-15' # ANDROID_API: 28 @@ -43,21 +29,11 @@ jobs: ANDROID_API: 28 EMULATOR_ARCH: 'x86_64' EMULATOR_GPU: 'swiftshader_indirect' - - name: 'Ubuntu Latest' - os: 'ubuntu-latest' - ANDROID_API: 28 - EMULATOR_ARCH: 'x86_64' - EMULATOR_GPU: 'off' - name: 'Ubuntu Latest' os: 'ubuntu-latest' ANDROID_API: 28 EMULATOR_ARCH: 'x86_64' EMULATOR_GPU: 'swiftshader_indirect' - - name: 'Ubuntu Latest' - os: 'ubuntu-latest' - ANDROID_API: 28 - EMULATOR_ARCH: 'x86_64' - EMULATOR_GPU: 'swiftshader' fail-fast: false runs-on: ${{ matrix.os }} env: @@ -116,7 +92,7 @@ jobs: run: emulator -list-avds - name: Emulator - Boot - run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-accel -gpu "${EMULATOR_GPU}" -engine "${EMULATOR_ENGINE}" -no-snapshot -noaudio -no-boot-anim & + run: emulator -memory 4096 -avd "${ANDROID_EMULATOR_NAME}" -wipe-data -no-window -accel off -no-accel -gpu "${EMULATOR_GPU}" -no-snapshot -noaudio -no-boot-anim & - name: ADB Wait For Device run: adb wait-for-any-device