docs: def send_dir(self, local_path, remote_path):
          """Send a directory to the remote host.
          :param local_path: the local path of the directory
          :type local_path: str
          :param remote_path: the remote path of the directory
          :type remote_path: str
          :return: the file attributes
          :rtype: paramiko.sftp_attr.SFTPAttributes
          """
          directory, parent = os.path.split(local_path)
          os.chdir(directory)
          self._check_started()
          sftp = paramiko.SFTPClient.from_transport(self._transport)
          for walker in os.walk(parent):
              try:
                  sftp.mkdir(os.path.join(remote_path, walker[0]))
              except Exception:
                  LOG.info('directory %s exists' % walker[0])
              for file in walker[2]:
                  sftp.put(os.path.join(walker[0], file),
                           os.path.join(remote_path, walker[0], file))