Announcement
- Announcement: https://discourse.ubuntu.com/t/lxd-6-7-has-been-released/77656
- Release notes: https://documentation.ubuntu.com/lxd/latest/reference/release-notes/release-notes-6.7/
What's Changed
- tests: Wait for raft roles to update by @kadinsayani in #17049
- github: add PR template checklist by @minaelee in #17052
- doc: Fix grammar in rest-api.md by @kadinsayani in #17060
- doc: update commit structure for contributions by @minaelee in #17056
- devlxd: Allow creating volume from snapshot by @MusicDin in #17058
- Disallow sending a TLS certificate when updating an OIDC or Bearer identity by @markylaing in #17054
- events package refactoring and race condition fix by @kadinsayani in #16999
- Commit structure improvements by @kadinsayani in #17061
- lxd: Move instance post request parsing up by @kadinsayani in #16973
- doc/lxd-test: Install nano for dev comfort by @MusicDin in #17065
- Make
LXD_VM_TESTS=1the new default by @simondeziel in #17057 - doc: Add 6/stable channel to snap install command for 6.6 release notes by @tomponline in #17069
- cgroup package refactorings by @kadinsayani in #16997
- Use
sudowhen invokingapt-getto install packages by @simondeziel in #17071 - Remove some unused functions by @simondeziel in #17009
- Cluster: Fix clearing a member when using remote storage by @roosterfish in #17047
- build(deps): bump github.com/openfga/openfga from 1.11.0 to 1.11.1 by @dependabot[bot] in #17038
- storage: Correctly parse Pure Storage gateway URL by @MusicDin in #17075
- lxd/cluster/config: actually set a default expiry on remote token by @simondeziel in #17081
- fix: use uint64 for interface statistics counters by @troyanov in #17010
- storage: Do not call host updated in Alletra as it is not supported by @MusicDin in #17082
- 24.04 runners followup by @simondeziel in #17088
- lxd: Require all cluster member to process forced project delete notifications by @kadinsayani in #17091
- Cache rework by @simondeziel in #17090
- devlxd: Ensure security.devlxd flag is checked /1.0 endpoint by @MusicDin in #17078
- Makefile: Replace pin for tags.cncf.io/container-device-interface@v0.8.1 with github.com/opencontainers/runtime-spec@v1.2.1 by @tomponline in #17100
- test: Run VM tests in standalone mode by @tomponline in #17102
- Fix inefficiency in instance deleteCommon() by @kadinsayani in #17092
- Notify all cluster members to update node schema and/or handle forced project deletion by @kadinsayani in #17104
- lxd/cluster/gateway: Use dqlite WithBusyTimeout by @tomponline in #17099
- test/suites: Reduce awk usage and creation of subdirectories by @markylaing in #17077
- Revert "github: reintroduce CLA check in commits job" by @simondeziel in #17051
- build(deps): bump actions/setup-python from 6.0.0 to 6.1.0 by @dependabot[bot] in #17121
- build(deps): bump github/codeql-action from 4.31.5 to 4.31.6 by @dependabot[bot] in #17120
- build(deps): bump github.com/go-acme/lego/v4 from 4.28.1 to 4.29.0 by @dependabot[bot] in #17118
- doc: Update Keycloak howto to handle client secrets. by @escabo in #17083
- lxd-agent: Make event processing synchronous by @MusicDin in #17123
- Add dqlite developer documentation and improve dqlite related code comments by @kadinsayani in #17105
- doc: Ignore linkcheck for kubernetes.io host by @MusicDin in #17128
- client: Call mkdir instead of file stat by @markylaing in #17131
- doc: requirements/configuration tooling updates by @minaelee in #17106
- doc: Add that QEMU is required for VMs by @markylaing in #17124
- lxc/auth: Add a newline on bearer identity creation message by @markylaing in #17134
- Don't build any Go binaries during
system-testsby @simondeziel in #17137 - lxd: Fix in-memory config corruption on update failure by @kwonkwonn in #17122
- Use
microovninstead of OVS deb by @simondeziel in #17141 - Tweak syslog test by @simondeziel in #17140
- Storage: Fix returning last error in
TryMountby @roosterfish in #17142 - lxd/storage/drivers/zfs_volumes: Rework zvol resolution logic (from Incus) by @simondeziel in #17095
- lxd/instance/drivers: Ignore expected ErrInUse by @kadinsayani in #17143
- Move some Go checks to lint scripts by @simondeziel in #17154
- doc: remove edit button from manpages by @minaelee in #17153
- OIDC test fixes by @simondeziel in #17150
- Fix test ordering issues with basic tests by @simondeziel in #17149
- Improve cleanup of
lxd-usertests to allow repeated runs by @simondeziel in #17148 - Reliability and consistency improvements to
tls_restrictionstest by @simondeziel in #17147 - Minor tweaks to
filemaniptest by @simondeziel in #17146 - Minor tweak and fixes to projects tests by @simondeziel in #17145
- Minor tweaks to
storage_driver_zfstest by @simondeziel in #17144 - doc: merge docs makefiles by @minaelee in #17157
- doc: baseurl and sitemap improvements by @minaelee in #17158
- Use the snap cache in snap tests by @simondeziel in #17156
- Minor test tweaks by @simondeziel in #17152
- test/suites/kernel_limits: simplify test by @simondeziel in #17151
- Test: Cleanup all daemons in clustering tests by @roosterfish in #17161
- Storage: Fix ZFS zvol activation race when mounting a temporary XFS snapshot for export by @tomponline in #17162
- test/suites/storage_driver_zfs: fix
/dev/zfspermissions ifudevdidn't do it by @simondeziel in #17163 - doc: use Go 1.25 by @simondeziel in #17164
- Storage: Scan block devices directly when mounting Btrfs pool by @roosterfish in #17160
- lxd/network/acl: Don't get instance usage within project ACL loop by @markylaing in #17165
- Makefile: don't build
lxd-metadatawhen buildingallby @simondeziel in #17155 - Storage: Drop CephFS
volatile.pool.pristineconfig key by @roosterfish in #17168 - Storage:
zfs.clone_copy=rebasemode fixes by @tomponline in #17135 - Test: Fix and clarify clustering storage cleanup by @roosterfish in #17169
- Minor improvements to
lxd-benchmarkby @simondeziel in #17172 - Rebalance when there are too many voters or standby nodes and clean up nodeRefreshTask() (from Incus) by @kadinsayani in #17171
- build(deps): bump github.com/spf13/cobra from 1.10.1 to 1.10.2 by @dependabot[bot] in #17195
- build(deps): bump github.com/zitadel/oidc/v3 from 3.45.0 to 3.45.1 by @dependabot[bot] in #17197
- build(deps): bump github.com/openfga/openfga from 1.11.1 to 1.11.2 by @dependabot[bot] in #17192
- build(deps): bump actions/checkout from 6.0.0 to 6.0.1 by @dependabot[bot] in #17183
- build(deps): bump golangci/golangci-lint-action from 9.1.0 to 9.2.0 by @dependabot[bot] in #17181
- build(deps): bump github/codeql-action from 4.31.6 to 4.31.7 by @dependabot[bot] in #17184
- build(deps): bump actions/setup-node from 6.0.0 to 6.1.0 by @dependabot[bot] in #17182
- Re-instate check for native bridge info check by @simondeziel in #17199
- test/main: ignore QEMU core dumps for now by @simondeziel in #17200
- doc: ignore internal API links in linkcheck by @minaelee in #17205
- Assume
rsyncto be recent enough (Ubuntu 20.04+) by @simondeziel in #17204 - lxd/firewall/drivers/nftables: remove minmum version check by @simondeziel in #17203
- Assume
dnsmasqto be recent enough (Ubuntu 20.04+) by @simondeziel in #17202 - Optimize cluster role lookups by @kadinsayani in #17201
- Optimize volatile.attached_volumes storage and lookups for multi-volume snapshot tracking by @kadinsayani in #17127
- Storage: Use single invocation of
blkidingetDiskPathFromFSUUIDby @tomponline in #17208 - Assume kernel 5.3.0+ (Ubuntu 20.04+ and 18.04 with HWE) by @simondeziel in #17209
- Storage: De-dupe filesystem detection functions by @tomponline in #17207
- Misc: Fix error strings by @roosterfish in #17214
- Use correct context during migration by @kadinsayani in #17215
- Assume Apparmor 2.13+ to be available (Ubuntu 20.04+) by @simondeziel in #17219
- lxd/instance/drivers/qemu: assume QEMU 6.0+ to be available (Ubuntu 22.04+) by @simondeziel in #17211
- docs: Add CSI volume snapshot documentation by @MusicDin in #17085
- lxd: Rebalance when standbys exceed cluster.max_standby by @kadinsayani in #17221
- Cluster membership improvements and Assign() refactorings by @kadinsayani in #17228
- Update Go modules and pin
container-device-interface/specs-go@v1.0.0by @simondeziel in #17225 - doc: re-add pin to canonical-sphinx-extensions version by @minaelee in #17227
- Dependabot tweaks by @simondeziel in #17226
- Storage: Adds safety check before ZFS volume restoration by @tugbataluy in #17136
- lxc: Add a
--target-projectflag toinit,launch, andrebuildby @markylaing in #17138 - lxd: Validate OIDC issuer configuration during update by @kwonkwonn in #17098
- lxd/network/acl: Propagate context to ACL package by @markylaing in #16968
- build(deps): bump actions/cache from 4.2.4 to 4.3.0 in /.github/actions/download-snaps by @dependabot[bot] in #17236
- build(deps): bump actions/cache from 4.2.4 to 4.3.0 in /.github/actions/download-minio by @dependabot[bot] in #17234
- build(deps): bump actions/cache from 4.2.4 to 4.3.0 in /.github/actions/download-images by @dependabot[bot] in #17233
- build(deps): bump actions/cache from 4.2.4 to 4.3.0 in /.github/actions/cache-dqlite-liblxc by @dependabot[bot] in #17232
- Storage: Always allow recovery of existing pool by @roosterfish in #16286
- Backend: Unmount pool right after probing for its existence by @roosterfish in #17240
- Feature : Alias show - Alias edit by @tugbataluy in #16895
- Nvidia CDI: Update symlink creation inside LXD container by @nmezhenskyi in #17222
- make: Drop tag for golangci-lint by @roosterfish in #17242
- Rename lxd-migrate to lxd-convert by @tugbataluy in #17176
- doc/lxd-test: don't wait on apt phasing by @simondeziel in #17246
- doc: fix raw.idmap instance option doc by @minaelee in #17245
- Storage: Remove
ceph.osd.force_reuseconfig key by @roosterfish in #17212 - Nvidia CDI: Follow-up to update symlink creation inside LXD container by @nmezhenskyi in #17244
- Inital pass to drop translations by @simondeziel in #17241
- Doc vale updates by @minaelee in #17173
- doc: [WD-31419] Add Local Peering Documentation (Networks) by @Kxiru in #17217
- lxd/apparmor: Allow all mounts in unprivileged containers (from Incus) by @simondeziel in #17223
- Improvements to
network_ovntest by @simondeziel in #17251 - github: CI improvements and fixes by @simondeziel in #17252
- Remove more
i18n.G()by @simondeziel in #17250 - lxd/operations: Return a copy of the metadata to avoid concurrent access (from Incus) by @kadinsayani in #17249
- doc: migrate off canonical-sphinx-extensions by @minaelee in #17261
- doc/howto/instances_troubleshoot: update link to systemd debugging by @simondeziel in #17254
- test/includes: Fix project argument for volume operation. by @markylaing in #17255
- Fix server-side instance migration (from Incus) by @kadinsayani in #16862
- Derive a context for use in operations by @markylaing in #17016
- test/suites/shutdown: rework operation handling by @simondeziel in #17258
- Operation context follow up by @markylaing in #17263
- Storage: Move LVM
sourceexistence check into pool creation by @roosterfish in #17267 - docs: avoid permanent redirects by @simondeziel in #17270
- lxd/seccomp/seccomp: mknod: continue syscall for whiteouts by @mihalicyn in #17271
- test/suites/alias: improve
jqusage and micro-optimisations by @simondeziel in #17273 - Rename database role to database-voter and improve cluster role validation by @kadinsayani in #17259
- doc: update terminal extension version and usage by @minaelee in #17274
- lxd/device/tpm: Make incompatible with live-migration (from Incus) by @tomponline in #17277
- Restore operation delete API behaviour in agent by @markylaing in #17276
- lxd: Don't error if default profile is not found on feature change. by @markylaing in #17278
- Reworked system-tests matrix by @simondeziel in #17072
- Recover: Proactively ask for pool creation instead by @roosterfish in #17266
- Storage volume/instance snapshot edit restriction by @tugbataluy in #17070
- Doc: Storage recovery examples by @roosterfish in #17279
- build(deps): bump google.golang.org/protobuf from 1.36.10 to 1.36.11 by @dependabot[bot] in #17291
- build(deps): bump actions/cache from 4.3.0 to 5.0.1 by @dependabot[bot] in #17306
- build(deps): bump github.com/miekg/dns from 1.1.68 to 1.1.69 by @dependabot[bot] in #17290
- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by @dependabot[bot] in #17305
- build(deps): bump tags.cncf.io/container-device-interface from 1.0.1 to 1.1.0 by @dependabot[bot] in #17293
- build(deps): bump actions/upload-artifact from 5.0.0 to 6.0.0 by @dependabot[bot] in #17304
- build(deps): bump redhat-plumbers-in-action/differential-shellcheck from 5.5.5 to 5.5.6 by @dependabot[bot] in #17299
- doc: hard-code youtube link titles by @minaelee in #17284
- Ensure
pkitest is run by @simondeziel in #17323 - Use
%qformat where appropriate by @simondeziel in #17286 - Remove more
i18nby @simondeziel in #17283 - lxc/auth: remove
i18nby @simondeziel in #17285 - Reworked system-tests matrix follow up by @simondeziel in #17282
- Tests speedup by @simondeziel in #17322
- build(deps): bump actions/cache from 4.3.0 to 5.0.1 in /.github/actions/download-minio by @dependabot[bot] in #17312
- build(deps): bump actions/cache from 4.3.0 to 5.0.1 in /.github/actions/download-images by @dependabot[bot] in #17310
- build(deps): bump actions/cache from 4.3.0 to 5.0.1 in /.github/actions/download-snaps by @dependabot[bot] in #17314
- build(deps): bump actions/cache from 4.3.0 to 5.0.1 in /.github/actions/cache-dqlite-liblxc by @dependabot[bot] in #17308
- Recovery: Extend help text and provide more context by @roosterfish in #17280
- build(deps): bump github.com/go-acme/lego/v4 from 4.29.0 to 4.30.1 by @dependabot[bot] in #17324
- build(deps): bump github/codeql-action from 4.31.7 to 4.31.9 by @dependabot[bot] in #17329
- Simplify cluster formation in tests by @simondeziel in #17287
- build(deps): bump github.com/NVIDIA/nvidia-container-toolkit from 1.18.0 to 1.18.1 by @dependabot[bot] in #17188
- Fix container live migration check for backwards compatibility by @kadinsayani in #17332
- Fix ZFS origin snapshot not always removed recursively by @tugbataluy in #17262
- lxd: Remove support for virtfs-proxy-helper by @tomponline in #17335
- doc: remove use of diataxis/topical tags by @minaelee in #17337
- doc: replace custom contributor listing code with sphinx extension by @minaelee in #17338
- test/main: minor fixes by @simondeziel in #17340
- test/deps/import-busybox: reproducible output by @simondeziel in #17339
- test/suites/container_local_cross_pool_handling: simplify test by @simondeziel in #17341
- Reorganize system-tests matrix by @simondeziel in #17342
- lxc/config: only call
os.Getenv(LXD_GLOBAL_CONF)once by @simondeziel in #17348 - lxd/instance/drivers: Minor fixes by @kadinsayani in #17350
- lxc/cluster: Add failure-domain subcommand for managing cluster member failure domains by @gajeshbhat in #17334
- lxd: Remove default project from cluster join token operations by @IrvingMg in #17289
- Use
strings.Cutmore widely by @simondeziel in #17353 - Remove more
i18nby @simondeziel in #17330 - github: use
latest/betaforsnapdby @simondeziel in #17354 - Makefile: Explicitly enable CGO which is required for compiling fuidshift by @tomponline in #17355
- github: reintroduce the
backends: allforcluster_storageandsnapgroups by @simondeziel in #17349 - Remove more
i18nby @simondeziel in #17357 - Improvements to
container_local_cross_pool_handlingby @simondeziel in #17358 - build(deps): bump golang.org/x/sys from 0.39.0 to 0.40.0 by @dependabot[bot] in #17365
- build(deps): bump github.com/mattn/go-sqlite3 from 1.14.32 to 1.14.33 by @dependabot[bot] in #17366
- github: Remove references of internalization files by @kadinsayani in #17368
- Fix lint errors after golangci-lint update by @tugbataluy in #17345
- Config trust add validate projects and restricted flag by @tugbataluy in #17351
- Auth: Remove authorization details from identity cache by @markylaing in #17370
- Refactor rebalanceMemberRoles and rename Rebalance by @kadinsayani in #17377
- Clustering test improvements by @simondeziel in #17372
- Auth: Add identity ID to requestor by @markylaing in #17381
- Add Reference field to Operation struct by @kadinsayani in #17376
- test/main: generate average of
LXD_REPEAT_TESTSruns by @simondeziel in #17387 - github: remove dynamic suffix in Snap tests by @simondeziel in #17384
- doc: spice-gtk-client package should be spice-client-gtk by @niledas in #17388
- test/includes/snap: Use snap lvm.external=true for lvm thin pools by @tomponline in #17390
- doc: pin myst-parser version by @minaelee in #17391
- lxc/image: Make project flag behavior consistent for image copy command by @nmezhenskyi in #17356
- Small fixes for test infrastructure by @simondeziel in #17393
- Prevent concurrent evacuations to prevent races by @kadinsayani in #17371
- Testing overview by @simondeziel in #17392
- Reduce HasConnectivity calls by @kadinsayani in #17386
- lxd/operations: Fix error handling by @kadinsayani in #17397
- test/suites/database: Improvements by @simondeziel in #17400
- test/suites/storage_driver_zfs: Improvements by @simondeziel in #17399
- doc: update tooling to use canonical-sphinx by @minaelee in #17389
- Instance: Copy and refresh de-dupes and cleanups by @tomponline in #17396
- test/main: stop ignoring QEMU core dumps by @simondeziel in #17404
- test/suites: use shorter
sleepby @simondeziel in #17405 - test/suites/incremental_copy: Tweaks by @simondeziel in #17406
- test/suites/projects: Improvements by @simondeziel in #17403
- lxd/network/zone: Propagate context by @markylaing in #16993
- doc: Fix typo in access UI section by @MusicDin in #17407
- Fix snapshot config volume edit by @tugbataluy in #17402
- build(deps): bump golang.org/x/term from 0.38.0 to 0.39.0 by @dependabot[bot] in #17413
- build(deps): bump github.com/minio/minio-go/v7 from 7.0.97 to 7.0.98 by @dependabot[bot] in #17414
- build(deps): bump golang.org/x/text from 0.32.0 to 0.33.0 by @dependabot[bot] in #17416
- Small tweaks by @tomponline in #17420
- build(deps): bump github.com/miekg/dns from 1.1.69 to 1.1.70 by @dependabot[bot] in #17410
- README: stop referring to IRC by @simondeziel in #17423
- go: Update zitadel dep by @MusicDin in #17422
- lxd/instance/drivers/lxc: ignore clean exit from SFTP process by @simondeziel in #17430
- Revert fix for preventing concurrent evacuations by @skozina in #17435
- lxc: Fix overriding volatile keys on copy by @tomponline in #17434
- Small code deduplication by @simondeziel in #17431
- test/suites/backup: Improvements by @simondeziel in #17428
- shared: Add context parameter to RunCommand by @markylaing in #17395
- Restrict entity names to ASCII characters by @Copilot in #17433
- Validate
source.snapshotused when attaching volume snapshots by @kadinsayani in #17432 - doc: remove all mentions of IRC by @minaelee in #17440
- Image test improvements by @simondeziel in #17439
- Minor test tweaks by @simondeziel in #17427
- Additional unit tests by @simondeziel in #17438
- doc: remove unneeded note by @minaelee in #17441
- MicroCeph tooling usable for local dev VMs by @simondeziel in #17436
- tests: VM live migration by @MusicDin in #17374
- Minor backup test improvements by @simondeziel in #17444
- Update
TryRunCommandto accept a context by @markylaing in #17408 - test/suites: Simplify storage backend lookups by @simondeziel in #17445
- test: VM live migration using local storage drivers by @MusicDin in #17447
- Make volume snapshot disk devices read-only by @kadinsayani in #17429
- Reword error messages by @kadinsayani in #17460
- Config test improvements by @simondeziel in #17457
- Use single quotes for readability in error assertions by @kadinsayani in #17455
- Makefile: don't run unit tests in verbose mode by @simondeziel in #17448
- API: Allow starting instance on copy by @roosterfish in #17443
- Storage test improvements by @simondeziel in #17451
- Snapshot test improvements by @simondeziel in #17452
- github: run some test groups against the
fastsmeta-backend by @simondeziel in #17449 - github: add ceph and ovn setup to ui test preparation by @edlerd in #17465
- Remove
lxc config profileby @simondeziel in #17456 - Faster live migration test by @simondeziel in #17458
- Few fixes for operations by @skozina in #17467
- test/suites/migration: Speed improvements by @simondeziel in #17459
- Cluster test improvements by @simondeziel in #17453
- test: VM live migration between two LXD servers by @MusicDin in #17450
- Revert "test/main: stop ignoring QEMU core dumps" by @simondeziel in #17476
- doc: fix pymarkdownlnt exclude path issue by @minaelee in #17509
- build(deps): bump golang.org/x/crypto from 0.46.0 to 0.47.0 by @dependabot[bot] in #17482
testimagetweaks by @simondeziel in #17508- Bump Go min and update some modules by @simondeziel in #17512
- build(deps): bump actions/cache from 5.0.1 to 5.0.2 in /.github/actions/download-snaps by @dependabot[bot] in #17504
- Send heartbeats regularly rather than randomly by @skozina in #17468
- build(deps): bump actions/cache from 5.0.1 to 5.0.2 by @dependabot[bot] in #17494
- build(deps): bump actions/cache from 5.0.1 to 5.0.2 in /.github/actions/download-images by @dependabot[bot] in #17501
- build(deps): bump actions/cache from 5.0.1 to 5.0.2 in /.github/actions/cache-dqlite-liblxc by @dependabot[bot] in #17500
- build(deps): bump actions/setup-go from 6.1.0 to 6.2.0 by @dependabot[bot] in #17499
- build(deps): bump actions/checkout from 6.0.1 to 6.0.2 by @dependabot[bot] in #17498
- build(deps): bump actions/setup-node from 6.1.0 to 6.2.0 by @dependabot[bot] in #17492
- build(deps): bump actions/cache from 5.0.1 to 5.0.2 in /.github/actions/download-minio by @dependabot[bot] in #17502
- Live migration tests tweaks by @simondeziel in #17513
- lxd/api_cluster: treat
forceflag asboolby @simondeziel in #17510 - This PR fixes a syntax highlighting issue in the autogenerated command reference documentation. by @SaiRajeshRamaraju in #17477
- doc: pin versions of all dependencies by @minaelee in #17511
- test/lint/licenses: properly preserve
go-licensesreturn code by @simondeziel in #17519 - Assorted test tweaks by @simondeziel in #17514
- lxd/storage/backend_lxd: remove
virt-v2v-in-placeversion check by @simondeziel in #17525 - test/main: ignore
unattended-upgradescore dumps (LP: #2139433) by @simondeziel in #17524 - github:
actions/setup-microcephfallback to using a loop device if no ephemeral disk is found by @simondeziel in #17521 - doc: align RTD build hooks with starter pack by @minaelee in #17529
- Remove
i18nby @simondeziel in #17520 - Use
lxc_remote execto avoid side effect of--implying--force-localby @simondeziel in #17470 - Add support for server-side instance force delete by @kadinsayani in #17473
- build(deps): bump tiobe/tics-github-action from 3.7.0 to 3.7.1 by @dependabot[bot] in #17537
- build(deps): bump actions/setup-python from 6.1.0 to 6.2.0 by @dependabot[bot] in #17536
- Remove support for encrypted
client.keyPEM by @simondeziel in #17472 - Container: Prevent shell expansion in liblxc hook arguments by @tomponline in #17478
- Work around CPC metadata duplicate architecture issue by @tomponline in #17551
- Go coverage data by @simondeziel in #17515
- Bump Go version and update modules by @simondeziel in #17543
- doc: misc starter pack alignment by @minaelee in #17530
- lxd: Use background context when reverting network creation by @markylaing in #17531
- test/includes/ovn: only run
ovn-nbctl destroyif the ID is not empty by @simondeziel in #17548 - lxd: Mark images as cached consistently by @nmezhenskyi in #16686
- Add
proandmicrocloudfeatures flags by @simondeziel in #17474 - build(deps): bump github.com/NVIDIA/nvidia-container-toolkit from 1.18.1 to 1.18.2 by @dependabot[bot] in #17533
- github: always use loop devices for
actions/setup-microcephby @simondeziel in #17545 - Container: Restrict path of template files and targets by @tomponline in #17550
- Do kernel version lookup during init by @simondeziel in #17528
- Improve CLI argument handling by @simondeziel in #17542
- Dedup logic for ceph CLI version lookups by @simondeziel in #17526
- Test improvements by @kadinsayani in #17469
- scripts/check-and-commit: Fix git commit flags by @kadinsayani in #17556
- lxd/ubuntupro/client_test: slightly improve code coverage by @simondeziel in #17555
- Client: Preserve source image properties and filename for the copied image by @nmezhenskyi in #17546
- lxd/ubuntupro/client_test: use
t.Context()by @simondeziel in #17557 - Avoid permission problems when running
make static-analysisby @simondeziel in #17559 - doc/reference/placement_groups: update link by @simondeziel in #17562
- Make instance stop async on DELETE /1.0/instances when force=1 by @kadinsayani in #17544
- test/main: bump pool size by @simondeziel in #17564
- Simplify QEMU version handling by @simondeziel in #17527
- lxd: Set placement group name variable on instance creation. by @markylaing in #17561
- cgroup: Suppress net_prio warning on cgroup v2 systems by @Copilot in #17558
- Operation metadata type by @markylaing in #17567
- test/main: bump the pool size to be just enough for (official) 2 VMs by @simondeziel in #17571
- lxd/operations: Use constant-time comparison for secrets by @mseralessandri in #17569
- test: Record pool driver used for spawn_lxd when LXD_BACKEND=random for container_recover by @tomponline in #17570
- doc: fix cloud-init links by @minaelee in #17576
- Client: Fix waiting for operations during copy by @roosterfish in #17540
- Pro refinements by @simondeziel in #17574
- Set placement group name and check volatile.cluster.group behavior by @kadinsayani in #17573
- doc: simplify first steps tutorial to be more straight forward by @edlerd in #17375
- Test: Add checks for instance start after copy by @roosterfish in #17466
- lxd: Add
entity_namemetadata to operations where the name might be generated server side by @markylaing in #17563 - github: bump the size (5G->10G) of each OSD in
actions/setup-microcephby @simondeziel in #17578 - doc/howto/access_ui: the LXD UI is now always enabled (if available) by @simondeziel in #17579
- github: stop snap'ed LXD service for coverage runs by @simondeziel in #17585
- Check licenses on
update-gomodinstead of duringstatic-analysisby @simondeziel in #17584 - Add CDI mode support for AMD GPUs by @dmitry-lyfar in #17343
- Follow the link redirections by @simondeziel in #17582
- doc: move resources out from .sphinx by @minaelee in #17583
- Require
liblxc5.0.0 or newer by @simondeziel in #17565 - Preparation for durable ops schema by @skozina in #17589
- Storage: Remove Ceph specific instance copy handling by @roosterfish in #17347
- build(deps): bump actions/cache from 5.0.2 to 5.0.3 by @dependabot[bot] in #17593
- build(deps): bump golang.org/x/oauth2 from 0.34.0 to 0.35.0 by @dependabot[bot] in #17590
- build(deps): bump actions/cache from 5.0.2 to 5.0.3 in /.github/actions/download-snaps by @dependabot[bot] in #17601
- build(deps): bump actions/cache from 5.0.2 to 5.0.3 in /.github/actions/cache-dqlite-liblxc by @dependabot[bot] in #17595
- build(deps): bump actions/cache from 5.0.2 to 5.0.3 in /.github/actions/download-minio by @dependabot[bot] in #17599
- build(deps): bump actions/cache from 5.0.2 to 5.0.3 in /.github/actions/download-images by @dependabot[bot] in #17597
- lxd/device/cdi: update generateSpec stub for non-supported platforms by @dmitry-lyfar in #17609
- Auth: Fix operation cancellation permissions by @markylaing in #17603
- events: Use api constants rather than strings by @skozina in #17613
- lxd/operations: Create new operations in OperationCreated state by @skozina in #17612
- Update docs for vm only live migration support by @kadinsayani in #17615
- lxd/heartbeats: Spread heartbeats evenly rather than by NodeID by @skozina in #17617
- golangci: Skip package name collisions with Go std library by @roosterfish in #17623
- lxd/db/query/dump: Drop
ORDER BY rowidfor the .dump by @skozina in #17621 - docs/storage_drivers: Fix storage drivers table for Pure and Alletra by @MusicDin in #17622
- VM: Rename security.csm to boot.mode by @Copilot in #17560
- Storage: Drop unused code around custom volume rename by @roosterfish in #17605
- auth: LXD bearer tokens by @MusicDin in #17248
- storage: Correctly parse Alltera gateway URL by @MusicDin in #17076
- Fix: Remove printf verbs from log message by @roosterfish in #17640
- Fix cluster copy auto-placement when request is forwarded to source by @kadinsayani in #17635
- Network: Fix
getExternalSubnetInUsefunction by @nmezhenskyi in #17633 - VM: Add
limits.max_bus_portsconfig option by @nmezhenskyi in #17608 - Split api_cluster.go by @kadinsayani in #17636
- Skip broken FAN tests by @simondeziel in #17638
- lxd/seccomp: simplify reading from
procfsfiles by @simondeziel in #17637 - api: Add missing api spec for bearer identity endpoints by @MusicDin in #17647
- lxd/api: Include bearer auth method by default by @MusicDin in #17644
- doc: clean up live migration docs by @minaelee in #17649
- Audit operation "resources" by @markylaing in #17607
- Revert "github: skip known broken
clustertest on Noble+HWE" by @simondeziel in #17650 - client: Constant time to compare server fingerprint by @MusicDin in #17655
- build(deps): bump github.com/mattn/go-sqlite3 from 1.14.33 to 1.14.34 by @dependabot[bot] in #17662
- build(deps): bump golang.org/x/sys from 0.40.0 to 0.41.0 by @dependabot[bot] in #17656
- build(deps): bump github.com/zitadel/oidc/v3 from 3.45.3 to 3.45.4 by @dependabot[bot] in #17660
- Operations: Missing entity url by @markylaing in #17664
- lxd: Add missing entity URL for storage volume snapshot by @markylaing in #17665
- identity: Expose bearer token expiration date for current identity by @MusicDin in #17643
- lxc/list: Optimize instance state queries by fetching only required fields by @gajeshbhat in #17378
- api: Add current identity credential expiration date to auth_bearer API extension by @MusicDin in #17667
- go: Update dependencies by @tomponline in #17670
- Address new
golangci-lintissues by @simondeziel in #17675 - doc: improve storage drivers reference by @minaelee in #17653
- Fix: Regressions in instance refresh by @roosterfish in #17645
- DevLXD: Record API metrics by @markylaing in #17668
- client/operations: Ensure operation listener is set to nil when activ… by @MusicDin in #17634
- lxd: Temporary LXD UI access link by @MusicDin in #17401
golangci-lintpinning by @simondeziel in #17677- Operations: Make project deletion asynchronous and remove onDone hook by @markylaing in #17648
- Bump minimum requirements docs by @simondeziel in #17687
- Operation fixes and API extension for AMD CDI by @tomponline in #17686
- shared/entity: Helper functions to get named URL path parameters by @MusicDin in #17628
- doc/faq: ZFS 2.2 is available to 22.04+HWE by @simondeziel in #17688
- Instance refresh - follow ups by @roosterfish in #17684
- lxd/db/warningtype: fix typo in comments by @simondeziel in #17689
- test/suites/vm: adapt
limits.max_bus_portstests for coverage runs by @simondeziel in #17691 - lxd: Fix various issues with operation entityURLs by @skozina in #17663
- Fix: Clean up dnsmasq log file on network deletion and rename by @tugbataluy in #17683
- Remove leftover instance logs by @tugbataluy in #17693
- lxd/identities: Accept peer certificate when authenticated using a bearer token by @MusicDin in #17695
- lxd/init: Enable UI temporary access link in interactive mode by default by @MusicDin in #17698
- Install needed snaps before installing
microovnfromlatest/edgeby @simondeziel in #17708 - Makefile: remove some unneeded files from the
disttarball by @simondeziel in #17702 - go: Update Go minimum version to 1.25.7 by @simondeziel in #17699
- Activate the
lxd-agent.servicewith a systemd generator by @simondeziel in #17692 - test/extras: drop unused scripts by @simondeziel in #17709
- shared/entity: Fail when unknown path argument is provided to entity URL parser by @MusicDin in #17707
- Schema changes for durable operations by @skozina in #17462
- Operation progress metadata by @markylaing in #17676
- Disable
unattended-upgrades.serviceand removeudisks2package by @simondeziel in #17713 - doc: Fix typo by @rafalborczuch in #17704
- github: configure Dependabot to use group updates by @simondeziel in #17714
- lxd/firewall/drivers/drivers_nftables_templates: quote network name by @simondeziel in #17725
- Instance refresh: Error message followup by @roosterfish in #17720
- Use SourceType as type of source of instances, images and storage volumes by @skozina in #17719
- doc/reference/releases-snap: clarify the GA vs HWE kernel support by @simondeziel in #17726
- lxd/networks: allow bridge creation to finish in a background context by @edlerd in #17724
- Replace preventFileCompletions workaround with cobra's DefaultShellCompDirective by @tugbataluy in #17722
- LXD 6.7 release notes by @tomponline in #17685
- LXD 6.7 release notes ammendment by @tomponline in #17728
- Drop /1.0/containers and /1.0/virtual-machines endpoints by @tugbataluy in #17706
- LXD 6.7 release notes ammendment by @tomponline in #17733
- lxd/main_init_interactive: Fix condition for UI token generation question by @MusicDin in #17735
- test/lint: Remove test/extras from shellcheck. by @markylaing in #17732
- doc: Update lxd recover video by @mseralessandri in #17737
- lxd/certificates: Return only allowed certificates in non-recursive list by @MusicDin in #17738
- Automatic subnet discovery improvements by @simondeziel in #17718
- lxd: Validate compression algorithm by @MusicDin in #17741
- doc: remove unneeded .wordlist file and references by @minaelee in #17743
- doc: Add storage pool configuration retrieval section by @mseralessandri in #17736
- Mini OIDC tweaks by @simondeziel in #17744
- Add Loki test by @simondeziel in #17610
- doc: add ui section to 6.7 release notes by @edlerd in #17730
- auth: Initial UI identity type by @markylaing in #17742
- test/suites/tls_restrictions: ensure that cert listing is properly restricted by @simondeziel in #17745
- Feature/amd64v3 architecture v2 by @monroestephenson in #17746
- lxd/auth/bearer: Update IsAPIRequest comment by @markylaing in #17748
- doc: mention support for
amd64v3images in LXD 6.7 release notes by @simondeziel in #17749 - doc: update ZFS minor version in LXD 6.7 release notes by @simondeziel in #17753
- Extend images test coverage by @simondeziel in #17750
- lxd/image: Use effective project when generating image secret by @MusicDin in #17747
New Contributors
- @troyanov made their first contribution in #17010
- @kwonkwonn made their first contribution in #17122
- @gajeshbhat made their first contribution in #17334
- @IrvingMg made their first contribution in #17289
- @niledas made their first contribution in #17388
- @Copilot made their first contribution in #17433
- @SaiRajeshRamaraju made their first contribution in #17477
- @dmitry-lyfar made their first contribution in #17343
- @monroestephenson made their first contribution in #17746
Full Changelog: lxd-6.6...lxd-6.7