code: def _copy_dir_recursive(src_rel, dst_rel):
          
          src = os.path.expanduser(src_rel)
          dst = os.path.expanduser(dst_rel)
          try:
              shutil.copytree(src, dst)
              logger.info('Files copied from %s to %s', src, dst)
          except OSError as exc:
              if exc.errno == errno.ENOTDIR:
                  shutil.copy(src, dst)
                  logger.info('Files copied from %s to %s', src, dst)
              else:
                  raise
docs: Copy contents of one directory to another. `dst_rel` dir cannot
          exist. Source: http://stackoverflow.com/a/1994840
          TODO: Move this to file_operations.py module.
          :type src_rel: str
          :param src_rel: Directory to be copied.
          :type dst_rel: str
          :param dst_rel: Directory to be created with contents of ``src_rel``.