in main/files.go [23:48]
func downloadAndProcessURL(ctx *log.Context, url, downloadDir string, cfg *handlerSettings) error {
fn, err := urlToFileName(url)
if err != nil {
return err
}
if !urlutil.IsValidUrl(url) {
return fmt.Errorf("[REDACTED] is not a valid url")
}
dl, err := getDownloaders(url, cfg.StorageAccountName, cfg.StorageAccountKey, cfg.ManagedIdentity)
if err != nil {
return err
}
fp := filepath.Join(downloadDir, fn)
const mode = 0500 // we assume users download scripts to execute
if _, err := download.SaveTo(ctx, dl, fp, mode); err != nil {
return err
}
if cfg.SkipDos2Unix == false {
err = postProcessFile(fp)
}
return errors.Wrapf(err, "failed to post-process '%s'", fn)
}