Weekly status for the week of the 30th of November to the 6th of December.
Introduction
This past week has been focused on general improvements and code cleanups.
Log messages emitted by the instance drivers (LXC and Qemu) have been converted to use our contextual logging library that we use. This means that these messages are consistently labelled with the name and project of the instance, to avoid any confusion when running multiple instances of the same name in different projects.
The UsedBy
field in the API is now being filtered to remove entries that are not accessible by the user (when using RBAC). These URLs were never accessible, but now we don’t even list that they exist for users who cannot access them.
A default content type of filesystem
has been added to the /1.0/storage-pools/{name}/volumes
route so when creating custom filesystem volumes one does not need to specify the content type (now that we support block custom volumes too).
Following on from last week’s addition of the network cluster node state, the groundwork has also been laid to apply the same concept to storage pools by moving the ClientType
concept into its own package (to avoid import loops when used in the storage
package).
In some situations Qemu was trying to access NSS related files and /proc/version
which were being denied by AppArmor, so this has now been relaxed to allow access to these files.
LXC
An issue when running a container inside another container when both have LXC_NET_NONE
has been fixed.
Youtube channel
We’ve started a Youtube channel with a couple of live streams so far.
This past week @stgraber has demonstrated how to use Steam inside containers:
https://www.youtube.com/watch?v=-bukrodmT_o
You may want to give it a watch and/or subscribe for more content in the coming weeks.
https://www.youtube.com/lxd-live
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: Easy issues for new contributors
Upcoming events
- Nothing to report this week
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.
- Distrobuilder Windows support
- Virtual networks in LXD
- 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
- lxd/rbac: Filter storage UsedBy
- lxd/instance: Adds per-struct contextual logger.
- Storage: Add default content type to /1.0/storage-pools/{name}/volumes route
- lxc/file: Fix typo in fileGetWrapper
- lxd/networks: Fix bad logging level
- lxc/restore: Fix typo in help
- Lifecycle improvements
- Cluster: Moves ClientType, its constants and helper into own package
- Network: Various minor changes
- Instance: Fixes instanceType in instance logger
- lxd/apparmor/qemu: Allow some more files
LXC
LXCFS
- Nothing to report this week
Distrobuilder
- Nothing to report this week
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
- lxd: Cherry-pick upstream bugfixes
- zfs: Add support for version 2.0