Announcement
https://discuss.linuxcontainers.org/t/lxd-5-14-has-been-released/17259
What's Changed
- Doc: update metrics documentation by @ru-fu in #11567
- Device: Add support for live VM cluster member move for
ovn
NICs by @tomponline in #11573 - Small tweaks around regexp usage by @simondeziel in #11559
- Device: Start non-nested OVN NICs before nested OVN NICs by @tomponline in #11575
- Comment fixes by @tomponline in #11579
- doc: Fix OVN peers doc incorrectly listing a ports option by @stgraber in #11580
- Instance: Forcefully stop SFTP forkfile processs when forcefully stopping container by @tomponline in #11582
- Device: Fix device sorting of nested NICs by @tomponline in #11581
- lxd/apparmor: fix AppArmor forkdnsProfile by @Viktor-Yakovchuk in #11572
- Added fix to detect EOF error on queries and retry with plain text by @jeffreyxie0615 in #11583
- AppArmor profile for rsync by @Viktor-Yakovchuk in #11510
- Instance: Only add profiles the instance is using to backup config by @tomponline in #11585
- instance: no timeout on the operationlock for creating an instance by @gabrielmougard in #11588
- API: Storage bucket fixes by @tomponline in #11587
- Automated cluster healing by @monstermunchkin in #11584
- Add Total fields to InstanceStateDisk and InstanceStateMemory by @stgraber in #11589
- instance: stop API races while creating/deleting snapshots by @gabrielmougard in #11586
- lxd/apparmor/rsync: Fix transferring instances including snaps by @stgraber in #11590
- Network: Skip
bridge
ovn/dhcp range overlap check when DHCP is off by @markylaing in #11591 - Instance: Fixes deadlock when deleting a VM that has snapshots by @tomponline in #11593
- Instance: Disable vhost accelerator for veth based NICs in QEMU >= 7.2 by @tomponline in #11594
- lxd/apparmor/rsync: Fix snap use inside of containers by @stgraber in #11595
- doc/network: clarify the difference between default and initial value by @ru-fu in #11598
- instance/logs: Add qemu.conf to log list by @stgraber in #11602
- Snapshots: Fixes expired snapshot pruning regression by @tomponline in #11601
- Various doc updates for 5.13 by @ru-fu in #11604
- doc/storage/buckets: add info on configuring the S3 address by @ru-fu in #11614
- lxc/export: Rename backup file based on compression type by @ChrisSmith2 in #11613
- scripts: add missing oidc.* keys to bash completion by @monstermunchkin in #11608
- lxd: Use protobuf helpers to avoid panics with invalid client responses by @tomponline in #11615
- Instance: Fix exec losing command output on highly loaded systems by @tomponline in #11606
- Update return type of GetStoragePoolVolumeNamesAllProjects. by @markylaing in #11612
- doc/storage: clarify that "attach" is an alias for "device add" by @ru-fu in #11622
- doc/devices/nic: add link to video and missing info about macvlan by @ru-fu in #11624
- Generated marshaling/unmarshaling of non-native database types by @markylaing in #11619
- Storage: Disable safety checks when shrinking a ext4 filesystem volumes created from an image by @tomponline in #11621
- Instance: Remove automatic timeout concept from operation locks by @tomponline in #11620
- tests: Clean storage pools in scriplet tests by @stgraber in #11629
- oidc: Use email scope/claim by @monstermunchkin in #11628
- Add support for browser OIDC login by @stgraber in #11627
- oidc: Always set OIDC headers if needed in case of an error by @monstermunchkin in #11634
- lxc/action: Add freeze as alias to pause by @stgraber in #11633
- SECURITY: Add GPG keys by @stgraber in #11632
- lxd/db: remove the old snapshot records in the storage_volumes table by @gabrielmougard in #11623
- lxd/cgroup: Better matching of devID and io stats by @gabrielmougard in #11630
- lxc/storage_volume: Set target before getting storage volume by @monstermunchkin in #11605
- Add
--reuse
flag forpublish
command by @presztak in #11610 - Fix declaration order for text fields to be unmarshaled by @markylaing in #11637
- lxd/storage/backend/lxd/patches: Fix storage_delete_old_snapshot_records so it runs on older sqlite versions by @tomponline in #11638
- oidc: Return and handle Unauthorized error by @monstermunchkin in #11640
- lxd/cgroup: use
cg.GetProcessesUsage
instead ofcg.GetTotalProcesses
and fix error values inconsistency by @gabrielmougard in #11641 - Instance: Fix VM /dev/lxd connections from lxd-agent to LXD on host when nesting by @tomponline in #11644
- lxc/config: Don't crash on nil map by @stgraber in #11647
- cluster: Disable cluster group creation by anyone authenticated by @monstermunchkin in #11648
- Instance: Fix incorrect vm vsock listener certificate for lxd-agent /dev/lxd when setting up a cluster by @tomponline in #11649
- lxd/nic/p2p: Disable accept_ra on host by @stgraber in #11651
- lxd/api: Redirect /ui to /ui/ by @stgraber in #11654
- lxc/config_device: Don't panic on nil device map. by @markylaing in #11656
- Pass state instead of daemon if possible by @monstermunchkin in #11653
- doc/images: add new
--reuse
flag for publishing images by @ru-fu in #11667 - Storage: Fix ZFS block volume shrink regression by @tomponline in #11663
- Reduce calls to d.State() and use state if possible by @monstermunchkin in #11661
- lxd/certificates: Allow non-admin users to delete only their certificates by @monstermunchkin in #11668
- OIDC fixes by @monstermunchkin in #11660
- doc/bridge/resolved: clarify use of "~" by @ru-fu in #11680
- doc/instance options: clarify CPU limits by @ru-fu in #11677
- doc: clarify TSIG key name generation for network zones by @yushijinhun in #11678
- Daemon: Start tertiary listeners (storage buckets and metrics) after managed network are initialised by @tomponline in #11676
- lxd/network_zones: Use
zone
for consistency by @monstermunchkin in #11681 - doc/storage: add
lxc storage info
command by @ru-fu in #11683 - Subprocess: Respect LXD_SECURITY_APPARMOR env var by @tomponline in #11679
- Network: Add support for sticky DHCPv4 dynamic allocations for
ovn
NICs by @tomponline in #11686 - doc/getting started: add information about how to access the web UI by @ru-fu in #11673
- Websocket: Continues move to shared/ws package by @tomponline in #11689
- lxc/storage: Rework cmdStorageInfo.Run() to be more resilient to used by resource URLs by @tomponline in #11690
- Doc: clean up FAQ by @ru-fu in #11684
- storage: Use consistent route variable names by @monstermunchkin in #11688
- lxd: Improve errors for image record creation by @tomponline in #11692
- lxc/export: Fix export rename when run inside snap by @tomponline in #11693
- lxc: Fix project edit help text by @tomponline in #11694
- Websocket: Continue switch to shared/ws package by @tomponline in #11695
- Storage: Prevent moving volumes to projects that dont have features.storage.volumes enabled by @tomponline in #11696
- Logging: Fix contextual logging in storage subsystem and simplify adding context to global logger by @tomponline in #11703
- Cluster: Don't create a cluster heal operation every minute (and cause unnecessary logs) by @tomponline in #11705
- Storage: Fix cluster and remote pool support for custom volume snapshot expiry by @tomponline in #11701
- VM: Trigger on stop device cleanup on QEMU crash by @tomponline in #11700
- Doc: Updates bridge docker firewall fixes to include easier forwarding option by @tomponline in #11699
- Storage: Fix VM filesystem volumes incorrectly being created as ZVOLs when zfs.block_mode enabled by @tomponline in #11720
- Use
shared.IsTrueOrEmpty
where appropriate by @simondeziel in #11719 - Instance: Reject import if conflicting DB records found by @tomponline in #11718
- Network: Simplify bridge ipv{n}.routing logic by @tomponline in #11717
- VM: Enable vhost-net acceleration for TAP based NIC devices by @tomponline in #11715
- VM: Don't run onStop hook when QMP disconnects during start failure by @tomponline in #11714
- Instance: Deleted expired snapshots before creating new scheduled snapshots by @tomponline in #11708
- Cluster: Fix member rename in clusterNodePost by @tomponline in #11710
- Instance: Cluster healing fixes to support projects and starting instances after evacuation by @tomponline in #11709
- doc/cluster: clarify
lxc cluster group assign
command by @ru-fu in #11723 - doc/network/bridge: clarify options for using LXD with Docker by @ru-fu in #11722
- Instance: Improve VM forced stop in scenarios where QEMU isn't stopping by @tomponline in #11725
- Document how to enable manual testing of zone DNS. by @baldvin-kovacs in #11724
- Storage: Adds support for specifying the LVM thinpool size when reusing an existing PV or VG by @tomponline in #11727
New Contributors
- @jeffreyxie0615 made their first contribution in #11583
- @ChrisSmith2 made their first contribution in #11613
- @yushijinhun made their first contribution in #11678
- @baldvin-kovacs made their first contribution in #11724
Full Changelog: lxd-5.13...lxd-5.14