Skip to content

investigation: add trace logger #1496

investigation: add trace logger

investigation: add trace logger #1496

name: Integration Tests
on:
push:
branches: [ main ]
pull_request:
workflow_dispatch:
env:
AWS_SWIFT_SDK_USE_LOCAL_DEPS: 1
permissions:
id-token: write
contents: read
actions: read
jobs:
linux:
# Details on why AL2 isn't included: https://github.com/awslabs/aws-sdk-swift/pull/1833
if: github.repository == 'awslabs/aws-sdk-swift' || github.event_name == 'pull_request'
runs-on: ubuntu-latest
container: swift:${{ matrix.version }}-${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- jammy
version:
- "5.9"
- "6.0"
iteration: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30]
env:
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
steps:
- name: Configure AWS Credentials for Integration Tests
# configure-aws-credentials@v4 does not work with AL2 images, so @v3 is used instead. See:
# https://github.com/aws-actions/configure-aws-credentials/issues/862
uses: aws-actions/configure-aws-credentials@v3
with:
role-to-assume: ${{ secrets.INTEGRATION_TEST_ROLE_ARN }}
aws-region: us-west-2
- name: Checkout aws-sdk-swift
uses: actions/checkout@v4
with:
path: aws-sdk-swift
- name: Checkout smithy-swift with composite action
uses: ./aws-sdk-swift/.github/actions/checkout-smithy-swift-composite-action
with:
AUTOMATION_USER_SSH_PRIVATE_KEY: ${{ secrets.AUTOMATION_USER_SSH_PRIVATE_KEY }}
STAGING_PARTNER_REPO: ${{ secrets.STAGING_PARTNER_REPO }}
- name: Cache Gradle
uses: actions/cache@v4
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: 2-${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts', 'gradle/wrapper/gradle-wrapper.properties') }}
restore-keys: |
2-${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts', 'gradle/wrapper/gradle-wrapper.properties') }}
2-${{ runner.os }}-gradle-
- name: Cache Swift
uses: actions/cache@v4
with:
path: |
~/Library/Caches/org.swift.swiftpm
~/.cache/org.swift.swiftpm
key: 1-${{ runner.os }}-swift-${{ matrix.version }}-spm-${{ hashFiles('Package.swift', 'AWSSDKSwiftCLI/Package.swift') }}
restore-keys: |
1-${{ runner.os }}-swift-${{ matrix.version }}-spm-${{ hashFiles('Package.swift', 'AWSSDKSwiftCLI/Package.swift') }}
1-${{ runner.os }}-swift-${{ matrix.version }}-spm-
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: corretto
java-version: 17
- name: Install OpenSSL (all OS) and which (AL2 only)
run: ./aws-sdk-swift/scripts/ci_steps/install_native_linux_dependencies.sh
- name: Tools Versions
run: ./aws-sdk-swift/scripts/ci_steps/log_tool_versions.sh
- name: Prepare Integration Tests
run: |
cd aws-sdk-swift
./scripts/ci_steps/prepare_integration_tests.sh
- name: Build Integration Tests
run: |
cd aws-sdk-swift/IntegrationTests
swift build --build-tests
- name: Run Integration Tests
run: |
cd aws-sdk-swift/IntegrationTests
swift test