func writeFileContentToArchive()

in archiver/archive.go [103:130]


func writeFileContentToArchive(path string, writer io.Writer) (err error) {
	var f *os.File
	f, err = os.Open(path)
	if err != nil {
		return fmt.Errorf("opening file failed (path: %s): %w", path, err)
	}
	defer func() {
		var multiErr multierror.Errors
		if err != nil {
			multiErr = append(multiErr, err)
		}

		err = f.Close()
		if err != nil {
			multiErr = append(multiErr, fmt.Errorf("closing file failed (path: %s): %w", path, err))
		}

		if multiErr != nil {
			err = multiErr.Err()
		}
	}()

	_, err = io.Copy(writer, f)
	if err != nil {
		return fmt.Errorf("copying file content failed (path: %s): %w", path, err)
	}
	return nil
}