shad-go/distbuild/pkg/scheduler/scheduler.go

54 lines
986 B
Go
Raw Permalink Normal View History

2022-02-10 22:06:57 +00:00
//go:build !solution
2020-04-05 13:24:48 +00:00
2020-03-28 21:34:09 +00:00
package scheduler
import (
2020-04-05 11:29:46 +00:00
"context"
2020-03-28 21:34:09 +00:00
"time"
"go.uber.org/zap"
"gitlab.com/slon/shad-go/distbuild/pkg/api"
"gitlab.com/slon/shad-go/distbuild/pkg/build"
2020-03-28 21:34:09 +00:00
)
2021-04-25 13:10:08 +00:00
var TimeAfter = time.After
2020-04-05 13:24:48 +00:00
2020-03-28 21:34:09 +00:00
type PendingJob struct {
2020-04-04 21:49:25 +00:00
Job *api.JobSpec
2020-03-28 21:34:09 +00:00
Finished chan struct{}
2020-04-05 11:29:46 +00:00
Result *api.JobResult
2020-03-28 21:34:09 +00:00
}
type Config struct {
CacheTimeout time.Duration
DepsTimeout time.Duration
}
type Scheduler struct {
}
2020-03-28 21:34:09 +00:00
func NewScheduler(l *zap.Logger, config Config) *Scheduler {
2020-04-05 13:24:48 +00:00
panic("implement me")
2020-03-28 21:34:09 +00:00
}
2020-04-05 12:00:33 +00:00
func (c *Scheduler) LocateArtifact(id build.ID) (api.WorkerID, bool) {
2020-04-05 13:24:48 +00:00
panic("implement me")
2020-04-05 12:00:33 +00:00
}
2020-03-29 16:03:07 +00:00
func (c *Scheduler) OnJobComplete(workerID api.WorkerID, jobID build.ID, res *api.JobResult) bool {
2020-04-05 13:24:48 +00:00
panic("implement me")
2020-03-28 21:34:09 +00:00
}
2020-04-04 21:49:25 +00:00
func (c *Scheduler) ScheduleJob(job *api.JobSpec) *PendingJob {
2020-04-05 13:24:48 +00:00
panic("implement me")
2020-03-28 21:34:09 +00:00
}
2020-04-05 11:29:46 +00:00
func (c *Scheduler) PickJob(ctx context.Context, workerID api.WorkerID) *PendingJob {
2020-04-05 13:24:48 +00:00
panic("implement me")
2020-03-28 21:34:09 +00:00
}
func (c *Scheduler) Stop() {
panic("implement me")
}