MCPcopy Create free account
hub / github.com/Scalingo/cli / GetTypeFromURL

Function GetTypeFromURL

scmintegrations/utils.go:21–44  ·  view source on GitHub ↗
(ctx context.Context, integrationURL string)

Source from the content-addressed store, hash-verified

19}
20
21func GetTypeFromURL(ctx context.Context, integrationURL string) (scalingo.SCMType, error) {
22 c, err := config.ScalingoClient(ctx)
23 if err != nil {
24 return "", errors.Wrapf(ctx, err, "fail to get Scalingo client")
25 }
26
27 integrations, err := c.SCMIntegrationsList(ctx)
28 if err != nil {
29 return "", errors.Wrapf(ctx, err, "fail to list SCM integrations")
30 }
31
32 u, err := url.Parse(integrationURL)
33 if err != nil {
34 return "", errors.Wrapf(ctx, err, "fail to parse the integration URL")
35 }
36 integrationURLHost := fmt.Sprintf("%s://%s", u.Scheme, u.Host)
37 for _, i := range integrations {
38 if i.URL == integrationURLHost {
39 return i.SCMType, nil
40 }
41 }
42
43 return "", ErrNotFound
44}

Callers 1

Calls 1

ScalingoClientFunction · 0.92

Tested by

no test coverage detected