databricks-cli/cmd/workspace/repos/provider.go

31 lines
624 B
Go
Raw Normal View History

package repos
import (
"net/url"
"regexp"
"strings"
)
var gitProviders = map[string]string{
"github.com": "gitHub",
"dev.azure.com": "azureDevOpsServices",
"gitlab.com": "gitLab",
"bitbucket.org": "bitbucketCloud",
}
var awsCodeCommitRegexp = regexp.MustCompile(`^git-codecommit\.[^.]+\.amazonaws.com$`)
func DetectProvider(rawURL string) string {
provider := ""
u, err := url.Parse(rawURL)
if err != nil {
return provider
}
if v, ok := gitProviders[strings.ToLower(u.Host)]; ok {
provider = v
} else if awsCodeCommitRegexp.MatchString(u.Host) {
provider = "awsCodeCommit"
}
return provider
}