# buildctl Plugin [![pulls](https://img.shields.io/docker/pulls/kokuwaio/buildctl)](https://hub.docker.com/repository/docker/kokuwaio/buildctl) [![size](https://img.shields.io/docker/image-size/kokuwaio/buildctl)](https://hub.docker.com/repository/docker/kokuwaio/buildctl) [![dockerfile](https://img.shields.io/badge/source-Dockerfile%20-blue)](https://git.kokuwa.io/woodpecker/buildctl/src/branch/main/Dockerfile) [![license](https://img.shields.io/badge/License-EUPL%201.2-blue)](https://git.kokuwa.io/woodpecker/buildctl/src/branch/main/LICENSE) [![issues](https://img.shields.io/gitea/issues/open/woodpecker/buildctl?gitea_url=https%3A%2F%2Fgit.kokuwa.io)](https://git.kokuwa.io/woodpecker/buildctl/issues) A [Woodpecker CI](https://woodpecker-ci.org) plugin for [buildctl](https://github.com/moby/buildkit) to build container images using a remote buildkit instance. Also usable with Gitlab, Github or locally, see examples for usage. ## Features - preconfigure buildctl parameters - runnable with local docker daemon ## Example Woodpecker: ```yaml steps: buildctl: image: kokuwaio/buildctl depends_on: [] settings: no-warnings: true format: json when: event: pull_request path: [.buildctl.yaml, "**/*.y*ml"] ``` Gitlab: ```yaml buildctl: stage: lint needs: [] image: kokuwaio/buildctl variables: PLUGIN_NO_WARNINGS: true PLUGIN_FORMAT: json rules: - if: $CI_PIPELINE_SOURCE == "merge_request_event" changes: [.buildctl.yaml, "**/*.y*ml"] ``` CLI: ```bash docker run --rm --volume=$(pwd):$(pwd):ro --workdir=$(pwd) kokuwaio/buildctl --no-warnings --format=json ``` ## Settings | Settings Name | Environment | Default | Description | | --------------| ------------------ | --------- | -------------------------------------------------------------------- | | `config-file` | PLUGIN_CONFIG_FILE | `none` | Configuration file to use, if none is configured [default](https://buildctl.readthedocs.io/en/stable/configuration.html) is used | | `strict` | PLUGIN_STRICT | `true` | Fail on warnings | | `no-warnings` | PLUGIN_NO_WARNINGS | `false` | Output only error level problems | | `format` | PLUGIN_FORMAT | `colored` | Format for parsing output: parsable, standard, colored, github, auto | ## Alternatives | Image | Comment | amd64 | arm64 | | ----------------------------------------------------------------------------------- | --------------------------------- |:-----:|:-----:| | [kokuwaio/buildctl](https://hub.docker.com/r/kokuwaio/buildctl) | Woodpecker plugin | [![size](https://img.shields.io/docker/image-size/kokuwaio/buildctl?arch=amd64&label=)](https://hub.docker.com/repository/docker/kokuwaio/buildctl) | [![size](https://img.shields.io/docker/image-size/kokuwaio/buildctl?arch=arm64&label=)](https://hub.docker.com/repository/docker/kokuwaio/buildctl) | | [pipelinecomponents/buildctl](https://hub.docker.com/r/pipelinecomponents/buildctl) | not a Woodpecker plugin | [![size](https://img.shields.io/docker/image-size/pipelinecomponents/buildctl?arch=amd64&label=)](https://hub.docker.com/repository/docker/pipelinecomponents/buildctl) | [![size](https://img.shields.io/docker/image-size/pipelinecomponents/buildctl?arch=arm64&label=)](https://hub.docker.com/repository/docker/pipelinecomponents/buildctl) | | [giantswarm/buildctl](https://hub.docker.com/r/giantswarm/buildctl) | not a Woodpecker plugin | [![size](https://img.shields.io/docker/image-size/giantswarm/buildctl?arch=amd64&label=)](https://hub.docker.com/repository/docker/giantswarm/buildctl) | [![size](https://img.shields.io/docker/image-size/giantswarm/buildctl?arch=arm64&label=)](https://hub.docker.com/repository/docker/giantswarm/buildctl) | | [cytopia/buildctl](https://hub.docker.com/r/sdesbure/buildctl) | not a Woodpecker plugin, outdated | [![size](https://img.shields.io/docker/image-size/cytopia/buildctl?arch=amd64&label=)](https://hub.docker.com/repository/docker/cytopia/buildctl) | [![size](https://img.shields.io/docker/image-size/cytopia/buildctl?arch=arm64&label=)](https://hub.docker.com/repository/docker/cytopia/buildctl) | | [sdesbure/buildctl](https://hub.docker.com/r/sdesbure/buildctl) | not a Woodpecker plugin, outdated | [![size](https://img.shields.io/docker/image-size/sdesbure/buildctl?arch=amd64&label=)](https://hub.docker.com/repository/docker/sdesbure/buildctl) | [![size](https://img.shields.io/docker/image-size/sdesbure/buildctl?arch=arm64&label=)](https://hub.docker.com/repository/docker/sdesbure/buildctl) |