name: Building WebDriverAgent on: workflow_dispatch: workflow_run: workflows: ["Release"] types: - completed env: HOST: macos-12 XCODE_VERSION: 14.2 DESTINATION_SIM: platform=iOS Simulator,name=iPhone 14 Pro DESTINATION_SIM_tvOS: platform=tvOS Simulator,name=Apple TV jobs: host_machine: runs-on: ubuntu-latest outputs: host: ${{ steps.macos_host.outputs.host }} steps: - run: | echo "host=${{ env.HOST }}" >> $GITHUB_OUTPUT id: macos_host for_real_devices: needs: [host_machine] name: Build WDA for real iOS and tvOS devices runs-on: ${{ needs.host_machine.outputs.host }} env: ZIP_PKG_NAME_IOS: "WebDriverAgentRunner-Runner.zip" ZIP_PKG_NAME_TVOS: "WebDriverAgentRunner_tvOS-Runner.zip" steps: - name: Checkout uses: actions/checkout@v3 - uses: maxim-lobanov/setup-xcode@v1 with: xcode-version: "${{ env.XCODE_VERSION }}" - name: Create a zip file of WebDriverAgentRunner-Runner.app for iOS run: sh $GITHUB_WORKSPACE/Scripts/ci/build-real.sh env: DERIVED_DATA_PATH: appium_wda_ios SCHEME: WebDriverAgentRunner DESTINATION: generic/platform=iOS WD: appium_wda_ios/Build/Products/Debug-iphoneos ZIP_PKG_NAME: "${{ env.ZIP_PKG_NAME_IOS }}" - name: Create a zip file of WebDriverAgentRunner-Runner.app for tvOS run: sh $GITHUB_WORKSPACE/Scripts/ci/build-real.sh env: DERIVED_DATA_PATH: appium_wda_tvos SCHEME: WebDriverAgentRunner_tvOS DESTINATION: generic/platform=tvOS WD: appium_wda_tvos/Build/Products/Debug-appletvos ZIP_PKG_NAME: "${{ env.ZIP_PKG_NAME_TVOS }}" - name: Upload the built generic app package for iOS uses: actions/upload-artifact@v3.1.0 with: path: "${{ env.ZIP_PKG_NAME_IOS }}" - name: Upload the built generic app package for tvOS uses: actions/upload-artifact@v3.1.0 with: path: "${{ env.ZIP_PKG_NAME_TVOS }}" for_simulator_devices: needs: [host_machine] name: Build WDA for ${{ matrix.target }} simulators runs-on: ${{ needs.host_machine.outputs.host }} strategy: matrix: # '' is for iOS target: ['', '_tvOS'] arch: [x86_64, arm64] steps: - name: Checkout uses: actions/checkout@v3 - uses: maxim-lobanov/setup-xcode@v1 with: xcode-version: "${{ env.XCODE_VERSION }}" - name: Create a zip of WebDriverAgentRunner${{ matrix.target }} for simulator for ${{ matrix.arch }} run: | DESTINATION=$DESTINATION_SIM${{ matrix.target }} sh $GITHUB_WORKSPACE/Scripts/ci/build-sim.sh env: TARGET: ${{ matrix.target }} SCHEME: WebDriverAgentRunner${{ matrix.target }} ARCHS: ${{ matrix.arch }} ZIP_PKG_NAME: "WebDriverAgentRunner${{ matrix.target }}-Build-Sim-${{ matrix.arch }}.zip" - name: Upload the built generic app package for WebDriverAgentRunner${{ matrix.target }} with ${{ matrix.arch }} uses: actions/upload-artifact@v3.1.0 with: path: "WebDriverAgentRunner${{ matrix.target }}-Build-Sim-${{ matrix.arch }}.zip"