@@ -43,6 +43,7 @@ import (
4343 "github.com/coder/coder/v2/coderd/tracing"
4444 "github.com/coder/coder/v2/coderd/usage"
4545 "github.com/coder/coder/v2/coderd/usage/usagetypes"
46+ "github.com/coder/coder/v2/coderd/util/ptr"
4647 "github.com/coder/coder/v2/coderd/util/slice"
4748 "github.com/coder/coder/v2/coderd/wspubsub"
4849 "github.com/coder/coder/v2/codersdk"
@@ -697,13 +698,14 @@ func (s *server) acquireProtoJob(ctx context.Context, job database.ProvisionerJo
697698
698699 protoJob .Type = & proto.AcquiredJob_WorkspaceBuild_ {
699700 WorkspaceBuild : & proto.AcquiredJob_WorkspaceBuild {
700- WorkspaceBuildId : workspaceBuild .ID .String (),
701- WorkspaceName : workspace .Name ,
702- State : workspaceBuild .ProvisionerState ,
703- RichParameterValues : convertRichParameterValues (workspaceBuildParameters ),
704- PreviousParameterValues : convertRichParameterValues (lastWorkspaceBuildParameters ),
705- VariableValues : asVariableValues (templateVariables ),
706- ExternalAuthProviders : externalAuthProviders ,
701+ WorkspaceBuildId : workspaceBuild .ID .String (),
702+ WorkspaceName : workspace .Name ,
703+ State : workspaceBuild .ProvisionerState ,
704+ RichParameterValues : convertRichParameterValues (workspaceBuildParameters ),
705+ PreviousParameterValues : convertRichParameterValues (lastWorkspaceBuildParameters ),
706+ VariableValues : asVariableValues (templateVariables ),
707+ ExternalAuthProviders : externalAuthProviders ,
708+ ExpReuseTerraformWorkspace : ptr .Ref (false ), // TODO: Toggle based on experiment
707709 Metadata : & sdkproto.Metadata {
708710 CoderUrl : s .AccessURL .String (),
709711 WorkspaceTransition : transition ,
@@ -773,6 +775,11 @@ func (s *server) acquireProtoJob(ctx context.Context, job database.ProvisionerJo
773775 return nil , failJob (err .Error ())
774776 }
775777
778+ templateID := ""
779+ if input .TemplateID .Valid {
780+ templateID = input .TemplateID .UUID .String ()
781+ }
782+
776783 protoJob .Type = & proto.AcquiredJob_TemplateImport_ {
777784 TemplateImport : & proto.AcquiredJob_TemplateImport {
778785 UserVariableValues : convertVariableValues (userVariableValues ),
@@ -781,6 +788,8 @@ func (s *server) acquireProtoJob(ctx context.Context, job database.ProvisionerJo
781788 // There is no owner for a template import, but we can assume
782789 // the "Everyone" group as a placeholder.
783790 WorkspaceOwnerGroups : []string {database .EveryoneGroup },
791+ TemplateId : templateID ,
792+ TemplateVersionId : input .TemplateVersionID .String (),
784793 },
785794 },
786795 }
@@ -3210,6 +3219,10 @@ func auditActionFromTransition(transition database.WorkspaceTransition) database
32103219}
32113220
32123221type TemplateVersionImportJob struct {
3222+ // TemplateID is not guaranteed to be set. Template versions can be created
3223+ // without being associated with a template. Resulting in a template id of
3224+ // `uuid.Nil`
3225+ TemplateID uuid.NullUUID `json:"template_id"`
32133226 TemplateVersionID uuid.UUID `json:"template_version_id"`
32143227 UserVariableValues []codersdk.VariableValue `json:"user_variable_values"`
32153228}
0 commit comments