Releases: concourse/oci-build-task
v0.11.1
What's Changed
- Bump buidkit to 0.11.0 to fix an error when building multi-arch image by @evanchaoli in #109
New Contributors
- @evanchaoli made their first contribution in #109
Full Changelog: v0.11.0...v0.11.1
v0.11.0
What's Changed
- Add support for building OCI multi-arch images by @rdrgmnzs in #93
- Add support for passing secrets as text by @charles-dyfis-net in #88
- Bump buildkit to v0.10.4 by @dackroyd in #91 and @charles-dyfis-net in #102
Full Changelog: v0.10.0...v0.11.0
v0.10.0
v0.9.1
- Fixes a bug with
IMAGE_ARG_*
where if the arg was uppercase the build would fail with an error. Image args can now be all or partially uppercase
v0.9.0
- Add
image_platform
which allows users to build images for platforms that don't match the current platform
v0.8.0
Bumps buildkit
v0.7.0
this release adds support for using pre-fetched images in FROM ...
! this pattern allows you to version and fetch your base image with Concourse and pass it along to the oci-build
task to use directly rather than querying the registry and fetching it at build time (possibly resolving to a different version than the build triggered with).
in your oci-build
task config, configure a IMAGE_ARG_*
param and corresponding input:
inputs:
- name: golang
params:
IMAGE_ARG_base_image: golang/image.tar
in your Dockerfile
, change the FROM
so that it can be passed as a build arg:
ARG base_image=golang
FROM ${base_image}
in your pipeline, add a resource and a get
step for fetching the image:
resources:
- name: golang
type: registry-image
source: {repository: golang}
jobs:
- name: build
plan:
- get: golang
params: {format: oci}
- task: build
# ...
this feature resolves quite a few issues:
- #1 - the primary feature request, calling for something analogous to
load_base[s]
from thedocker-image
resource. - #2 - configurable CA certs for image fetching in
FROM
- please fetch the image using a resource which handles CA certs instead
- we still need to add CA cert support to the
registry-image
resource: concourse/registry-image-resource#240
- #3 & #14 - insecure & authenticated registries in
FROM
- you guessed it, just fetch it using a resource instead
how does this work?
it's kinda neat! the oci-build-task
just runs a teeny tiny Docker registry on localhost
that serves the OCI/docker image tarballs configured as image args, and then it passes addresses like localhost:45431/base_image
as build args to the Dockerfile
.
side note: if we ever do decide to switch to Kaniko (#46), the pattern will be the same; see concourse/docker-image-resource#190 (comment)
v0.6.0
- @tomjw64 added support for labels (#42) - thanks!
- configure as
LABEL_*
andLABELS_FILE
, same as build args
- configure as
- support building additional targets, i.e. to run tests (fixes #52)
- configure as
ADDITIONAL_TARGETS: target1,target2
- if
outputs:
are also configured with names matching the targets, the target's image will be saved to the output in same way as theimage
output
- configure as
v0.5.0
- use
/scratch
rather than/tmp
sobuildkitd
can use theoverlayfs
snapshotter - support for
$REGISTRY_MIRRORS
(comma-separated list) - pass
--debug
to buildkitd if debug is set - bump buildkit to v0.8.0
- bump rootlesskit to v0.11.1
- bump go-containerregistry to v0.3.0