Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Github ¶
type Github struct {
//Github username and repository name
User, Repo string
//Interval between fetches
Interval time.Duration
//Asset is used to find matching release asset.
//By default a file will match if it contains
//both GOOS and GOARCH.
Asset func(filename string) bool
// contains filtered or unexported fields
}
Github uses the Github V3 API to retrieve the latest release of a given repository and enumerate its assets. If a release contains a matching asset, it will fetch and return its io.Reader stream.
type HTTP ¶
type HTTP struct { //URL to poll for new binaries URL string Interval time.Duration CheckHeaders []string // contains filtered or unexported fields }
HTTPFetcher uses HEAD requests to poll the status of a given file. If it detects this file has been updated, it will fetch and return its io.Reader stream.
type Interface ¶
type Interface interface { //Init should perform validation on fields. For //example, ensure the appropriate URLs or keys //are defined or ensure there is connectivity //to the appropriate web service. Init() error //Fetch should check if there is an updated //binary to fetch, and then stream it back the //form of an io.Reader. If io.Reader is nil, //then it is assumed there are no updates. Fetch //will be run repeatly and forever. It is up the //implementation to throttle the fetch frequency. Fetch() (io.Reader, error) }
type S3 ¶
type S3 struct { Access string Secret string Region string Bucket string Key string //interal state Interval time.Duration // contains filtered or unexported fields }
S3 uses authenticated HEAD requests to poll the status of a given object. If it detects this file has been updated, it will perform an object GET and return its io.Reader stream.
Click to show internal directories.
Click to hide internal directories.