Documentation
¶
Index ¶
Constants ¶
View Source
const ( // PullStatusDownloading represents downloading status. PullStatusDownloading = "downloading" // PullStatusWaiting represents waiting status. PullStatusWaiting = "waiting" // PullStatusResolving represents resolving status. PullStatusResolving = "resolving" // PullStatusResolved represents resolved status. PullStatusResolved = "resolved" // PullStatusExists represents exist status. PullStatusExists = "exists" // PullStatusDone represents done status. PullStatusDone = "done" )
Variables ¶
This section is empty.
Functions ¶
func PullReferenceStatus ¶
func PullReferenceStatus(short bool, msg JSONMessage) string
PullReferenceStatus returns the status of pulling the image reference.
NOTE: if the stdout is not terminal, it should only show the reference and status without progress bar.
Types ¶
type Formater ¶
type Formater interface {
// BegineWrite write some datas at the stream beginning.
BeginWrite() ([]byte, error)
// EndWrite write some datas at the stream ending.
EndWrite() ([]byte, error)
// Write write a object be serialized.
Write(o interface{}) ([]byte, error)
}
Formater define the data's format via stream transfer.
type JSONError ¶
type JSONError struct {
Code int `json:"code,omitempty"`
Message string `json:"message,omitempty"`
}
JSONError wraps a concrete Code and Message as error.
type JSONMessage ¶
type JSONMessage struct {
ID string `json:"id,omitempty"`
Status string `json:"status,omitempty"`
Detail *ProgressDetail `json:"progressDetail,omitempty"`
Error *JSONError `json:"errorDetail,omitempty"`
ErrorMessage string `json:"error,omitempty"`
StartedAt time.Time `json:"started_at,omitempty"`
UpdatedAt time.Time `json:"updated_at,omitempty"`
}
JSONMessage defines a message struct for jsonstream. It describes id, status, progress detail, started and updated.
type JSONStream ¶
type JSONStream struct {
// contains filtered or unexported fields
}
JSONStream represents a stream transfer, the data be encoded with json.
func New ¶
func New(out io.Writer, f Formater) *JSONStream
New creates a 'JSONStream' instance and use a goroutine to recv/send data.
func (*JSONStream) WriteObject ¶
func (s *JSONStream) WriteObject(obj interface{}) error
WriteObject writes a object to client via stream tranfer.
type ProgressDetail ¶
ProgressDetail represents the status.
Click to show internal directories.
Click to hide internal directories.