Skip to content

Releases: coreos/butane

v0.21.0

07 Jun 18:57
v0.21.0
431c6a7
Compare
Choose a tag to compare

Butane 0.21.0 (2024-06-06)

Starting with this release, Butane binaries are signed with the Fedora 40
key
.

Breaking changes

Features

  • Support storage.luks.clevis (flatcar 1.2.0-exp)
  • Stabilize OpenShift spec 4.16.0, targeting Ignition spec 3.4.0
  • Add OpenShift spec 4.17.0-experimental, targeting Ignition spec
    3.5.0-experimental

v0.20.0

28 Feb 15:36
v0.20.0
9360c1f
Compare
Choose a tag to compare

Starting with this release, Butane binaries are signed with the Fedora 39
key
.

Features

  • Support s390x layouts in boot_device section (fcos 1.6.0-exp, openshift 4.15.0-exp)
  • Stabilize OpenShift spec 4.15.0, targeting Ignition spec 3.4.0
  • Add OpenShift spec 4.16.0-experimental, targeting Ignition spec
    3.5.0-experimental

Misc. changes

  • Require Go 1.20+

v0.19.0

10 Oct 18:50
v0.19.0
4996e45
Compare
Choose a tag to compare

Starting with this release, Butane binaries are signed with the Fedora 38
key
.

Breaking changes

  • Spec implementations require a FieldFilters() method (Go API)
  • Reports from Unvalidated functions can now include json paths (Go API)

Features

  • Add -c/--check option to check config without producing output
  • Warn if config attempts to reuse partition by label (fcos 1.6.0-exp,
    openshift 4.14.0)
  • Require storage.filesystems.path to start with /etc or /var if
    with_mount_unit is true (fcos 1.6.0-exp, openshift 4.14.0)
  • Stabilize OpenShift spec 4.14.0, targeting Ignition spec 3.4.0
  • Add OpenShift spec 4.15.0-experimental, targeting Ignition spec
    3.5.0-experimental

Bug fixes

  • Fix line/column reporting for http_headers errors
  • Fix line/column reporting for unsupported field errors (r4e)

Misc. changes

  • Add error structs for YAML unmarshal errors, unknown config versions (Go API)
  • Roll back to Ignition spec 3.4.0 (openshift 4.14.0)

Docs changes

  • Document consequence of setting systemd.units.mask to false
  • Document grub section (openshift 4.15.0-exp)
  • Document /dev/disk/by-id/coreos-boot-disk (fcos, openshift 4.11.0+)
  • Don't claim to support generating swap units (openshift 4.8.0 - 4.13.0)
  • Document key_file compression field (openshift 4.8.0 - 4.9.0)
  • Document support for special mode bits and arn URLs (r4e 1.1.0+)
  • Improve rendering of spec docs on docs site

v0.18.0

03 Apr 13:32
v0.18.0
b28e42e
Compare
Choose a tag to compare

Breaking changes

  • Remove deprecated rhcos variant

Features

  • Support offline Tang provisioning via pre-shared advertisement (fcos 1.5.0+,
    openshift 4.14.0-exp)
  • Support local file embedding for SSH keys and systemd units (fcos 1.5.0+,
    flatcar 1.1.0+, openshift 4.14.0-exp, r4e 1.1.0+)
  • Allow enabling discard passthrough on LUKS devices (fcos 1.5.0+,
    flatcar 1.1.0+, openshift 4.14.0-exp)
  • Allow specifying arbitrary LUKS open options (fcos 1.5.0+,
    flatcar 1.1.0+, openshift 4.14.0-exp)
  • Allow specifying user password hash (openshift 4.13.0+)
  • Stabilize Fedora CoreOS spec 1.5.0, targeting Ignition spec 3.4.0
  • Stabilize Flatcar spec 1.1.0, targeting Ignition spec 3.4.0
  • Stabilize OpenShift spec 4.13.0, targeting Ignition spec 3.2.0
  • Stabilize RHEL for Edge spec 1.1.0, targeting Ignition spec 3.4.0
  • Add Fedora CoreOS spec 1.6.0-experimental, targeting Ignition spec
    3.5.0-experimental
  • Add Flatcar spec 1.2.0-experimental, targeting Ignition spec
    3.5.0-experimental
  • Add OpenShift spec 4.14.0-experimental, targeting Ignition spec
    3.5.0-experimental
  • Add RHEL for Edge spec 1.2.0-experimental, targeting Ignition spec
    3.5.0-experimental

Bug fixes

  • Use systemd default dependencies in mount units for Tang-backed LUKS volumes
  • Allow setting storage.trees.local to the --files-dir directory

Misc. changes

  • Roll back to Ignition spec 3.2.0 (openshift 4.13.0)
  • Drop extensions section (fcos 1.5.0+, openshift 4.13.0+)
  • Drop LuksOption and RaidOption types (Go API for fcos 1.5.0+,
    flatcar 1.1.0+, openshift 4.14.0-experimental)
  • Require Go 1.18+

Docs changes

  • Document that hash fields describe decompressed data
  • Clarify spec docs for files/luks hash fields
  • Document SSH key file path used by OpenShift 4.13+ (openshift)
  • Document command to generate GRUB password hashes

v0.17.0

06 Jan 20:16
v0.17.0
4612a1c
Compare
Choose a tag to compare

Starting with this release, Butane binaries are signed with the Fedora 37 key.

Features

  • Add RHEL for Edge (r4e) spec 1.0.0 and 1.1.0-experimental, targeting
    Ignition spec 3.3.0 and 3.4.0-experimental respectively

Bug fixes

  • Fix version string in release container

v0.16.0

