refactor: consolidate usage of GetURI (#674)

Signed-off-by: mudler <mudler@localai.io>
This commit is contained in:
Ettore Di Giacinto 2023-06-26 12:25:38 +02:00 committed by GitHub
parent d18f85df46
commit 78f3c3da48
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 110 additions and 137 deletions

View file

@ -1,12 +1,34 @@
package utils
import (
"fmt"
"io/ioutil"
"net/http"
"strings"
)
func GetURI(url string, f func(i []byte) error) error {
const (
githubURI = "github:"
)
func GetURI(url string, f func(url string, i []byte) error) error {
if strings.HasPrefix(url, githubURI) {
parts := strings.Split(url, ":")
repoParts := strings.Split(parts[1], "@")
branch := "main"
if len(repoParts) > 1 {
branch = repoParts[1]
}
repoPath := strings.Split(repoParts[0], "/")
org := repoPath[0]
project := repoPath[1]
projectPath := strings.Join(repoPath[2:], "/")
url = fmt.Sprintf("https://raw.githubusercontent.com/%s/%s/%s/%s", org, project, branch, projectPath)
}
if strings.HasPrefix(url, "file://") {
rawURL := strings.TrimPrefix(url, "file://")
// Read the response body
@ -16,7 +38,7 @@ func GetURI(url string, f func(i []byte) error) error {
}
// Unmarshal YAML data into a struct
return f(body)
return f(url, body)
}
// Send a GET request to the URL
@ -33,5 +55,5 @@ func GetURI(url string, f func(i []byte) error) error {
}
// Unmarshal YAML data into a struct
return f(body)
return f(url, body)
}