Weekly status for the weeks of the 05th August to the 11th of August.
Introduction
The primary focus for the last week was getting the LXD 3.16 release ready.
This includes the rework of Infiniband device support to our new devices framework. This is part of the ongoing process to migrate all of our device handling code into a common framework so that the different device type implementations are isolated from each other to make the code cleaner and less bug prone. It will also make it easier to add other types of devices in the future.
We have also added support for using shiftfs
with custom storage volumes, meaning you can now run multiple containers in isolated UID/GID mode and still share a common host directory with them because LXD will shift the different container’s UID/GIDs back to the host’s equivalent.
Other LXD improvements this week include updating bash completion so that it works with more options, and standardising the tabular output format of the lxc
CLI.
On the distrobuilder side, as well as several bug fixes, there was a performance improvement added to group consecutive package installs together with a single command call rather than install each package individually. However it still honours package install order.
Initial support for cloud
variants of the various images we publish has also landed, those images will start showing up over the next few days and all feature cloud-init
support.
Over time more images will become available with cloud-init built-in and we may eventually transition our default images to those cloud-init enabled ones (added size is the main downside).
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 Infiniband
- Device post stop hook
- test: Fixes proxy device unix tests on Ubuntu Eoan
- device/proxy: Removes unnecessary CanHotPlug function
- device/proxy: Implements default listen file mode of 0644
- Rework all tables in client
- Update bash completion
- Update CanonicaLtd repos to canonical org
- Add shifting of custom storage volume
- device/nic/sriov: Fixes mac_filtering when no hwaddr specified
- lxd/storage/zfs: Properly wrap mount error
- Various fixes ahead of LXD 3.16
- Add infiniband char device info to resources API
- lxc/file: Intercept user cancelation
- lxd: Check RemoveAll() error properly
- Various storage cleanups
LXC
- Nothing to report this week
LXCFS
- Nothing to report this week
Distrobuilder
- generators: Disable cloud-init for LXC in upstart
- distrobuilder: Add variants for packages and files
- distrobuilder: Optimize package handling
- sources: Fix Ubuntu variant check
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 liblxc fixes
- Updated a number of references to old Github URLs
- Updated to LXD 3.16
- Cherry-picked some LXD fixes