17 Oct 15:52
v0.16.0
0a3904d
Compare
Choose a tag to compare

Features

  • Stabilize OpenShift spec 4.12.0, targeting Ignition spec 3.2.0
  • Add OpenShift spec 4.13.0-experimental, targeting Ignition spec 3.4.0-experimental
  • Ship aarch64 macOS binary in GitHub release artifacts

Misc. changes

  • Roll back to Ignition spec 3.2.0 (openshift 4.12.0)
  • Require Go 1.17+
  • test: Check docs on macOS and Windows if dependencies are available

Docs changes

  • Document passwd.users.should_exist and passwd.groups.should_exist fields (fcos 1.2.0+, flatcar, rhcos)
  • Clarify spec docs for files/directories/links group fields
  • Document that user/group fields aren't applied to hard links

v0.15.0

05 Jul 17:39
v0.15.0
9e7d4d4
Compare
Choose a tag to compare

Starting with this release, Butane binaries are signed with the Fedora 36 key.

Breaking changes:

  • Return selected compression field value from MakeDataURL() (Go API)

Features:

  • Add Flatcar spec 1.0.0 and 1.1.0-experimental, targeting Ignition spec 3.3.0 and 3.4.0-experimental respectively
  • Stabilize OpenShift spec 4.11.0, targeting Ignition spec 3.2.0
  • Add OpenShift spec 4.12.0-experimental, targeting Ignition spec 3.4.0-experimental
  • Add arm64 support to container
  • Add GRUB password support (fcos 1.5.0-exp, openshift 4.12.0-exp)
  • Add TranslationSet AddFromCommonObject() and Map() methods (Go API)

Bug fixes:

  • Set compression field for uncompressed inline/local resources, fixing provisioning failure when merged with a compressed parent resource
  • Fix local file inclusion on Windows
  • Fix build script on Windows

Misc. changes:

  • Derive container from Fedora image to support use in multi-stage builds
  • Fail if setuid/setgid/sticky mode bits specified (openshift 4.10.0+)
  • Update to Ignition 2.14.0
  • Roll back to Ignition spec 3.2.0 (openshift 4.11.0)

Docs changes:

  • Support arn URL scheme (fcos 1.5.0-exp, openshift 4.12.0-exp)
  • Document support status of setuid/setgid/sticky mode bits in each spec
  • Document support for gs URLs (openshift 4.8.0+)
  • Document support for compression field (openshift 4.8.0 - 4.9.0)
  • Correctly document supported URL schemes (openshift 4.10.0)
  • examples: Use containerized mkpasswd
  • Convert NEWS to Markdown and move to docs site

v0.14.0

29 Jan 00:22
v0.14.0
aa78482
Compare
Choose a tag to compare

Starting with this release, Butane binaries are signed with the Fedora 35 key.

Breaking Changes:

  • Drop TranslateBytesOptions.Strict field; callers should fail on non-empty reports instead (Go API)

Features:

  • Stabilize OpenShift spec 4.10.0, targeting Ignition spec 3.2.0
  • Add OpenShift spec 4.11.0-experimental, targeting Ignition spec 3.4.0-experimental
  • Warn on incorrect partition numbers for reserved labels (fcos, openshift)
  • Require storage.files.contents.source URLs to use data scheme (openshift)
  • Re-enable automatic and manual resource compression (openshift 4.10.0+)
  • Add extensions section (fcos 1.5.0-exp, openshift 4.11.0-exp)

Bug Fixes:

  • Correctly fail on validation warnings if --strict is specified
  • Statically link official Linux binaries

Misc Changes:

  • Roll back to Ignition spec 3.2.0 (openshift 4.10.0)
  • Add deprecation warning for rhcos variant
  • Add reserved partitions to aarch64/ppc64le boot_device.mirror layouts (fcos, openshift)

Docs Changes:

  • Improve getting-started instructions for running in container
  • Document availability of gs URL scheme
  • Correctly document availability of compression fields
  • Correctly document ignition section as optional
  • Add with_mount_unit swap support to migration guide (fcos 1.4.0)
  • Document build process and contribution flow for release binaries

v0.13.1

06 Aug 21:09
v0.13.1
97c6866
Compare
Choose a tag to compare

Misc Changes:

  • Roll back to Ignition spec 3.2.0, since 3.3.0 support didn't make it into OpenShift 4.9. No 3.3.0 features were permitted in this config version, so this shouldn't break configs. (openshift 4.9.0)
  • Send --help output to stdout
  • Drop support for Go 1.13 and 1.14

Docs Changes:

  • Correctly snake-case ignition.proxy fields

v0.13.0

16 Jul 17:12
v0.13.0
17bdfc4
Compare
Choose a tag to compare

Features:

  • Stabilize Fedora CoreOS spec 1.4.0, targeting Ignition spec 3.3.0
  • Add Fedora CoreOS spec 1.5.0-experimental, targeting Ignition spec 3.4.0-experimental
  • Stabilize OpenShift spec 4.9.0, targeting Ignition spec 3.3.0
  • Add OpenShift spec 4.10.0-experimental, targeting Ignition spec 3.4.0-experimental
  • Support none filesystem format (fcos 1.4.0+)

Bug Fixes:

  • Correctly track input line/column in kernel_arguments section

Misc Changes:

  • Deprecate rhcos 0.1.0 spec in favor of openshift variant
  • Disable kernel_arguments section in favor of openshift.kernel_arguments (openshift 4.9.0+)
  • Convert ClevisCustom.Config, ClevisCustom.Pin, Link.Target, and Raid.Level Go fields to pointers (fcos 1.4.0+, openshift 4.9.0+)

Docs Changes:

  • Document default value for Clevis threshold