24 lines
774 B
Go
24 lines
774 B
Go
|
package model
|
||
|
|
||
|
import "io"
|
||
|
|
||
|
// FileStore persists pipeline artifacts to storage.
|
||
|
type FileStore interface {
|
||
|
FileList(*Build) ([]*File, error)
|
||
|
FileFind(*Proc, string) (*File, error)
|
||
|
FileRead(*Proc, string) (io.ReadCloser, error)
|
||
|
FileCreate(*File, io.Reader) error
|
||
|
}
|
||
|
|
||
|
// File represents a pipeline artifact.
|
||
|
type File struct {
|
||
|
ID int64 `json:"id" meddler:"file_id,pk"`
|
||
|
BuildID int64 `json:"build_id" meddler:"file_build_id"`
|
||
|
ProcID int64 `json:"proc_id" meddler:"file_proc_id"`
|
||
|
Name string `json:"name" meddler:"file_name"`
|
||
|
Size int `json:"size" meddler:"file_size"`
|
||
|
Mime string `json:"mime" meddler:"file_mime"`
|
||
|
Time int64 `json:"time" meddler:"file_time"`
|
||
|
// Data []byte `json:"data" meddler:"file_data"`
|
||
|
}
|