func (lb *FileBackend) GetImageInfo(dockerURL string) ([]string, *attr.ParsedDockerURL, error) { parsedDockerURL := attr.ParseDockerURL(dockerURL) appImageID, parsedDockerURL, err := getImageID(lb.file, parsedDockerURL) if err != nil { return nil, nil, fmt.Errorf("error getting ImageID: %v", err) } ancestry, err := getAncestry(lb.file, appImageID) if err != nil { return nil, nil, fmt.Errorf("error getting ancestry: %v", err) } return ancestry, parsedDockerURL, nil }
func (rb *RepoBackend) GetImageInfo(url string) ([]string, *attr.ParsedDockerURL, error) { dockerURL := attr.ParseDockerURL(url) var supportsV2, ok bool if supportsV2, ok = rb.hostsV2Support[dockerURL.IndexURL]; !ok { var err error supportsV2, err = rb.supportsV2(dockerURL.IndexURL) if err != nil { return nil, nil, err } rb.hostsV2Support[dockerURL.IndexURL] = supportsV2 } if supportsV2 { return rb.getImageInfoV2(dockerURL) } else { return rb.getImageInfoV1(dockerURL) } }