Repository navigation
ci: make CI pass by testing what EMQX ships #15
Workflow file for this run
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
| ## Test Cowboy against the OTP releases and dependency versions EMQX ships. | |
| name: Check Cowboy | |
| on: | |
| push: | |
| branches: | |
| - master | |
| - emqx-2.13.x | |
| pull_request: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| dialyze: | |
| name: Dialyzer (OTP-${{ matrix.otp }}) | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| matrix: | |
| otp: | |
| - 28.5.0.7 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install Erlang/OTP | |
| uses: erlef/setup-beam@v1 | |
| with: | |
| otp-version: ${{ matrix.otp }} | |
| version-type: strict | |
| ## Dialyzer needs quicer's Erlang modules to check cowboy_http3. | |
| ## The Makefile skips quicer's NIF build. | |
| - name: Run Dialyzer | |
| run: make dialyze dep_ranch="git https://github.com/emqx/ranch 2.2.0-emqx-3" | |
| env: | |
| COWBOY_QUICER: 1 | |
| test: | |
| name: Tests (OTP-${{ matrix.otp }}, ranch ${{ matrix.ranch }}) | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ## The OTP and ranch combinations of the EMQX releases built on this branch. | |
| include: | |
| ## EMQX 5.10 | |
| - otp: 27.3.4.18 | |
| ranch: 1.8.1-emqx-1 | |
| ## EMQX 6.0 | |
| - otp: 27.3.4.18 | |
| ranch: 2.2.0-emqx-3 | |
| ## EMQX 6.1 and later | |
| - otp: 28.5.0.7 | |
| ranch: 2.2.0-emqx-3 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install Erlang/OTP | |
| uses: erlef/setup-beam@v1 | |
| with: | |
| otp-version: ${{ matrix.otp }} | |
| version-type: strict | |
| - name: Run tests | |
| run: make -k tests dep_ranch="git https://github.com/emqx/ranch ${{ matrix.ranch }}" | |
| - name: Upload logs | |
| uses: actions/upload-artifact@v4 | |
| if: always() | |
| with: | |
| name: Common Test logs (OTP-${{ matrix.otp }}, ranch ${{ matrix.ranch }}) | |
| path: | | |
| logs/ | |
| !logs/**/log_private |