## Use workflows from ninenines/ci.erlang.mk to test Cowboy. name: Check Cowboy on: push: branches: - master pull_request: schedule: ## Every Monday at 2am. - cron: 0 2 * * 1 concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: cleanup-master: name: Cleanup master build runs-on: ubuntu-latest if: ${{ github.event_name == 'schedule' }} permissions: actions: write steps: - name: Cleanup master build if necessary run: | gh cache delete Linux-X64-Erlang-master -R $REPO || true gh cache delete macOS-ARM64-Erlang-master -R $REPO || true env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} REPO: ${{ github.repository }} check: name: Cowboy needs: cleanup-master if: ${{ !cancelled() }} uses: ninenines/ci.erlang.mk/.github/workflows/ci.yaml@master # The examples test suite is nice to run but typically not # important. So we run them after we are done with the other # test suites. At this point we know that Erlang was built # so we can just use the latest version. examples: name: Check examples runs-on: 'ubuntu-latest' steps: - name: Checkout repository uses: actions/checkout@v4 - name: Install latest Erlang/OTP uses: erlef/setup-beam@v1 with: otp-version: latest - name: Run ct-examples run: make ct-examples - name: Upload logs uses: actions/upload-artifact@v4 if: always() with: name: Common Test logs (examples) path: | logs/ !logs/**/log_private