| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- name: Reusable VRT reporting workflow for production
- on:
- workflow_call:
- inputs:
- node-version:
- required: true
- type: string
- checkout-ref:
- type: string
- default: ${{ github.head_ref }}
- skip-reg-suit:
- type: boolean
- cypress-report-artifact-name-pattern:
- required: true
- type: string
- secrets:
- REG_NOTIFY_GITHUB_PLUGIN_CLIENTID:
- required: true
- AWS_ACCESS_KEY_ID:
- required: true
- AWS_SECRET_ACCESS_KEY:
- required: true
- SLACK_WEBHOOK_URL:
- required: true
- outputs:
- EXPECTED_IMAGES_EXIST:
- value: ${{ jobs.run-reg-suit.outputs.EXPECTED_IMAGES_EXIST }}
- jobs:
- run-reg-suit:
- # use secrets for "VRT" environment
- # https://github.com/growilabs/growi/settings/environments/376165508/edit
- environment: VRT
- if: ${{ !inputs.skip-reg-suit }}
- env:
- 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 }}
- runs-on: ubuntu-latest
- outputs:
- EXPECTED_IMAGES_EXIST: ${{ steps.check-expected-images.outputs.EXPECTED_IMAGES_EXIST }}
- steps:
- - uses: actions/checkout@v4
- with:
- ref: ${{ inputs.checkout-ref }}
- fetch-depth: 0
- - uses: pnpm/action-setup@v4
- - uses: actions/setup-node@v4
- with:
- node-version: ${{ inputs.node-version }}
- cache: 'pnpm'
- - name: Install dependencies
- run: |
- pnpm install --frozen-lockfile
- - name: Download screenshots taken by cypress
- uses: actions/download-artifact@v4
- with:
- path: apps/app/test/cypress
- pattern: ${{ inputs.cypress-report-artifact-name-pattern }}
- merge-multiple: true
- - name: Run reg-suit
- working-directory: ./apps/app
- run: |
- pnpm run reg:run
- - name: Slack Notification
- uses: weseek/ghaction-slack-notification@master
- if: failure()
- with:
- type: ${{ job.status }}
- job_name: '*Node CI for growi - run-reg-suit (${{ inputs.node-version }})*'
- channel: '#ci'
- isCompactMode: true
- url: ${{ secrets.SLACK_WEBHOOK_URL }}
|