| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- ---
-
- name: CI
-
- permissions:
- actions: read
- checks: read
- contents: read
- deployments: read
- issues: read
- discussions: read
- pull-requests: read
- repository-projects: read
- security-events: read
- statuses: read
-
- on:
- push:
- tags:
- - v*
- branches:
- - master
- - stable
- - v1
- release:
- types:
- - published
- - released
- pull_request:
- types:
- - opened
- - edited
- - reopened
- - synchronize
- - ready_for_review
-
- jobs:
- test:
- name: Test
- runs-on: ubuntu-latest
- timeout-minutes: 10
- steps:
- - name: Checkout
- uses: actions/checkout@v6
- with:
- submodules: recursive
-
- - uses: jdx/mise-action@v3
- name: Install mise
-
- - name: Cache Go modules and build
- uses: actions/cache@v5
- with:
- path: |
- ~/go/pkg/mod
- ~/.cache/go-build
- key: ${{ runner.os }}-go-${{ hashFiles('go.sum') }}
- restore-keys: |
- ${{ runner.os }}-go-
-
- - name: Run tests
- run: mise tasks run covtest
-
- - name: Collect coverage
- uses: codecov/codecov-action@v5
- with:
- files: ./coverage.txt
-
- fuzz:
- name: Fuzzing
- runs-on: ubuntu-latest
- timeout-minutes: 20
- steps:
- - name: Checkout
- uses: actions/checkout@v6
- with:
- submodules: recursive
-
- - uses: jdx/mise-action@v3
- name: Install mise
-
- - name: Cache Go modules and build
- uses: actions/cache@v5
- with:
- path: |
- ~/go/pkg/mod
- ~/.cache/go-build
- key: ${{ runner.os }}-go-${{ hashFiles('go.sum') }}
- restore-keys: |
- ${{ runner.os }}-go-
-
- - name: Run fuzzing
- run: mise tasks run 'test:fuzz:*'
-
-
- lint:
- name: Lint
- runs-on: ubuntu-latest
- timeout-minutes: 5
- steps:
- - name: Checkout
- uses: actions/checkout@v6
- with:
- submodules: recursive
-
- - uses: jdx/mise-action@v3
- name: Install mise
-
- - name: Cache Go modules and build
- uses: actions/cache@v5
- with:
- path: |
- ~/go/pkg/mod
- ~/.cache/go-build
- key: ${{ runner.os }}-go-${{ hashFiles('go.sum') }}
- restore-keys: |
- ${{ runner.os }}-go-
-
- - name: Run linter
- run: mise tasks run lint
|