| 487 | } |
| 488 | |
| 489 | func getManifestParams(target string) (imageName reference.Named, repository string, err error) { |
| 490 | ref, err := reference.ParseNamed(target) |
| 491 | if err != nil { |
| 492 | return nil, "", fmt.Errorf("failed to parse Docker image tag: %v", err) |
| 493 | } |
| 494 | repository = reference.Domain(ref) |
| 495 | refPath := reference.Path(ref) |
| 496 | imageName, err = reference.WithName(refPath) |
| 497 | if err != nil { |
| 498 | return nil, "", fmt.Errorf("failed to create Docker repository: %v", err) |
| 499 | } |
| 500 | return imageName, repository, nil |
| 501 | } |
| 502 | |
| 503 | func getManifestService(ctx context.Context, imageName reference.Named, repository string, registryAuth string, insecureSkipVerify bool) (distribution.ManifestService, error) { |
| 504 | repo, err := distributionclient.NewRepository(imageName, "https://"+repository, newTransportWithRegistryAuth(insecureSkipVerify, registryAuth)) |