Weekly status for the weeks of the 12th August to the 18th of August.
Introduction
This past week, we continued our current effort in refactoring a bunch of our database and device code.
That effort has significantly improved readability of our code, discovered many bugs and significantly improved test coverage.
The GPU and USB device types have been migrated to the new device framework and a few bugs introduced in 3.16 have been fixed; MTU inheritance from parent bridge device, over zealous config validation preventing an existing invalid config from being fixable, and CSV output headers removed. These have been cherry picked into the stable snap.
This week also introduced the ability to store backups and container images on an LXD storage pool so that disk space available to LXD containers can now also be used for these purposes.
On the distrobuilder side work has continued on improving the support of cloud-init in our container images (and cloud variant images).
We’ve also updated our automatic testing of LXD on other distributions, bringing the total count of tested distributions up to 16 (distro/releases combo) and in line with what most of our users are running.
This week @stgraber and @brauner are in San Diego, presenting and attending the Linux Security Summit and the Open Source Summit conferences. Details below.
Upcoming events
- Linux Security Summit - San Diego
- Open Source Summit - San Diego
- Linux Plumbers Conference - Lisbon
-
Kernel Recipes - Paris
- Dates: September 25-27, 2019
- Attendees: @brauner
- Talks:
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.
- Rework of internal LXD device handling
- Rework of internal LXD storage handling
- Ubuntu Core 18 support in distrobuilder
- Cloud-init for all distrobuilder images
- 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
- Device GPU
- tests: Fix CEPH RBD leakage
- lxd: Use unix.MS_LAZYTIME
- Rename containers db tables
- lxd: Remove MS_LAZYTIME definition
- lxd/storage/lvm: Log actual error
- Server documentation fixes
- lxd/response: Show wrapped errors
- lxd/storage: Fix bad UsedBy check
- Bridged device MTU inheritance
- Add support for on-pool backups/images files
- Properly account for project when moving ceph-based containers
- Fix API inconsistency with backups
- shared: Handle symlinks in FileCopy()
- Device USB
- container/lxc: Fixes scenario where invalid device config cannot be fixed
- Storage cleanup preparation
- lxc: Don’t show header in CSV output
- doc: Add documentation metadata
- lxd: More storage cleanup preparation
- Fix 2.0 db migration
- lxc/copy: Really always strip volatile.last_state.power
- lxc: Just show help on missing subcommand
- lxd/backup: Call tar with --numeric-ids
LXC
LXCFS
- Nothing to report this week
Distrobuilder
- Add filters for various actions
- generators: Fix cloud-init
- *: Various cleanups
- shared: Fix filters
- Add .snapcraft.yaml
- *: Handle SIGINT
- Chroot fixes
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
- Nothing to report this week
Snap
- Cherry-picked some LXD fixes