diff --git a/.github/workflows/testBuild.yml b/.github/workflows/testBuild.yml index f652adf75033..98b75f7da3de 100644 --- a/.github/workflows/testBuild.yml +++ b/.github/workflows/testBuild.yml @@ -189,10 +189,39 @@ jobs: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + web: + name: Build and deploy Web + needs: [validateActor, getBranchRef] + if: ${{ fromJSON(needs.validateActor.outputs.IS_TEAM_MEMBER) }} + env: + PULL_REQUEST_NUMBER: ${{ github.event.number || github.event.inputs.PULL_REQUEST_NUMBER }} + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 + with: + fetch-depth: 0 + ref: ${{ github.event.pull_request.head.sha || needs.getBranchRef.outputs.REF }} + - uses: Expensify/App/.github/actions/composite/setupNode@main + - name: Configure AWS Credentials + uses: Expensify/App/.github/actions/composite/configureAwsCredentials@main + with: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + + - name: Build web for testing + run: npm run build-staging + + - name: Build docs + run: npm run storybook-build + continue-on-error: true + + - name: Deploy to S3 for internal testing + run: aws s3 cp --recursive --acl public-read "$GITHUB_WORKSPACE"/dist s3://ad-hoc-expensify-cash/web/"$PULL_REQUEST_NUMBER" + postGithubComment: runs-on: ubuntu-latest name: Post a GitHub comment with app download links for testing - needs: [getBranchRef, android, ios, desktop] + needs: [getBranchRef, android, ios, desktop, web] env: PULL_REQUEST_NUMBER: ${{ github.event.number || github.event.inputs.PULL_REQUEST_NUMBER }} steps: @@ -216,7 +245,7 @@ jobs: content_ios="${content_ios//$'\n'/'%0A'}" content_ios="${content_ios//$'\r'/'%0D'}" echo "ios_paths=$content_ios" >> "$GITHUB_OUTPUT" - + # This step removes previous comments with links connected to the PR - name: maintain-comment uses: actions-cool/maintain-one-comment@de04bd2a3750d86b324829a3ff34d47e48e16f4b @@ -232,9 +261,12 @@ jobs: gh pr checkout "$PULL_REQUEST_NUMBER" gh pr comment --body \ ":test_tube::test_tube: Use the links below to test this build in android and iOS. Happy testing! :test_tube::test_tube: - | android :robot: | iOS :apple: | desktop :computer: | - | ------------- | ------------- | ------------- | - | ${{fromJson(steps.set_var.outputs.android_paths).html_path}} | ${{fromJson(steps.set_var.outputs.ios_paths).html_path}} | https://ad-hoc-expensify-cash.s3.amazonaws.com/desktop/$PULL_REQUEST_NUMBER/NewExpensify.dmg | - | ![Android](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=${{fromJson(steps.set_var.outputs.android_paths).html_path}}) | ![iOS](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=${{fromJson(steps.set_var.outputs.ios_paths).html_path}}) | ![desktop](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=https://ad-hoc-expensify-cash.s3.amazonaws.com/desktop/$PULL_REQUEST_NUMBER/NewExpensify.dmg) |" + | android :robot: | iOS :apple: | + | ------------- | ------------- | + | ${{fromJson(steps.set_var.outputs.android_paths).html_path}} | ${{fromJson(steps.set_var.outputs.ios_paths).html_path}} | + | ![Android](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=${{fromJson(steps.set_var.outputs.android_paths).html_path}}) | ![iOS](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=${{fromJson(steps.set_var.outputs.ios_paths).html_path}}) | + | desktop :computer: | web :spider_web: | + | https://ad-hoc-expensify-cash.s3.amazonaws.com/desktop/$PULL_REQUEST_NUMBER/NewExpensify.dmg | https://$PULL_REQUEST_NUMBER.pr-testing.expensify.com | + | ![desktop](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=https://ad-hoc-expensify-cash.s3.amazonaws.com/desktop/$PULL_REQUEST_NUMBER/NewExpensify.dmg) | ![web](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=https://$(PULL_REQUEST_NUMBER).pr-testing.expensify.com) |" env: GITHUB_TOKEN: ${{ secrets.OS_BOTIFY_TOKEN }}