Skip to content

Commit edea11a

Browse files
committed
feat: add DLAYER_BUFFER_SIZE
1 parent 8738e9c commit edea11a

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

main.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package main
22

33
import (
44
"archive/tar"
5+
"bufio"
56
"bytes"
67
"encoding/json"
78
"flag"
@@ -197,8 +198,15 @@ func readImage(rc io.ReadCloser) (*Image, error) {
197198
} `json:"history,omitempty"`
198199
}
199200
files := make(map[string][]*FileInfo)
200-
201-
archive := tar.NewReader(rc)
201+
var r io.Reader = rc
202+
if bufSize := os.Getenv("DLAYER_BUFFER_SIZE"); bufSize != "" {
203+
bufBytes, err := humanize.ParseBytes(bufSize)
204+
if err != nil {
205+
return nil, fmt.Errorf("parse buffer size: %w", err)
206+
}
207+
r = bufio.NewReaderSize(r, int(bufBytes))
208+
}
209+
archive := tar.NewReader(r)
202210
for {
203211
hdr, err := archive.Next()
204212
if err == io.EOF {

0 commit comments

Comments
 (0)