mirror of
https://github.com/coder/coder.git
synced 2025-07-15 22:20:27 +00:00
fix: send end of logs when dbfake completes job (#11402)
This commit is contained in:
@ -20,6 +20,7 @@ import (
|
||||
"github.com/coder/coder/v2/coderd/rbac"
|
||||
"github.com/coder/coder/v2/coderd/telemetry"
|
||||
"github.com/coder/coder/v2/codersdk"
|
||||
"github.com/coder/coder/v2/provisionersdk"
|
||||
sdkproto "github.com/coder/coder/v2/provisionersdk/proto"
|
||||
)
|
||||
|
||||
@ -379,6 +380,7 @@ type JobCompleteBuilder struct {
|
||||
t testing.TB
|
||||
db database.Store
|
||||
jobID uuid.UUID
|
||||
ps pubsub.Pubsub
|
||||
}
|
||||
|
||||
type JobCompleteResponse struct {
|
||||
@ -393,6 +395,12 @@ func JobComplete(t testing.TB, db database.Store, jobID uuid.UUID) JobCompleteBu
|
||||
}
|
||||
}
|
||||
|
||||
func (b JobCompleteBuilder) Pubsub(ps pubsub.Pubsub) JobCompleteBuilder {
|
||||
// nolint: revive // returns modified struct
|
||||
b.ps = ps
|
||||
return b
|
||||
}
|
||||
|
||||
func (b JobCompleteBuilder) Do() JobCompleteResponse {
|
||||
r := JobCompleteResponse{CompletedAt: dbtime.Now()}
|
||||
err := b.db.UpdateProvisionerJobWithCompleteByID(ownerCtx, database.UpdateProvisionerJobWithCompleteByIDParams{
|
||||
@ -406,6 +414,12 @@ func (b JobCompleteBuilder) Do() JobCompleteResponse {
|
||||
},
|
||||
})
|
||||
require.NoError(b.t, err, "complete job")
|
||||
if b.ps != nil {
|
||||
data, err := json.Marshal(provisionersdk.ProvisionerJobLogsNotifyMessage{EndOfLogs: true})
|
||||
require.NoError(b.t, err)
|
||||
err = b.ps.Publish(provisionersdk.ProvisionerJobLogsNotifyChannel(b.jobID), data)
|
||||
require.NoError(b.t, err)
|
||||
}
|
||||
return r
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user