MCPcopy Index your code
hub / github.com/jetify-com/devbox / GetStorePaths

Method GetStorePaths

internal/devpkg/package.go:764–788  ·  view source on GitHub ↗
(ctx context.Context, w io.Writer)

Source from the content-addressed store, hash-verified

762 "`devbox install --tidy-lockfile`\n"
763
764func (p *Package) GetStorePaths(ctx context.Context, w io.Writer) ([]string, error) {
765 storePathsForPackage, err := p.GetResolvedStorePaths()
766 if err != nil || len(storePathsForPackage) > 0 {
767 return storePathsForPackage, err
768 }
769
770 if featureflag.TidyWarning.Enabled() && p.IsDevboxPackage {
771 // No fast path, we need to query nix.
772 ux.FHidableWarning(ctx, w, MissingStorePathsWarning, p.Raw)
773 }
774
775 installables, err := p.Installables()
776 if err != nil {
777 return nil, err
778 }
779 for _, installable := range installables {
780 storePathsForInstallable, err := nix.StorePathsFromInstallable(
781 ctx, installable, p.HasAllowInsecure())
782 if err != nil {
783 return nil, packageInstallErrorHandler(err, p, installable)
784 }
785 storePathsForPackage = append(storePathsForPackage, storePathsForInstallable...)
786 }
787 return storePathsForPackage, nil
788}
789
790// packageInstallErrorHandler checks for two kinds of errors to print custom messages for so that Devbox users
791// can work around them:

Callers 2

AreAllOutputsInCacheMethod · 0.95

Calls 7

GetResolvedStorePathsMethod · 0.95
InstallablesMethod · 0.95
HasAllowInsecureMethod · 0.95
FHidableWarningFunction · 0.92
EnabledMethod · 0.80

Tested by

no test coverage detected