()
| 746 | } |
| 747 | |
| 748 | func (p Port) cloneAllRepos() error { |
| 749 | buildConfig := p.MatchedConfig |
| 750 | clonedPorts = map[string]bool{} |
| 751 | |
| 752 | if p.Parent == "" && (len(buildConfig.DevDependencies) > 0 || len(buildConfig.Dependencies) > 0) { |
| 753 | title := fmt.Sprintf("[check clone status of all repos: %s]", p.NameVersion()) |
| 754 | color.Printf(color.Title, "\n%s\n", title) |
| 755 | } |
| 756 | |
| 757 | for _, nameVersion := range buildConfig.DevDependencies { |
| 758 | // Skip Init() for already-cloned ports. |
| 759 | key := nameVersion + "[dev]" |
| 760 | if clonedPorts[key] { |
| 761 | continue |
| 762 | } |
| 763 | |
| 764 | port := Port{ |
| 765 | DevDep: true, |
| 766 | Parent: p.NameVersion(), |
| 767 | } |
| 768 | if err := port.Init(p.ctx, nameVersion); err != nil { |
| 769 | return err |
| 770 | } |
| 771 | |
| 772 | // Ports with a checksum are restored from the artifact pkgcache, so |
| 773 | // their repo isn't cloned. Only checksum-less ports get cloned here. |
| 774 | if port.Package.Checksum == "" { |
| 775 | if err := port.Clone(); err != nil { |
| 776 | return err |
| 777 | } |
| 778 | } |
| 779 | clonedPorts[key] = true |
| 780 | color.Printf(color.Hint, "✔ %s\n", nameVersion) |
| 781 | } |
| 782 | for _, nameVersion := range buildConfig.Dependencies { |
| 783 | // Skip Init() for already-cloned ports. |
| 784 | key := nameVersion |
| 785 | if clonedPorts[key] { |
| 786 | continue |
| 787 | } |
| 788 | |
| 789 | port := Port{ |
| 790 | DevDep: p.DevDep, |
| 791 | HostDep: p.DevDep || p.HostDep, |
| 792 | Parent: p.NameVersion(), |
| 793 | } |
| 794 | if err := port.Init(p.ctx, nameVersion); err != nil { |
| 795 | return err |
| 796 | } |
| 797 | |
| 798 | // Ports with a checksum are restored from the artifact pkgcache, so |
| 799 | // their repo isn't cloned. Only checksum-less ports get cloned here. |
| 800 | if port.Package.Checksum == "" { |
| 801 | if err := port.Clone(); err != nil { |
| 802 | return err |
| 803 | } |
| 804 | } |
| 805 | clonedPorts[key] = true |
no test coverage detected