mirror of
https://github.com/k3s-io/k3s.git
synced 2026-04-06 09:55:01 -04:00
87 lines
2.6 KiB
YAML
87 lines
2.6 KiB
YAML
name: Unit Test Coverage
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- "**.md"
|
|
- "channel.yaml"
|
|
- "install.sh"
|
|
- "tests/snapshotter/**"
|
|
- "tests/install/**"
|
|
- "tests/cgroup/**"
|
|
- ".github/**"
|
|
- "!.github/workflows/unitcoverage.yaml"
|
|
pull_request:
|
|
paths-ignore:
|
|
- "**.md"
|
|
- "channel.yaml"
|
|
- "install.sh"
|
|
- "tests/snapshotter/**"
|
|
- "tests/install/**"
|
|
- "tests/cgroup/**"
|
|
- ".github/**"
|
|
- "!.github/workflows/unitcoverage.yaml"
|
|
workflow_dispatch: {}
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
test-unit-linux:
|
|
name: Unit Tests (linux)
|
|
runs-on: ubuntu-24.04
|
|
timeout-minutes: 20
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Install Go
|
|
uses: ./.github/actions/setup-go
|
|
- name: Run Unit Tests
|
|
run: |
|
|
go test -coverpkg ./pkg/... -coverprofile coverage.out ./pkg/... -run Unit
|
|
go tool cover -func coverage.out
|
|
- name: On Failure, Launch Debug Session
|
|
if: ${{ failure() }}
|
|
uses: lhotari/action-upterm@b0357f23233f5ea6d58947c0c402e0631bab7334 # v1
|
|
with:
|
|
wait-timeout-minutes: 5
|
|
- name: Upload Results To Codecov
|
|
uses: codecov/codecov-action@1af58845a975a7985b0beb0cbe6fbbb71a41dbad # v5
|
|
with:
|
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
files: ./coverage.out
|
|
flags: unittests # optional
|
|
verbose: true # optional (default = false)
|
|
test-unit-windows:
|
|
name: Unit Tests (windows)
|
|
runs-on: windows-2022
|
|
timeout-minutes: 20
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Install Go
|
|
uses: ./.github/actions/setup-go
|
|
- name: Run Unit Tests
|
|
run: |
|
|
go test -coverpkg ./pkg/... -coverprofile coverage.out ./pkg/... -run Unit
|
|
go tool cover -func coverage.out
|
|
- name: Upload Results To Codecov
|
|
uses: codecov/codecov-action@1af58845a975a7985b0beb0cbe6fbbb71a41dbad # v5
|
|
with:
|
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
files: ./coverage.out
|
|
flags: unittests # optional
|
|
verbose: true # optional (default = false)
|
|
test-mods:
|
|
name: Test K8s Modules
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
|
- name: Build test-mods
|
|
run: docker build --target test-mods -t k3s:mod -f Dockerfile.test .
|
|
- name: Run test-mods
|
|
run: docker run -i k3s:mod
|