mirror of
https://github.com/coder/coder.git
synced 2025-07-13 21:36:50 +00:00
feat(site): display version message (#8435)
This commit is contained in:
3
coderd/apidoc/docs.go
generated
3
coderd/apidoc/docs.go
generated
@ -8222,6 +8222,9 @@ const docTemplate = `{
|
||||
"codersdk.PatchTemplateVersionRequest": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
|
3
coderd/apidoc/swagger.json
generated
3
coderd/apidoc/swagger.json
generated
@ -7384,6 +7384,9 @@
|
||||
"codersdk.PatchTemplateVersionRequest": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
|
@ -4771,6 +4771,7 @@ func (q *FakeQuerier) UpdateTemplateVersionByID(_ context.Context, arg database.
|
||||
templateVersion.TemplateID = arg.TemplateID
|
||||
templateVersion.UpdatedAt = arg.UpdatedAt
|
||||
templateVersion.Name = arg.Name
|
||||
templateVersion.Message = arg.Message
|
||||
q.templateVersions[index] = templateVersion
|
||||
return templateVersion, nil
|
||||
}
|
||||
|
@ -4688,7 +4688,8 @@ UPDATE
|
||||
SET
|
||||
template_id = $2,
|
||||
updated_at = $3,
|
||||
name = $4
|
||||
name = $4,
|
||||
message = $5
|
||||
WHERE
|
||||
id = $1 RETURNING id, template_id, organization_id, created_at, updated_at, name, readme, job_id, created_by, git_auth_providers, message
|
||||
`
|
||||
@ -4698,6 +4699,7 @@ type UpdateTemplateVersionByIDParams struct {
|
||||
TemplateID uuid.NullUUID `db:"template_id" json:"template_id"`
|
||||
UpdatedAt time.Time `db:"updated_at" json:"updated_at"`
|
||||
Name string `db:"name" json:"name"`
|
||||
Message string `db:"message" json:"message"`
|
||||
}
|
||||
|
||||
func (q *sqlQuerier) UpdateTemplateVersionByID(ctx context.Context, arg UpdateTemplateVersionByIDParams) (TemplateVersion, error) {
|
||||
@ -4706,6 +4708,7 @@ func (q *sqlQuerier) UpdateTemplateVersionByID(ctx context.Context, arg UpdateTe
|
||||
arg.TemplateID,
|
||||
arg.UpdatedAt,
|
||||
arg.Name,
|
||||
arg.Message,
|
||||
)
|
||||
var i TemplateVersion
|
||||
err := row.Scan(
|
||||
|
@ -91,7 +91,8 @@ UPDATE
|
||||
SET
|
||||
template_id = $2,
|
||||
updated_at = $3,
|
||||
name = $4
|
||||
name = $4,
|
||||
message = $5
|
||||
WHERE
|
||||
id = $1 RETURNING *;
|
||||
|
||||
|
@ -336,6 +336,7 @@ func (api *API) postTemplateByOrganization(rw http.ResponseWriter, r *http.Reque
|
||||
},
|
||||
UpdatedAt: database.Now(),
|
||||
Name: templateVersion.Name,
|
||||
Message: templateVersion.Message,
|
||||
})
|
||||
if err != nil {
|
||||
return xerrors.Errorf("insert template version: %s", err)
|
||||
|
@ -106,12 +106,17 @@ func (api *API) patchTemplateVersion(rw http.ResponseWriter, r *http.Request) {
|
||||
TemplateID: templateVersion.TemplateID,
|
||||
UpdatedAt: database.Now(),
|
||||
Name: templateVersion.Name,
|
||||
Message: templateVersion.Message,
|
||||
}
|
||||
|
||||
if params.Name != "" {
|
||||
updateParams.Name = params.Name
|
||||
}
|
||||
|
||||
if params.Message != nil {
|
||||
updateParams.Message = *params.Message
|
||||
}
|
||||
|
||||
errTemplateVersionNameConflict := xerrors.New("template version name must be unique for a template")
|
||||
|
||||
var updatedTemplateVersion database.TemplateVersion
|
||||
|
@ -1223,6 +1223,71 @@ func TestTemplateVersionPatch(t *testing.T) {
|
||||
assert.NotEqual(t, updatedVersion.Name, version.Name)
|
||||
})
|
||||
|
||||
t.Run("Update the message", func(t *testing.T) {
|
||||
t.Parallel()
|
||||
client := coderdtest.New(t, nil)
|
||||
user := coderdtest.CreateFirstUser(t, client)
|
||||
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil, func(req *codersdk.CreateTemplateVersionRequest) {
|
||||
req.Message = "Example message"
|
||||
})
|
||||
coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID)
|
||||
|
||||
ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
|
||||
defer cancel()
|
||||
|
||||
wantMessage := "Updated message"
|
||||
updatedVersion, err := client.UpdateTemplateVersion(ctx, version.ID, codersdk.PatchTemplateVersionRequest{
|
||||
Message: &wantMessage,
|
||||
})
|
||||
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, wantMessage, updatedVersion.Message)
|
||||
})
|
||||
|
||||
t.Run("Remove the message", func(t *testing.T) {
|
||||
t.Parallel()
|
||||
client := coderdtest.New(t, nil)
|
||||
user := coderdtest.CreateFirstUser(t, client)
|
||||
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil, func(req *codersdk.CreateTemplateVersionRequest) {
|
||||
req.Message = "Example message"
|
||||
})
|
||||
coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID)
|
||||
|
||||
ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
|
||||
defer cancel()
|
||||
|
||||
wantMessage := ""
|
||||
updatedVersion, err := client.UpdateTemplateVersion(ctx, version.ID, codersdk.PatchTemplateVersionRequest{
|
||||
Message: &wantMessage,
|
||||
})
|
||||
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, wantMessage, updatedVersion.Message)
|
||||
})
|
||||
|
||||
t.Run("Keep the message", func(t *testing.T) {
|
||||
t.Parallel()
|
||||
client := coderdtest.New(t, nil)
|
||||
user := coderdtest.CreateFirstUser(t, client)
|
||||
wantMessage := "Example message"
|
||||
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil, func(req *codersdk.CreateTemplateVersionRequest) {
|
||||
req.Message = wantMessage
|
||||
})
|
||||
coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID)
|
||||
|
||||
t.Log(version.Message)
|
||||
|
||||
ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
|
||||
defer cancel()
|
||||
|
||||
updatedVersion, err := client.UpdateTemplateVersion(ctx, version.ID, codersdk.PatchTemplateVersionRequest{
|
||||
Message: nil,
|
||||
})
|
||||
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, wantMessage, updatedVersion.Message)
|
||||
})
|
||||
|
||||
t.Run("Use the same name if a new name is not passed", func(t *testing.T) {
|
||||
t.Parallel()
|
||||
client := coderdtest.New(t, nil)
|
||||
|
Reference in New Issue
Block a user