Skip to content

Commit

Permalink
test
Browse files Browse the repository at this point in the history
  • Loading branch information
hectorcast-db committed Jul 19, 2024
1 parent 8f02572 commit a5df9b4
Show file tree
Hide file tree
Showing 3 changed files with 76 additions and 76 deletions.
44 changes: 44 additions & 0 deletions .github/workflows/integration-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Integration Tests Check

on:
pull_request:
branches: [ "main" ]

jobs:
start-check:
runs-on: ubuntu-latest
permissions:
checks: write # Permission to create a Check Run
actions: write # Permission to run another workflow
steps:
- name: Create Check
id: checkrun
env:
GH_TOKEN: ${{ github.token }} # Expose the token for GH CLI
run: |
# Due to GitHub limitations, the check is assigned randomly to a check suit
# https://github.com/orgs/community/discussions/24616
CHECKID=$(gh api -X POST -H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
-f name='Integration Tests' \
-f head_sha='${{ github.event.pull_request.head.sha }}' \
-f status='queued' \
-f 'output[title]=Run Integration Tests' \
-f 'output[summary]=Running Integration Tests for Java SDK' \
--jq '.id' \
/repos/${{ github.repository }}/check-runs)
# Put the ID into a step variable
echo "checkId=$CHECKID" >> $GITHUB_OUTPUT
- name: Trigger Workflow
env:
GH_TOKEN: ${{ github.token }}
run: |
# By default, this will run the workflow in the main branch.
# To test changes the ref to the current branch.
gh api -X POST -H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
-f 'inputs[checkRunId]=${{ steps.checkrun.outputs.checkId }}' \
-f "ref=run-tests" \
/repos/${{ github.repository }}/actions/workflows/integration-tests.yml/dispatches
53 changes: 32 additions & 21 deletions .github/workflows/integration-tests.yml
Original file line number Diff line number Diff line change
@@ -1,54 +1,65 @@
name: Integration Tests
on:
repository_dispatch:
types: [integration-check]
workflow_dispatch:
inputs:
checkRunId:
description: "ID for the Check Run in a PR"
type: string

jobs:
myEvent:
runs-on: ubuntu-latest
steps:
####################################################
# Update the status to show that the queued message
# was received and is being processed
####################################################
- name: Acknowledge Request
env:
GH_TOKEN: ${{ github.token }}
run: |
gh api -X PATCH -H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
-f 'status=in_progress' \
-f 'output[title]=Integration Tests' \
-f 'output[summary]=Running Integration Tests for Py SDK' \
/repos/${{ github.repository }}/check-runs/${{ github.event.client_payload.checkRunId }}
-f 'output[title]=Run Integration Tests' \
-f 'output[summary]=Running Integration Tests for Java SDK' \
/repos/${{ github.repository }}/check-runs/${{ github.event.inputs.checkRunId }}
####################################################
# Actually, we'll just sleep to simulate some work
####################################################
- name: Processing
run: sleep 10

#####################################################
# Send a final message to complete the run and
# provide any final updates. Doing this one in JSON
# to make it more readable. This approach can also
# be used to get total control over the serialized
# data types (for example, integers).
#####################################################
- name: Complete Check
env:
GH_TOKEN: ${{ github.token }}
run: |
gh api -X PATCH -H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
/repos/${{ github.repository }}/check-runs/${{ github.event.client_payload.checkRunId }} \
/repos/${{ github.repository }}/check-runs/${{ github.event.inputs.checkRunId }} \
--input - <<- EOF
{
"conclusion": "success",
"details_url": "TODO",
"output": {
"title": "Integration Tests",
"summary": "**Summary**: The run completed.",
"text": "Everything worked as expected."
"title": "Run Integration Tests",
"summary": "[Execution Details](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})",
"text": "Successful execution of Integration Tests for Java SDK"
}
}
EOF
- name: Fail Check
if: failure()
env:
GH_TOKEN: ${{ github.token }}
run: |
gh api -X PATCH -H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
/repos/${{ github.repository }}/check-runs/${{ github.event.inputs.checkRunId }} \
--input - <<- EOF
{
"conclusion": "failure",
"output": {
"title": "Run Integration Tests",
"summary": "[Execution Details](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})",
"text": "Failed execution of Integration Tests for Java SDK"
}
}
EOF
55 changes: 0 additions & 55 deletions .github/workflows/test-check.yml

This file was deleted.

0 comments on commit a5df9b4

Please sign in to comment.