diff options
author | Florian Klink <flokli@flokli.de> | 2023-10-17T22·27+0100 |
---|---|---|
committer | clbot <clbot@tvl.fyi> | 2023-10-22T17·04+0000 |
commit | 9118dc8a5056ad0cdb91a0688f50ac5d6e28a1ec (patch) | |
tree | 5d705773016676896bfe35a2da17581ba4827e61 /tvix/store-go/pathinfo.go | |
parent | ba9a62ca9f82f00aec1b8ad163252476cbb5322a (diff) |
refactor(tvix/store): move deriver field into narinfo submessage r/6869
This information is present in the .narinfo files, it should have gone there. Change-Id: Ib43d0cf30c2795bf1fe77c46646174353ade0458 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9794 Autosubmit: flokli <flokli@flokli.de> Reviewed-by: Connor Brewster <cbrewster@hey.com> Tested-by: BuildkiteCI
Diffstat (limited to 'tvix/store-go/pathinfo.go')
-rw-r--r-- | tvix/store-go/pathinfo.go | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/tvix/store-go/pathinfo.go b/tvix/store-go/pathinfo.go index 8c0b94f200c1..d0384c4fe25c 100644 --- a/tvix/store-go/pathinfo.go +++ b/tvix/store-go/pathinfo.go @@ -49,6 +49,20 @@ func (p *PathInfo) Validate() (*storepath.StorePath, error) { ) } } + + // If the Deriver field is populated, ensure it parses to a StorePath. + // We can't check for it to *not* end with .drv, as the .drv files produced by + // recursive Nix end with multiple .drv suffixes, and only one is popped when + // converting to this field. + if deriver := narInfo.GetDeriver(); deriver != nil { + deriverStorePath := storepath.StorePath{ + Name: string(deriver.GetName()), + Digest: deriver.GetDigest(), + } + if err := deriverStorePath.Validate(); err != nil { + return nil, fmt.Errorf("invalid deriver field: %w", err) + } + } } // ensure there is a (root) node present @@ -81,19 +95,5 @@ func (p *PathInfo) Validate() (*storepath.StorePath, error) { return nil, fmt.Errorf("unable to parse root node name %s as StorePath: %w", rootNodeName, err) } - // If the Deriver field is populated, ensure it parses to a StorePath. - // We can't check for it to *not* end with .drv, as the .drv files produced by - // recursive Nix end with multiple .drv suffixes, and only one is popped when - // converting to this field. - if p.Deriver != nil { - deriverStorePath := storepath.StorePath{ - Name: string(p.Deriver.GetName()), - Digest: p.Deriver.GetDigest(), - } - if err := deriverStorePath.Validate(); err != nil { - return nil, fmt.Errorf("invalid deriver field: %w", err) - } - } - return storePath, nil } |