shad-go/distbuild/pkg/tarstream/README.md
2022-03-08 18:56:01 +03:00

1,015 B
Raw Blame History

tarstream

Вам нужно уметь передавать директорию с артефактами между воркерами. Для этого вам нужно реализовать две операции:

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
  • Используйте filepath.Walk для рекурсивного обхода.