Skip to content

Commit ff2e0c5

Browse files
committed
insert source example id into the db
1 parent e84bbbf commit ff2e0c5

File tree

6 files changed

+59
-36
lines changed

6 files changed

+59
-36
lines changed

coderd/database/dbgen/dbgen.go

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -788,16 +788,17 @@ func TemplateVersion(t testing.TB, db database.Store, orig database.TemplateVers
788788
err := db.InTx(func(db database.Store) error {
789789
versionID := takeFirst(orig.ID, uuid.New())
790790
err := db.InsertTemplateVersion(genCtx, database.InsertTemplateVersionParams{
791-
ID: versionID,
792-
TemplateID: takeFirst(orig.TemplateID, uuid.NullUUID{}),
793-
OrganizationID: takeFirst(orig.OrganizationID, uuid.New()),
794-
CreatedAt: takeFirst(orig.CreatedAt, dbtime.Now()),
795-
UpdatedAt: takeFirst(orig.UpdatedAt, dbtime.Now()),
796-
Name: takeFirst(orig.Name, testutil.GetRandomName(t)),
797-
Message: orig.Message,
798-
Readme: takeFirst(orig.Readme, testutil.GetRandomName(t)),
799-
JobID: takeFirst(orig.JobID, uuid.New()),
800-
CreatedBy: takeFirst(orig.CreatedBy, uuid.New()),
791+
ID: versionID,
792+
TemplateID: takeFirst(orig.TemplateID, uuid.NullUUID{}),
793+
OrganizationID: takeFirst(orig.OrganizationID, uuid.New()),
794+
CreatedAt: takeFirst(orig.CreatedAt, dbtime.Now()),
795+
UpdatedAt: takeFirst(orig.UpdatedAt, dbtime.Now()),
796+
Name: takeFirst(orig.Name, testutil.GetRandomName(t)),
797+
Message: orig.Message,
798+
Readme: takeFirst(orig.Readme, testutil.GetRandomName(t)),
799+
JobID: takeFirst(orig.JobID, uuid.New()),
800+
CreatedBy: takeFirst(orig.CreatedBy, uuid.New()),
801+
SourceExampleID: takeFirst(orig.SourceExampleID, sql.NullString{}),
801802
})
802803
if err != nil {
803804
return err

coderd/database/dbmem/dbmem.go

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7699,16 +7699,17 @@ func (q *FakeQuerier) InsertTemplateVersion(_ context.Context, arg database.Inse
76997699

77007700
//nolint:gosimple
77017701
version := database.TemplateVersionTable{
7702-
ID: arg.ID,
7703-
TemplateID: arg.TemplateID,
7704-
OrganizationID: arg.OrganizationID,
7705-
CreatedAt: arg.CreatedAt,
7706-
UpdatedAt: arg.UpdatedAt,
7707-
Name: arg.Name,
7708-
Message: arg.Message,
7709-
Readme: arg.Readme,
7710-
JobID: arg.JobID,
7711-
CreatedBy: arg.CreatedBy,
7702+
ID: arg.ID,
7703+
TemplateID: arg.TemplateID,
7704+
OrganizationID: arg.OrganizationID,
7705+
CreatedAt: arg.CreatedAt,
7706+
UpdatedAt: arg.UpdatedAt,
7707+
Name: arg.Name,
7708+
Message: arg.Message,
7709+
Readme: arg.Readme,
7710+
JobID: arg.JobID,
7711+
CreatedBy: arg.CreatedBy,
7712+
SourceExampleID: arg.SourceExampleID,
77127713
}
77137714
q.templateVersions = append(q.templateVersions, version)
77147715
return nil

coderd/database/queries.sql.go

Lines changed: 15 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/database/queries/templateversions.sql

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,10 +87,11 @@ INSERT INTO
8787
message,
8888
readme,
8989
job_id,
90-
created_by
90+
created_by,
91+
source_example_id
9192
)
9293
VALUES
93-
($1, $2, $3, $4, $5, $6, $7, $8, $9, $10);
94+
($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11);
9495

9596
-- name: UpdateTemplateVersionByID :exec
9697
UPDATE

coderd/templateversions.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1582,6 +1582,10 @@ func (api *API) postTemplateVersionsByOrganization(rw http.ResponseWriter, r *ht
15821582
Readme: "",
15831583
JobID: provisionerJob.ID,
15841584
CreatedBy: apiKey.UserID,
1585+
SourceExampleID: sql.NullString{
1586+
String: req.ExampleID,
1587+
Valid: req.ExampleID != "",
1588+
},
15851589
})
15861590
if err != nil {
15871591
if database.IsUniqueViolation(err, database.UniqueTemplateVersionsTemplateIDNameKey) {

coderd/templateversions_test.go

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import (
1616
"github.com/coder/coder/v2/coderd/audit"
1717
"github.com/coder/coder/v2/coderd/coderdtest"
1818
"github.com/coder/coder/v2/coderd/database"
19+
"github.com/coder/coder/v2/coderd/database/dbauthz"
1920
"github.com/coder/coder/v2/coderd/database/dbtestutil"
2021
"github.com/coder/coder/v2/coderd/externalauth"
2122
"github.com/coder/coder/v2/coderd/rbac"
@@ -134,7 +135,7 @@ func TestPostTemplateVersionsByOrganization(t *testing.T) {
134135
t.Run("WithParameters", func(t *testing.T) {
135136
t.Parallel()
136137
auditor := audit.NewMock()
137-
client := coderdtest.New(t, &coderdtest.Options{IncludeProvisionerDaemon: true, Auditor: auditor})
138+
client, db := coderdtest.NewWithDatabase(t, &coderdtest.Options{IncludeProvisionerDaemon: true, Auditor: auditor})
138139
user := coderdtest.CreateFirstUser(t, client)
139140
data, err := echo.Tar(&echo.Responses{
140141
Parse: echo.ParseComplete,
@@ -160,11 +161,17 @@ func TestPostTemplateVersionsByOrganization(t *testing.T) {
160161

161162
require.Len(t, auditor.AuditLogs(), 2)
162163
assert.Equal(t, database.AuditActionCreate, auditor.AuditLogs()[1].Action)
164+
165+
admin, err := client.User(ctx, user.UserID.String())
166+
require.NoError(t, err)
167+
tvDB, err := db.GetTemplateVersionByID(dbauthz.As(ctx, coderdtest.AuthzUserSubject(admin, user.OrganizationID)), version.ID)
168+
require.NoError(t, err)
169+
require.False(t, tvDB.SourceExampleID.Valid)
163170
})
164171

165172
t.Run("Example", func(t *testing.T) {
166173
t.Parallel()
167-
client := coderdtest.New(t, nil)
174+
client, db := coderdtest.NewWithDatabase(t, nil)
168175
user := coderdtest.CreateFirstUser(t, client)
169176

170177
ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
@@ -205,6 +212,12 @@ func TestPostTemplateVersionsByOrganization(t *testing.T) {
205212
require.NoError(t, err)
206213
require.Equal(t, "my-example", tv.Name)
207214

215+
admin, err := client.User(ctx, user.UserID.String())
216+
require.NoError(t, err)
217+
tvDB, err := db.GetTemplateVersionByID(dbauthz.As(ctx, coderdtest.AuthzUserSubject(admin, user.OrganizationID)), tv.ID)
218+
require.NoError(t, err)
219+
require.Equal(t, ls[0].ID, tvDB.SourceExampleID.String)
220+
208221
// ensure the template tar was uploaded correctly
209222
fl, ct, err := client.Download(ctx, tv.Job.FileID)
210223
require.NoError(t, err)

0 commit comments

Comments
 (0)