Weekly status #140


Weekly status for the week of the 16th March to the 22nd of March.

Introduction

The past week saw the release of LXD 3.23, so many of the changes in this week’s report are included in that release. Please see the release notes for more details.

On the LXD storage front several bugs have been fixed. The ceph driver saw two improvements, firstly VM volumes can now be resized, secondly, when shrinking ceph volumes we no longer unmap the block device, which was preventing shrinking from working. An issue preventing removal of nodes from a cluster when using ceph volumes has also been fixed.

A bug preventing the lvm driver from correctly reporting VM volume snapshots has been fixed, and a crash when unpacking some VM images has also been fixed.

The btrfs driver no longer activates BTRFS quota system on the volume if no quota has been specified. A bug has been fixed that allowed circumvention of the BTRFS quota when using snapshots has also been fixed.

A recent database table structure change has caused some users issues with creating snapshots. This was related to the sequence number table used for generating volume IDs. A patch has been added to increase the sequence number to avoid any conflicts with existing snapshots.

We have changed how one can remove a snapshot expiry time in the API. The expiry can now be removed by simply not providing the expires_at field. Previously, one had to explicitly set zero time to disable it.

We have added a feature to allow password-less PKI authentication when communicating between the lxc tool and lxd. This allows certificates generated from the same certificate authority to be trusted using the shared CA certificate rather than needing passwords.

Also in the API, a small change was made to the way the the Etag header value was returned. It is now quoted to increase compatibility with different HTTP clients. We accept both quoted and unquoted values.

On the LXC front we have been focusing on closing outstanding issues, code hardening and fixing bugs ready for the LXC 4.0 release soon.

In addition to that, several busybox template improvements have been added.

On the LXCFS front, a new release to the 4.0 series was released addressing several bugs that were in the 4.0 release, please see the release notes for more details.

Finally, on the distrobuilder front, an issue with OpenSUSE image verification has been fixed due to an upstream change.

Contribute to LXD

Ever wanted to contribute to LXD but not sure where to start?
We’ve recently gone through some effort to properly tag issues suitable for new contributors on Github: https://github.com/lxc/lxd/labels/Easy

You can also find a slightly longer, more detailed list here: Contributing to LXD

Ongoing projects

The list below is feature or refactoring work which will span several weeks/months and can’t be tied directly to a single Github issue or pull request.

  • Virtual machine support
  • Distrobuilder virtual machine support
  • Storage database cleanup/rework
  • Various kernel work
  • Stable release work for LXC, LXCFS and LXD

Upstream changes

The items listed below are highlights of the work which happened upstream over the past week and which will be included in the next release.

LXD

LXC

LXCFS

Distrobuilder

Distribution work

This section is used to track the work done in downstream Linux distributions to ship the latest LXC, LXD and LXCFS as well as work to get various software to work properly inside containers.

Ubuntu

  • lxd-agent-loader has been included in the Ubuntu 20.04 archive

Snap

  • lxd: Cherry-picked some bugfixes
  • lxcfs: Cherry-picked some bugfixes
  • lxcfs: Updated to 4.0.1
  • lxd: Updated to 3.23
  • lxcfs: Cherry-picked more bugfixes