More CI updates

This commit is contained in:
9seconds
2026-02-11 12:07:45 +01:00
parent 1b4c777ed3
commit 130b02013b
+39 -72
View File
@@ -39,30 +39,17 @@ jobs:
name: Test name: Test
runs-on: ubuntu-latest runs-on: ubuntu-latest
timeout-minutes: 10 timeout-minutes: 10
strategy:
matrix:
go_version:
- ^1.25
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v6 uses: actions/checkout@v6
with: with:
submodules: recursive submodules: recursive
- name: Setup Go - uses: jdx/mise-action@v3
uses: actions/setup-go@v6 name: Install mise
with:
go-version: ${{ matrix.go_version }}
- name: Cache dependencies
uses: actions/cache@v5
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: ${{ runner.os }}-go-
- name: Run tests - name: Run tests
run: go test -coverprofile=./coverage.txt -covermode=atomic -v ./... run: mise tasks run covtest
- name: Collect coverage - name: Collect coverage
uses: codecov/codecov-action@v5 uses: codecov/codecov-action@v5
@@ -79,29 +66,11 @@ jobs:
with: with:
submodules: recursive submodules: recursive
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version: ^1.25
- name: Cache fuzz results
uses: actions/cache@v5
with:
path: ~/.cache/go-build/fuzz
key: ${{ runner.os }}-go-${{ hashFiles('**/*_fuzz_test.go', '**/*_fuzz_internal_test.go') }}
restore-keys: ${{ runner.os }}-go-
- name: Cache dependencies
uses: actions/cache@v5
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: ${{ runner.os }}-go-
- uses: jdx/mise-action@v3 - uses: jdx/mise-action@v3
name: Install mise name: Install mise
- run: mise tasks run 'test:fuzz:*' - name: Run fuzzing
run: mise tasks run 'test:fuzz:*'
lint: lint:
@@ -114,13 +83,11 @@ jobs:
with: with:
submodules: recursive submodules: recursive
- name: Setup Go - uses: jdx/mise-action@v3
uses: actions/setup-go@v6 name: Install mise
with:
go-version: ^1.25
- name: Run linter - name: Run linter
uses: golangci/golangci-lint-action@v9.2.0 run: mise tasks run lint
docker: docker:
name: Docker name: Docker
@@ -133,17 +100,17 @@ jobs:
submodules: recursive submodules: recursive
- name: Get Docker meta - name: Get Docker meta
id: docker_meta id: meta
uses: crazy-max/ghaction-docker-meta@v1 uses: docker/metadata-action@v5
with: with:
images: nineseconds/mtg,ghcr.io/9seconds/mtg images: nineseconds/mtg,ghcr.io/9seconds/mtg
tag-semver: "{{version}},{{major}},{{major}}.{{minor}}" tag-semver: "{{version}},{{major}},{{major}}.{{minor}}"
- name: Setup QEMU - name: Setup QEMU
uses: docker/setup-qemu-action@v1 uses: docker/setup-qemu-action@v3
- name: Setup BuildX - name: Setup BuildX
uses: docker/setup-buildx-action@v1 uses: docker/setup-buildx-action@v3
- name: Setup cache - name: Setup cache
uses: actions/cache@v5 uses: actions/cache@v5
@@ -152,30 +119,30 @@ jobs:
key: ${{ runner.os }}-buildx-${{ github.sha }} key: ${{ runner.os }}-buildx-${{ github.sha }}
restore-keys: | restore-keys: |
${{ runner.os }}-buildx- ${{ runner.os }}-buildx-
#
# - name: Login to DockerHub - name: Login to GHCR.io
# if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
# uses: docker/login-action@v1 uses: docker/login-action@v3
# with: with:
# username: ${{ secrets.DOCKERHUB_USERNAME }} registry: ghcr.io
# password: ${{ secrets.DOCKERHUB_PASSWORD }} username: ${{ github.repository_owner }}
# password: ${{ secrets.GH_PAT }}
# - name: Login to GHCR.io
# if: github.event_name != 'pull_request' - name: Login to DockerHub
# uses: docker/login-action@v1 if: github.event_name != 'pull_request'
# with: uses: docker/login-action@v3
# registry: ghcr.io with:
# username: ${{ github.repository_owner }} username: ${{ secrets.DOCKERHUB_USERNAME }}
# password: ${{ secrets.GH_PAT }} password: ${{ secrets.DOCKERHUB_PASSWORD }}
#
# - name: Build and push - name: Build and push
# uses: docker/build-push-action@v2 uses: docker/build-push-action@v2
# with: with:
# pull: true pull: true
# context: . context: .
# platforms: linux/amd64,linux/arm64,linux/386,linux/arm/v7,linux/arm/v6 platforms: linux/amd64,linux/arm64,linux/386,linux/arm/v7,linux/arm/v6
# push: ${{ github.event_name != 'pull_request' }} push: false
# tags: ${{ steps.docker_meta.outputs.tags }} tags: ${{ steps.docker_meta.outputs.tags }}
# labels: ${{ steps.docker_meta.outputs.labels }} labels: ${{ steps.docker_meta.outputs.labels }}
# cache-from: type=local,src=/tmp/buildx-cache cache-from: type=local,src=/tmp/buildx-cache
# cache-to: type=local,dest=/tmp/buildx-cache cache-to: type=local,dest=/tmp/buildx-cache