diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-05-04 02:07:52 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-05-04 02:29:56 +0900 |
| commit | da11b26ec16ef9ed61045fdbb03c4090286bfeba (patch) | |
| tree | ef6120c9c274276eb90976dc49a1a0808a3914b9 /internal | |
| parent | 024489e800a3324e2305546598b606357606e274 (diff) | |
container/initoverlay: configure via fsconfig
This works around the page size limit at the cost of negligible performance regressions.
Closes #34.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal')
| -rw-r--r-- | internal/pkg/testdata/main.go | 36 |
1 files changed, 8 insertions, 28 deletions
diff --git a/internal/pkg/testdata/main.go b/internal/pkg/testdata/main.go index f79f7917..564a1736 100644 --- a/internal/pkg/testdata/main.go +++ b/internal/pkg/testdata/main.go @@ -14,7 +14,6 @@ import ( "strconv" "strings" - "hakurei.app/check" "hakurei.app/fhs" "hakurei.app/vfs" ) @@ -159,43 +158,24 @@ func main() { m.Source != "overlay" || m.FsType != "overlay" { log.Fatal("unexpected root mount entry") } - var lowerdir string + var lowerdir []string for _, o := range strings.Split(m.FsOptstr, ",") { - const lowerdirKey = "lowerdir=" + const lowerdirKey = "lowerdir+=" if strings.HasPrefix(o, lowerdirKey) { - lowerdir = o[len(lowerdirKey):] + lowerdir = append(lowerdir, o[len(lowerdirKey):]) } } if !layers { - if filepath.Base(lowerdir) != checksumEmptyDir { + if len(lowerdir) != 1 || filepath.Base(lowerdir[0]) != checksumEmptyDir { log.Fatal("unexpected artifact checksum") } } else { ident = "p1t_drXr34i-jZNuxDMLaMOdL6tZvQqhavNafGynGqxOZoXAUTSn7kqNh3Ovv3DT" - lowerdirsEscaped := strings.Split(lowerdir, ":") - lowerdirs := lowerdirsEscaped[:0] - // ignore the option separator since it does not appear in ident - for i, e := range lowerdirsEscaped { - if len(e) > 0 && - e[len(e)-1] == check.SpecialOverlayEscape[0] && - (len(e) == 1 || e[len(e)-2] != check.SpecialOverlayEscape[0]) { - // ignore escaped pathname separator since it does not - // appear in ident - - e = e[:len(e)-1] - if len(lowerdirsEscaped) != i { - lowerdirsEscaped[i+1] = e + lowerdirsEscaped[i+1] - continue - } - } - lowerdirs = append(lowerdirs, e) - } - - if len(lowerdirs) != 2 || - filepath.Base(lowerdirs[0]) != "MGWmEfjut2QE2xPJwTsmUzpff4BN_FEnQ7T0j7gvUCCiugJQNwqt9m151fm9D1yU" || - filepath.Base(lowerdirs[1]) != "nY_CUdiaUM1OL4cPr5TS92FCJ3rCRV7Hm5oVTzAvMXwC03_QnTRfQ5PPs7mOU9fK" { - log.Fatalf("unexpected lowerdirs %s", strings.Join(lowerdirs, ", ")) + if len(lowerdir) != 2 || + filepath.Base(lowerdir[0]) != "MGWmEfjut2QE2xPJwTsmUzpff4BN_FEnQ7T0j7gvUCCiugJQNwqt9m151fm9D1yU" || + filepath.Base(lowerdir[1]) != "nY_CUdiaUM1OL4cPr5TS92FCJ3rCRV7Hm5oVTzAvMXwC03_QnTRfQ5PPs7mOU9fK" { + log.Fatalf("unexpected lowerdirs %s", strings.Join(lowerdir, ", ")) } } } else { |
