Weekly status for the week of the 29th August to the 4th September.
Introduction
The focus for the past week was on Dqlite improvements and fixes whilst we continue our roadmap work in LXD.
Additionally @stgraber concludes his LXD storage pool drivers video series by looking at the original one, the Directory driver:
https://www.youtube.com/watch?v=imWkPM9GjCY
LXD
Improvements:
- Added
instance-ready
event. - Documentation improvements.
Bug fixes:
- Fixed an issue with the AppArmor profile that prevented image unpack when
gzip
was a symlink.
Dqlite (RAFT library)
Improvements:
- Add additional async getaddrinfo step to outgoing tcp connections as a first step to allow usage of hostnames instead of static IPs.
Bug fixes:
- Uvappend 8-byte alignment so that all the raft_buffers of the raft_entry structs in the entries array have a len that is a multiple of 8, which is required.
Dqlite (database)
Improvements:
- Don’t unnecessarily realloc in loop in
buffer
.
Bug fixes:
- Expose string errors from
dqlite_node_create
. - Move endian-sensitive code to src/lib/byte.h and rename functions from that header using camel-case style.
- Rewrite to avoid triggering
-Wconversion
inlib/byte
.
Dqlite (Go bindings)
Improvements:
- Account for new
dqlite_node_create
changes.
YouTube videos
The LXD team is running a YouTube channel with live streams covering LXD releases and weekly videos on different aspects of LXD. You may want to give it a watch and/or subscribe for more content in the coming weeks.
https://www.youtube.com/lxd-videos
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 planned currently.
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.
- Stable release work for LXC, LXCFS and LXD
- [LXD] Object storage (S3 API)
- Infiniband support for VMs
- Dqlite disk-only operation mode
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
- github: Use markdownlint
- Add instance-ready event
- Doc fixes
- doc/storage/volumes: add
--all-projects
to documentation - lxd/apparmor: Deref compress commands
- doc: add related links to the start page
- Test: Adds timeout to
lxc
command calls
LXC
LXCFS
- Nothing to report this week
Distrobuilder
- Nothing to report this week
Dqlite (RAFT library)
- Add additional async getaddrinfo step to outgoing tcp connections
- Uvappend 8-byte alignment
- test/integration/append_helpers: Fix unaligned access
Dqlite (database)
- Expose string errors from dqlite_node_create
- Move endian-sensitive code to src/lib/byte.h
- lib/byte: Rewrite to avoid triggering -Wconversion
- Also ignore -Wuninitialized for tests
- lib/buffer: Sanity-check argument of buffer__advance
- buffer: Don’t unnecessarily realloc in loop.
- Revert “lib/buffer: Sanity-check argument of buffer__advance”
Dqlite (Go bindings)
LXD Charm
- 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
- Nothing to report this week