Skip to content

Comment fix

Comment fix #1811

Workflow file for this run

name: Integration Test Coverage
on:
push:
paths-ignore:
- "**.md"
- "channel.yaml"
- "install.sh"
- "tests/**"
- "!tests/integration**"
- ".github/**"
- "!.github/workflows/integration.yaml"
pull_request:
paths-ignore:
- "**.md"
- "channel.yaml"
- "install.sh"
- "tests/**"
- "!tests/integration**"
- "!tests/docker**"
- "!tests/e2e**"
- ".github/**"
- "!.github/workflows/integration.yaml"
workflow_dispatch: {}
permissions:
contents: read
env:
GOCOVERDIR: /tmp/k3scov
jobs:
build:
uses: ./.github/workflows/build-k3s.yaml
with:
upload-image: true
int-test:
needs: build
name: Integration Tests
runs-on: ubuntu-22.04
timeout-minutes: 45
strategy:
fail-fast: false
matrix:
itest: [certrotation, etcdrestore, localstorage, startup, custometcdargs, etcdsnapshot, kubeflags, longhorn, secretsencryption]
max-parallel: 3
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Install Go
uses: actions/setup-go@v5
with:
go-version: '1.21.6'
check-latest: true
cache: true
cache-dependency-path: |
**/go.sum
**/go.mod
- name: "Download k3s binary"
uses: actions/download-artifact@v4
with:
name: k3s
path: ./dist/artifacts
- name: Run Integration Tests
run: |
chmod +x ./dist/artifacts/k3s
mkdir -p $GOCOVERDIR
sudo -E env "PATH=$PATH" go test -v -timeout=45m ./tests/integration/${{ matrix.itest }}/... -run Integration
- name: On Failure, Launch Debug Session
if: ${{ failure() }}
uses: mxschmitt/action-tmate@v3
timeout-minutes: 5
- name: Generate coverage report
run: go tool covdata textfmt -i $GOCOVERDIR -o ${{ matrix.itest }}.out
- name: Upload Results To Codecov
uses: codecov/codecov-action@v4
with:
files: ./${{ matrix.itest }}.out
flags: inttests # optional
verbose: true # optional (default = false)
docker-test:
needs: build
name: Docker Tests
runs-on: ubuntu-22.04
timeout-minutes: 30
strategy:
fail-fast: false
matrix: # etcd takes the longest, so we run it first
dtest: [etcd, basics, bootstraptoken, cacerts, compat, lazypull, upgrade]
max-parallel: 4
env:
GH_MATRIX: ${{ matrix.dtest }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Download K3s image
uses: actions/download-artifact@v4
with:
name: k3s-docker
path: /tmp
- name: Load K3s image
run: docker image load -i /tmp/k3s-image.tar
- name: Run K3s Docker Test
run: ./scripts/test