Releases: terraform-lxd/terraform-provider-lxd
v2.4.0
What's Changed
New Features 🎉
- Add storage bucket resource by @MusicDin in #527
- Allow instance rename by @MusicDin in #526
- Combine the computed volume keys with the inherited storage pool keys (from Incus) by @MusicDin in #531
Bug Fixes 🐝
- Do not blindly accept remote certificate when using trust token by @MusicDin in #529
- provider: Fix incorrect check for configured default remote by @MusicDin in #534
Maintenance and Chores 🛠
- docs: Move attach custom volume example to lxd_volume by @MusicDin in #528
- build(deps): bump the hashicorp group with 2 updates by @dependabot in #530
Full Changelog: v2.3.0...v2.4.0
v2.3.0
What's Changed
Breaking Changes ⚠️
The v2.3.0 release introduces a minor breaking change in the provider’s remote configuration. The scheme
and port
fields, along with the LXD_PORT
and LXD_SCHEME
environment variables, are no longer supported. Instead, the full LXD or Simplestreams server address must be specified in the address
field (or LXD_ADDR
if using environment variables).
Previously, the scheme and port were simply prepended and appended to the address, leading to confusion. For example, if https://localhost:1234
was used as the address, the resulting URL would incorrectly become https://https://localhost:1234:8443
because the scheme and port defaulted to predefined values if left empty. Now, the address provided in the address field is resolved as outlined in the documentation.
If scheme and port fields are present in the configuration, an error will be displayed, instructing you to update the LXD remote configuration accordingly. Since LXD remotes are not stored within the Terraform state, this change only requires combining the scheme and port into the already required address field, with no further impact.
New Features 🎉
- Add network peer resource by @MusicDin in #504
- Allow managing default profiles in non-default projects by @MusicDin in #510
- Add trust token resource by @MusicDin in #512
Bug Fixes 🐝
- Allow null description in LB backend and port by @MusicDin in #505
- Don't check fingerprint if 'Content' is unknown by @jsimpso in #509
- Remove LXD version check during password auth by @MusicDin in #516
Maintenance and Chores 🛠
- build(deps): bump the hashicorp group with 3 updates by @dependabot in #500
- build(deps): bump the hashicorp group with 2 updates by @dependabot in #513
Other Changes ❓
- Fix server already trusted check by @MusicDin in #511
- Test truststore certificate using cert generated within the same TF config by @MusicDin in #519
- docs: Emphasize the trust password is no longer supported by @MusicDin in #521
- Ignore network peer status inconsistency in import test by @MusicDin in #522
- Update changelog for 2.3.0 by @MusicDin in #524
New Contributors
Full Changelog: v2.2.0...v2.3.0
v2.2.0
What's Changed
New Features 🎉
- Add support for custom simplestreams remote by @MusicDin in #463
- Add support for client certificates by @MusicDin in #471
- Allow remote LXD authentication using token by @MusicDin in #469
- Support null values in config - from Incus by @MusicDin in #492
- Add network forward and ACL resources - from Incus by @MusicDin in #493
Bug Fixes 🐝
- Do not error out if client certificate already exists by @MusicDin in #468
- Fix update of cached/published images by @MusicDin in #472
- Fix storage pool source inconsistencies by @MusicDin in #467
- Fix cached image being searched only in default project by @MusicDin in #490
- Fix cached image not found if instance remote is set by @MusicDin in #491
Maintenance and Chores 🛠
- Update gomod by @simondeziel in #473
- docs: Refer to instance rather than container by @MusicDin in #476
- Use trust token instead of password for tests by @MusicDin in #477
- Update gomod by @simondeziel in #478
- build(deps): bump goreleaser/goreleaser-action from 5 to 6 by @dependabot in #479
- Use Alpine images for cached image test by @MusicDin in #475
- goreleaser: fix config for version 2 schema by @simondeziel in #480
- update go modules by @simondeziel in #482
- Pass trust token explicitly if server support it by @MusicDin in #484
- Let LXD decide the unix socket by @MusicDin in #485
- build(deps): bump golang.org/x/sys from 0.21.0 to 0.22.0 by @dependabot in #495
- build(deps): bump google.golang.org/grpc from 1.64.0 to 1.64.1 by @dependabot in #496
Other Changes ❓
- Use math/rand/v2 for string generation by @MusicDin in #470
- goreleaser: re-enable arm64 builds for Windows by @simondeziel in #481
- docs/resources/instance: add multiple ordered
execs
by @simondeziel in #488 - Fix network zone minor issue - from Incus by @MusicDin in #494
- Remove project attribute on provider by @MusicDin in #497
- github: set goreleaser version to v2 by @simondeziel in #498
- Update changelog for 2.2.0 by @MusicDin in #499
Full Changelog: v2.1.0...v2.2.0
v2.1.0
What's Changed
New Features 🎉
Bug Fixes 🐝
- Replace image resource_id by reading fingerprint from state by @MusicDin in #421
- Add instance timeouts by @MusicDin in #423
- Upload files after VM is started by @MusicDin in #436
- Expand ConfigDir env vars when config.yml is missing by @MusicDin in #446
- Read access_interface from expanded config by @MusicDin in #449
Maintenance and Chores 🛠
- Fix minimum LXD version in docs by @MusicDin in #419
- build(deps): bump the hashicorp group with 1 update by @dependabot in #425
- Generate unique names for test resources by @MusicDin in #424
- build(deps): bump the hashicorp group with 1 update by @dependabot in #429
- build(deps): bump golang.org/x/sys from 0.16.0 to 0.17.0 by @dependabot in #431
- Bump Go to 1.21 by @simondeziel in #434
- Update go deps by @MusicDin in #435
- Update gomod by @simondeziel in #437
- build(deps): bump github.com/stretchr/testify from 1.8.4 to 1.9.0 by @dependabot in #438
- build(deps): bump golang.org/x/sys from 0.17.0 to 0.18.0 by @dependabot in #440
- build(deps): bump the hashicorp group with 2 updates by @dependabot in #439
- build(deps): bump google.golang.org/protobuf from 1.32.0 to 1.33.0 by @dependabot in #441
- github: run tests against 5.21/stable and 5.21/edge by @simondeziel in #442
- build(deps): bump the hashicorp group with 1 update by @dependabot in #443
- internal/common/lxd_file: use ParseInt() for LXD file mode by @simondeziel in #444
- build(deps): bump the hashicorp group with 1 update by @dependabot in #447
- Go 1.22 by @simondeziel in #450
- build(deps): bump golang.org/x/sys from 0.18.0 to 0.19.0 by @dependabot in #451
- github: stop testing with Go 1.21 by @simondeziel in #455
- build(deps): bump golang.org/x/net from 0.21.0 to 0.23.0 by @dependabot in #454
- build(deps): bump the hashicorp group with 2 updates by @dependabot in #456
- build(deps): bump golang.org/x/sys from 0.19.0 to 0.20.0 by @dependabot in #458
- build(deps): bump github.com/hashicorp/terraform-plugin-go from 0.22.2 to 0.23.0 in the hashicorp group by @dependabot in #459
- build(deps): bump the hashicorp group with 2 updates by @dependabot in #462
- build(deps): bump github.com/hashicorp/go-version from 1.6.0 to 1.7.0 in the hashicorp group by @dependabot in #465
- Bump lxd client and use Alpine image for tests by @MusicDin in #461
Other Changes ❓
- github: remove DCO check replaced by DCO app by @simondeziel in #426
- github: resume testing on 5.0/stable now that 5.0.3 is released by @simondeziel in #430
- Update changelog for 2.1.0 by @MusicDin in #466
Full Changelog: v2.0.0...v2.1.0
v2.0.0
What's Changed
Breaking Changes ⚠️
- Drop deprecated lxd_volume_container_attach resource by @simondeziel in #348
- Make LXD 4.0 the minimum officially supported version by @simondeziel in #379
- Drop deprecated provider parameters by @simondeziel in #378
- Drop deprecated lxd_container and lxd_container_file resources by @simondeziel in #377
- Replace start_on_create with running attribute by @MusicDin in #387
New Features 🎉
- Add missing instance device types by @kapows in #366
- Support
config.cloud-init.*
keys by @simondeziel in #383 - Add exec block to the instance resource by @MusicDin in #386
Maintenance and Chores 🛠
- fix tests using alpine images by @adamcstephens in #370
- build(deps): bump hashicorp/setup-terraform from 2 to 3 by @dependabot in #368
- test: Fix instance reference within test by @MusicDin in #372
- test: Drop VM test for old lxd_container resource by @MusicDin in #373
- build(deps): bump goreleaser/goreleaser-action from 4 to 5 by @dependabot in #367
- build(deps): bump golang.org/x/sys from 0.13.0 to 0.14.0 by @dependabot in #369
- build(deps): bump the hashicorp group with 1 update by @dependabot in #371
- Test for required API extensions in network LB and zones tests by @simondeziel in #375
- tests: don't run pr when converting from draft by @adamcstephens in #384
- Update from SDKv2 to terraform-framework by @MusicDin in #385
- build(deps): bump golang.org/x/sys from 0.14.0 to 0.15.0 by @dependabot in #388
- Test against
5.0/stable
and5.0/candidate
snap by @simondeziel in #390 - build(deps): bump the hashicorp group with 2 updates by @dependabot in #393
- build(deps): bump actions/setup-go from 4 to 5 by @dependabot in #392
- Cleanup SDKv2 resources by @MusicDin in #389
- Update go dependencies by @MusicDin in #397
- build(deps): bump the hashicorp group with 2 updates by @dependabot in #400
- build(deps): bump golang.org/x/crypto from 0.16.0 to 0.17.0 by @dependabot in #401
- build(deps): bump golang.org/x/sys from 0.15.0 to 0.16.0 by @dependabot in #411
- build(deps): bump github.com/cloudflare/circl from 1.3.6 to 1.3.7 by @dependabot in #412
- build(deps): bump the hashicorp group with 1 update by @dependabot in #414
- Add migration guide for 2.0 by @MusicDin in #415
Other Changes ❓
- Better workaround for LVM bug by @simondeziel in #391
- Use version variable which is overwritten by goreleaser by @MusicDin in #395
- Remove refresh_interval attribute from provider by @MusicDin in #394
- README: improve
~/.terraformrc
to allow using other providers easily by @simondeziel in #402 - Sync from provider incus by @simondeziel in #404
- Wait exec output to be flushed and use -1 as default exec exit code by @MusicDin in #407
- github: add DCO check by @simondeziel in #403
- Switch away from
images:
and useubuntu-daily:
remote instead by @simondeziel in #406 - Add project import by @MusicDin in #410
- Remove unused test-infra by @MusicDin in #416
- Exec trigger and enabled attributes by @MusicDin in #413
- Fix typo in migration guide by @MusicDin in #417
- Release notes for 2.0.0 by @MusicDin in #418
New Contributors
Full Changelog: v1.10.4...v2.0.0
v1.10.4
What's Changed
Bug Fixes 🐝
Maintenance and Chores 🛠
- testing: cleanup and catch more by @adamcstephens in #364
Full Changelog: v1.10.3...v1.10.4
v1.10.3
What's Changed
New Features 🎉
Maintenance and Chores 🛠
- build(deps): bump the hashicorp group with 1 update by @dependabot in #341
- build(deps): bump the hashicorp group with 1 update by @dependabot in #345
- build(deps): bump the hashicorp group with 1 update by @dependabot in #350
- build(deps): bump actions/checkout from 3 to 4 by @dependabot in #352
- build(deps): bump crazy-max/ghaction-import-gpg from 5 to 6 by @dependabot in #351
- build(deps): bump goreleaser/goreleaser-action from 4 to 5 by @dependabot in #354
- build(deps): bump golang.org/x/net from 0.13.0 to 0.17.0 by @dependabot in #357
- build(deps): bump google.golang.org/grpc from 1.57.0 to 1.57.1 by @dependabot in #359
Other Changes ❓
- Static analysis by @simondeziel in #343
- docs/snapshot: stateful defaults to false by @simondeziel in #347
- Add
remote
attribute tolxd_project
and deprecatetarget
by @simondeziel in #349 - docs: Remove resources section by @MusicDin in #356
- Determine LXD socket before retrieving a client by @MusicDin in #355
- Add support for network zones by @mandrav in #346
- Skip determining unix socket if a remote config address is set by @MusicDin in #358
- Remove extension check from network zones by @MusicDin in #361
New Contributors
Full Changelog: v1.10.2...v1.10.3
v1.10.2
What's Changed
New Features 🎉
- Add lxd_instance/lxd_instance_file and deprecate lxd_container/lxd_container_file by @MusicDin in #306
- cached_image: add virtual-machine image alias support by @adamcstephens in #325
- Search for certificates in snap's config directory by @MusicDin in #324
- Use unix as default remote scheme instead of https by @MusicDin in #337
Bug Fixes 🐝
- Fix not found error checks by @MusicDin in #327
- lxd_volume: fix not found error check by @adamcstephens in #331
Maintenance and Chores 🛠
- Update dependencies and lxd client rename by @adamcstephens in #317
- fix broken links and update docs for lxd_instance by @adamcstephens in #316
- README: explain how to use the provider built from sources by @simondeziel in #323
- Update links to clustering docs by @simondeziel in #329
- Update actions, go modules, and enable dependabot by @adamcstephens in #314
- update readme and make for testing by @adamcstephens in #332
- Bump the hashicorp group with 1 update by @dependabot in #330
- Update Go and Ubuntu CI targets by @simondeziel in #334
- Add acceptance test prechecks by @MusicDin in #335
- Add LXD version constraint by @MusicDin in #338
- Use test precheck to detect if LXD is in clustered mode by @MusicDin in #339
New Contributors
- @simondeziel made their first contribution in #323
Full Changelog: v1.10.1...v1.10.2
v1.10.1
What's Changed
- Update LXD project references by @MusicDin in #303
- Format code examples in documentation by @MusicDin in #304
- container: document start_container argument by @adamcstephens in #309
- storage_pool: add ceph driver support by @adamcstephens in #308
- volume: update content_type on read by @adamcstephens in #312
- update changelog for 1.10.1 by @adamcstephens in #313
New Contributors
Full Changelog: v1.10.0...v1.10.1
v1.10.0
What's Changed
- Terraform Plugin SDK v2 Upgrade by @adamcstephens in #289
- migrate from sdk2 testing to terraform-plugin-testing framework by @adamcstephens in #292
- Upgrade lxd client library: 20191225 -> 20230415 by @adamcstephens and @gboutry in #290
- Add LXD volume copy resource by @lukedirtwalker in #293
- add content_type option to volume by @gboutry in #294
- fix existence check by @adamcstephens in #298
- Explicitly set provider certificate defaults to false by @adamcstephens in #296
New Contributors
- @adamcstephens made their first contribution in #291
- @lukedirtwalker made their first contribution in #293
- @gboutry made their first contribution in #294
Full Changelog: v1.9.1...v1.10.0