build(deps): Bump org.owasp.dependencycheck from 9.1.0 to 9.2.0 (#2176) #1666
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Appium Java Client CI | |
on: | |
push: | |
branches: | |
- master | |
paths-ignore: | |
- 'docs/**' | |
- '*.md' | |
pull_request: | |
branches: | |
- master | |
paths-ignore: | |
- 'docs/**' | |
- '*.md' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
env: | |
ANDROID_SDK_VERSION: "28" | |
ANDROID_EMU_NAME: test | |
ANDROID_EMU_TARGET: default | |
XCODE_VERSION: "14.2" | |
IOS_DEVICE_NAME: iPhone 12 | |
IOS_PLATFORM_VERSION: "16.2" | |
jobs: | |
build: | |
strategy: | |
matrix: | |
include: | |
- java: 11 | |
# Need to use specific (not `-latest`) version of macOS to be sure the required version of Xcode/simulator is available | |
platform: macos-12 | |
e2e-tests: ios | |
- java: 17 | |
platform: ubuntu-latest | |
e2e-tests: android | |
- java: 21 | |
platform: ubuntu-latest | |
fail-fast: false | |
runs-on: ${{ matrix.platform }} | |
name: JDK ${{ matrix.java }} - ${{ matrix.platform }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Enable KVM group perms | |
if: matrix.e2e-tests == 'android' | |
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: Set up JDK ${{ matrix.java }} | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'zulu' | |
java-version: ${{ matrix.java }} | |
cache: 'gradle' | |
- name: Build with Gradle | |
run: | | |
latest_snapshot=$(curl -sf https://oss.sonatype.org/content/repositories/snapshots/org/seleniumhq/selenium/selenium-api/ | \ | |
python -c "import sys,re; print(re.findall(r'\d+\.\d+\.\d+-SNAPSHOT', sys.stdin.read())[-1])") | |
echo ">>> $latest_snapshot" | |
echo "latest_snapshot=$latest_snapshot" >> "$GITHUB_ENV" | |
./gradlew clean build -PisCI -Pselenium.version=$latest_snapshot | |
- name: Install Node.js | |
if: matrix.e2e-tests == 'android' || matrix.e2e-tests == 'ios' | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 'lts/*' | |
- name: Install Appium | |
if: matrix.e2e-tests == 'android' || matrix.e2e-tests == 'ios' | |
run: npm install --location=global appium | |
- name: Install UIA2 driver | |
if: matrix.e2e-tests == 'android' | |
run: appium driver install uiautomator2 | |
- name: Run Android E2E tests | |
if: matrix.e2e-tests == 'android' | |
uses: reactivecircus/android-emulator-runner@v2 | |
with: | |
script: ./gradlew e2eAndroidTest -PisCI -Pselenium.version=$latest_snapshot | |
api-level: ${{ env.ANDROID_SDK_VERSION }} | |
avd-name: ${{ env.ANDROID_EMU_NAME }} | |
disable-spellchecker: true | |
disable-animations: true | |
target: ${{ env.ANDROID_EMU_TARGET }} | |
- name: Select Xcode | |
if: matrix.e2e-tests == 'ios' | |
uses: maxim-lobanov/setup-xcode@v1 | |
with: | |
xcode-version: "${{ env.XCODE_VERSION }}" | |
- name: Install XCUITest driver | |
if: matrix.e2e-tests == 'ios' | |
run: appium driver install xcuitest | |
- name: Prebuild XCUITest driver | |
if: matrix.e2e-tests == 'ios' | |
run: appium driver run xcuitest build-wda | |
- name: Prepare iOS simulator | |
if: matrix.e2e-tests == 'ios' | |
run: | | |
xcrun simctl list | |
target_sim_id=$(xcrun simctl list devices available | grep "$IOS_DEVICE_NAME (" | cut -d "(" -f2 | cut -d ")" -f1) | |
open -Fn "/Applications/Xcode_$XCODE_VERSION.app/Contents/Developer/Applications/Simulator.app" | |
xcrun simctl bootstatus $target_sim_id -b | |
- name: Run iOS E2E tests | |
if: matrix.e2e-tests == 'ios' | |
run: ./gradlew e2eIosTest -PisCI -Pselenium.version=$latest_snapshot |