-
Notifications
You must be signed in to change notification settings - Fork 99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Only set Functional Test Run as passing if all subtests pass #7303
Merged
youngbupark
merged 16 commits into
radius-project:main
from
willdavsmith:willdavsmith/matrix
Mar 13, 2024
Merged
Changes from all commits
Commits
Show all changes
16 commits
Select commit
Hold shift + click to select a range
b1e8469
Changes in main
willdavsmith 3c0680c
Changes in main 2
willdavsmith 0cbc65b
Changes in pr
willdavsmith e355b49
main commit 3
willdavsmith b7b1546
Set test status env variable
willdavsmith 8789e90
disabling some tests
willdavsmith 22fe0bb
fix
willdavsmith 842c5e1
changes
willdavsmith 03a9f0d
changes
willdavsmith 7f55bf1
iterating
willdavsmith f0c6dd2
test
willdavsmith a3b417a
test
willdavsmith af2d313
test
willdavsmith fb13222
matrix
willdavsmith 81f4381
PR
willdavsmith 0057432
Merge branch 'main' into willdavsmith/matrix
willdavsmith File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -70,6 +70,8 @@ env: | |
ACTION_LINK: '${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}' | ||
# Server where terraform test modules are deployed | ||
TF_RECIPE_MODULE_SERVER_URL: "http://tf-module-server.radius-test-tf-module-server.svc.cluster.local" | ||
# The functional test GitHub app id | ||
FUNCTIONAL_TEST_APP_ID: 425843 | ||
# Private Git repository where terraform module for testing is stored. | ||
TF_RECIPE_PRIVATE_GIT_SOURCE: "git::https://github.com/radius-project/terraform-private-modules//kubernetes-redis" | ||
|
||
|
@@ -81,7 +83,6 @@ jobs: | |
env: | ||
DE_IMAGE: 'ghcr.io/radius-project/deployment-engine' | ||
DE_TAG: 'latest' | ||
FUNCTIONAL_TEST_APP_ID: 425843 | ||
outputs: | ||
REL_VERSION: ${{ steps.gen-id.outputs.REL_VERSION }} | ||
UNIQUE_ID: ${{ steps.gen-id.outputs.UNIQUE_ID }} | ||
|
@@ -92,7 +93,7 @@ jobs: | |
DE_IMAGE: ${{ steps.gen-id.outputs.DE_IMAGE }} | ||
DE_TAG: ${{ steps.gen-id.outputs.DE_TAG }} | ||
steps: | ||
- name: Login as the GitHub App | ||
- name: Get GitHub app token | ||
uses: tibdex/github-app-token@v1 | ||
id: get_installation_token | ||
with: | ||
|
@@ -326,9 +327,8 @@ jobs: | |
BICEP_RECIPE_TAG_VERSION: ${{ needs.build.outputs.REL_VERSION }} | ||
DE_IMAGE: ${{ needs.build.outputs.DE_IMAGE }} | ||
DE_TAG: ${{ needs.build.outputs.DE_TAG }} | ||
FUNCTIONAL_TEST_APP_ID: 425843 | ||
steps: | ||
- name: Login as the GitHub App | ||
- name: Get GitHub app token | ||
uses: tibdex/github-app-token@v1 | ||
id: get_installation_token | ||
with: | ||
|
@@ -354,7 +354,6 @@ jobs: | |
with: | ||
repository: radius-project/samples | ||
ref: refs/heads/edge | ||
token: ${{ secrets.GH_RAD_CI_BOT_PAT }} | ||
path: samples | ||
- name: Set up Go ${{ env.GOVER }} | ||
uses: actions/setup-go@v3 | ||
|
@@ -631,6 +630,40 @@ jobs: | |
append: true | ||
message: | | ||
:x: ${{ matrix.name }} functional test cancelled. Please check [the logs](${{ env.ACTION_LINK }}) for more details | ||
report-test-results: | ||
name: Report test results | ||
needs: [build, tests] | ||
runs-on: ubuntu-latest | ||
if: always() | ||
env: | ||
CHECKOUT_REF: ${{ needs.build.outputs.CHECKOUT_REF }} | ||
steps: | ||
- name: Get GitHub app token | ||
uses: tibdex/github-app-token@v1 | ||
id: get_installation_token | ||
with: | ||
app_id: ${{ env.FUNCTIONAL_TEST_APP_ID }} | ||
private_key: ${{ secrets.FUNCTIONAL_TEST_APP_PRIVATE_KEY }} | ||
- name: Get tests job status | ||
id: get_test_status | ||
run: | | ||
# from: https://github.com/orgs/community/discussions/26526#discussioncomment-3252209 | ||
ALL_JOBS_STATUS=$(curl -X GET -s -u "admin:${{ steps.get_installation_token.outputs.token }}" https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.run_id }}/jobs | jq ".jobs[] | {job_status: .conclusion}") | ||
echo "All jobs status: $ALL_JOBS_STATUS" | ||
TEST_STATUS="success" | ||
for job_status in $(echo "$ALL_JOBS_STATUS" | jq -r '.[]'); do | ||
echo "Job Status: $job_status" | ||
if [[ "$job_status" == "failure" ]]; then | ||
echo "Found failed test. Setting test status to failure" | ||
TEST_STATUS="failure" | ||
break | ||
elif [[ "$job_status" == "cancelled" ]]; then | ||
echo "Found cancelled test. Setting test status to cancelled" | ||
TEST_STATUS="cancelled" | ||
fi | ||
done | ||
echo "Test Status: $TEST_STATUS" | ||
echo "test_status=$TEST_STATUS" >> $GITHUB_OUTPUT | ||
- uses: LouisBrunner/[email protected] | ||
if: always() | ||
with: | ||
|
@@ -639,7 +672,7 @@ jobs: | |
repo: ${{ github.repository }} | ||
sha: ${{ env.CHECKOUT_REF }} | ||
status: completed | ||
conclusion: ${{ job.status }} | ||
conclusion: ${{ steps.get_test_status.outputs.test_status }} | ||
output: | | ||
{"summary":"Functional Test run completed. See links for more information.","title":"Functional Test Run"} | ||
details_url: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }} | ||
|
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we also have a break here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added a break for the failure but not the cancelled because I think it's better to report "tests failed" instead of "tests cancelled" if both occur. If all tests pass but some are cancelled, we will still report the status as cancelled because we only set as "success" if we don't go in this conditional.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok