diff --git a/builtin/filedownloader/downloader/downloader.go b/builtin/filedownloader/downloader/downloader.go index cf72b7892..fe9f45fd9 100644 --- a/builtin/filedownloader/downloader/downloader.go +++ b/builtin/filedownloader/downloader/downloader.go @@ -13,9 +13,14 @@ type Downloader struct { } type DownloaderConfig struct { - src string - dest string - headers http.Header + Src string + Dest string + Headers http.Header +} + +// Config implements Configurable +func (d *Downloader) Config() (interface{}, error) { + return &d.config, nil } func (d *Downloader) DownloadFunc() interface{} { @@ -23,23 +28,23 @@ func (d *Downloader) DownloadFunc() interface{} { } func (d *Downloader) Download() (err error) { - err = getter.Get(d.config.dest, d.config.src, getter.WithGetters( + httpGetter := &getter.HttpGetter{ + Netrc: false, + HeadFirstTimeout: 10 * time.Second, + Header: d.config.Headers, + ReadTimeout: 30 * time.Second, + MaxBytes: 500000000, // 500 MB + } + err = getter.Get(d.config.Dest, d.config.Src, getter.WithGetters( map[string]getter.Getter{ - "http": &getter.HttpGetter{ - Netrc: false, - HeadFirstTimeout: 10 * time.Second, - Header: d.config.headers, - ReadTimeout: 30 * time.Second, - MaxBytes: 500000000, // 500 MB - }, - "file": &getter.FileGetter{ - Copy: true, - }, + "https": httpGetter, + "http": httpGetter, }, )) return } var ( - _ component.Downloader = (*Downloader)(nil) + _ component.Downloader = (*Downloader)(nil) + _ component.Configurable = (*Downloader)(nil) )