func()

in graph/step.go [302:333]


func (s *Step) GetCmdWithCacheFlags(taskName, registry string) (string, error) {
	var domain, path, firstTagPath string
	var err error

	if strings.ToLower(s.Cache) != enabled {
		return "", errors.New("cache needs to be set to 'enabled' to use build cache")
	}
	if len(s.Tags) == 0 {
		return s.Build, nil
	}

	for idx, tag := range s.Tags {
		domain, path, err = getDomainPath(tag)
		if err != nil {
			return "", errors.Wrap(err, "failed to parse the tag into a domain and path")
		}
		if idx == 0 {
			firstTagPath = path
		}
		if domain != "" {
			break
		}
	}

	if domain == "" {
		domain = registry
		path = firstTagPath
	}

	s.DefaultBuildCacheTag = GetBuildCacheImageTag(taskName, s.ID)
	return addBuildCacheOptsToCmd(domain, path, s.DefaultBuildCacheTag, s.Build)
}