8000 feat(site): display version message (#8435) · coder/coder@b833861 · GitHub
[go: up one dir, main page]

Skip to content

Commit b833861

Browse files
feat(site): display version message (#8435)
1 parent 44e2518 commit b833861

File tree

23 files changed

+291
-89
lines changed

23 files changed

+291
-89
lines changed

coderd/apidoc/docs.go

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

coderd/apidoc/swagger.json

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

coderd/database/dbfake/dbfake.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4771,6 +4771,7 @@ func (q *FakeQuerier) UpdateTemplateVersionByID(_ context.Context, arg database.
47714771
templateVersion.TemplateID = arg.TemplateID
47724772
templateVersion.UpdatedAt = arg.UpdatedAt
47734773
templateVersion.Name = arg.Name
4774+
templateVersion.Message = arg.Message
47744775
q.templateVersions[index] = templateVersion
47754776
return templateVersion, nil
47764777
}

coderd/database/queries.sql.go

Lines changed: 4 additions & 1 deletion
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: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,8 @@ UPDATE
9191
SET
9292
template_id = $2,
9393
updated_at = $3,
94-
name = $4
94+
name = $4,
95+
message = $5
9596
WHERE
9697
id = $1 RETURNING *;
9798

coderd/templates.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -336,6 +336,7 @@ func (api *API) postTemplateByOrganization(rw http.ResponseWriter, r *http.Reque
336336
},
337337
UpdatedAt: database.Now(),
338338
Name: templateVersion.Name,
339+
Message: templateVersion.Message,
339340
})
340341
if err != nil {
341342
return xerrors.Errorf("insert template version: %s", err)

coderd/templateversions.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,12 +106,17 @@ func (api *API) patchTemplateVersion(rw http.ResponseWriter, r *http.Request) {
106106
TemplateID: templateVersion.TemplateID,
107107
UpdatedAt: database.Now(),
108108
Name: templateVersion.Name,
109+
Message: templateVersion.Message,
109110
}
110111

111112
if params.Name != "" {
112113
updateParams.Name = params.Name
113114
}
114115

116+
if params.Message != nil {
117+
updateParams.Message = *params.Message
118+
}
119+
115120
errTemplateVersionNameConflict := xerrors.New("template version name must be unique for a template")
116121

117122
var updatedTemplateVersion database.TemplateVersion

coderd/templateversions_test.go

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1223,6 +1223,71 @@ func TestTemplateVersionPatch(t *testing.T) {
12231223
assert.NotEqual(t, updatedVersion.Name, version.Name)
12241224
})
12251225

1226+
t.Run("Update the message", func(t *testing.T) {
1227+
t.Parallel()
1228+
client := coderdtest.New(t, nil)
1229+
user := coderdtest.CreateFirstUser(t, client)
1230+
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil, func(req *codersdk.CreateTemplateVersionRequest) {
1231+
req.Message = "Example message"
1232+
})
1233+
coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID)
1234+
1235+
ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
1236+
defer cancel()
1237+
1238+
wantMessage := "Updated message"
1239+
updatedVersion, err := client.UpdateTemplateVersion(ctx, version.ID, codersdk.PatchTemplateVersionRequest{
1240+
Message: &wantMessage,
1241+
})
1242+
1243+
require.NoError(t, err)
1244+
assert.Equal(t, wantMessage, updatedVersion.Message)
1245+
})
1246+
1247+
t.Run("Remove the message", func(t *testing.T) {
1248+
t.Parallel()
1249+
client := coderdtest.New(t, nil)
1250+
user := coderdtest.CreateFirstUser(t, client)
1251+
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil, func(req *codersdk.CreateTemplateVersionRequest) {
1252+
req.Message = "Example message"
1253+
})
1254+
coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID)
1255+
1256+
ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
1257+
defer cancel()
1258+
1259+
wantMessage := ""
1260+
updatedVersion, err := client.UpdateTemplateVersion(ctx, version.ID, codersdk.PatchTemplateVersionRequest{
1261+
Message: &wantMessage,
1262+
})
1263+
1264+
require.NoError(t, err)
1265+
assert.Equal(t, wantMessage, updatedVersion.Message)
1266+
})
1267+
1268+
t.Run("Keep the message", func(t *testing.T) {
1269+
t.Parallel()
1270+
client := coderdtest.New(t, nil)
1271+
user := coderdtest.CreateFirstUser(t, client)
1272+
wantMessage := "Example message"
1273+
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil, func(req *codersdk.CreateTemplateVersionRequest) {
1274+
req.Message = wantMessage
1275+
})
1276+
coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID)
1277+
1278+
t.Log(version.Message)
1279+
1280+
ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
1281+
defer cancel()
1282+
1283+
updatedVersion, err := client.UpdateTemplateVersion(ctx, version.ID, codersdk.PatchTemplateVersionRequest{
1284+
Message: nil,
1285+
})
1286+
1287+
require.NoError(t, err)
1288+
assert.Equal(t, wantMessage, updatedVersion.Message)
1289+
})
1290+
12261291
t.Run("Use the same name if a new name is not passed", func(t *testing.T) {
12271292
t.Parallel()
12281293
client := coderdtest.New(t, nil)

codersdk/templateversions.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,8 @@ type TemplateVersionVariable struct {
8787
}
8888

8989
type PatchTemplateVersionRequest struct {
90-
Name string `json:"name" validate:"omitempty,template_version_name"`
90+
Name string `json:"name" validate:"omitempty,template_version_name"`
91+
Message *string `json:"message,omitempty" validate:"omitempty,lt=1048577"`
9192
}
9293

9394
// TemplateVersion returns a template version by ID.

docs/api/schemas.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3229,15 +3229,17 @@ AuthorizationObject can represent a "set" of objects, such as: all workspaces in
32293229

32303230
```json
32313231
{
3232+
"message": "string",
32323233
"name": "string"
32333234
}
32343235
```
32353236

32363237
### Properties
32373238

3238-
| Name | Type | Required | Restrictions | Description |
3239-
| ------ | ------ | -------- | ------------ | ----------- |
3240-
| `name` | string | false | | |
3239+
| Name | Type | Required | Restrictions | Description |
3240+
| --------- | ------ | -------- | ------------ | ----------- |
3241+
| `message` | string | false | | |
3242+
| `name` | string | false | | |
32413243

32423244
## codersdk.PatchWorkspaceProxy
32433245

0 commit comments

Comments
 (0)
0