diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 1f914ca..2d17c40 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -23,6 +23,7 @@ on: - '**.md' - 'LICENSE' - '.eslint*' + pull_request: paths-ignore: - '**.md' @@ -32,7 +33,7 @@ on: jobs: test: name: Android ${{ matrix.versions.android }} Test - runs-on: macos-latest + runs-on: ubuntu-latest continue-on-error: true # hoist configurations to top that are expected to be updated @@ -40,12 +41,12 @@ jobs: # Storing a copy of the repo repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }} - node-version: 16 + node-version: 20 # These are the default Java configurations used by most tests. # To customize these options, add "java-distro" or "java-version" to the strategy matrix with its overriding value. default_java-distro: temurin - default_java-version: 11 + default_java-version: 17 # These are the default Android System Image configurations used by most tests. # To customize these options, add "system-image-arch" or "system-image-target" to the strategy matrix with its overriding value. @@ -56,11 +57,22 @@ jobs: strategy: matrix: versions: - # Test the lowest minimum supported APIs - - android: 5.1 - android-api: 22 + - android: 7 + android-api: 24 + + - android: 7.1 + android-api: 25 + + - android: 8 + android-api: 26 + + - android: 8.1 + android-api: 27 + system-image-arch: x86 + + - android: 9 + android-api: 28 - # Test the last 3-4 supported APIs - android: 10 android-api: 29 @@ -73,14 +85,20 @@ jobs: - android: 12L android-api: 32 + - android: 13 + android-api: 33 + + - android: 14 + android-api: 34 + timeout-minutes: 60 steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: ${{ env.node-version }} - - uses: actions/setup-java@v3 + - uses: actions/setup-java@v4 env: java-version: ${{ matrix.versions.java-version == '' && env.default_java-version || matrix.versions.java-version }} java-distro: ${{ matrix.versions.java-distro == '' && env.default_java-distro || matrix.versions.java-distro }} @@ -88,6 +106,12 @@ jobs: distribution: ${{ env.java-distro }} java-version: ${{ env.java-version }} + - name: Enable KVM group perms + run: | + echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules + sudo udevadm control --reload-rules + sudo udevadm trigger --name-match=kvm + - name: Run Environment Information run: | node --version @@ -105,7 +129,7 @@ jobs: if: ${{ endswith(env.repo, '/cordova-paramedic') != true }} run: npm i -g github:apache/cordova-paramedic - - uses: reactivecircus/android-emulator-runner@5de26e4bd23bf523e8a4b7f077df8bfb8e52b50e + - uses: reactivecircus/android-emulator-runner@v2 env: system-image-arch: ${{ matrix.versions.system-image-arch == '' && env.default_system-image-arch || matrix.versions.system-image-arch }} system-image-target: ${{ matrix.versions.system-image-target == '' && env.default_system-image-target || matrix.versions.system-image-target }} @@ -119,7 +143,7 @@ jobs: script: echo "Pregenerate the AVD before running Paramedic" - name: Run paramedic tests - uses: reactivecircus/android-emulator-runner@5de26e4bd23bf523e8a4b7f077df8bfb8e52b50e + uses: reactivecircus/android-emulator-runner@v2 env: system-image-arch: ${{ matrix.versions.system-image-arch == '' && env.default_system-image-arch || matrix.versions.system-image-arch }} system-image-target: ${{ matrix.versions.system-image-target == '' && env.default_system-image-target || matrix.versions.system-image-target }} diff --git a/.github/workflows/chrome.yml b/.github/workflows/chrome.yml index c44a7d3..a067f65 100644 --- a/.github/workflows/chrome.yml +++ b/.github/workflows/chrome.yml @@ -39,11 +39,11 @@ jobs: # Storing a copy of the repo repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }} - node-version: 16 + node-version: 20 steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v2 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: ${{ env.node-version }} @@ -61,7 +61,7 @@ jobs: npm ci - name: Run paramedic install - if: ${{ endswith(env.repo, '/cordova-paramedic') != true }} + if: ${{ endswith(env.repo, '/cordova-paramedic') != true }} run: npm i -g github:apache/cordova-paramedic - name: Run paramedic tests diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml index f873246..aa2e7ef 100644 --- a/.github/workflows/ios.yml +++ b/.github/workflows/ios.yml @@ -40,7 +40,7 @@ jobs: # Storing a copy of the repo repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }} - node-version: 16 + node-version: 20 # > Starting April 26, 2021, all iOS and iPadOS apps submitted to the App Store must be built with Xcode 12 and the iOS 14 SDK. # Because of Apple's requirement, listed above, We will only be using the latest Xcode release for testing. @@ -50,24 +50,24 @@ jobs: strategy: matrix: versions: - - os-version: macos-11 - ios-version: 13.x - xcode-version: 11.x - - - os-version: macos-11 - ios-version: 14.x - xcode-version: 12.x - - - os-version: macos-11 + - os-version: macos-12 ios-version: 15.x xcode-version: 13.x + - os-version: macos-14 + ios-version: 16.x + xcode-version: 14.x + + - os-version: macos-14 + ios-version: 17.x + xcode-version: 15.x + steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v2 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: ${{ env.node-version }} - - uses: maxim-lobanov/setup-xcode@881be567d30efed8fb3f12b5099d68c3fb72aa3d + - uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd env: xcode-version: ${{ matrix.versions.xcode-version == '' && env.default_xcode-version || matrix.versions.xcode-version }} with: diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 26716d7..53dad12 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -34,11 +34,11 @@ jobs: name: Lint Test runs-on: ubuntu-latest env: - node-version: 16 + node-version: 20 steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v2 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: ${{ env.node-version }}