diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml new file mode 100644 index 0000000..9c4ef7a --- /dev/null +++ b/.github/workflows/CI.yml @@ -0,0 +1,63 @@ +name: CI Test + +on: [pull_request] + +jobs: + + android-x86_64: + runs-on: macos-13 + + steps: + - uses: actions/checkout@v1 + - name: Select XCode 14.2 + run: sudo xcode-select --switch /Applications/Xcode_14.2.app + - name: Install NDK + run: $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "ndk;25.2.9519653" + - name: Install Swift Android Toolchain + run: wget https://github.com/readdle/swift-android-toolchain/releases/latest/download/swift-android.zip; + unzip swift-android.zip; + swift-android/bin/swift-android tools --update; + - name: Install Android Emulator + run: $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "system-images;android-29;google_apis;x86_64" + - name: Create Android Emulator + run: $ANDROID_HOME/cmdline-tools/latest/bin/avdmanager create avd -n ci-test -k "system-images;android-29;google_apis;x86_64" -d "pixel" --force + - name: Start Android Emulator + run: $ANDROID_HOME/emulator/emulator -no-window -avd ci-test -noaudio > /dev/null & + - name: Run connected android tests + run: export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/25.2.9519653; + export SWIFT_ANDROID_HOME=$(pwd)/swift-android; + export PATH=$ANDROID_NDK_HOME:$PATH; + export PATH=$SWIFT_ANDROID_HOME/bin:$SWIFT_ANDROID_HOME/build-tools/current:$PATH; + adb wait-for-device; + ./gradlew sample:cAT + + # It looks like macos-13-arm64 is quite busy on Gtihub CI, skip for now + + # android-arm64-v8a: + # runs-on: macos-13-arm64 + + # steps: + # - uses: actions/checkout@v1 + # - name: Select XCode 14.2 + # run: sudo xcode-select --switch /Applications/Xcode_14.2.app + # - name: Install NDK + # run: $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "ndk;25.2.9519653" + # - name: Install Swift Android Toolchain + # run: wget https://github.com/readdle/swift-android-toolchain/releases/latest/download/swift-android.zip; + # unzip swift-android.zip; + # swift-android/bin/swift-android tools --update; + # - name: Accept Android SDK licenses + # run: yes | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses + # - name: Install Android Emulator + # run: $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "system-images;android-29;google_apis;arm64-v8a" + # - name: Create Android Emulator + # run: $ANDROID_HOME/cmdline-tools/latest/bin/avdmanager create avd -n ci-test -k "system-images;android-29;google_apis;arm64-v8a" -d "pixel" --force + # - name: Start Android Emulator + # run: $ANDROID_HOME/emulator/emulator -no-window -avd ci-test -noaudio > /dev/null & + # - name: Run connected android tests + # run: export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/25.2.9519653; + # export SWIFT_ANDROID_HOME=$(pwd)/swift-android; + # export PATH=$ANDROID_NDK_HOME:$PATH; + # export PATH=$SWIFT_ANDROID_HOME/bin:$SWIFT_ANDROID_HOME/build-tools/current:$PATH; + # adb wait-for-device; + # ./gradlew sample:cAT diff --git a/.github/workflows/android_x86.yml b/.github/workflows/android_x86.yml deleted file mode 100644 index c9458c2..0000000 --- a/.github/workflows/android_x86.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: Android CI x86 - -on: [pull_request] - -jobs: - build: - - runs-on: macOS-latest - - steps: - - uses: actions/checkout@v1 - - name: set up JDK 1.8 - uses: actions/setup-java@v1 - with: - java-version: 1.8 - - name: Install Swift toolchain 5.4.2 - run: wget https://swift.org/builds/swift-5.4.2-release/xcode/swift-5.4.2-RELEASE/swift-5.4.2-RELEASE-osx.pkg; - sudo installer -pkg swift-5.4.2-RELEASE-osx.pkg -target / - - name: Install NDK - run: wget https://dl.google.com/android/repository/android-ndk-r21e-darwin-x86_64.zip; - unzip android-ndk-r21e-darwin-x86_64.zip - - name: Install Swift Android Toolchain - run: wget https://github.com/readdle/swift-android-toolchain/releases/latest/download/swift-android-5.4-r1.zip; - unzip swift-android-5.4-r1.zip; - rm -rf swift-android-5.4-r1.zip; - swift-android-5.4-r1/bin/swift-android tools --update; - ln -sfn swift-android-5.4-r1 swift-android-current - - name: Download Android Emulator - run: $ANDROID_HOME/tools/bin/sdkmanager "system-images;android-29;google_apis;x86" - - name: Create Android Emulator - run: $ANDROID_HOME/tools/bin/avdmanager create avd -n ci-test -k "system-images;android-29;google_apis;x86" -d "pixel" --force - - name: Start Android Emulator - run: $ANDROID_HOME/emulator/emulator -no-window -avd ci-test -noaudio > /dev/null & - - name: Run connected android tests - run: export TOOLCHAINS=org.swift.540202104261a; - export ANDROID_NDK_HOME=$(pwd)/android-ndk-r21e; - export SWIFT_ANDROID_HOME=$(pwd)/swift-android-current; - export PATH=$ANDROID_NDK_HOME:$PATH; - export PATH=$SWIFT_ANDROID_HOME/bin:$SWIFT_ANDROID_HOME/build-tools/current:$PATH; - adb wait-for-device; - ./gradlew sample:cAT diff --git a/.github/workflows/android_x86_64.yml b/.github/workflows/android_x86_64.yml deleted file mode 100644 index c8358a8..0000000 --- a/.github/workflows/android_x86_64.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: Android CI x86_64 - -on: [pull_request] - -jobs: - build: - - runs-on: macOS-latest - - steps: - - uses: actions/checkout@v1 - - name: set up JDK 1.8 - uses: actions/setup-java@v1 - with: - java-version: 1.8 - - name: Install Swift toolchain 5.4.2 - run: wget https://swift.org/builds/swift-5.4.2-release/xcode/swift-5.4.2-RELEASE/swift-5.4.2-RELEASE-osx.pkg; - sudo installer -pkg swift-5.4.2-RELEASE-osx.pkg -target / - - name: Install NDK - run: wget https://dl.google.com/android/repository/android-ndk-r21e-darwin-x86_64.zip; - unzip android-ndk-r21e-darwin-x86_64.zip - - name: Install Swift Android Toolchain - run: wget https://github.com/readdle/swift-android-toolchain/releases/latest/download/swift-android-5.4-r1.zip; - unzip swift-android-5.4-r1.zip; - rm -rf swift-android-5.4-r1.zip; - swift-android-5.4-r1/bin/swift-android tools --update; - ln -sfn swift-android-5.4-r1 swift-android-current - - name: Download Android Emulator - run: $ANDROID_HOME/tools/bin/sdkmanager "system-images;android-29;google_apis;x86_64" - - name: Create Android Emulator - run: $ANDROID_HOME/tools/bin/avdmanager create avd -n ci-test -k "system-images;android-29;google_apis;x86_64" -d "pixel" --force - - name: Start Android Emulator - run: $ANDROID_HOME/emulator/emulator -no-window -avd ci-test -noaudio > /dev/null & - - name: Run connected android tests - run: export TOOLCHAINS=org.swift.540202104261a; - export ANDROID_NDK_HOME=$(pwd)/android-ndk-r21e; - export SWIFT_ANDROID_HOME=$(pwd)/swift-android-current; - export PATH=$ANDROID_NDK_HOME:$PATH; - export PATH=$SWIFT_ANDROID_HOME/bin:$SWIFT_ANDROID_HOME/build-tools/current:$PATH; - adb wait-for-device; - ./gradlew sample:cAT diff --git a/build.gradle b/build.gradle index 8b57c27..6184294 100644 --- a/build.gradle +++ b/build.gradle @@ -11,7 +11,7 @@ buildscript { dependencies { classpath 'com.android.tools.build:gradle:7.4.2' - classpath "com.readdle.android.swift:gradle:1.4.4" + classpath "com.readdle.android.swift:gradle:1.4.5" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version" classpath 'io.github.gradle-nexus:publish-plugin:1.1.0' diff --git a/sample/src/main/swift/Package.resolved b/sample/src/main/swift/Package.resolved index baa9f3b..88b8795 100644 --- a/sample/src/main/swift/Package.resolved +++ b/sample/src/main/swift/Package.resolved @@ -42,7 +42,7 @@ "repositoryURL": "https://github.com/readdle/swift-java-coder.git", "state": { "branch": null, - "revision": "c2980b1eab70202b09d31db7cdce317b1c05c2b2", + "revision": "b0b66fa90d7b04c7214da15a17ec5ba14df61c8d", "version": "1.1.0" } }