debug #5
This file contains 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: CI | |
on: | |
push: | |
pull_request: | |
branches: [ $default-branch ] | |
release: | |
types: | |
- created | |
jobs: | |
test: | |
name: CI | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
otp: [27.0, 27.1] | |
container: | |
image: erlang:${{ matrix.otp }}-alpine | |
services: | |
nats: | |
image: nats:latest | |
ports: | |
- 4222:4222 | |
options: >- | |
-js | |
steps: | |
- | |
name: Prepare | |
run: | | |
apk update | |
apk --no-cache upgrade | |
apk --no-cache add git zstd iproute2 iproute2-ss | |
- | |
name: git special configs | |
run: | | |
git config --global --add safe.directory /__w/enats/enats | |
- | |
name: Check out repository | |
uses: actions/checkout@v4 | |
- | |
name: Build | |
run: rebar3 compile | |
- | |
name: Run tests | |
run: | | |
ip addr | |
ip route | |
ss -atnp | |
cat /etc/hosts | |
rebar3 xref | |
rebar3 dialyzer | |
rebar3 ct | |
- | |
name: Tar Test Output | |
if: ${{ always() }} | |
run: tar -cf - _build/test/logs/ | zstd -15 -o ct-logs-${{ matrix.otp }}.tar.zst | |
- | |
name: Archive Test Output | |
if: ${{ always() }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: test-output-${{ matrix.otp }} | |
path: | | |
ct-logs-${{ matrix.otp }}.tar.zst | |
_build/test/logs/*/junit_report.xml | |
publish-test-results: | |
name: "Publish Tests Results" | |
needs: test | |
runs-on: ubuntu-latest | |
permissions: | |
checks: write | |
pull-requests: write | |
contents: read | |
issues: read | |
if: always() | |
steps: | |
- | |
name: Download Artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
path: artifacts | |
- | |
name: Publish Test Results | |
uses: EnricoMi/publish-unit-test-result-action@v2 | |
with: | |
files: "artifacts/**/junit_report.xml" | |
slack: | |
needs: test | |
runs-on: ubuntu-22.04 | |
if: always() | |
steps: | |
- | |
name: Slack notification | |
uses: 8398a7/action-slack@v3 | |
with: | |
author_name: "GitHub Actions" | |
username: ${{ github.event.repository.name }} | |
icon_emoji: ':octocat:' | |
fields: repo, message, ref, commit, author, action, eventName, workflow, job, took | |
status: ${{ needs.test.result }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK }} | |
MATRIX_CONTEXT: ${{ toJson(matrix) }} |