|
9 | 9 | steps: |
10 | 10 | - name: Check out code |
11 | 11 | uses: actions/checkout@v4 |
| 12 | + - name: Install the Apple certificate and provisioning profile |
| 13 | + env: |
| 14 | + BUILD_CERTIFICATE_BASE64: ${{ secrets.BS_BUILD_CERTIFICATE }} |
| 15 | + P12_PASSWORD: ${{ secrets.BS_P12_PASSWORD }} |
| 16 | + BUILD_PROVISION_PROFILE_BASE64: ${{ secrets.BS_BUILD_PROVISION_PROFILE_BASE64_PART_AA }} |
| 17 | + KEYCHAIN_PASSWORD: ${{ secrets.KEYCHAIN_PASSWORD }} |
| 18 | + run: | |
| 19 | + # create variables |
| 20 | + CERTIFICATE_PATH=$RUNNER_TEMP/build_certificate.p12 |
| 21 | + KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db |
| 22 | + PP_PATH=$RUNNER_TEMP/build_pp.mobileprovision |
| 23 | + # import certificate |
| 24 | + echo -n "$BUILD_CERTIFICATE_BASE64" | base64 --decode -o $CERTIFICATE_PATH |
| 25 | + |
| 26 | + # Create Provisioning Profiles |
| 27 | + echo "${{ secrets.BS_BUILD_PROVISION_PROFILE_BASE64_PART_AA }}" >> part_aa |
| 28 | + #echo "${{ secrets.BS_BUILD_PROVISION_PROFILE_BASE64_PART_AB }}" >> part_aa |
| 29 | + #echo "${{ secrets.BS_BUILD_PROVISION_PROFILE_BASE64_PART_AC }}" >> part_aa |
| 30 | + base64 -D -i part_aa > $PP_PATH |
| 31 | + # create temporary keychain |
| 32 | + security create-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH |
| 33 | + security set-keychain-settings -lut 21600 $KEYCHAIN_PATH |
| 34 | + security unlock-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH |
| 35 | + # import certificate to keychain |
| 36 | + security import $CERTIFICATE_PATH -P "$P12_PASSWORD" -A -t cert -f pkcs12 -k $KEYCHAIN_PATH |
| 37 | + security list-keychain -d user -s $KEYCHAIN_PATH |
| 38 | + |
| 39 | + # apply provisioning profile |
| 40 | + mkdir -p ~/Library/Developer/Xcode/UserData/Provisioning\ Profiles |
| 41 | + cp $PP_PATH ~/Library/Developer/Xcode/UserData/Provisioning\ Profiles/ |
12 | 42 | - name: Install pod, build project and run tests |
13 | 43 | run: | |
14 | 44 | mkdir -p test-results |
|
0 commit comments