func()

in builder/builder.go [346:372]


func (b *Builder) getPopulateDigests(ctx context.Context, dependencies []*image.Dependencies, usingBuildkit bool, registryCreds graph.RegistryLoginCredentials) error {
	dockerStoreDigester := newDockerStoreDigest(b.procManager, b.debug)

	var baseImgDigester DigestHelper
	baseImgDigester = dockerStoreDigester
	if usingBuildkit {
		baseImgDigester = newRemoteDigest(registryCreds)
	}

	for _, entry := range dependencies {
		// Always check 'entry.Image' in the Docker store,
		// If it was pushed, 'docker inspect' will return a Digest, if not, it will return empty.
		if err := dockerStoreDigester.PopulateDigest(ctx, entry.Image); err != nil {
			return err
		}

		if err := baseImgDigester.PopulateDigest(ctx, entry.Runtime); err != nil {
			return err
		}
		for _, buildtime := range entry.Buildtime {
			if err := baseImgDigester.PopulateDigest(ctx, buildtime); err != nil {
				return err
			}
		}
	}
	return nil
}