Ejemplo n.º 1
0
    def create_home_dir(self, home_path=None):
        if home_path is None:
            home_path = self.get_home_dir()

        from hadoop.hdfs_site import get_umask_mode
        from useradmin.conf import HOME_DIR_PERMISSIONS, USE_HOME_DIR_PERMISSIONS
        mode = int(HOME_DIR_PERMISSIONS.get(),
                   8) if USE_HOME_DIR_PERMISSIONS.get() else (
                       0o777 & (0o1777 ^ get_umask_mode()))
        if not self.exists(home_path):
            user = self.user
            try:
                try:
                    self.setuser(self.superuser)
                    self.mkdir(home_path)
                    self.chmod(home_path, mode)
                    self.chown(home_path, user)
                    try:  # Handle the case when there is no group with the same name as the user.
                        self.chown(home_path, group=user)
                    except IOError:
                        LOG.exception(
                            'Failed to change the group of "{}" to "{}" when creating a home directory '
                            'for user "{}"'.format(home_path, user, user))
                except IOError:
                    msg = 'Failed to create home dir ("%s") as superuser %s' % (
                        home_path, self.superuser)
                    LOG.exception(msg)
                    raise
            finally:
                self.setuser(user)
Ejemplo n.º 2
0
 def from_config(cls, hdfs_config, auth_provider):
   return cls(url=hdfs_config.WEBHDFS_URL.get(),
              fs_defaultfs=hdfs_config.FS_DEFAULTFS.get(),
              logical_name=None,
              security_enabled=False,
              ssl_cert_ca_verify=False,
              temp_dir=None,
              umask=get_umask_mode(),
              hdfs_supergroup=None,
              auth_provider=auth_provider)
Ejemplo n.º 3
0
    def from_config(cls, hdfs_config):
        fs_defaultfs = hdfs_config.FS_DEFAULTFS.get()

        return cls(url=_get_service_url(hdfs_config),
                   fs_defaultfs=fs_defaultfs,
                   logical_name=hdfs_config.LOGICAL_NAME.get(),
                   security_enabled=hdfs_config.SECURITY_ENABLED.get(),
                   ssl_cert_ca_verify=hdfs_config.SSL_CERT_CA_VERIFY.get(),
                   temp_dir=hdfs_config.TEMP_DIR.get(),
                   umask=get_umask_mode())
Ejemplo n.º 4
0
  def from_config(cls, hdfs_config):
    fs_defaultfs = hdfs_config.FS_DEFAULTFS.get()

    return cls(url=_get_service_url(hdfs_config),
               fs_defaultfs=fs_defaultfs,
               logical_name=hdfs_config.LOGICAL_NAME.get(),
               security_enabled=hdfs_config.SECURITY_ENABLED.get(),
               ssl_cert_ca_verify=hdfs_config.SSL_CERT_CA_VERIFY.get(),
               temp_dir=hdfs_config.TEMP_DIR.get(),
               umask=get_umask_mode())
Ejemplo n.º 5
0
 def from_config(cls, hdfs_config, auth_provider):
     fs_defaultfs = get_default_adls_fs()
     url = get_default_adls_url()
     return cls(url=url,
                fs_defaultfs=fs_defaultfs,
                logical_name=None,
                security_enabled=False,
                ssl_cert_ca_verify=False,
                temp_dir=None,
                umask=get_umask_mode(),
                hdfs_supergroup=None,
                auth_provider=auth_provider)
Ejemplo n.º 6
0
 def from_config(cls, hdfs_config, auth_provider):
     credentials = auth_provider.get_credentials()
     return cls(url=hdfs_config.WEBHDFS_URL.get(),
                fs_defaultfs=hdfs_config.FS_DEFAULTFS.get(),
                logical_name=None,
                security_enabled=False,
                ssl_cert_ca_verify=False,
                temp_dir=None,
                umask=get_umask_mode(),
                hdfs_supergroup=None,
                access_token=credentials.get('access_token'),
                token_type=credentials.get('token_type'),
                expiration=int(credentials.get('expires_on')) *
                1000 if credentials.get('expires_on') is not None else None)