name: Main permissions: contents: read on: push: branches: [main] schedule: - cron: "0 8,20 * * *" jobs: unit-tests: name: Unit Tests uses: apple/swift-nio/.github/workflows/unit_tests.yml@main with: linux_5_9_enabled: false linux_5_10_enabled: false linux_6_0_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -warnings-as-errors -Xswiftc -require-explicit-availability" linux_6_1_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -warnings-as-errors -Xswiftc -require-explicit-availability" linux_6_2_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -warnings-as-errors -Xswiftc -require-explicit-availability" linux_nightly_next_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -warnings-as-errors -Xswiftc -require-explicit-availability" linux_nightly_main_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -warnings-as-errors -Xswiftc -require-explicit-availability" construct-integration-tests-matrix: name: Construct integration matrix runs-on: ubuntu-latest outputs: integration-tests-matrix: '${{ steps.generate-matrix.outputs.integration-tests-matrix }}' steps: - name: Checkout repository uses: actions/checkout@v4 with: persist-credentials: false - id: generate-matrix run: echo "integration-tests-matrix=$(curl -s https://raw.githubusercontent.com/apple/swift-nio/main/scripts/generate_matrix.sh | bash)" >> "$GITHUB_OUTPUT" env: MATRIX_LINUX_COMMAND: ./dev/integration_tests.sh MATRIX_LINUX_5_9_ENABLED: false MATRIX_LINUX_5_10_ENABLED: false integration-tests: name: Integration Tests needs: construct-integration-tests-matrix uses: apple/swift-nio/.github/workflows/swift_test_matrix.yml@main with: name: "Integration Tests" matrix_string: '${{ needs.construct-integration-tests-matrix.outputs.integration-tests-matrix }}' static-sdk: name: Static SDK uses: apple/swift-nio/.github/workflows/static_sdk.yml@main release-builds: name: Release builds uses: apple/swift-nio/.github/workflows/release_builds.yml@main with: linux_5_10_enabled: false