feat: Add AppSync components (#3825) #390
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
name: Amplify Stress Tests | |
on: | |
workflow_dispatch: | |
push: | |
branches: [main] | |
permissions: | |
id-token: write | |
contents: read | |
concurrency: | |
group: ${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
prepare-for-test: | |
runs-on: macos-latest | |
environment: IntegrationTest | |
outputs: | |
destination: ${{ steps.platform.outputs.destination }} | |
xcode-version: ${{ steps.platform.outputs.xcode-version }} | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1 | |
with: | |
persist-credentials: false | |
- name: Verify copy resources | |
uses: ./.github/composite_actions/download_test_configuration | |
with: | |
resource_subfolder: NA | |
aws_role_to_assume: ${{ secrets.AWS_ROLE_TO_ASSUME }} | |
aws_region: ${{ secrets.AWS_REGION }} | |
aws_s3_bucket: ${{ secrets.AWS_S3_BUCKET_INTEG_V2 }} | |
- name: Get build parameters | |
id: platform | |
uses: ./.github/composite_actions/get_platform_parameters | |
with: | |
platform: 'iOS' | |
auth-stress-test: | |
needs: prepare-for-test | |
runs-on: macos-latest | |
environment: IntegrationTest | |
env: | |
DESTINATION: ${{ needs.prepare-for-test.outputs.destination }} | |
XCODE_VERSION: ${{ needs.prepare-for-test.outputs.xcode-version }} | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1 | |
with: | |
persist-credentials: false | |
- name: Make directory | |
run: mkdir -p ~/.aws-amplify/amplify-ios/testconfiguration/ | |
- name: Copy stress test resouces | |
uses: ./.github/composite_actions/download_test_configuration | |
with: | |
resource_subfolder: stresstest | |
aws_role_to_assume: ${{ secrets.AWS_ROLE_TO_ASSUME }} | |
aws_region: ${{ secrets.AWS_REGION }} | |
aws_s3_bucket: ${{ secrets.AWS_S3_BUCKET_INTEG_V2 }} | |
- name: Run stress test | |
uses: ./.github/composite_actions/run_xcodebuild_test | |
with: | |
project_path: ./AmplifyPlugins/Auth/Tests/AuthHostApp/ | |
scheme: AuthStressTests | |
destination: ${{ env.DESTINATION }} | |
xcode_path: '/Applications/Xcode_${{ env.XCODE_VERSION }}.app' | |
geo-stress-test: | |
needs: prepare-for-test | |
runs-on: macos-latest | |
environment: IntegrationTest | |
env: | |
DESTINATION: ${{ needs.prepare-for-test.outputs.destination }} | |
XCODE_VERSION: ${{ needs.prepare-for-test.outputs.xcode-version }} | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1 | |
with: | |
persist-credentials: false | |
- name: Make directory | |
run: mkdir -p ~/.aws-amplify/amplify-ios/testconfiguration/ | |
- name: Copy stress test resouces | |
uses: ./.github/composite_actions/download_test_configuration | |
with: | |
resource_subfolder: stresstest | |
aws_role_to_assume: ${{ secrets.AWS_ROLE_TO_ASSUME }} | |
aws_region: ${{ secrets.AWS_REGION }} | |
aws_s3_bucket: ${{ secrets.AWS_S3_BUCKET_INTEG_V2 }} | |
- name: Run stress test | |
uses: ./.github/composite_actions/run_xcodebuild_test | |
with: | |
project_path: ./AmplifyPlugins/Geo/Tests/GeoHostApp/ | |
scheme: GeoStressTests | |
destination: ${{ env.DESTINATION }} | |
xcode_path: '/Applications/Xcode_${{ env.XCODE_VERSION }}.app' | |
storage-stress-test: | |
needs: prepare-for-test | |
runs-on: macos-latest | |
environment: IntegrationTest | |
env: | |
DESTINATION: ${{ needs.prepare-for-test.outputs.destination }} | |
XCODE_VERSION: ${{ needs.prepare-for-test.outputs.xcode-version }} | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1 | |
with: | |
persist-credentials: false | |
- name: Make directory | |
run: mkdir -p ~/.aws-amplify/amplify-ios/testconfiguration/ | |
- name: Copy stress test resouces | |
uses: ./.github/composite_actions/download_test_configuration | |
with: | |
resource_subfolder: stresstest | |
aws_role_to_assume: ${{ secrets.AWS_ROLE_TO_ASSUME }} | |
aws_region: ${{ secrets.AWS_REGION }} | |
aws_s3_bucket: ${{ secrets.AWS_S3_BUCKET_INTEG_V2 }} | |
- name: Run stress test | |
uses: ./.github/composite_actions/run_xcodebuild_test | |
with: | |
project_path: ./AmplifyPlugins/Storage/Tests/StorageHostApp/ | |
scheme: StorageStressTests | |
destination: ${{ env.DESTINATION }} | |
xcode_path: '/Applications/Xcode_${{ env.XCODE_VERSION }}.app' | |
datastore-stress-test: | |
needs: prepare-for-test | |
runs-on: macos-latest | |
environment: IntegrationTest | |
env: | |
DESTINATION: ${{ needs.prepare-for-test.outputs.destination }} | |
XCODE_VERSION: ${{ needs.prepare-for-test.outputs.xcode-version }} | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1 | |
with: | |
persist-credentials: false | |
- name: Make directory | |
run: mkdir -p ~/.aws-amplify/amplify-ios/testconfiguration/ | |
- name: Copy stress test resouces | |
uses: ./.github/composite_actions/download_test_configuration | |
with: | |
resource_subfolder: stresstest | |
aws_role_to_assume: ${{ secrets.AWS_ROLE_TO_ASSUME }} | |
aws_region: ${{ secrets.AWS_REGION }} | |
aws_s3_bucket: ${{ secrets.AWS_S3_BUCKET_INTEG_V2 }} | |
- name: Run stress test | |
uses: ./.github/composite_actions/run_xcodebuild_test | |
with: | |
project_path: ./AmplifyPlugins/DataStore/Tests/DataStoreHostApp | |
scheme: DatastoreStressTests | |
destination: ${{ env.DESTINATION }} | |
xcode_path: '/Applications/Xcode_${{ env.XCODE_VERSION }}.app' | |
graphql-api-stress-test: | |
needs: prepare-for-test | |
runs-on: macos-latest | |
environment: IntegrationTest | |
env: | |
DESTINATION: ${{ needs.prepare-for-test.outputs.destination }} | |
XCODE_VERSION: ${{ needs.prepare-for-test.outputs.xcode-version }} | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1 | |
with: | |
persist-credentials: false | |
- name: Make directory | |
run: mkdir -p ~/.aws-amplify/amplify-ios/testconfiguration/ | |
- name: Copy stress test resouces | |
uses: ./.github/composite_actions/download_test_configuration | |
with: | |
resource_subfolder: stresstest | |
aws_role_to_assume: ${{ secrets.AWS_ROLE_TO_ASSUME }} | |
aws_region: ${{ secrets.AWS_REGION }} | |
aws_s3_bucket: ${{ secrets.AWS_S3_BUCKET_INTEG_V2 }} | |
- name: Run stress test | |
uses: ./.github/composite_actions/run_xcodebuild_test | |
with: | |
project_path: ./AmplifyPlugins/API/Tests/APIHostApp | |
scheme: GraphQLAPIStressTests | |
destination: ${{ env.DESTINATION }} | |
xcode_path: '/Applications/Xcode_${{ env.XCODE_VERSION }}.app' |