mirror of
https://github.com/coder/coder.git
synced 2025-07-15 22:20:27 +00:00
Don't override 0 ttl with template default (#5151)
This commit is contained in:
@ -670,15 +670,8 @@ func (api *API) putWorkspaceTTL(rw http.ResponseWriter, r *http.Request) {
|
|||||||
var dbTTL sql.NullInt64
|
var dbTTL sql.NullInt64
|
||||||
|
|
||||||
err := api.Database.InTx(func(s database.Store) error {
|
err := api.Database.InTx(func(s database.Store) error {
|
||||||
template, err := s.GetTemplateByID(ctx, workspace.TemplateID)
|
// don't override 0 ttl with template default here because it indicates disabled auto-stop
|
||||||
if err != nil {
|
dbTTL, err := validWorkspaceTTLMillis(req.TTLMillis, 0)
|
||||||
httpapi.Write(ctx, rw, http.StatusInternalServerError, codersdk.Response{
|
|
||||||
Message: "Error fetching workspace template!",
|
|
||||||
})
|
|
||||||
return xerrors.Errorf("fetch workspace template: %w", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
dbTTL, err = validWorkspaceTTLMillis(req.TTLMillis, template.DefaultTTL)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return codersdk.ValidationError{Field: "ttl_ms", Detail: err.Error()}
|
return codersdk.ValidationError{Field: "ttl_ms", Detail: err.Error()}
|
||||||
}
|
}
|
||||||
|
@ -302,7 +302,7 @@ func TestPostWorkspacesByOrganization(t *testing.T) {
|
|||||||
template := coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID, func(ctr *codersdk.CreateTemplateRequest) {
|
template := coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID, func(ctr *codersdk.CreateTemplateRequest) {
|
||||||
ctr.DefaultTTLMillis = ptr.Ref(int64(0))
|
ctr.DefaultTTLMillis = ptr.Ref(int64(0))
|
||||||
})
|
})
|
||||||
// Given: the template has no max TTL set
|
// Given: the template has no default TTL set
|
||||||
require.Zero(t, template.DefaultTTLMillis)
|
require.Zero(t, template.DefaultTTLMillis)
|
||||||
coderdtest.AwaitTemplateVersionJob(t, client, version.ID)
|
coderdtest.AwaitTemplateVersionJob(t, client, version.ID)
|
||||||
|
|
||||||
@ -1178,11 +1178,17 @@ func TestWorkspaceUpdateTTL(t *testing.T) {
|
|||||||
name: "disable ttl",
|
name: "disable ttl",
|
||||||
ttlMillis: nil,
|
ttlMillis: nil,
|
||||||
expectedError: "",
|
expectedError: "",
|
||||||
|
modifyTemplate: func(ctr *codersdk.CreateTemplateRequest) {
|
||||||
|
ctr.DefaultTTLMillis = ptr.Ref((8 * time.Hour).Milliseconds())
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "update ttl",
|
name: "update ttl",
|
||||||
ttlMillis: ptr.Ref(12 * time.Hour.Milliseconds()),
|
ttlMillis: ptr.Ref(12 * time.Hour.Milliseconds()),
|
||||||
expectedError: "",
|
expectedError: "",
|
||||||
|
modifyTemplate: func(ctr *codersdk.CreateTemplateRequest) {
|
||||||
|
ctr.DefaultTTLMillis = ptr.Ref((8 * time.Hour).Milliseconds())
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "below minimum ttl",
|
name: "below minimum ttl",
|
||||||
|
Reference in New Issue
Block a user