From b94f539f8bad74318f4624911c788a1588a5d9a1 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 02:44:38 +0900 Subject: [PATCH 01/31] generate test action --- .../workflows/android-instrumented-test.yml | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 .github/workflows/android-instrumented-test.yml diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml new file mode 100644 index 00000000..a4ee42cc --- /dev/null +++ b/.github/workflows/android-instrumented-test.yml @@ -0,0 +1,65 @@ +name: Android Instrumented Test + +on: + push: + + +jobs: + build: + + runs-on: ubuntu-latest + + strategy: + matrix: + compile-sdk: [30] + build-tools: [30.0.0] + sdk-tools: [4333796] + + steps: + - uses: actions/checkout@v1 + - name: setup ubuntu + run: | + sudo apt-get --quiet update --yes + sudo apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 + - name: setup JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: download Android SDK + working-directory: ./Android + run: | + wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-${{ matrix.sdk-tools }}.zip + unzip -d android-sdk-linux android-sdk.zip + sudo mkdir -p /root/.android + sudo touch /root/.android/repositories.cfg + echo y | android-sdk-linux/tools/bin/sdkmanager "platforms;android-${{ matrix.compile-sdk }}" >/dev/null + echo y | android-sdk-linux/tools/bin/sdkmanager "platform-tools" >/dev/null + echo y | android-sdk-linux/tools/bin/sdkmanager "build-tools;${{ matrix.build-tools }}" >/dev/null + export ANDROID_HOME=$PWD/android-sdk-linux + export PATH=$PATH:$PWD/android-sdk-linux/platform-tools/ + chmod +x ./gradlew + set +o pipefail + yes | android-sdk-linux/tools/bin/sdkmanager --licenses + set -o pipefail + - name: install emulator + working-directory: ./Android + run: | + echo y | android-sdk-linux/tools/bin/sdkmanager --install "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" + - name: start emulator + working-directory: ./Android + run: | + echo no | android-sdk-linux/tools/bin/sdkmanager create avd -n xamarin_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force + echo android-sdk-linux/emulator/emulator -list-avds + echo "Starting emulator" + nohup android-sdk-linux/emulator/emulator -avd xamarin_android_emulator -no-snapshot > /dev/null 2>&1 & + android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d '\r') ]]; do sleep 1; done; input keyevent 82' + android-sdk-linux/platform-tools/adb devices + echo "Emulator started" + - name: execute test and report coverage + working-directory: ./Android + run: | + ./gradlew createDebugCoverageReport + - uses: actions/upload-artifact@master + with: + name: outputs + path: Android/app/build/outputs/ \ No newline at end of file From b7ed0d86054192d36628b9156506f678be9cc886 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 02:57:17 +0900 Subject: [PATCH 02/31] fix command --- .github/workflows/android-instrumented-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index a4ee42cc..593a0294 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -48,7 +48,7 @@ jobs: - name: start emulator working-directory: ./Android run: | - echo no | android-sdk-linux/tools/bin/sdkmanager create avd -n xamarin_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force + echo no | android-sdk-linux/tools/bin/avdmanager create avd -n xamarin_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force echo android-sdk-linux/emulator/emulator -list-avds echo "Starting emulator" nohup android-sdk-linux/emulator/emulator -avd xamarin_android_emulator -no-snapshot > /dev/null 2>&1 & From caff35e9a75d8b3e5a12f297b8d1db3d7b7a6290 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 03:26:36 +0900 Subject: [PATCH 03/31] split test states --- .github/workflows/android-instrumented-test.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 593a0294..8f710f1b 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -45,16 +45,15 @@ jobs: working-directory: ./Android run: | echo y | android-sdk-linux/tools/bin/sdkmanager --install "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" - - name: start emulator + - name: create emulator device working-directory: ./Android run: | echo no | android-sdk-linux/tools/bin/avdmanager create avd -n xamarin_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force - echo android-sdk-linux/emulator/emulator -list-avds - echo "Starting emulator" + - name: start emulator + working-directory: ./Android + run: | nohup android-sdk-linux/emulator/emulator -avd xamarin_android_emulator -no-snapshot > /dev/null 2>&1 & android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d '\r') ]]; do sleep 1; done; input keyevent 82' - android-sdk-linux/platform-tools/adb devices - echo "Emulator started" - name: execute test and report coverage working-directory: ./Android run: | From 82dccec58298a4a57c84cb4c5714a26fb346de81 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 12:40:32 +0900 Subject: [PATCH 04/31] execute no wait --- .github/workflows/android-instrumented-test.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 8f710f1b..8a50c346 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -48,12 +48,13 @@ jobs: - name: create emulator device working-directory: ./Android run: | - echo no | android-sdk-linux/tools/bin/avdmanager create avd -n xamarin_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force + echo no | android-sdk-linux/tools/bin/avdmanager create avd -n test_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force - name: start emulator working-directory: ./Android run: | - nohup android-sdk-linux/emulator/emulator -avd xamarin_android_emulator -no-snapshot > /dev/null 2>&1 & - android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d '\r') ]]; do sleep 1; done; input keyevent 82' + android-sdk-linux/emulator/emulator -avd test_android_emulator -no-skin -no-audio -no-window & + android-sdk-linux/platform-tools/android-wait-for-emulator + adb shell input keyevent 82 & - name: execute test and report coverage working-directory: ./Android run: | From e7beb9c06f9ed407378ad59a9e1bc01caa76ead1 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 12:46:30 +0900 Subject: [PATCH 05/31] Revert "execute no wait" This reverts commit c5b1cc237fa85b504ed4ef3bc08ac7188bc83436. --- .github/workflows/android-instrumented-test.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 8a50c346..8f710f1b 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -48,13 +48,12 @@ jobs: - name: create emulator device working-directory: ./Android run: | - echo no | android-sdk-linux/tools/bin/avdmanager create avd -n test_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force + echo no | android-sdk-linux/tools/bin/avdmanager create avd -n xamarin_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force - name: start emulator working-directory: ./Android run: | - android-sdk-linux/emulator/emulator -avd test_android_emulator -no-skin -no-audio -no-window & - android-sdk-linux/platform-tools/android-wait-for-emulator - adb shell input keyevent 82 & + nohup android-sdk-linux/emulator/emulator -avd xamarin_android_emulator -no-snapshot > /dev/null 2>&1 & + android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d '\r') ]]; do sleep 1; done; input keyevent 82' - name: execute test and report coverage working-directory: ./Android run: | From 6cdf4631a1bcd99bd92ed155e7ccdba2e48c02eb Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 13:01:26 +0900 Subject: [PATCH 06/31] fix android emulator command --- .github/workflows/android-instrumented-test.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 8f710f1b..10e6cb55 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -48,12 +48,13 @@ jobs: - name: create emulator device working-directory: ./Android run: | - echo no | android-sdk-linux/tools/bin/avdmanager create avd -n xamarin_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force + echo no | android-sdk-linux/tools/bin/avdmanager create avd -n test_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force - name: start emulator working-directory: ./Android run: | - nohup android-sdk-linux/emulator/emulator -avd xamarin_android_emulator -no-snapshot > /dev/null 2>&1 & - android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d '\r') ]]; do sleep 1; done; input keyevent 82' + android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & + ./android-wait-for-emulator + android-sdk-linux/platform-tools/adb shell input keyevent 82 & - name: execute test and report coverage working-directory: ./Android run: | From 65eac4ca67509b6286de64143c751516125e252e Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 13:08:22 +0900 Subject: [PATCH 07/31] check android-wait-for-emulator --- .github/workflows/android-instrumented-test.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 10e6cb55..93944476 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -53,7 +53,10 @@ jobs: working-directory: ./Android run: | android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & - ./android-wait-for-emulator + ls -l + ls -l android-sdk-linux/ + ls -l android-sdk-linux/emulator/ + android-sdk-linux/emulator/android-wait-for-emulator android-sdk-linux/platform-tools/adb shell input keyevent 82 & - name: execute test and report coverage working-directory: ./Android From 767118069686804ef37477a1c30703e7782bb6f0 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 13:23:38 +0900 Subject: [PATCH 08/31] edit device wait command --- .github/workflows/android-instrumented-test.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 93944476..a2fc92f0 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -53,10 +53,7 @@ jobs: working-directory: ./Android run: | android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & - ls -l - ls -l android-sdk-linux/ - ls -l android-sdk-linux/emulator/ - android-sdk-linux/emulator/android-wait-for-emulator + android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;' android-sdk-linux/platform-tools/adb shell input keyevent 82 & - name: execute test and report coverage working-directory: ./Android From 529d9aa74a3bf8b621a15efa35dfa7ea87f5e7b2 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 13:37:04 +0900 Subject: [PATCH 09/31] setup path --- .github/workflows/android-instrumented-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index a2fc92f0..ff486647 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -52,6 +52,7 @@ jobs: - name: start emulator working-directory: ./Android run: | + export ANDROID_SDK_ROOT=$PWD/android-sdk-linux android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;' android-sdk-linux/platform-tools/adb shell input keyevent 82 & From e71eae1532c707f5dd7e1bfc2cdf6be2a01750f4 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 14:02:07 +0900 Subject: [PATCH 10/31] Revert "setup path" This reverts commit 295f7b58254f71a183c75ed8d194e65a884ea9b9. --- .github/workflows/android-instrumented-test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index ff486647..a2fc92f0 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -52,7 +52,6 @@ jobs: - name: start emulator working-directory: ./Android run: | - export ANDROID_SDK_ROOT=$PWD/android-sdk-linux android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;' android-sdk-linux/platform-tools/adb shell input keyevent 82 & From 6b1e3994d3a6460683c6808c62c1033dc708364f Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 14:03:33 +0900 Subject: [PATCH 11/31] use run test --- .../workflows/android-instrumented-test.yml | 39 +++---------------- 1 file changed, 5 insertions(+), 34 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index a2fc92f0..75452eb5 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -25,40 +25,11 @@ jobs: uses: actions/setup-java@v1 with: java-version: 1.8 - - name: download Android SDK - working-directory: ./Android - run: | - wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-${{ matrix.sdk-tools }}.zip - unzip -d android-sdk-linux android-sdk.zip - sudo mkdir -p /root/.android - sudo touch /root/.android/repositories.cfg - echo y | android-sdk-linux/tools/bin/sdkmanager "platforms;android-${{ matrix.compile-sdk }}" >/dev/null - echo y | android-sdk-linux/tools/bin/sdkmanager "platform-tools" >/dev/null - echo y | android-sdk-linux/tools/bin/sdkmanager "build-tools;${{ matrix.build-tools }}" >/dev/null - export ANDROID_HOME=$PWD/android-sdk-linux - export PATH=$PATH:$PWD/android-sdk-linux/platform-tools/ - chmod +x ./gradlew - set +o pipefail - yes | android-sdk-linux/tools/bin/sdkmanager --licenses - set -o pipefail - - name: install emulator - working-directory: ./Android - run: | - echo y | android-sdk-linux/tools/bin/sdkmanager --install "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" - - name: create emulator device - working-directory: ./Android - run: | - echo no | android-sdk-linux/tools/bin/avdmanager create avd -n test_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force - - name: start emulator - working-directory: ./Android - run: | - android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & - android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;' - android-sdk-linux/platform-tools/adb shell input keyevent 82 & - - name: execute test and report coverage - working-directory: ./Android - run: | - ./gradlew createDebugCoverageReport + - name: run tests + uses: reactivecircus/android-emulator-runner@v2 + with: + api-level: 30 + script: ./gradlew createDebugCoverageReport - uses: actions/upload-artifact@master with: name: outputs From 70829f4601c71c6720091fb169b533d13130bf23 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 14:05:59 +0900 Subject: [PATCH 12/31] test mac os --- .github/workflows/android-instrumented-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 75452eb5..de32e180 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: macos-latest strategy: matrix: From 1ec7132f7db53326c01eb502115d66005ec4e2e1 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 14:07:12 +0900 Subject: [PATCH 13/31] test mac os --- .../workflows/android-instrumented-test.yml | 20 +++---------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index de32e180..08e600a1 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -6,25 +6,11 @@ on: jobs: build: - runs-on: macos-latest - - strategy: - matrix: - compile-sdk: [30] - build-tools: [30.0.0] - sdk-tools: [4333796] - steps: - - uses: actions/checkout@v1 - - name: setup ubuntu - run: | - sudo apt-get --quiet update --yes - sudo apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 - - name: setup JDK 1.8 - uses: actions/setup-java@v1 - with: - java-version: 1.8 + - name: checkout + uses: actions/checkout@v2 + - name: run tests uses: reactivecircus/android-emulator-runner@v2 with: From 42f38ac541124a5a19e30e37bcd7d9fc19afe405 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 14:15:12 +0900 Subject: [PATCH 14/31] not work revert --- .../workflows/android-instrumented-test.yml | 59 ++++++++++++++++--- 1 file changed, 51 insertions(+), 8 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 08e600a1..3ad9f342 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -6,16 +6,59 @@ on: jobs: build: - runs-on: macos-latest - steps: - - name: checkout - uses: actions/checkout@v2 - - name: run tests - uses: reactivecircus/android-emulator-runner@v2 + runs-on: ubuntu-latest + + strategy: + matrix: + compile-sdk: [30] + build-tools: [30.0.0] + sdk-tools: [4333796] + + steps: + - uses: actions/checkout@v2 + - name: setup ubuntu + run: | + sudo apt-get --quiet update --yes + sudo apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 + - name: setup JDK 1.8 + uses: actions/setup-java@v1 with: - api-level: 30 - script: ./gradlew createDebugCoverageReport + java-version: 1.8 + - name: download Android SDK + working-directory: ./Android + run: | + wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-${{ matrix.sdk-tools }}.zip + unzip -d android-sdk-linux android-sdk.zip + sudo mkdir -p /root/.android + sudo touch /root/.android/repositories.cfg + echo y | android-sdk-linux/tools/bin/sdkmanager "platforms;android-${{ matrix.compile-sdk }}" >/dev/null + echo y | android-sdk-linux/tools/bin/sdkmanager "platform-tools" >/dev/null + echo y | android-sdk-linux/tools/bin/sdkmanager "build-tools;${{ matrix.build-tools }}" >/dev/null + export ANDROID_HOME=$PWD/android-sdk-linux + export PATH=$PATH:$PWD/android-sdk-linux/platform-tools/ + chmod +x ./gradlew + set +o pipefail + yes | android-sdk-linux/tools/bin/sdkmanager --licenses + set -o pipefail + - name: install emulator + working-directory: ./Android + run: | + echo y | android-sdk-linux/tools/bin/sdkmanager --install "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" + - name: create emulator device + working-directory: ./Android + run: | + echo no | android-sdk-linux/tools/bin/avdmanager create avd -n test_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force + - name: start emulator + working-directory: ./Android + run: | + android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & + android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;' + android-sdk-linux/platform-tools/adb shell input keyevent 82 & + - name: execute test and report coverage + working-directory: ./Android + run: | + ./gradlew createDebugCoverageReport - uses: actions/upload-artifact@master with: name: outputs From 791520c39efbcb92033ef1e9321f5abb45d786cf Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 14:29:38 +0900 Subject: [PATCH 15/31] execute android emulator ait sript --- .../workflows/android-instrumented-test.yml | 2 +- Android/android-wait-for-emulator.sh | 26 +++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 Android/android-wait-for-emulator.sh diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 3ad9f342..a83c90df 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -53,7 +53,7 @@ jobs: working-directory: ./Android run: | android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & - android-sdk-linux/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done;' + ./android-wait-for-emulator.sh android-sdk-linux/platform-tools/adb shell input keyevent 82 & - name: execute test and report coverage working-directory: ./Android diff --git a/Android/android-wait-for-emulator.sh b/Android/android-wait-for-emulator.sh new file mode 100644 index 00000000..77822754 --- /dev/null +++ b/Android/android-wait-for-emulator.sh @@ -0,0 +1,26 @@ + +#!/bin/bash + +# Originally written by Ralf Kistner , but placed in the public domain + +set +e + +bootanim="" +failcounter=0 +timeout_in_sec=360 + +until [[ "$bootanim" =~ "stopped" ]]; do + bootanim=`adb -e shell getprop init.svc.bootanim 2>&1 &` + if [[ "$bootanim" =~ "device not found" || "$bootanim" =~ "device offline" + || "$bootanim" =~ "running" ]]; then + let "failcounter += 1" + echo "Waiting for emulator to start" + if [[ $failcounter -gt timeout_in_sec ]]; then + echo "Timeout ($timeout_in_sec seconds) reached; failed to start emulator" + exit 1 + fi + fi + sleep 1 +done + +echo "Emulator is ready" \ No newline at end of file From 13466778e789818dded5a7af137295932266aa6a Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 17:15:56 +0900 Subject: [PATCH 16/31] edit adb command path --- Android/android-wait-for-emulator.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Android/android-wait-for-emulator.sh b/Android/android-wait-for-emulator.sh index 77822754..b260568f 100644 --- a/Android/android-wait-for-emulator.sh +++ b/Android/android-wait-for-emulator.sh @@ -10,7 +10,7 @@ failcounter=0 timeout_in_sec=360 until [[ "$bootanim" =~ "stopped" ]]; do - bootanim=`adb -e shell getprop init.svc.bootanim 2>&1 &` + bootanim=`android-sdk-linux/platform-tools/adb -e shell getprop init.svc.bootanim 2>&1 &` if [[ "$bootanim" =~ "device not found" || "$bootanim" =~ "device offline" || "$bootanim" =~ "running" ]]; then let "failcounter += 1" From 6b83dc1203f8411f21a091f59959486ddcd25695 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 17:48:12 +0900 Subject: [PATCH 17/31] exec sudo --- .github/workflows/android-instrumented-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index a83c90df..b8b62278 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -53,7 +53,7 @@ jobs: working-directory: ./Android run: | android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & - ./android-wait-for-emulator.sh + sudo ./android-wait-for-emulator.sh android-sdk-linux/platform-tools/adb shell input keyevent 82 & - name: execute test and report coverage working-directory: ./Android From d9acbeacead2017af3d88e1583f6a9a26b3b946d Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Tue, 23 Feb 2021 17:56:39 +0900 Subject: [PATCH 18/31] chmod +x --- .github/workflows/android-instrumented-test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index b8b62278..0a224434 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -53,7 +53,8 @@ jobs: working-directory: ./Android run: | android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & - sudo ./android-wait-for-emulator.sh + chmod +x ./android-wait-for-emulator.sh + ./android-wait-for-emulator.sh android-sdk-linux/platform-tools/adb shell input keyevent 82 & - name: execute test and report coverage working-directory: ./Android From ffd0aacd1eda2975696ec01bf35b7c80fcf43497 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Wed, 24 Feb 2021 03:11:54 +0900 Subject: [PATCH 19/31] hardwareAccelerated=true because use emulator x86 --- Android/app/src/main/AndroidManifest.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/Android/app/src/main/AndroidManifest.xml b/Android/app/src/main/AndroidManifest.xml index 22bb69b3..425c12d7 100644 --- a/Android/app/src/main/AndroidManifest.xml +++ b/Android/app/src/main/AndroidManifest.xml @@ -8,6 +8,7 @@ android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" + android:hardwareAccelerated="true" android:theme="@style/AppTheme"> Date: Wed, 24 Feb 2021 03:23:51 +0900 Subject: [PATCH 20/31] yes snapshot --- .github/workflows/android-instrumented-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 0a224434..5769f855 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -52,7 +52,7 @@ jobs: - name: start emulator working-directory: ./Android run: | - android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio -no-snapshot & + android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio & chmod +x ./android-wait-for-emulator.sh ./android-wait-for-emulator.sh android-sdk-linux/platform-tools/adb shell input keyevent 82 & From c1ed7ca446b333f6074ffc0b17df7b8b00948a7d Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Wed, 24 Feb 2021 03:44:48 +0900 Subject: [PATCH 21/31] yes window --- .github/workflows/android-instrumented-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 5769f855..3b2dfcff 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -52,7 +52,7 @@ jobs: - name: start emulator working-directory: ./Android run: | - android-sdk-linux/emulator/emulator -avd test_android_emulator -no-window -no-audio & + android-sdk-linux/emulator/emulator -avd test_android_emulator -no-audio -no-snapshot & chmod +x ./android-wait-for-emulator.sh ./android-wait-for-emulator.sh android-sdk-linux/platform-tools/adb shell input keyevent 82 & From 45e02d459ec1dae3b82ead321ea318457f7cf972 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Wed, 24 Feb 2021 12:21:51 +0900 Subject: [PATCH 22/31] use library --- .../workflows/android-instrumented-test.yml | 44 ++++--------------- 1 file changed, 9 insertions(+), 35 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 3b2dfcff..816640b5 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -25,41 +25,15 @@ jobs: uses: actions/setup-java@v1 with: java-version: 1.8 - - name: download Android SDK - working-directory: ./Android - run: | - wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-${{ matrix.sdk-tools }}.zip - unzip -d android-sdk-linux android-sdk.zip - sudo mkdir -p /root/.android - sudo touch /root/.android/repositories.cfg - echo y | android-sdk-linux/tools/bin/sdkmanager "platforms;android-${{ matrix.compile-sdk }}" >/dev/null - echo y | android-sdk-linux/tools/bin/sdkmanager "platform-tools" >/dev/null - echo y | android-sdk-linux/tools/bin/sdkmanager "build-tools;${{ matrix.build-tools }}" >/dev/null - export ANDROID_HOME=$PWD/android-sdk-linux - export PATH=$PATH:$PWD/android-sdk-linux/platform-tools/ - chmod +x ./gradlew - set +o pipefail - yes | android-sdk-linux/tools/bin/sdkmanager --licenses - set -o pipefail - - name: install emulator - working-directory: ./Android - run: | - echo y | android-sdk-linux/tools/bin/sdkmanager --install "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" - - name: create emulator device - working-directory: ./Android - run: | - echo no | android-sdk-linux/tools/bin/avdmanager create avd -n test_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force - - name: start emulator - working-directory: ./Android - run: | - android-sdk-linux/emulator/emulator -avd test_android_emulator -no-audio -no-snapshot & - chmod +x ./android-wait-for-emulator.sh - ./android-wait-for-emulator.sh - android-sdk-linux/platform-tools/adb shell input keyevent 82 & - - name: execute test and report coverage - working-directory: ./Android - run: | - ./gradlew createDebugCoverageReport + # Download & install the Android SDK. + - uses: malinskiy/action-android/install-sdk@release/0.1.1 + - name: Run instrumentation tests + uses: malinskiy/action-android/emulator-run-cmd@release/0.1.1 + with: + cmd: ./gradlew createDebugCoverageReport --stacktrace + api: 30 + tag: default + abi: x86 - uses: actions/upload-artifact@master with: name: outputs From 4fa441ea884c790734df95001e60058702bcb6c5 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Wed, 24 Feb 2021 12:33:37 +0900 Subject: [PATCH 23/31] fix --- .github/workflows/android-instrumented-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 816640b5..05ef82ce 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -32,7 +32,7 @@ jobs: with: cmd: ./gradlew createDebugCoverageReport --stacktrace api: 30 - tag: default + tag: google_apis abi: x86 - uses: actions/upload-artifact@master with: From a29afc2c5dcd584935f256792fc6338165cfd6b2 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Wed, 24 Feb 2021 12:45:25 +0900 Subject: [PATCH 24/31] Revert "hardwareAccelerated=true because use emulator x86" This reverts commit 6453dff9c9adb612103a5907aa05742eb08d3f0b. --- Android/app/src/main/AndroidManifest.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/Android/app/src/main/AndroidManifest.xml b/Android/app/src/main/AndroidManifest.xml index 425c12d7..22bb69b3 100644 --- a/Android/app/src/main/AndroidManifest.xml +++ b/Android/app/src/main/AndroidManifest.xml @@ -8,7 +8,6 @@ android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" - android:hardwareAccelerated="true" android:theme="@style/AppTheme"> Date: Fri, 26 Feb 2021 16:40:32 +0900 Subject: [PATCH 25/31] macos version --- .github/workflows/android-instrumented-test.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 05ef82ce..b4dc59f2 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: nacos-latest strategy: matrix: @@ -17,10 +17,6 @@ jobs: steps: - uses: actions/checkout@v2 - - name: setup ubuntu - run: | - sudo apt-get --quiet update --yes - sudo apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 - name: setup JDK 1.8 uses: actions/setup-java@v1 with: From 97e58e0403ff603a006bc3fa354c0b2c649c6291 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Fri, 26 Feb 2021 16:41:01 +0900 Subject: [PATCH 26/31] fix --- .github/workflows/android-instrumented-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index b4dc59f2..ac181006 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: nacos-latest + runs-on: macos-latest strategy: matrix: From 7a1d46a57e1e5156660bbd433cec7abe4d957204 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Fri, 26 Feb 2021 16:50:12 +0900 Subject: [PATCH 27/31] setup working-directory --- .github/workflows/android-instrumented-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index ac181006..e48c9a82 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -23,8 +23,10 @@ jobs: java-version: 1.8 # Download & install the Android SDK. - uses: malinskiy/action-android/install-sdk@release/0.1.1 + working-directory: ./Android - name: Run instrumentation tests uses: malinskiy/action-android/emulator-run-cmd@release/0.1.1 + working-directory: ./Android with: cmd: ./gradlew createDebugCoverageReport --stacktrace api: 30 From e6cf5c0944b89423c0eee2636c9b0d96024dfe46 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Fri, 26 Feb 2021 17:05:53 +0900 Subject: [PATCH 28/31] fix --- .github/workflows/android-instrumented-test.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index e48c9a82..a1b67b65 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -23,12 +23,10 @@ jobs: java-version: 1.8 # Download & install the Android SDK. - uses: malinskiy/action-android/install-sdk@release/0.1.1 - working-directory: ./Android - name: Run instrumentation tests uses: malinskiy/action-android/emulator-run-cmd@release/0.1.1 - working-directory: ./Android with: - cmd: ./gradlew createDebugCoverageReport --stacktrace + cmd: ./Android/gradlew createDebugCoverageReport --stacktrace api: 30 tag: google_apis abi: x86 From fd1d2a910c1f2a8aed4f5a5446fbf9dd994c2d2e Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Fri, 26 Feb 2021 18:03:42 +0900 Subject: [PATCH 29/31] revert --- .../workflows/android-instrumented-test.yml | 50 +++++++++++++++---- 1 file changed, 40 insertions(+), 10 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index a1b67b65..3b2dfcff 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: macos-latest + runs-on: ubuntu-latest strategy: matrix: @@ -17,19 +17,49 @@ jobs: steps: - uses: actions/checkout@v2 + - name: setup ubuntu + run: | + sudo apt-get --quiet update --yes + sudo apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 - name: setup JDK 1.8 uses: actions/setup-java@v1 with: java-version: 1.8 - # Download & install the Android SDK. - - uses: malinskiy/action-android/install-sdk@release/0.1.1 - - name: Run instrumentation tests - uses: malinskiy/action-android/emulator-run-cmd@release/0.1.1 - with: - cmd: ./Android/gradlew createDebugCoverageReport --stacktrace - api: 30 - tag: google_apis - abi: x86 + - name: download Android SDK + working-directory: ./Android + run: | + wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-${{ matrix.sdk-tools }}.zip + unzip -d android-sdk-linux android-sdk.zip + sudo mkdir -p /root/.android + sudo touch /root/.android/repositories.cfg + echo y | android-sdk-linux/tools/bin/sdkmanager "platforms;android-${{ matrix.compile-sdk }}" >/dev/null + echo y | android-sdk-linux/tools/bin/sdkmanager "platform-tools" >/dev/null + echo y | android-sdk-linux/tools/bin/sdkmanager "build-tools;${{ matrix.build-tools }}" >/dev/null + export ANDROID_HOME=$PWD/android-sdk-linux + export PATH=$PATH:$PWD/android-sdk-linux/platform-tools/ + chmod +x ./gradlew + set +o pipefail + yes | android-sdk-linux/tools/bin/sdkmanager --licenses + set -o pipefail + - name: install emulator + working-directory: ./Android + run: | + echo y | android-sdk-linux/tools/bin/sdkmanager --install "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" + - name: create emulator device + working-directory: ./Android + run: | + echo no | android-sdk-linux/tools/bin/avdmanager create avd -n test_android_emulator -k "system-images;android-${{ matrix.compile-sdk }};google_apis;x86" --force + - name: start emulator + working-directory: ./Android + run: | + android-sdk-linux/emulator/emulator -avd test_android_emulator -no-audio -no-snapshot & + chmod +x ./android-wait-for-emulator.sh + ./android-wait-for-emulator.sh + android-sdk-linux/platform-tools/adb shell input keyevent 82 & + - name: execute test and report coverage + working-directory: ./Android + run: | + ./gradlew createDebugCoverageReport - uses: actions/upload-artifact@master with: name: outputs From 081e7659acdd45ab263befa391701ea666a5e444 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Fri, 26 Feb 2021 23:12:51 +0900 Subject: [PATCH 30/31] only shell --- .github/workflows/android-instrumented-test.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 3b2dfcff..3e3be576 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -52,10 +52,9 @@ jobs: - name: start emulator working-directory: ./Android run: | - android-sdk-linux/emulator/emulator -avd test_android_emulator -no-audio -no-snapshot & - chmod +x ./android-wait-for-emulator.sh - ./android-wait-for-emulator.sh - android-sdk-linux/platform-tools/adb shell input keyevent 82 & + android-sdk-linux/emulator/emulator -avd test_android_emulator -port 5556 -no-snapshot-save -no-audio -no-boot-anim & + android-sdk-linux/platform-tools/adb -s emulator-5556 shell 'while [[ -z $(getprop sys.boot_completed) ]]; do echo "Sleeping for 1s";sleep 1; done;' + android-sdk-linux/platform-tools/adb -s emulator-5556 shell input keyevent 82 & - name: execute test and report coverage working-directory: ./Android run: | From d19bac883d3470a9dc446eff75a75c6654400b57 Mon Sep 17 00:00:00 2001 From: "DESKTOP-2VGTF7G\\taku" Date: Sat, 27 Feb 2021 14:35:53 +0900 Subject: [PATCH 31/31] fix standard --- .github/workflows/android-instrumented-test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/android-instrumented-test.yml b/.github/workflows/android-instrumented-test.yml index 3e3be576..da7ad19f 100644 --- a/.github/workflows/android-instrumented-test.yml +++ b/.github/workflows/android-instrumented-test.yml @@ -52,9 +52,9 @@ jobs: - name: start emulator working-directory: ./Android run: | - android-sdk-linux/emulator/emulator -avd test_android_emulator -port 5556 -no-snapshot-save -no-audio -no-boot-anim & - android-sdk-linux/platform-tools/adb -s emulator-5556 shell 'while [[ -z $(getprop sys.boot_completed) ]]; do echo "Sleeping for 1s";sleep 1; done;' - android-sdk-linux/platform-tools/adb -s emulator-5556 shell input keyevent 82 & + android-sdk-linux/emulator/emulator -avd test_android_emulator -no-snapshot-save -no-audio -no-boot-anim & + android-sdk-linux/platform-tools/adb shell 'while [[ -z $(getprop sys.boot_completed) ]]; do echo "Sleeping for 1s";sleep 1; done;' + android-sdk-linux/platform-tools/adb shell input keyevent 82 & - name: execute test and report coverage working-directory: ./Android run: |