diff --git a/CHANGES.md b/CHANGES.md index a5ce1162..bd8ca81d 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,11 +1,22 @@ -# coreos-baremetal bootcfg +# matchbox + +Notable changes between releases. ## Latest +Rename `bootcfg` to CoreOS `matchbox`! + * Add Profile `args` field to list kernel args +* Update [Fuze](https://github.com/coreos/container-linux-config-transpiler) and [Ignition](https://github.com/coreos/ignition) to v0.11.2 +* Rename `bootcfg` binary to `matchbox` +* Rename `bootcfg` packages to `matchbox` +* Publish a `quay.io/coreos/matchbox` container image. The `quay.io/coreos/bootcfg` image will no longer be updated. +* Rename environment variable prefix from `BOOTCFG*` to `MATCHBOX*` +* Change config directory to `/etc/matchbox` +* Change default `-data-path` to `/var/lib/matchbox` +* Change default `-assets-path` to `/var/lib/matchbox/assets` * Deprecate Profile `cmd` field map of kernel args * Deprecate Pixiecore support -* Update Fuze and Ignition to v0.11.2 #### Examples @@ -13,6 +24,16 @@ * Upgrade Kubernetes v1.5.1 (self-hosted) example cluster * Combine rktnetes Ignition into Kubernetes static cluster +#### Migration + +* binary users should install the `matchbox` binary (see [installation](Documentation/deployment.md)) +* rkt/docker users should start using `quay.io/coreos/matchbox` (see [installation](Documentation/deployment.md)) +* RPM users should uninstall bootcfg and install matchbox (see [installation](Documentation/deployment.md)) +* Move `/etc/bootcfg` configs and certificates to `/etc/matchbox` +* Move `/var/lib/bootcfg` data to `/var/lib/matchbox` +* See the new [contrib/systemd](contrib/systemd) service examples +* Remove the old `bootcfg` user if you created one + ## v0.4.2 (2016-12-7) #### Improvements diff --git a/contrib/k8s/bootcfg-deployment.yaml b/contrib/k8s/matchbox-deployment.yaml similarity index 65% rename from contrib/k8s/bootcfg-deployment.yaml rename to contrib/k8s/matchbox-deployment.yaml index 4b650248..2bc5abde 100644 --- a/contrib/k8s/bootcfg-deployment.yaml +++ b/contrib/k8s/matchbox-deployment.yaml @@ -1,7 +1,7 @@ apiVersion: extensions/v1beta1 kind: Deployment metadata: - name: bootcfg + name: matchbox namespace: default spec: replicas: 1 @@ -11,15 +11,15 @@ spec: template: metadata: labels: - name: bootcfg + name: matchbox phase: prod spec: containers: - - name: bootcfg - image: quay.io/coreos/bootcfg:v0.4.2 + - name: matchbox + image: quay.io/coreos/matchbox:v0.5.0 env: - - {name: BOOTCFG_ADDRESS, value: "0.0.0.0:8080"} - - {name: BOOTCFG_LOG_LEVEL, value: "debug"} + - {name: MATCHBOX_ADDRESS, value: "0.0.0.0:8080"} + - {name: MATCHBOX_LOG_LEVEL, value: "debug"} ports: # port exposed on pod IP - containerPort: 8080 @@ -29,17 +29,17 @@ spec: memory: "50Mi" volumeMounts: - name: groups - mountPath: /var/lib/bootcfg/groups + mountPath: /var/lib/matchbox/groups - name: profiles - mountPath: /var/lib/bootcfg/profiles + mountPath: /var/lib/matchbox/profiles - name: ignition - mountPath: /var/lib/bootcfg/ignition + mountPath: /var/lib/matchbox/ignition - name: cloud - mountPath: /var/lib/bootcfg/cloud + mountPath: /var/lib/matchbox/cloud - name: generic - mountPath: /var/lib/bootcfg/generic + mountPath: /var/lib/matchbox/generic - name: assets - mountPath: /var/lib/bootcfg/assets + mountPath: /var/lib/matchbox/assets dnsPolicy: ClusterFirst restartPolicy: Always terminationGracePeriodSeconds: 30 diff --git a/contrib/k8s/bootcfg-service.yaml b/contrib/k8s/matchbox-service.yaml similarity index 87% rename from contrib/k8s/bootcfg-service.yaml rename to contrib/k8s/matchbox-service.yaml index fe0778c5..763b3278 100644 --- a/contrib/k8s/bootcfg-service.yaml +++ b/contrib/k8s/matchbox-service.yaml @@ -1,11 +1,11 @@ apiVersion: v1 kind: Service metadata: - name: bootcfg + name: matchbox spec: type: NodePort selector: - name: bootcfg + name: matchbox phase: prod ports: - protocol: TCP diff --git a/contrib/systemd/bootcfg-for-tectonic.service b/contrib/systemd/bootcfg-for-tectonic.service index b7f987ce..818baf85 100644 --- a/contrib/systemd/bootcfg-for-tectonic.service +++ b/contrib/systemd/bootcfg-for-tectonic.service @@ -1,23 +1,23 @@ [Unit] -Description=CoreOS bootcfg Server +Description=CoreOS matchbox Server Documentation=https://github.com/coreos/coreos-baremetal [Service] -Environment="IMAGE=quay.io/coreos/bootcfg" -Environment="VERSION=v0.4.2" -Environment="BOOTCFG_ADDRESS=0.0.0.0:8080" -Environment="BOOTCFG_RPC_ADDRESS=0.0.0.0:8081" -Environment="BOOTCFG_LOG_LEVEL=debug" -ExecStartPre=/usr/bin/mkdir -p /etc/bootcfg -ExecStartPre=/usr/bin/mkdir -p /var/lib/bootcfg/assets +Environment="IMAGE=quay.io/coreos/matchbox" +Environment="VERSION=v0.5.0" +Environment="MATCHBOX_ADDRESS=0.0.0.0:8080" +Environment="MATCHBOX_RPC_ADDRESS=0.0.0.0:8081" +Environment="MATCHBOX_LOG_LEVEL=debug" +ExecStartPre=/usr/bin/mkdir -p /etc/matchbox +ExecStartPre=/usr/bin/mkdir -p /var/lib/matchbox/assets ExecStart=/usr/bin/rkt run \ --net=host \ --inherit-env \ --trust-keys-from-https \ - --mount volume=data,target=/var/lib/bootcfg \ - --mount volume=config,target=/etc/bootcfg \ - --volume data,kind=host,source=/var/lib/bootcfg \ - --volume config,kind=host,source=/etc/bootcfg \ + --mount volume=data,target=/var/lib/matchbox \ + --mount volume=config,target=/etc/matchbox \ + --volume data,kind=host,source=/var/lib/matchbox \ + --volume config,kind=host,source=/etc/matchbox \ ${IMAGE}:${VERSION} [Install] diff --git a/contrib/systemd/bootcfg-local.service b/contrib/systemd/bootcfg-local.service index 08b65ddb..ac73219f 100644 --- a/contrib/systemd/bootcfg-local.service +++ b/contrib/systemd/bootcfg-local.service @@ -1,12 +1,12 @@ [Unit] -Description=CoreOS bootcfg Server +Description=CoreOS matchbox Server Documentation=https://github.com/coreos/coreos-baremetal [Service] -User=bootcfg -Group=bootcfg -Environment="BOOTCFG_ADDRESS=0.0.0.0:8080" -ExecStart=/usr/local/bin/bootcfg +User=matchbox +Group=matchbox +Environment="MATCHBOX_ADDRESS=0.0.0.0:8080" +ExecStart=/usr/local/bin/matchbox # systemd.exec ProtectHome=yes diff --git a/contrib/systemd/bootcfg-on-coreos.service b/contrib/systemd/bootcfg-on-coreos.service index dee7713c..74c5eac2 100644 --- a/contrib/systemd/bootcfg-on-coreos.service +++ b/contrib/systemd/bootcfg-on-coreos.service @@ -1,21 +1,21 @@ [Unit] -Description=CoreOS bootcfg Server +Description=CoreOS matchbox Server Documentation=https://github.com/coreos/coreos-baremetal [Service] -Environment="IMAGE=quay.io/coreos/bootcfg" -Environment="VERSION=v0.4.2" -Environment="BOOTCFG_ADDRESS=0.0.0.0:8080" -ExecStartPre=/usr/bin/mkdir -p /etc/bootcfg -ExecStartPre=/usr/bin/mkdir -p /var/lib/bootcfg/assets +Environment="IMAGE=quay.io/coreos/matchbox" +Environment="VERSION=v0.5.0" +Environment="MATCHBOX_ADDRESS=0.0.0.0:8080" +ExecStartPre=/usr/bin/mkdir -p /etc/matchbox +ExecStartPre=/usr/bin/mkdir -p /var/lib/matchbox/assets ExecStart=/usr/bin/rkt run \ --net=host \ --inherit-env \ --trust-keys-from-https \ - --mount volume=data,target=/var/lib/bootcfg \ - --mount volume=config,target=/etc/bootcfg \ - --volume data,kind=host,source=/var/lib/bootcfg \ - --volume config,kind=host,source=/etc/bootcfg \ + --mount volume=data,target=/var/lib/matchbox \ + --mount volume=config,target=/etc/matchbox \ + --volume data,kind=host,source=/var/lib/matchbox \ + --volume config,kind=host,source=/etc/matchbox \ ${IMAGE}:${VERSION} [Install] diff --git a/contrib/systemd/bootcfg.service b/contrib/systemd/bootcfg.service index 3234b188..e25f5bc6 100644 --- a/contrib/systemd/bootcfg.service +++ b/contrib/systemd/bootcfg.service @@ -1,12 +1,12 @@ [Unit] -Description=CoreOS bootcfg Server +Description=CoreOS matchbox Server Documentation=https://github.com/coreos/coreos-baremetal [Service] -User=bootcfg -Group=bootcfg -Environment="BOOTCFG_ADDRESS=0.0.0.0:8080" -ExecStart=/usr/bin/bootcfg +User=matchbox +Group=matchbox +Environment="MATCHBOX_ADDRESS=0.0.0.0:8080" +ExecStart=/usr/bin/matchbox # systemd.exec ProtectHome=yes diff --git a/scripts/devnet b/scripts/devnet index f0f11041..a62486ea 100755 --- a/scripts/devnet +++ b/scripts/devnet @@ -10,7 +10,7 @@ EXAMPLE=${2:-} BRIDGE=metal0 COREOS_CHANNEL=stable COREOS_VERSION=1185.3.0 -BOOTCFG_ARGS="" +MATCHBOX_ARGS="" if [ "$EUID" -ne 0 ] then echo "Please run as root" @@ -62,7 +62,7 @@ function create { if [ -z "$EXAMPLE" ]; then # Mount a data volume with assets and enable gRPC - BOOTCFG_ARGS="-rpc-address=0.0.0.0:8081" + MATCHBOX_ARGS="-rpc-address=0.0.0.0:8081" DATA_MOUNT="--volume data,kind=host,source=$(mktemp -d) \ --mount volume=assets,target=/var/lib/matchbox/assets \ --volume assets,kind=host,source=$PWD/examples/assets,readOnly=true" @@ -81,7 +81,7 @@ function create { --volume config,kind=host,source=$PWD/examples/etc/matchbox,readOnly=true \ --mount volume=data,target=/var/lib/matchbox \ $DATA_MOUNT \ - quay.io/coreos/matchbox:latest -- -address=0.0.0.0:8080 -log-level=debug $BOOTCFG_ARGS + quay.io/coreos/matchbox:latest -- -address=0.0.0.0:8080 -log-level=debug $MATCHBOX_ARGS echo "Starting dnsmasq to provide DHCP/TFTP/DNS services" systemd-run --unit=dev-dnsmasq \