iOS render test on AWS Device Farm (#1381)

This commit is contained in:
Bart Louwers
2023-07-18 00:28:39 +02:00
committed by GitHub
parent 90d0e1d9ed
commit a5c3a1a849
2 changed files with 68 additions and 5 deletions

View File

@@ -12,12 +12,75 @@ jobs:
steps:
- uses: actions/checkout@v3
- uses: .github/actions/download-workflow-run-artifact
- uses: ./.github/actions/download-workflow-run-artifact
with:
artifact-name: ios-render-test
expect-files: "RenderTest.xctest.zip, RenderTestApp.ipa"
- uses: .github/actions/download-workflow-run-artifact
- run: echo ${{ github.event.workflow_run }}
- name: Generate token
id: generate_token
uses: tibdex/github-app-token@v1
with:
artifact-name: pr-number
expect-files: "pr_number"
app_id: ${{ secrets.MAPLIBRE_NATIVE_BOT_APP_ID }}
private_key: ${{ secrets.MAPLIBRE_NATIVE_BOT_PRIVATE_KEY }}
- uses: LouisBrunner/checks-action@v1.6.1
id: create_check
with:
token: ${{ steps.generate_token.outputs.token }}
status: in_progress
name: iOS Render Test
sha: ${{ github.event.workflow_run.sha }}
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v2
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-west-2
role-to-assume: ${{ vars.AWS_ROLE_TO_ASSUME }}
role-duration-seconds: 1200
role-session-name: MySessionName
- name: Create upload
uses: realm/aws-devicefarm/create-upload@master
id: upload-ios-app
with:
project_arn: ${{ vars.AWS_DEVICE_FARM_PROJECT_ARN }}
name: RenderTestApp.ipa
type: IOS_APP
- name: Create upload
uses: realm/aws-devicefarm/create-upload@master
id: upload-ios-test
with:
project_arn: ${{ vars.AWS_DEVICE_FARM_PROJECT_ARN }}
name: RenderTest.xctest.zip
type: XCTEST_TEST_PACKAGE
- name: Upload iOS Render test
run: |
curl -T RenderTestApp.ipa '${{ steps.upload-ios-app.outputs.url }}'
curl -T RenderTest.xctest.zip '${{ steps.upload-ios-test.outputs.url }}'
- name: Schedule test run
uses: realm/aws-devicefarm/test-application@master
with:
name: MapLibre Native iOS Render Test
project_arn: ${{ vars.AWS_DEVICE_FARM_PROJECT_ARN }}
device_pool_arn: "arn:aws:devicefarm:us-west-2:373521797162:devicepool:20687d72-0e46-403e-8f03-0941850665bc/d84a2883-0000-44b5-afc4-af22084caf85"
app_arn: ${{ steps.upload-ios-app.outputs.arn }}
app_type: IOS_APP
test_type: XCTEST
test_package_arn: ${{ steps.upload-ios-test.outputs.arn }}
timeout: 28800
- uses: LouisBrunner/checks-action@v1.6.1
if: always()
with:
token: ${{ steps.generate_token.outputs.token }}
check_id: ${{ steps.create_check.outputs.check_id }}
conclusion: ${{ job.status }}
sha: ${{ github.event.workflow_run.sha }}

View File

@@ -12,7 +12,7 @@ jobs:
steps:
- uses: actions/checkout@v3
- uses: .github/actions/download-workflow-run-artifact
- uses: ./.github/actions/download-workflow-run-artifact
with:
artifact-name: size-test-result
expect-files: "./pr_number, ./size"