This repository has been archived by the owner on Dec 7, 2023. It is now read-only.
v0.6.0
Welcome to the v0.6.0
release, consisting of major underlying improvements, and a more efficient runtime.
This release consists of 25 noteworthy PRs from 4 contributors; although v0.5.0 was released just two weeks ago!
We had 5 contributions from 2 external contributors, thanks 🎉!
The main themes of this release has been:
- containerd is now used as the default container runtime for higher security and speed, and less resource usage
- This means that Ignite doesn't depend on
docker
anymore!
- This means that Ignite doesn't depend on
- CNI is now the default networking plugin; by default the
bridge
andportmap
plugins are used- You can still use your third-party CNI implementation of choice, see the networking doc
- GitOps Toolkit refactor is complete; now everything you need to create your Git-backed application is available at https://github.com/weaveworks/gitops-toolkit
- Ignite is using this toolkit internally to perform its GitOps capabilities, now you can easily use this functionality, too!
- Bugfixes and usability improvements all around the place
Also, our documentation is now available at https://ignite.readthedocs.org.
Check that site out whenever you need some information, or open an issue :)
Deprecations
- As per v0.5.0, the
v1alpha2
API version is the default. Going forward, thev1alpha1
API version is deprecated, and will be removed in a future release.
New Features
- Make containerd the default runtime and CNI the default network plugin (#371, @twelho)
- Implement the containerd runtime for Ignite (#337, @twelho)
- Add a default CNI
bridge
andportmap
network for Ignite (#370, @twelho) - Implement hostPort support with CNI (#375, @luxas)
- Add openSUSE images (#357, @aojea)
Enhancements
- Implement cleanup of CNI networks using the default bridge (#376, @luxas)
- containerd backend improvements (#368, @twelho)
- Implement runtime selection, only load necessary providers (#366, @twelho)
- Split packages so we can extract
gitops-toolkit
(#347, @luxas) - Switch to using
weaveworks/gitops-toolkit
(#359, @luxas) - Switch imports to utilize
gitops-toolkit
(#354, @luxas) - Simplify the CNI code by vendoring
github.com/containerd/go-cni
(#349, @luxas) - FileWatcher: Support internal moves without re-creating and multiple active moves at once (#341, @twelho)
- Fix GOHOSTARCH propagation, tag development image for the host architecture only (#340, @twelho)
- Fix ignite-spawn's formatting when performing cleanup on VM metadata (#336, @twelho)
- Automatically optimize the size of an imported image (#335, @twelho)
- Add shell autocompletion for
ignited
(#363, @silenceshell)
Bug Fixes
- Add
err
as a param forlog.Errorf
(#367, @silenceshell) - Fix an issue in the GitDirectory loop when trying to commit without any actual changes (#369, @silenceshell)
- GitOps: only change the VM state if it differs from the current one (#374, @twelho)
- Move VM network removal to logically correct place (#373, @twelho)
- Fix Docker client port mappings by actually exposing them after binding (#350, @twelho)
Documentation
- Update the docs for v0.6.0 (#378, @luxas)
- Docs: Bump latest Ignite version to v0.5.1 (#362, @silenceshell)
- Change Read the Docs links to point to the stable branch in main README (#338, @twelho)
Trying it out / Next Steps!
NOTE: Stop your VMs before performing the upgrade, as the underlying container runtime has changed!
In short:
export VERSION=v0.6.0
export ARCH=$([ $(uname -m) = "x86_64" ] && echo amd64 || echo arm64)
for binary in ignite ignited; do
echo "Installing ${binary}..."
curl -sfLo ${binary} https://github.com/weaveworks/ignite/releases/download/${VERSION}/${binary}-${ARCH}
chmod +x ${binary}
sudo mv ${binary} /usr/local/bin
done
# Install the CNI plugins if you don't already have them
export CNI_VERSION=v0.8.2
curl -sSL https://github.com/containernetworking/plugins/releases/download/${CNI_VERSION}/cni-plugins-linux-${ARCH}-${CNI_VERSION}.tgz | tar -xz -C /opt/cni/bin
A more throughout installation guide is available here: https://ignite.readthedocs.io/en/latest/installation.html