Document tarstream

This commit is contained in:
Fedor Korotkiy 2020-04-04 17:28:13 +03:00
parent 9f9efa18c0
commit 3f5dd7b6cc

View file

@ -0,0 +1,21 @@
# tarstream
Вам нужно уметь передавать директорию с артефактами между воркерами. Для этого, вам нужно
реализовать две операции:
```go
package tarstream
import "io"
// Send рекурсивно обходит директорию и сериализует её содержимое в поток w.
func Send(dir string, w io.Writer) error
// Receive читает поток r и материализует содержимое потока внутри dir.
func Receive(dir string, r io.Reader) error
```
- Функции должны корректно обрабатывать директории и обычные файлы.
- executable бит на файлах должен сохраняться.
- Используйте формат [tar](https://golang.org/pkg/archive/tar/)
- Используйте [filepath.Walk](https://golang.org/pkg/path/filepath/) для рекурсивного обхода.