Initial draft of plugin.
All checks were successful
ci/woodpecker/push/dockerhub Pipeline was successful
ci/woodpecker/push/lint Pipeline was successful
ci/woodpecker/push/build Pipeline was successful
ci/woodpecker/push/test/1 Pipeline was successful
ci/woodpecker/push/test/2 Pipeline was successful

This commit is contained in:
Stephan Schnabel 2025-06-14 13:48:07 +02:00
parent 0a8cf88f53
commit b8c4a9c224
Signed by: stephan.schnabel
SSH key fingerprint: SHA256:99zuzxNGFb5/5P+E/O7ONU2qhUojUe/D8rIPTW+9Xp0
16 changed files with 720 additions and 0 deletions

56
.woodpecker/build.yaml Normal file
View file

@ -0,0 +1,56 @@
when:
instance: ci.kokuwa.io
repo: woodpecker/shellcheck
event: [manual, push, pull_request]
branch: main
path: [.woodpecker/build.yaml, Dockerfile, Dockerfile.dockerignore, entrypoint.sh]
steps:
build:
image: kokuwaio/buildctl
settings: &settings
name: registry.kokuwa.io/kokuwaio/shellcheck:ci-${CI_PIPELINE_NUMBER}
auth:
registry.kokuwa.io:
username: {from_secret: kokuwa_io_username}
password: {from_secret: kokuwa_io_password}
platform: [linux/amd64, linux/arm64]
annotation:
org.opencontainers.image.title: Shellcheck WoodpeckerCI Plugin
org.opencontainers.image.description: A WoodpeckerCI plugin for shellcheck to lint shell files.
org.opencontainers.image.url: $CI_REPO_URL
org.opencontainers.image.documentation: $CI_REPO_URL/README.md
org.opencontainers.image.source: $CI_REPO_CLONE_URL
org.opencontainers.image.revision: $CI_COMMIT_SHA
org.opencontainers.image.vendor: kokuwa.io
org.opencontainers.image.licenses: EUPL-1.2
org.opencontainers.image.ref.name: kokuwaio/shellcheck
org.opencontainers.image.version: v0.10.0
when:
event: pull_request
push:
image: kokuwaio/buildctl
settings:
<<: *settings
name:
- registry.kokuwa.io/kokuwaio/shellcheck:latest
- registry.kokuwa.io/kokuwaio/shellcheck:v0.10.0
- docker.io/kokuwaio/shellcheck:latest
- docker.io/kokuwaio/shellcheck:v0.10.0
- ghcr.io/kokuwaio/shellcheck:latest
- ghcr.io/kokuwaio/shellcheck:v0.10.0
auth:
"https://index.docker.io/v1/":
username: {from_secret: docker_io_username}
password: {from_secret: docker_io_password}
ghcr.io:
username: {from_secret: ghcr_io_username}
password: {from_secret: ghcr_io_password}
registry.kokuwa.io:
username: {from_secret: kokuwa_io_username}
password: {from_secret: kokuwa_io_password}
when:
event: [manual, push]
branch: main

View file

@ -0,0 +1,17 @@
when:
instance: ci.kokuwa.io
repo: woodpecker/shellcheck
event: [manual, push]
branch: main
path: [.woodpecker/dockerhub.yaml, README.md]
steps:
metadata:
image: kokuwaio/dockerhub-metadata
settings:
repository: kokuwaio/shellcheck
description-short: A WoodpeckerCI plugin for shellcheck to lint shell files.
categories: [developer-tools, integration-and-delivery]
username: {from_secret: dockerhub_username}
password: {from_secret: dockerhub_password}

31
.woodpecker/lint.yaml Normal file
View file

@ -0,0 +1,31 @@
when:
event: [manual, push, pull_request]
branch: main
path: [.woodpecker/lint.yaml, renovate.json, "**/*.yaml", "**/*.md", "**/*.sh", "**/Dockerfile"]
steps:
renovate:
image: kokuwaio/renovate-config-validator
depends_on: []
when: [path: [.woodpecker/lint.yaml, renovate.json]]
yaml:
image: kokuwaio/yamllint
depends_on: []
when: [path: [.woodpecker/lint.yaml, .yamllint.yaml, "**/*.yaml"]]
markdown:
image: kokuwaio/markdownlint
depends_on: []
when: [path: [.woodpecker/lint.yaml, .markdownlint.yaml, "**/*.md"]]
dockerfile:
image: kokuwaio/hadolint
depends_on: []
when: [path: [.woodpecker/lint.yaml, "**/Dockerfile"]]
shellcheck:
image: kokuwaio/shellcheck
depends_on: []
when: [path: [.woodpecker/lint.yaml, "**/*.sh"]]

34
.woodpecker/test.yaml Normal file
View file

@ -0,0 +1,34 @@
when:
instance: ci.kokuwa.io
repo: woodpecker/shellcheck
event: [manual, push, pull_request]
branch: main
path: [.woodpecker/build.yaml, Dockerfile, Dockerfile.dockerignore, entrypoint.sh]
depends_on: [build]
matrix:
PLATFORM: [amd64, arm64]
labels:
platform: linux/${PLATFORM}
steps:
pr:
image: registry.kokuwa.io/kokuwaio/shellcheck:ci-${CI_PIPELINE_NUMBER}
when:
event: pull_request
kokuwa.io: &version
image: registry.kokuwa.io/kokuwaio/shellcheck
pull: true
when:
event: [manual, push]
branch: main
docker.io:
image: docker.io/kokuwaio/shellcheck
<<: *version
ghcr.io:
image: ghcr.io/kokuwaio/shellcheck
<<: *version