build_iAPS.yml 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. name: 4. Build iAPS
  2. run-name: Build iAPS (${{ github.ref_name }})
  3. on:
  4. workflow_dispatch:
  5. ## Remove the "#" sign from the beginning of the line below to get automated builds on push (code changes in your repository)
  6. #push:
  7. ## Remove the "#" sign from the beginning of the two lines below to get automated builds every two months
  8. #schedule:
  9. #- cron: '0 17 1 */2 *' # Runs at 17:00 UTC on the 1st in Jan, Mar, May, Jul, Sep and Nov.
  10. jobs:
  11. secrets:
  12. uses: ./.github/workflows/validate_secrets.yml
  13. secrets: inherit
  14. build:
  15. needs: secrets
  16. runs-on: macos-13
  17. steps:
  18. # Uncomment to manually select Xcode version if needed
  19. - name: Select Xcode version
  20. run: "sudo xcode-select --switch /Applications/Xcode_15.0.1.app/Contents/Developer"
  21. # Checks-out the repo
  22. - name: Checkout Repo
  23. uses: actions/checkout@v3
  24. with:
  25. submodules: recursive
  26. # Patch Fastlane Match to not print tables
  27. - name: Patch Match Tables
  28. run: find /usr/local/lib/ruby/gems -name table_printer.rb | xargs sed -i "" "/puts(Terminal::Table.new(params))/d"
  29. # Sync the GitHub runner clock with the Windows time server (workaround as suggested in https://github.com/actions/runner/issues/2996)
  30. - name: Sync clock
  31. run: sudo sntp -sS time.windows.com
  32. # Build signed iAPS IPA file
  33. - name: Fastlane Build & Archive
  34. run: fastlane build_iAPS
  35. env:
  36. TEAMID: ${{ secrets.TEAMID }}
  37. GH_PAT: ${{ secrets.GH_PAT }}
  38. FASTLANE_KEY_ID: ${{ secrets.FASTLANE_KEY_ID }}
  39. FASTLANE_ISSUER_ID: ${{ secrets.FASTLANE_ISSUER_ID }}
  40. FASTLANE_KEY: ${{ secrets.FASTLANE_KEY }}
  41. MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}
  42. # Upload to TestFlight
  43. - name: Fastlane upload to TestFlight
  44. run: fastlane release
  45. env:
  46. TEAMID: ${{ secrets.TEAMID }}
  47. GH_PAT: ${{ secrets.GH_PAT }}
  48. FASTLANE_KEY_ID: ${{ secrets.FASTLANE_KEY_ID }}
  49. FASTLANE_ISSUER_ID: ${{ secrets.FASTLANE_ISSUER_ID }}
  50. FASTLANE_KEY: ${{ secrets.FASTLANE_KEY }}
  51. MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}
  52. # Upload Build artifacts
  53. - name: Upload build log, IPA and Symbol artifacts
  54. if: always()
  55. uses: actions/upload-artifact@v3
  56. with:
  57. name: build-artifacts
  58. path: |
  59. artifacts
  60. buildlog