From 69d1b7d9cfa2c0379c0089e67d15abf9f0642b67 Mon Sep 17 00:00:00 2001 From: Markus Pesch Date: Tue, 12 Aug 2025 08:40:20 +0200 Subject: [PATCH] fix(ci): update workflows --- ...golangci-lint.yaml => golang-linters.yaml} | 6 +- .gitea/workflows/golang-tests.yaml | 22 ++++++- .gitea/workflows/markdown-linters.yaml | 10 ++-- .gitea/workflows/release.yaml | 8 +-- .golangci.yml => .golangci.yaml | 0 .goreleaser.yaml | 21 +++++++ .markdownlint.yaml | 9 +-- renovate.json | 58 +++---------------- 8 files changed, 62 insertions(+), 72 deletions(-) rename .gitea/workflows/{golangci-lint.yaml => golang-linters.yaml} (74%) rename .golangci.yml => .golangci.yaml (100%) diff --git a/.gitea/workflows/golangci-lint.yaml b/.gitea/workflows/golang-linters.yaml similarity index 74% rename from .gitea/workflows/golangci-lint.yaml rename to .gitea/workflows/golang-linters.yaml index 3748842..891f491 100644 --- a/.gitea/workflows/golangci-lint.yaml +++ b/.gitea/workflows/golang-linters.yaml @@ -1,4 +1,4 @@ -name: Golang CI lint +name: "Lint Golang files" on: pull_request: @@ -6,12 +6,14 @@ on: push: branches: [ '**' ] tags-ignore: [ '**' ] + workflow_dispatch: {} permissions: contents: read jobs: golangci: + name: "Run golang CI linter" runs-on: ${{ matrix.os }} strategy: matrix: @@ -24,4 +26,4 @@ jobs: go-version: ${{ matrix.go }} - uses: golangci/golangci-lint-action@v8.0.0 with: - version: v2.1 \ No newline at end of file + version: v2.3.0 # renovate: datasource=github-releases depName=golangci/golangci-lint diff --git a/.gitea/workflows/golang-tests.yaml b/.gitea/workflows/golang-tests.yaml index 413cc33..b731eef 100644 --- a/.gitea/workflows/golang-tests.yaml +++ b/.gitea/workflows/golang-tests.yaml @@ -1,4 +1,4 @@ -name: Golang Tests +name: "Run Golang tests" on: pull_request: @@ -6,9 +6,27 @@ on: push: branches: [ '**' ] tags-ignore: [ '**' ] + workflow_dispatch: {} jobs: - unittest: + # integration-test: + # name: "Run integration tests" + # runs-on: ${{ matrix.os }} + # strategy: + # matrix: + # go: [ stable ] + # os: [ ubuntu-latest-amd64, ubuntu-latest-arm64 ] + # steps: + # - uses: actions/checkout@v4.2.2 + # - uses: actions/setup-go@v5.5.0 + # with: + # go-version: ${{ matrix.go }} + # - env: + # GOPROXY: ${{ vars.GOPROXY }} + # run: make test/integration + + unit-test: + name: "Run unit tests" runs-on: ${{ matrix.os }} strategy: matrix: diff --git a/.gitea/workflows/markdown-linters.yaml b/.gitea/workflows/markdown-linters.yaml index b820c46..5f797b7 100644 --- a/.gitea/workflows/markdown-linters.yaml +++ b/.gitea/workflows/markdown-linters.yaml @@ -1,17 +1,17 @@ -name: Markdown linter +name: "Lint Markdown files" on: pull_request: types: [ "opened", "reopened", "synchronize" ] push: - branches: [ '**' ] - tags-ignore: [ '**' ] + branches: [ '*' ] + tags-ignore: [ '*' ] workflow_dispatch: {} jobs: markdown-lint: - runs-on: - - ubuntu-latest + name: "Run markdown linter" + runs-on: ubuntu-latest steps: - uses: actions/checkout@v4.2.2 - uses: DavidAnson/markdownlint-cli2-action@v20.0.0 diff --git a/.gitea/workflows/release.yaml b/.gitea/workflows/release.yaml index 1a270b4..fa7229c 100644 --- a/.gitea/workflows/release.yaml +++ b/.gitea/workflows/release.yaml @@ -1,4 +1,4 @@ -name: Release +name: "Release" on: push: @@ -9,8 +9,8 @@ permissions: jobs: release: - runs-on: - - ubuntu-latest + name: "Release application" + runs-on: ubuntu-latest steps: - uses: actions/checkout@v4.2.2 - uses: docker/setup-qemu-action@v3.6.0 @@ -28,7 +28,7 @@ jobs: GOPROXY: ${{ vars.GOPROXY }} uses: goreleaser/goreleaser-action@v6.3.0 with: - version: "~> v2" + version: v2.11.2 # renovate: datasource=github-releases depName=goreleaser/goreleaser args: release --clean sync-to-hub-docker-io: diff --git a/.golangci.yml b/.golangci.yaml similarity index 100% rename from .golangci.yml rename to .golangci.yaml diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 22b4853..da2a825 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -30,6 +30,7 @@ builds: - amd64 - arm - arm64 + - riscv64 goarm: - "6" - "7" @@ -139,6 +140,25 @@ dockers: skip_push: false use: buildx +- build_flag_templates: + - --label=org.opencontainers.image.created={{ time "2006-01-02T15:04:05Z07:00" }} + - --label=org.opencontainers.image.description={{ .ProjectName }} + - --label=org.opencontainers.image.documentation={{ .ProjectName }} + - --label=org.opencontainers.image.revision={{ .FullCommit }} + - --label=org.opencontainers.image.source={{ .GitURL }} + - --label=org.opencontainers.image.title={{ .ProjectName }} + - --label=org.opencontainers.image.url=https://git.cryptic.systems/volker.raschek/{{ .ProjectName }} + - --label=org.opencontainers.image.version={{ trimprefix .Tag "v" }} + - --platform=linux/riscv64 + - --pull + dockerfile: Dockerfile + goarch: riscv64 + goos: linux + image_templates: + - 'git.cryptic.systems/volker.raschek/{{ .ProjectName }}:{{ trimprefix .Tag "v" }}-riscv64' + skip_push: false + use: buildx + docker_manifests: - name_template: 'git.cryptic.systems/volker.raschek/{{ .ProjectName }}:{{ trimprefix .Tag "v" }}' image_templates: @@ -146,6 +166,7 @@ docker_manifests: - 'git.cryptic.systems/volker.raschek/{{ .ProjectName }}:{{ trimprefix .Tag "v" }}-arm-v6' - 'git.cryptic.systems/volker.raschek/{{ .ProjectName }}:{{ trimprefix .Tag "v" }}-arm-v7' - 'git.cryptic.systems/volker.raschek/{{ .ProjectName }}:{{ trimprefix .Tag "v" }}-arm64' + - 'git.cryptic.systems/volker.raschek/{{ .ProjectName }}:{{ trimprefix .Tag "v" }}-riscv64' gitea_urls: api: https://git.cryptic.systems/api/v1 diff --git a/.markdownlint.yaml b/.markdownlint.yaml index ba6e750..373588b 100644 --- a/.markdownlint.yaml +++ b/.markdownlint.yaml @@ -56,8 +56,6 @@ MD013: tables: false # Include headings headings: true - # Include headings - headers: true # Strict length checking strict: false # Stern length checking @@ -70,11 +68,6 @@ MD022: # Blank lines below heading lines_below: 1 -# MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content -MD024: - # Only check sibling headings - allow_different_nesting: true - # MD025/single-title/single-h1 - Multiple top-level headings in the same document MD025: # Heading level @@ -141,4 +134,4 @@ MD046: # MD048/code-fence-style - Code fence style MD048: # Code fence syle - style: "backtick" \ No newline at end of file + style: "backtick" diff --git a/renovate.json b/renovate.json index 633c691..26f83bd 100644 --- a/renovate.json +++ b/renovate.json @@ -1,54 +1,10 @@ { "$schema": "https://docs.renovatebot.com/renovate-schema.json", - "assigneesFromCodeOwners": true, - "labels": [ "renovate" ], - "packageRules": [ - { - "description": "Automatically update minor and patch versions of container images", - "addLabels": [ "renovate/container-images", "renovate/automerge" ], - "automerge": true, - "matchDatasources":[ "docker" ], - "matchUpdateTypes": [ "minor", "patch"] - }, - { - "description": "Prepare MR for major update of container images", - "addLabels": [ "renovate/container-images", "renovate/automerge" ], - "automerge": false, - "matchDatasources":[ "docker" ], - "matchUpdateTypes": [ "major"] - }, - { - "description": "Automatically update minor and patch versions of used drone-ci images", - "addLabels": [ "renovate/droneci", "renovate/automerge" ], - "automerge": true, - "matchManagers": "droneci", - "matchUpdateTypes": [ "minor", "patch"] - }, - { - "description": "Prepare MR for major update of used drone-ci images", - "addLabels": [ "renovate/droneci", "renovate/automerge" ], - "automerge": false, - "matchManagers": "droneci", - "matchUpdateTypes": [ "major"] - }, - { - "description": "Automatically update minor and patch versions of go modules", - "addLabels": [ "renovate/gomod", "renovate/automerge" ], - "automerge": true, - "matchManagers": [ "gomod" ], - "matchUpdateTypes": [ "minor", "patch" ] - }, - { - "description": "Prepare MR for major update of go modules", - "addLabels": [ "renovate/gomod" ], - "automerge": false, - "matchManagers": [ "gomod" ], - "matchUpdateTypes": [ "major" ] - } - ], - "postUpdateOptions": [ - "gomodTidy" - ], - "rebaseLabel": "renovate/rebase", - "rebaseWhen": "behind-base-branch" + "extends": [ + "local>volker.raschek/renovate-config:default#master", + "local>volker.raschek/renovate-config:container#master", + "local>volker.raschek/renovate-config:actions#master", + "local>volker.raschek/renovate-config:golang#master", + "local>volker.raschek/renovate-config:regexp#master" + ] }