1
0
Fork 1
mirror of https://github.com/vbatts/tar-split.git synced 2024-12-18 11:36:30 +00:00
tar-split/cmd/tar-split
Steve Baker dbab9ab4fb Add --compress flag to tar-split asm
The Go implementation of gzip is the only known to produce compressed
layers with the expected digest hashes.

This change allows compressed tar layer files to be produced, which is
useful for exporting layers from non-Go tools.
2018-10-18 12:57:54 +13:00
..
asm.go Add --compress flag to tar-split asm 2018-10-18 12:57:54 +13:00
checksize.go rename github.com/Sirupsen/logrus -> github.com/sirupsen/logrus 2018-02-23 14:42:06 +01:00
disasm.go rename github.com/Sirupsen/logrus -> github.com/sirupsen/logrus 2018-02-23 14:42:06 +01:00
main.go Add --compress flag to tar-split asm 2018-10-18 12:57:54 +13:00
README.md cmd/tar-split: README usage for checksize 2015-08-10 16:22:36 -04:00
tar_benchmark_test.go *: move tar_benchmark to cmd/tar-split/ 2017-11-08 02:20:30 +11:00

tar-split utility

Installation

go get -u github.com/vbatts/tar-split/cmd/tar-split

Usage

Disassembly

$ sha256sum archive.tar 
d734a748db93ec873392470510b8a1c88929abd8fae2540dc43d5b26f7537868  archive.tar
$ mkdir ./x
$ tar-split disasm --output tar-data.json.gz ./archive.tar | tar -C ./x -x
time="2015-07-20T15:45:04-04:00" level=info msg="created tar-data.json.gz from ./archive.tar (read 204800 bytes)"

Assembly

$ tar-split asm --output new.tar --input ./tar-data.json.gz  --path ./x/
INFO[0000] created new.tar from ./x/ and ./tar-data.json.gz (wrote 204800 bytes)
$ sha256sum new.tar 
d734a748db93ec873392470510b8a1c88929abd8fae2540dc43d5b26f7537868  new.tar

Estimating metadata size

$ tar-split checksize ./archive.tar
inspecting "./archive.tar" (size 200k)
 -- number of files: 28
 -- size of metadata uncompressed: 28k
 -- size of gzip compressed metadata: 1k