61 lines
2.1 KiB
YAML
61 lines
2.1 KiB
YAML
name: pr-upload-render-test-result
|
|
|
|
permissions:
|
|
pull-requests: write # This is required to leave a comment on the PR
|
|
id-token: write # This is required for requesting the AWS JWT
|
|
|
|
on:
|
|
workflow_run:
|
|
workflows: [linux-ci]
|
|
types:
|
|
- completed
|
|
|
|
jobs:
|
|
upload-render-test-result:
|
|
runs-on: ubuntu-22.04
|
|
if: github.event.workflow_run.event == 'pull_request'
|
|
env:
|
|
html_filename: "linux-drawable.html"
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: ./.github/actions/get-pr-number
|
|
id: get-pr-number
|
|
|
|
- uses: ./.github/actions/download-workflow-run-artifact
|
|
with:
|
|
artifact-name: render-test-result
|
|
|
|
# when there are no results, the render test succeeded
|
|
# in this case the subsequent steps can be skipped
|
|
- name: "Check existence render test results HTML"
|
|
id: render_test_results
|
|
uses: andstor/file-existence-action@v2.0.0
|
|
with:
|
|
files: ${{ env.html_filename }}
|
|
|
|
- name: Configure AWS Credentials
|
|
if: steps.render_test_results.outputs.files_exists
|
|
uses: aws-actions/configure-aws-credentials@v4
|
|
with:
|
|
aws-region: us-west-2
|
|
role-to-assume: ${{ vars.OIDC_AWS_ROLE_TO_ASSUME }}
|
|
role-session-name: ${{ github.run_id }}
|
|
|
|
- name: Upload render test results to S3
|
|
if: steps.render_test_results.outputs.files_exists
|
|
id: upload_render_test_results
|
|
run: |
|
|
aws s3 cp metrics/${{ env.html_filename }} \
|
|
s3://maplibre-native-test-artifacts/${{ github.run_id }}-${{ env.html_filename }} \
|
|
--expires "$(date -d '+30 days' --utc +'%Y-%m-%dT%H:%M:%SZ')"
|
|
|
|
- name: 'Leave comment on PR with test results'
|
|
if: steps.render_test_results.outputs.files_exists
|
|
uses: marocchino/sticky-pull-request-comment@v2
|
|
with:
|
|
header: render-test-result
|
|
number: ${{ steps.get-pr-number.outputs.pr-number }}
|
|
message: |
|
|
Render test results at https://maplibre-native-test-artifacts.s3.eu-central-1.amazonaws.com/${{ github.run_id }}-${{ env.html_filename }}
|