ci: sync workflow with paramedic (#271)

This commit is contained in:
jcesarmobile 2024-08-08 05:48:47 +02:00 committed by GitHub
parent a53f3734e3
commit 6132b4474c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 56 additions and 32 deletions

View File

@ -23,6 +23,7 @@ on:
- '**.md' - '**.md'
- 'LICENSE' - 'LICENSE'
- '.eslint*' - '.eslint*'
pull_request: pull_request:
paths-ignore: paths-ignore:
- '**.md' - '**.md'
@ -32,7 +33,7 @@ on:
jobs: jobs:
test: test:
name: Android ${{ matrix.versions.android }} Test name: Android ${{ matrix.versions.android }} Test
runs-on: macos-latest runs-on: ubuntu-latest
continue-on-error: true continue-on-error: true
# hoist configurations to top that are expected to be updated # hoist configurations to top that are expected to be updated
@ -40,12 +41,12 @@ jobs:
# Storing a copy of the repo # Storing a copy of the repo
repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }} 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. # 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. # To customize these options, add "java-distro" or "java-version" to the strategy matrix with its overriding value.
default_java-distro: temurin default_java-distro: temurin
default_java-version: 11 default_java-version: 17
# These are the default Android System Image configurations used by most tests. # 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. # 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: strategy:
matrix: matrix:
versions: versions:
# Test the lowest minimum supported APIs - android: 7
- android: 5.1 android-api: 24
android-api: 22
- 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: 10
android-api: 29 android-api: 29
@ -73,14 +85,20 @@ jobs:
- android: 12L - android: 12L
android-api: 32 android-api: 32
- android: 13
android-api: 33
- android: 14
android-api: 34
timeout-minutes: 60 timeout-minutes: 60
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- uses: actions/setup-node@v3 - uses: actions/setup-node@v4
with: with:
node-version: ${{ env.node-version }} node-version: ${{ env.node-version }}
- uses: actions/setup-java@v3 - uses: actions/setup-java@v4
env: env:
java-version: ${{ matrix.versions.java-version == '' && env.default_java-version || matrix.versions.java-version }} 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 }} java-distro: ${{ matrix.versions.java-distro == '' && env.default_java-distro || matrix.versions.java-distro }}
@ -88,6 +106,12 @@ jobs:
distribution: ${{ env.java-distro }} distribution: ${{ env.java-distro }}
java-version: ${{ env.java-version }} 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 - name: Run Environment Information
run: | run: |
node --version node --version
@ -105,7 +129,7 @@ jobs:
if: ${{ endswith(env.repo, '/cordova-paramedic') != true }} if: ${{ endswith(env.repo, '/cordova-paramedic') != true }}
run: npm i -g github:apache/cordova-paramedic run: npm i -g github:apache/cordova-paramedic
- uses: reactivecircus/android-emulator-runner@5de26e4bd23bf523e8a4b7f077df8bfb8e52b50e - uses: reactivecircus/android-emulator-runner@v2
env: env:
system-image-arch: ${{ matrix.versions.system-image-arch == '' && env.default_system-image-arch || matrix.versions.system-image-arch }} 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 }} 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" script: echo "Pregenerate the AVD before running Paramedic"
- name: Run paramedic tests - name: Run paramedic tests
uses: reactivecircus/android-emulator-runner@5de26e4bd23bf523e8a4b7f077df8bfb8e52b50e uses: reactivecircus/android-emulator-runner@v2
env: env:
system-image-arch: ${{ matrix.versions.system-image-arch == '' && env.default_system-image-arch || matrix.versions.system-image-arch }} 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 }} system-image-target: ${{ matrix.versions.system-image-target == '' && env.default_system-image-target || matrix.versions.system-image-target }}

View File

@ -39,11 +39,11 @@ jobs:
# Storing a copy of the repo # Storing a copy of the repo
repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }} repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }}
node-version: 16 node-version: 20
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v4
- uses: actions/setup-node@v2 - uses: actions/setup-node@v4
with: with:
node-version: ${{ env.node-version }} node-version: ${{ env.node-version }}
@ -61,7 +61,7 @@ jobs:
npm ci npm ci
- name: Run paramedic install - 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 run: npm i -g github:apache/cordova-paramedic
- name: Run paramedic tests - name: Run paramedic tests

View File

@ -40,7 +40,7 @@ jobs:
# Storing a copy of the repo # Storing a copy of the repo
repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }} 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. # > 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. # Because of Apple's requirement, listed above, We will only be using the latest Xcode release for testing.
@ -50,24 +50,24 @@ jobs:
strategy: strategy:
matrix: matrix:
versions: versions:
- os-version: macos-11 - os-version: macos-12
ios-version: 13.x
xcode-version: 11.x
- os-version: macos-11
ios-version: 14.x
xcode-version: 12.x
- os-version: macos-11
ios-version: 15.x ios-version: 15.x
xcode-version: 13.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: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v4
- uses: actions/setup-node@v2 - uses: actions/setup-node@v4
with: with:
node-version: ${{ env.node-version }} node-version: ${{ env.node-version }}
- uses: maxim-lobanov/setup-xcode@881be567d30efed8fb3f12b5099d68c3fb72aa3d - uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd
env: env:
xcode-version: ${{ matrix.versions.xcode-version == '' && env.default_xcode-version || matrix.versions.xcode-version }} xcode-version: ${{ matrix.versions.xcode-version == '' && env.default_xcode-version || matrix.versions.xcode-version }}
with: with:

View File

@ -34,11 +34,11 @@ jobs:
name: Lint Test name: Lint Test
runs-on: ubuntu-latest runs-on: ubuntu-latest
env: env:
node-version: 16 node-version: 20
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v4
- uses: actions/setup-node@v2 - uses: actions/setup-node@v4
with: with:
node-version: ${{ env.node-version }} node-version: ${{ env.node-version }}