From 57318ef56117139b12de8fffcf36f527eb7b66ac Mon Sep 17 00:00:00 2001 From: Alisdair McDiarmid Date: Fri, 24 Sep 2021 09:26:09 -0400 Subject: [PATCH] backend/remote: Support interop from 0.14 to 1.1 The previous conservative guarantee that we would not make backwards incompatible changes to the state file format until at least Terraform 1.1 can now be extended. Terraform 0.14 through 1.1 will be able to interoperably use state files, so we can update the remote backend version compatibility check accordingly. --- internal/backend/remote/backend.go | 6 +++--- internal/backend/remote/backend_test.go | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/internal/backend/remote/backend.go b/internal/backend/remote/backend.go index b4aa115a7..5e09e7207 100644 --- a/internal/backend/remote/backend.go +++ b/internal/backend/remote/backend.go @@ -917,9 +917,9 @@ func (b *Remote) VerifyWorkspaceTerraformVersion(workspaceName string) tfdiags.D // are aware of are: // // - 0.14.0 is guaranteed to be compatible with versions up to but not - // including 1.1.0 - v110 := version.Must(version.NewSemver("1.1.0")) - if tfversion.SemVer.LessThan(v110) && remoteVersion.LessThan(v110) { + // including 1.2.0 + v120 := version.Must(version.NewSemver("1.2.0")) + if tfversion.SemVer.LessThan(v120) && remoteVersion.LessThan(v120) { return diags } // - Any new Terraform state version will require at least minor patch diff --git a/internal/backend/remote/backend_test.go b/internal/backend/remote/backend_test.go index 3f0755a0e..d00b61ae2 100644 --- a/internal/backend/remote/backend_test.go +++ b/internal/backend/remote/backend_test.go @@ -566,7 +566,8 @@ func TestRemote_VerifyWorkspaceTerraformVersion(t *testing.T) { {"0.14.0", "0.13.5", false, false}, {"0.14.0", "0.14.1", true, false}, {"0.14.0", "1.0.99", true, false}, - {"0.14.0", "1.1.0", true, true}, + {"0.14.0", "1.1.0", true, false}, + {"0.14.0", "1.2.0", true, true}, {"1.2.0", "1.2.99", true, false}, {"1.2.0", "1.3.0", true, true}, {"0.15.0", "latest", true, false},