wda-package.yml 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. name: Building WebDriverAgent
  2. on:
  3. workflow_dispatch:
  4. workflow_run:
  5. workflows: ["Release"]
  6. types:
  7. - completed
  8. env:
  9. HOST: macos-15
  10. XCODE_VERSION: 16.3
  11. DESTINATION_SIM: platform=iOS Simulator,name=iPhone 16 Plus
  12. DESTINATION_SIM_tvOS: platform=tvOS Simulator,name=Apple TV 4K (3rd generation)
  13. jobs:
  14. host_machine:
  15. runs-on: ubuntu-latest
  16. outputs:
  17. host: ${{ steps.macos_host.outputs.host }}
  18. steps:
  19. - run: |
  20. echo "host=${{ env.HOST }}" >> $GITHUB_OUTPUT
  21. id: macos_host
  22. for_real_devices:
  23. needs: [host_machine]
  24. name: Build WDA for real iOS and tvOS devices
  25. runs-on: ${{ needs.host_machine.outputs.host }}
  26. env:
  27. PKG_NAME_IOS: "WebDriverAgentRunner-Runner"
  28. ZIP_PKG_NAME_IOS: "WebDriverAgentRunner-Runner.zip"
  29. PKG_NAME_TVOS: "WebDriverAgentRunner_tvOS-Runner"
  30. ZIP_PKG_NAME_TVOS: "WebDriverAgentRunner_tvOS-Runner.zip"
  31. steps:
  32. - name: Checkout
  33. uses: actions/checkout@v4
  34. - uses: maxim-lobanov/setup-xcode@v1
  35. with:
  36. xcode-version: "${{ env.XCODE_VERSION }}"
  37. - name: Create a zip file of WebDriverAgentRunner-Runner.app for iOS
  38. run: sh $GITHUB_WORKSPACE/Scripts/ci/build-real.sh
  39. env:
  40. DERIVED_DATA_PATH: appium_wda_ios
  41. SCHEME: WebDriverAgentRunner
  42. DESTINATION: generic/platform=iOS
  43. WD: appium_wda_ios/Build/Products/Debug-iphoneos
  44. ZIP_PKG_NAME: "${{ env.ZIP_PKG_NAME_IOS }}"
  45. - name: Create a zip file of WebDriverAgentRunner-Runner.app for tvOS
  46. run: sh $GITHUB_WORKSPACE/Scripts/ci/build-real.sh
  47. env:
  48. DERIVED_DATA_PATH: appium_wda_tvos
  49. SCHEME: WebDriverAgentRunner_tvOS
  50. DESTINATION: generic/platform=tvOS
  51. WD: appium_wda_tvos/Build/Products/Debug-appletvos
  52. ZIP_PKG_NAME: "${{ env.ZIP_PKG_NAME_TVOS }}"
  53. - name: Upload the built generic app package for iOS
  54. uses: actions/upload-artifact@master
  55. with:
  56. name: "${{ env.PKG_NAME_IOS }}"
  57. path: "${{ env.ZIP_PKG_NAME_IOS }}"
  58. - name: Upload the built generic app package for tvOS
  59. uses: actions/upload-artifact@master
  60. with:
  61. name: "${{ env.PKG_NAME_TVOS }}"
  62. path: "${{ env.ZIP_PKG_NAME_TVOS }}"
  63. for_simulator_devices:
  64. needs: [host_machine]
  65. name: Build WDA for ${{ matrix.target }} simulators
  66. runs-on: ${{ needs.host_machine.outputs.host }}
  67. strategy:
  68. matrix:
  69. include:
  70. - target: ''
  71. arch: x86_64
  72. simulator_name: Debug-iphonesimulator
  73. - target: ''
  74. arch: arm64
  75. simulator_name: Debug-iphonesimulator
  76. - target: '_tvOS'
  77. arch: x86_64
  78. simulator_name: Debug-appletvsimulator
  79. - target: '_tvOS'
  80. arch: arm64
  81. simulator_name: Debug-appletvsimulator
  82. steps:
  83. - name: Checkout
  84. uses: actions/checkout@v3
  85. - uses: maxim-lobanov/setup-xcode@v1
  86. with:
  87. xcode-version: "${{ env.XCODE_VERSION }}"
  88. - name: Create a zip of WebDriverAgentRunner${{ matrix.target }} for simulator for ${{ matrix.arch }}
  89. run: |
  90. DESTINATION=$DESTINATION_SIM${{ matrix.target }} sh $GITHUB_WORKSPACE/Scripts/ci/build-sim.sh
  91. env:
  92. SCHEME: WebDriverAgentRunner${{ matrix.target }}
  93. ARCHS: ${{ matrix.arch }}
  94. ZIP_PKG_NAME: "WebDriverAgentRunner${{ matrix.target }}-Build-Sim-${{ matrix.arch }}.zip"
  95. DERIVED_DATA_PATH: wda_build
  96. WD: wda_build/Build/Products/${{ matrix.simulator_name }}
  97. - name: Upload the built generic app package for WebDriverAgentRunner${{ matrix.target }} with ${{ matrix.arch }}
  98. uses: actions/upload-artifact@master
  99. with:
  100. name: "WebDriverAgentRunner${{ matrix.target }}-Build-Sim-${{ matrix.arch }}"
  101. path: "WebDriverAgentRunner${{ matrix.target }}-Build-Sim-${{ matrix.arch }}.zip"