Skip to content

E2E release compatibility #765

E2E release compatibility

E2E release compatibility #765

Workflow file for this run

name: E2E release compatibility
on:
workflow_run:
workflows:
- deploy
types:
- completed
branches:
- main
jobs:
end_to_end_release_compatibility:
name: Check PR against end-to-end tests
runs-on: ubuntu-latest
if: github.event.workflow_run.conclusion == 'success'
steps:
- uses: actions/checkout@v4
# pull requests create a new merge commit so we have to work our way back
# to the actual commit so it matches the Docker image
- name: Generate short SHA
id: short-git-hash
run: |
if [ "$GITHUB_EVENT_NAME" == "pull_request" ]; then
GITHUB_SHA=$(cat $GITHUB_EVENT_PATH | jq -r .pull_request.head.sha)
fi
echo "hash=$(git rev-parse --short=9 "$GITHUB_SHA")" >> $GITHUB_OUTPUT
- name: Dispatch Postgres E2E tests
uses: aurelien-baudet/workflow-dispatch@v2
with:
inputs: '{ "connector": "${{ steps.short-git-hash.outputs.hash }}" }'
repo: hasura/v3-e2e-testing
ref: main
token: ${{ secrets.E2E_WORKFLOW_PAT }}
workflow: "cargo test postgres"
- name: Dispatch Postgres Config Server E2E tests
uses: aurelien-baudet/workflow-dispatch@v2
with:
inputs: '{ "connector": "${{ github.sha }}" }'
repo: hasura/v3-e2e-testing
ref: main
token: ${{ secrets.E2E_WORKFLOW_PAT }}
workflow: "cargo test postgres-config-server"
- name: Report failures
if: always() && github.ref == 'refs/heads/main'
uses: ravsamhq/notify-slack-action@v2
with:
status: ${{ job.status }}
notify_when: failure
notification_title: "${{ github.actor }}, *nap time is over*! The following commit to <{repo_url}|{repo}> broke the end-to-end tests:"
message_format: "${{ github.event.head_commit.message }}"
env:
SLACK_WEBHOOK_URL: ${{ secrets.BROKEN_E2E_SLACK_WEBHOOK_URL }}