name: Node CI for app production on: pull_request: types: [opened, reopened, synchronize] jobs: retrieve-merge-base-hash: runs-on: ubuntu-latest outputs: MERGE_BASE_SHA: ${{ steps.get-merge-base.outputs.sha }} steps: - name: Git merge-base id: get-merge-base run: | sha=`git merge-base ${{ github.head_ref }} ${{ github.base_ref }}` echo "::set-output name=sha::$sha" run-reg-suit-sync-expected: needs: [retrieve-merge-base-hash] uses: weseek/growi/.github/workflows/reusable-app-reg-suit.yml@support/vrt-with-cypress with: node-version: 14.x checkout-ref: ${{ needs.retrieve-merge-base-hash.outputs.MERGE_BASE_SHA }} run-sync-expected: true secrets: REG_NOTIFY_GITHUB_PLUGIN_CLIENTID: ${{ secrets.REG_NOTIFY_GITHUB_PLUGIN_CLIENTID }} AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} test-prod-merge-base: needs: [retrieve-merge-base-hash, run-reg-suit-sync-expected] uses: weseek/growi/.github/workflows/reusable-app-prod.yml@support/vrt-with-cypress if: ${{ !needs.run-reg-suit-sync-expected.outputs.EXPECTED_IMAGES_EXIST }} with: node-version: 14.x checkout-ref: ${{ needs.retrieve-merge-base-hash.outputs.MERGE_BASE_SHA }} skip-launching-test: true cypress-report-artifact-name: Cypress report for base secrets: SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} run-reg-suit-merge-base: needs: [test-prod-base] uses: weseek/growi/.github/workflows/reusable-app-reg-suit.yml@support/vrt-with-cypress if: always() with: node-version: 14.x checkout-ref: ${{ github.event.pull_request.base.ref }} run-sync-expected: true run-compare: true run-publish: true cypress-report-artifact-name: Cypress report for base secrets: REG_NOTIFY_GITHUB_PLUGIN_CLIENTID: ${{ secrets.REG_NOTIFY_GITHUB_PLUGIN_CLIENTID }} AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} test-prod-head: uses: weseek/growi/.github/workflows/reusable-app-prod.yml@support/vrt-with-cypress with: node-version: 14.x cypress-report-artifact-name: Cypress report for head secrets: SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} run-reg-suit-head: needs: [run-reg-suit-base, test-prod-head] uses: weseek/growi/.github/workflows/reusable-app-reg-suit.yml@support/vrt-with-cypress if: always() with: node-version: 14.x run-sync-expected: true run-compare: true run-publish: true cypress-report-artifact-name: Cypress report for head secrets: REG_NOTIFY_GITHUB_PLUGIN_CLIENTID: ${{ secrets.REG_NOTIFY_GITHUB_PLUGIN_CLIENTID }} AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}