diff --git a/src/hblend/configuration/configuration.go b/src/hblend/configuration/configuration.go index dc38d0e..9c9f7be 100644 --- a/src/hblend/configuration/configuration.go +++ b/src/hblend/configuration/configuration.go @@ -16,6 +16,7 @@ var Component = "" var Verbose = false var Help = false var Clean = false +var Insecure = false func Parse() { @@ -24,6 +25,7 @@ func Parse() { flag.BoolVar(&Clean, "clean", false, "Clean output directory") flag.BoolVar(&Verbose, "v", false, "Verbose: show extra information.") flag.BoolVar(&Help, "h", false, "Show this help") + flag.BoolVar(&Insecure, "insecure", false, "Allow insecure https connections") flag.Parse() diff --git a/src/hblend/utils/utils.go b/src/hblend/utils/utils.go index 32809f5..2464e5a 100644 --- a/src/hblend/utils/utils.go +++ b/src/hblend/utils/utils.go @@ -2,6 +2,7 @@ package utils import ( "crypto/md5" + "crypto/tls" "encoding/hex" "errors" "fmt" @@ -11,6 +12,8 @@ import ( "os" "path" "strings" + + config "hblend/configuration" ) func ReadFileBytes(filename string) []byte { @@ -77,10 +80,18 @@ func EnsureDirs(filename string) error { } func CopyFileRemote(src, dst string) error { - EnsureDirs(dst) - response, response_err := http.Get(src) + // Configure transport layer + tr := &http.Transport{ + TLSClientConfig: &tls.Config{ + InsecureSkipVerify: config.Insecure, + }, + } + client := &http.Client{Transport: tr} + + // Do the request + response, response_err := client.Get(src) if response_err != nil { return response_err }