name: swift-aws-lambda-runtime-build on: pull_request: types: [opened, reopened, synchronize] # As per Checkov CKV2_GHA_1 permissions: read-all jobs: soundness: name: Soundness uses: swiftlang/github-workflows/.github/workflows/soundness.yml@main with: license_header_check_project_name: "SwiftAWSLambdaRuntime" shell_check_enabled: true python_lint_check_enabled: true api_breakage_check_container_image: "swift:6.2-noble" docs_check_container_image: "swift:6.2-noble" format_check_container_image: "swift:6.2-noble" yamllint_check_enabled: true unit-tests: name: Unit tests uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main with: enable_windows_checks: false linux_exclude_swift_versions: "[{\"swift_version\": \"5.9\"}, {\"swift_version\": \"5.10\"}]" swift_flags: "--explicit-target-dependency-import-check error" swift_nightly_flags: "--explicit-target-dependency-import-check error" enable_linux_static_sdk_build: true integration-tests: name: Integration Tests uses: ./.github/workflows/integration_tests.yml with: name: "Integration tests" examples_enabled: true matrix_linux_command: "swift build" # We pass the list of examples here, but we can't pass an array as argument # Instead, we pass a String with a valid JSON array. # The workaround is mentioned here https://github.com/orgs/community/discussions/11692 examples: "[ 'APIGatewayV1', 'APIGatewayV2', 'APIGatewayV2+LambdaAuthorizer', 'BackgroundTasks', 'HelloJSON', 'HelloWorld', 'HelloWorldNoTraits', 'HummingbirdLambda', 'ManagedInstances', 'MultiSourceAPI', 'MultiTenant', 'ResourcesPackaging', 'S3EventNotifier', 'S3_AWSSDK', 'S3_Soto', 'Streaming+APIGateway', 'Streaming+FunctionUrl', 'Streaming+Codable', 'ServiceLifecycle+Postgres', 'Testing', 'Tutorial' ]" archive_plugin_examples: "[ 'HelloWorld', 'ResourcesPackaging' ]" archive_plugin_enabled: true semver-label-check: name: Semantic Version label check runs-on: ubuntu-latest timeout-minutes: 1 steps: - name: Checkout repository uses: actions/checkout@v4 with: persist-credentials: false - name: Check for Semantic Version label uses: apple/swift-nio/.github/actions/pull_request_semver_label_checker@main