A WoodpeckerCI plugin for shellsheck to lint shell files. https://hub.docker.com/r/kokuwaio/shellcheck
Find a file
Stephan Schnabel 6202461eeb
All checks were successful
ci/woodpecker/push/lint Pipeline was successful
chore: fix renovate preset location
2025-06-27 11:35:24 +02:00
.github Initial draft of plugin. 2025-06-17 20:06:21 +02:00
.woodpecker Initial draft of plugin. 2025-06-17 20:06:21 +02:00
.justfile Initial draft of plugin. 2025-06-17 20:06:21 +02:00
.markdownlint.yaml Initial draft of plugin. 2025-06-17 20:06:21 +02:00
.yamllint.yaml Initial draft of plugin. 2025-06-17 20:06:21 +02:00
Dockerfile Initial draft of plugin. 2025-06-17 20:06:21 +02:00
Dockerfile.dockerignore Initial draft of plugin. 2025-06-17 20:06:21 +02:00
entrypoint.sh Initial draft of plugin. 2025-06-17 20:06:21 +02:00
LICENSE Initial draft of plugin. 2025-06-17 20:06:21 +02:00
README.md Initial draft of plugin. 2025-06-17 20:06:21 +02:00
renovate.json chore: fix renovate preset location 2025-06-27 11:35:24 +02:00

Shellcheck WoodpeckerCI Plugin

pulls size dockerfile license prs issues

A WoodpeckerCI plugin for shellsheck to lint shell files.
Also usable with Gitlab, Github or locally, see examples for usage.

Features

  • preconfigure Shellcheck parameters
  • searches for shell files recursive
  • runnable with local docker daemon

Example

Woodpecker:

steps:
  shellcheck:
    image: kokuwaio/shellcheck
    settings:
      shell: bash
      severity: error
    when:
      event: pull_request
      path: "**/*.sh"

Gitlab:

shellcheck:
  stage: lint
  image: kokuwaio/shellcheck
  variables:
    PLUGIN_SHELL: bash
    PLUGIN_SEVERITY: error
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event"
      changes: ["**/*.sh"]

CLI:

docker run --rm --volume=$(pwd):$(pwd):ro --workdir=$(pwd) kokuwaio/shellcheck --shell=bash --severity=error

Settings

Settings Name Environment Default Description
shell PLUGIN_SHELL none Specify dialect (sh, bash, dash, ksh, busybox)
severity PLUGIN_SEVERITY style Minimum severity of errors to consider (error, warning, info, style)
include PLUGIN_INCLUDE none Consider only given types of warnings
exclude PLUGIN_EXCLUDE none Exclude types of warnings
color PLUGIN_COLOR always Use color (auto, always, never)
format PLUGIN_FORMAT tty Output format (checkstyle, diff, gcc, json, json1, quiet, tty)

Alternatives

Image Comment amd64 arm64
kokuwaio/shellcheck Woodpecker plugin size size
koalaman/shellcheck not a Woodpecker plugin, official size size
pipelinecomponents/shellcheck not a Woodpecker plugin size size