Build Test Artifacts #1501
This file contains hidden or 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
| # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. | |
| # SPDX-License-Identifier: MIT | |
| name: Build Test Artifacts | |
| on: | |
| push: | |
| branches: | |
| - main* | |
| paths-ignore: | |
| - '**/*.md' | |
| - 'NOTICE' | |
| - 'THIRD-PARTY' | |
| - 'LICENSE' | |
| - '.github/**' | |
| - '!.github/workflows/build-test-artifacts.yml' | |
| - '!.github/workflows/integration-test.yml' | |
| - '!.github/workflows/application-signals-e2e-test.yml' | |
| schedule: | |
| - cron: '0 11 * * 1,2,3,4,5' # Every day at 11:00 UTC on Monday to Friday | |
| workflow_dispatch: | |
| inputs: | |
| test-image-before-upload: | |
| description: "Run Test on the new container image" | |
| default: true | |
| type: boolean | |
| workflow_call: | |
| inputs: | |
| test-image-before-upload: | |
| description: "Run Test on the new container image" | |
| default: true | |
| type: boolean | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref_name }} | |
| cancel-in-progress: true | |
| jobs: | |
| BuildAndUpload: | |
| uses: ./.github/workflows/test-build.yml | |
| secrets: inherit | |
| permissions: | |
| id-token: write | |
| contents: read | |
| with: | |
| BucketKey: "integration-test/binary/${{ github.sha }}" | |
| PackageBucketKey: "integration-test/packaging/${{ github.sha }}" | |
| TerraformAWSAssumeRole: ${{ vars.TERRAFORM_AWS_ASSUME_ROLE }} | |
| Bucket: ${{ vars.S3_INTEGRATION_BUCKET }} | |
| BuildAndUploadPackages: | |
| uses: ./.github/workflows/test-build-packages.yml | |
| needs: [BuildAndUpload] | |
| secrets: inherit | |
| permissions: | |
| id-token: write | |
| contents: read | |
| with: | |
| BucketKey: "integration-test/binary/${{ github.sha }}" | |
| PackageBucketKey: "integration-test/packaging/${{ github.sha }}" | |
| TerraformAWSAssumeRole: ${{ vars.TERRAFORM_AWS_ASSUME_ROLE }} | |
| Bucket: ${{ vars.S3_INTEGRATION_BUCKET }} | |
| BuildDocker: | |
| needs: [BuildAndUpload] | |
| uses: ./.github/workflows/test-build-docker.yml | |
| secrets: inherit | |
| permissions: | |
| id-token: write | |
| contents: read | |
| with: | |
| ContainerRepositoryNameAndTag: "cwagent-integration-test:${{ github.sha }}" | |
| BucketKey: "integration-test/binary/${{ github.sha }}" | |
| PackageBucketKey: "integration-test/packaging/${{ github.sha }}" | |
| BuildDistributor: | |
| needs: [BuildAndUpload, BuildAndUploadPackages, BuildDocker] | |
| uses: ./.github/workflows/test-build-distributor.yml | |
| secrets: inherit | |
| permissions: | |
| id-token: write | |
| contents: read | |
| with: | |
| BucketKey: "integration-test/binary/${{ github.sha }}" | |
| PackageBucketKey: "integration-test/packaging/${{ github.sha }}" | |
| TerraformAWSAssumeRole: ${{ vars.TERRAFORM_AWS_ASSUME_ROLE }} | |
| Bucket: ${{ vars.S3_INTEGRATION_BUCKET }} | |
| DistributorName: ${{ vars.SSM_TEST_DISTRIBUTOR_NAME }} | |
| BuildAndUploadITAR: | |
| uses: ./.github/workflows/test-build.yml | |
| secrets: inherit | |
| permissions: | |
| id-token: write | |
| contents: read | |
| with: | |
| BucketKey: "integration-test/binary/${{ github.sha }}" | |
| PackageBucketKey: "integration-test/packaging/${{ github.sha }}" | |
| Region: "us-gov-east-1" | |
| TerraformAWSAssumeRole: ${{ vars.TERRAFORM_AWS_ASSUME_ROLE_ITAR }} | |
| Bucket: ${{ vars.S3_INTEGRATION_BUCKET_ITAR }} | |
| BuildAndUploadCN: | |
| uses: ./.github/workflows/test-build.yml | |
| secrets: inherit | |
| permissions: | |
| id-token: write | |
| contents: read | |
| with: | |
| BucketKey: "integration-test/binary/${{ github.sha }}" | |
| PackageBucketKey: "integration-test/packaging/${{ github.sha }}" | |
| Region: "cn-north-1" | |
| TerraformAWSAssumeRole: ${{ vars.TERRAFORM_AWS_ASSUME_ROLE_CN }} | |
| Bucket: ${{ vars.S3_INTEGRATION_BUCKET_CN }} | |
| StartIntegrationTests: | |
| needs: [ BuildAndUploadPackages, BuildAndUploadITAR, BuildAndUploadCN, BuildDocker, BuildDistributor ] | |
| if: ${{ github.event_name == 'push' || inputs.test-image-before-upload }} | |
| runs-on: ubuntu-latest | |
| permissions: | |
| actions: write | |
| steps: | |
| - run: gh workflow run integration-test.yml --ref ${{ github.ref_name }} --repo $GITHUB_REPOSITORY -f build_run_id=${{ github.run_id }} -f build_sha=${{ github.sha }} | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| StartApplicationSignalsE2ETests: | |
| needs: [ BuildAndUploadPackages, BuildAndUploadITAR, BuildAndUploadCN, BuildDocker, BuildDistributor ] | |
| # Workflow only runs against main | |
| if: ${{ github.event_name == 'push' || inputs.test-image-before-upload }} | |
| runs-on: ubuntu-latest | |
| permissions: | |
| actions: write | |
| steps: | |
| - run: gh workflow run application-signals-e2e-test.yml --ref ${{ github.ref_name }} --repo $GITHUB_REPOSITORY -f build_run_id=${{ github.run_id }} -f build_sha=${{ github.sha }} | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| StartEKSE2ETests: | |
| needs: [ BuildAndUploadPackages, BuildAndUploadITAR, BuildAndUploadCN, BuildDocker, BuildDistributor ] | |
| if: ${{ github.event_name == 'push' || inputs.test-image-before-upload }} | |
| runs-on: ubuntu-latest | |
| permissions: | |
| actions: write | |
| steps: | |
| - run: gh workflow run e2e-test.yml --ref ${{ github.ref_name }} --repo $GITHUB_REPOSITORY -f build_sha=${{ github.sha }} | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| StartWorkloadDiscoveryIntegrationTests: | |
| needs: [ BuildAndUploadPackages, BuildAndUploadITAR, BuildAndUploadCN, BuildDocker, BuildDistributor ] | |
| if: ${{ github.event_name == 'push' || inputs.test-image-before-upload }} | |
| runs-on: ubuntu-latest | |
| permissions: | |
| actions: write | |
| steps: | |
| - run: gh workflow run wd-integration-test.yml --ref ${{ github.ref_name }} --repo $GITHUB_REPOSITORY -f build_run_id=${{ github.run_id }} -f build_sha=${{ github.sha }} | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |