@@ -22,7 +22,7 @@ func WorkspaceBuild(ctx context.Context, writer io.Writer, client *codersdk.Clie
2222 build , err := client .WorkspaceBuild (ctx , build )
2323 return build .Job , err
2424 },
25- Logs : func () (<- chan codersdk.ProvisionerJobLog , error ) {
25+ Logs : func () (<- chan codersdk.ProvisionerJobLog , io. Closer , error ) {
2626 return client .WorkspaceBuildLogsAfter (ctx , build , before )
2727 },
2828 })
@@ -31,7 +31,7 @@ func WorkspaceBuild(ctx context.Context, writer io.Writer, client *codersdk.Clie
3131type ProvisionerJobOptions struct {
3232 Fetch func () (codersdk.ProvisionerJob , error )
3333 Cancel func () error
34- Logs func () (<- chan codersdk.ProvisionerJobLog , error )
34+ Logs func () (<- chan codersdk.ProvisionerJobLog , io. Closer , error )
3535
3636 FetchInterval time.Duration
3737 // Verbose determines whether debug and trace logs will be shown.
@@ -132,10 +132,11 @@ func ProvisionerJob(ctx context.Context, writer io.Writer, opts ProvisionerJobOp
132132 // The initial stage needs to print after the signal handler has been registered.
133133 printStage ()
134134
135- logs , err := opts .Logs ()
135+ logs , closer , err := opts .Logs ()
136136 if err != nil {
137137 return xerrors .Errorf ("logs: %w" , err )
138138 }
139+ defer closer .Close ()
139140
140141 var (
141142 // logOutput is where log output is written
0 commit comments