code: func (a Archive) Add(name, path string) error {
  	file, err := os.Open(path) // #nosec
  	if err != nil {
  		return err
  	}
  	defer file.Close() // nolint: errcheck
  	info, err := file.Stat()
  	if err != nil {
  		return err
  	}
  	header, err := tar.FileInfoHeader(info, name)
  	if err != nil {
  		return err
  	}
  	header.Name = name
  	if err = a.tw.WriteHeader(header); err != nil {
  		return err
  	}
  	if info.IsDir() {
  		return nil
  	}
  	_, err = io.Copy(a.tw, file)
  	return err
  }
docs: // Add file to the archive