Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 6e4508e

Browse files
authored
chore: assume template versions without tf values to be empty (#18479)
Closes coder/internal#735
1 parent fae30a0 commit 6e4508e

File tree

1 file changed

+18
-1
lines changed

1 file changed

+18
-1
lines changed

coderd/dynamicparameters/render.go

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,11 @@ package dynamicparameters
22

33
import (
44
"context"
5+
"database/sql"
56
"io/fs"
67
"log/slog"
78
"sync"
9+
"time"
810

911
"github.com/google/uuid"
1012
"golang.org/x/sync/errgroup"
@@ -105,9 +107,24 @@ func (r *loader) loadData(ctx context.Context, db database.Store) error {
105107

106108
if r.terraformValues == nil {
107109
values, err := db.GetTemplateVersionTerraformValues(ctx, r.templateVersion.ID)
108-
if err != nil {
110+
if err != nil && !xerrors.Is(err, sql.ErrNoRows) {
109111
return xerrors.Errorf("template version terraform values: %w", err)
110112
}
113+
114+
if xerrors.Is(err, sql.ErrNoRows) {
115+
// If the row does not exist, return zero values.
116+
//
117+
// Older template versions (prior to dynamic parameters) will be missing
118+
// this row, and we can assume the 'ProvisionerdVersion' "" (unknown).
119+
values = database.TemplateVersionTerraformValue{
120+
TemplateVersionID: r.templateVersionID,
121+
UpdatedAt: time.Time{},
122+
CachedPlan: nil,
123+
CachedModuleFiles: uuid.NullUUID{},
124+
ProvisionerdVersion: "",
125+
}
126+
}
127+
111128
r.terraformValues = &values
112129
}
113130

0 commit comments

Comments
 (0)