Manage go in pipelines.
  • Lua 81.1%
  • Shell 13.7%
  • Dockerfile 4.9%
  • Go 0.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
renovate-bot 28d2b8c857
All checks were successful
ci/woodpecker/push/change_log Pipeline was successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/cron/renovate Pipeline was successful
ci/woodpecker/tag/release Pipeline was successful
ci/woodpecker/cron/auto_merge Pipeline was successful
ci/woodpecker/cron/release Pipeline was successful
maint: Update code.thinkaboutit.tech/pandora/wolfi-base:latest Docker digest to fbcaceb #12
Merged automatically
2026-10-03 03:04:41 +00:00
lua feat: Plugin implementation (#1) 2026-09-27 20:17:57 +00:00
test feat: Plugin implementation (#1) 2026-09-27 20:17:57 +00:00
.gitignore feat: Plugin implementation (#1) 2026-09-27 20:17:57 +00:00
.markdownlint.json feat: Plugin implementation (#1) 2026-09-27 20:17:57 +00:00
.prettierrc feat: Plugin implementation (#1) 2026-09-27 20:17:57 +00:00
Containerfile maint: Update code.thinkaboutit.tech/pandora/wolfi-base:latest Docker digest to fbcaceb #12 2026-10-03 03:04:41 +00:00
LICENSE feat: Plugin implementation (#1) 2026-09-27 20:17:57 +00:00
README.md feat: Plugin implementation (#1) 2026-09-27 20:17:57 +00:00
renovate.json feat: Plugin implementation (#1) 2026-09-27 20:17:57 +00:00

Container to manager Go in CI pipelines

This Woodpecker CI plugin manages all Go functions in the pipeline. This can be called with different modes:

  • prepare: Install the tools and setup environment variables.
  • lint: Same than prepare, plus execute golangci-lint
  • release: Same than prepare, plus execute gorelease

Plugin prepares the environment in .ci_env directory. It also creates an envvar file which can be used by later steps to use Go.

Usage

This can be used at any event, but the most make sense with push and ci events.

steps:
  - name: Prepare Go
    image: code.thinkaboutit.tech/pandora/go-ci.woodpecker:lates
    settings:
      mode: prepare
      go: 1.26
steps:
  - name: Perform linting
    image: code.thinkaboutit.tech/pandora/go-ci.woodpecker:lates
    settings:
      mode: lint
      go: 1.26
steps:
  - name: Perform linting
    image: code.thinkaboutit.tech/pandora/go-ci.woodpecker:lates
    settings:
      mode: release
      go: 1.26
      release: true
      publish: false

Settings

Base settings

Name Default value Description
mode THis can be: prepare, lint or release
go Go version, like 1.26

Lint settings

Name Default value Description
context root directory File or directory wants to be scanned

Release settings

Name Default value Description
context root directory File or directory wants to be scanned
release false In case of true, it upload the project
publish false Upload the release result as release asset
gitea_token In case of release this is required