--- name: build-pr on: push: branches: - build-pr-* - build-pr-android-* - build-pr-ios-* env: NODE_VERSION: 18.7.0 TERM: xterm jobs: test: runs-on: ubuntu-22.04 steps: - name: ci/checkout-repo uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 - name: ci/test uses: ./.github/actions/test build-ios-pr: runs-on: macos-12 if: ${{ !contains(github.ref_name, 'android') }} needs: - test steps: - name: ci/checkout-repo uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 - name: ci/prepare-ios-build uses: ./.github/actions/prepare-ios-build - name: ci/output-ssh-private-key shell: bash run: | SSH_KEY_PATH=~/.ssh/id_ed25519 mkdir -p ~/.ssh echo -e '${{ secrets.MM_MOBILE_PRIVATE_DEPLOY_KEY }}' > ${SSH_KEY_PATH} chmod 0600 ${SSH_KEY_PATH} ssh-keygen -y -f ${SSH_KEY_PATH} > ${SSH_KEY_PATH}.pub - name: ci/build-ios-pr env: BRANCH_TO_BUILD: "${{ github.ref_name }}" AWS_ACCESS_KEY_ID: "${{ secrets.MM_MOBILE_PR_AWS_ACCESS_KEY_ID }}" AWS_SECRET_ACCESS_KEY: "${{ secrets.MM_MOBILE_PR_AWS_SECRET_ACCESS_KEY }}" FASTLANE_TEAM_ID: "${{ secrets.MM_MOBILE_FASTLANE_TEAM_ID }}" IOS_API_ISSUER_ID: "${{ secrets.MM_MOBILE_IOS_API_ISSUER_ID }}" IOS_API_KEY: "${{ secrets.MM_MOBILE_IOS_API_KEY }}" IOS_API_KEY_ID: "${{ secrets.MM_MOBILE_IOS_API_KEY_ID }}" MATCH_GIT_URL: "${{ secrets.MM_MOBILE_MATCH_GIT_URL }}" MATCH_PASSWORD: "${{ secrets.MM_MOBILE_MATCH_PASSWORD }}" MATTERMOST_WEBHOOK_URL: "${{ secrets.MM_MOBILE_PR_MATTERMOST_WEBHOOK_URL }}" run: bundle exec fastlane ios build --env ios.pr working-directory: ./fastlane - name: ci/upload-ios-pr-build uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: ios-build-pr-${{ github.run_id }} path: "*.ipa" build-android-pr: runs-on: ubuntu-22.04 if: ${{ !contains(github.ref_name, 'ios') }} needs: - test steps: - name: ci/checkout-repo uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 - name: ci/prepare-android-build uses: ./.github/actions/prepare-android-build env: STORE_FILE: "${{ secrets.MM_MOBILE_STORE_FILE }}" STORE_ALIAS: "${{ secrets.MM_MOBILE_STORE_ALIAS }}" STORE_PASSWORD: "${{ secrets.MM_MOBILE_STORE_PASSWORD }}" MATTERMOST_BUILD_GH_TOKEN: "${{ secrets.MATTERMOST_BUILD_GH_TOKEN }}" - name: ci/build-android-pr env: BRANCH_TO_BUILD: "${{ github.ref_name }}" AWS_ACCESS_KEY_ID: "${{ secrets.MM_MOBILE_PR_AWS_ACCESS_KEY_ID }}" AWS_SECRET_ACCESS_KEY: "${{ secrets.MM_MOBILE_PR_AWS_SECRET_ACCESS_KEY }}" MATTERMOST_WEBHOOK_URL: "${{ secrets.MM_MOBILE_PR_MATTERMOST_WEBHOOK_URL }}" run: bundle exec fastlane android build --env android.pr working-directory: ./fastlane - name: ci/upload-android-pr-build uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: android-build-pr-${{ github.run_id }} path: "*.apk"