Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type Job ¶
type ReadJob ¶
type ReadJob struct {
// contains filtered or unexported fields
}
ReadJob implements job.Job by reading Lines from a channel and making them available to the Stdout() and Stderr() Readers through a Pipe.
func NewReadJob ¶
type Report ¶
type Repository ¶
type Repository interface { Reports() ([]Report, error) LastReport() (Report, error) Report(name string) (Report, error) JobsByReport(r Report) ([]Job, error) InsertReport(report *Report) error InsertJob(job *Job) error InsertLine(line *Line) error JobReaders(j Job) (io.Reader, io.Reader) }
A Repository is used by the Store to perform actual read and writes to some storage backend.
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
A Store provides methods to read and write job.Job's outputs.
func NewStore ¶
func NewStore(repo Repository) *Store
func (*Store) LastReport ¶
LastReport retrieves the most recent report
func (*Store) ListReports ¶
ListReports lists all the reports
func (*Store) Replay ¶
Replay takes a Report and returns Jobs that when run will emit the data stored for it.
func (*Store) Report ¶
Report retrieves one report by name
type WriteJob ¶
type WriteJob struct {
// contains filtered or unexported fields
}
WriteJob implements job.Job by scanning another job.Job's Stdout() and Stderr() and writing each line as an instance of Line to the lines channel.
Click to show internal directories.
Click to hide internal directories.