build_LoopFollow.yml 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. name: 4. Build Loop Follow
  2. run-name: Build Loop Follow (${{ 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. validate:
  12. name: Validate
  13. uses: ./.github/workflows/validate_secrets.yml
  14. secrets: inherit
  15. build:
  16. name: Build
  17. needs: validate
  18. runs-on: macos-14
  19. steps:
  20. # Uncomment to manually select latest Xcode if needed
  21. - name: Select Latest Xcode
  22. run: "sudo xcode-select --switch /Applications/Xcode_15.4.app/Contents/Developer"
  23. # Checks-out the repo
  24. - name: Checkout Repo
  25. uses: actions/checkout@v4
  26. with:
  27. submodules: recursive
  28. # Patch Fastlane Match to not print tables
  29. - name: Patch Match Tables
  30. run: find /usr/local/lib/ruby/gems -name table_printer.rb | xargs sed -i "" "/puts(Terminal::Table.new(params))/d"
  31. # Sync the GitHub runner clock with the Windows time server (workaround as suggested in https://github.com/actions/runner/issues/2996)
  32. - name: Sync clock
  33. run: sudo sntp -sS time.windows.com
  34. # Build signed Loop Follow IPA file
  35. - name: Fastlane Build & Archive
  36. run: fastlane build_LoopFollow
  37. env:
  38. TEAMID: ${{ secrets.TEAMID }}
  39. GH_PAT: ${{ secrets.GH_PAT }}
  40. FASTLANE_KEY_ID: ${{ secrets.FASTLANE_KEY_ID }}
  41. FASTLANE_ISSUER_ID: ${{ secrets.FASTLANE_ISSUER_ID }}
  42. FASTLANE_KEY: ${{ secrets.FASTLANE_KEY }}
  43. MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}
  44. # Upload to TestFlight
  45. - name: Fastlane upload to TestFlight
  46. run: fastlane release
  47. env:
  48. TEAMID: ${{ secrets.TEAMID }}
  49. GH_PAT: ${{ secrets.GH_PAT }}
  50. FASTLANE_KEY_ID: ${{ secrets.FASTLANE_KEY_ID }}
  51. FASTLANE_ISSUER_ID: ${{ secrets.FASTLANE_ISSUER_ID }}
  52. FASTLANE_KEY: ${{ secrets.FASTLANE_KEY }}
  53. MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}
  54. # Upload IPA and Symbols
  55. - name: Upload IPA and Symbol artifacts
  56. uses: actions/upload-artifact@v4
  57. with:
  58. name: build-artifacts
  59. path: |
  60. artifacts
  61. buildlog