def update_local_auth_user_setting(user_name_min_len, pass_min_len, pass_max_len, pass_complexity, pass_repeat_char_max, pass_available_day, pass_change_interval_minute): backend_handler( request.post( 'http://localhost:9090/cluster/nasusermanager', { 'opt': 'globaluserattrset', 'userInfo': { 'gUserAttr': { 'userNameMinLen': user_name_min_len } } }, get_token())) backend_handler( request.post( 'http://localhost:9090/cluster/nasusermanager', { 'opt': 'globalpasswordattrset', 'userInfo': { 'gUserPasswordAttr': { 'passMinLen': pass_min_len, 'passMaxLen': pass_max_len, 'passComplexity': pass_complexity, 'passRepeatCharMax': pass_repeat_char_max, 'passAvailableDay': pass_available_day, 'passChangeIntervalMinute': pass_change_interval_minute } } }, get_token()))
def create_buddy_group(param): if param: return backend_handler( request.post('http://localhost:9090/cluster/createbuddymirror', param, get_token())) else: return request.post('http://localhost:9090/cluster/createbuddymirror', param, get_token())
def get_local_auth_user_setting(): user_name_setting = backend_handler( request.post('http://localhost:9090/cluster/nasusermanager', {'opt': 'globaluserattrquery'}, get_token())) user_passwd_setting = backend_handler( request.post('http://localhost:9090/cluster/nasusermanager', {'opt': 'globalpasswordattrquery'}, get_token())) user_setting = {} user_setting.update(user_name_setting) user_setting.update(user_passwd_setting) return user_setting
def update_snapshot_setting(total, manual, auto): return backend_handler( request.post('http://localhost:9090/cluster/applysnapconf', { 'total': total, 'manual': manual, 'schedule': auto }, get_token()))
def delete_nfs_share(server, path): return backend_handler( request.post('http://localhost:9090/cluster/nfsdeleteshare', {'shareList': [{ 'server': server, 'path': path }]}, get_token()))
def delete_users_or_groups_quota(pool_id, id_type, id_list): return backend_handler( request.post('http://localhost:9090/cluster/deletequota', { 'poolId': pool_id, 'idType': id_type, 'idList': id_list }, get_token()))
def create_dir(path, no_mirror): return backend_handler( request.post('http://localhost:9090/cluster/createdir', {'dirInfos': [{ 'path': path, 'noMirror': no_mirror }]}, get_token()))
def delete_client_in_nfs_share(server, ip, path): return backend_handler( request.post('http://localhost:9090/cluster/nfsdeleteclient', { 'server': server, 'path': path, 'clientList': [ip] }, get_token()))
def update_nfs_share(server, path, description): return backend_handler( request.post('http://localhost:9090/cluster/nfsmodifyshare', { 'server': server, 'path': path, 'description': description }, get_token()))
def add_targets_to_storage_pool(pool_id, targets): return backend_handler( request.post('http://localhost:9090/cluster/poolexpand', { 'poolId': str(pool_id), 'targets': targets, 'buddyGroups': '' }, get_token()))
def remove_buddy_groups_from_storage_pool(pool_id, buddy_groups): return backend_handler( request.post('http://localhost:9090/cluster/poolshrink', { 'poolId': str(pool_id), 'targets': '', 'buddyGroups': buddy_groups }, get_token()))
def create_storage_pool(name, targets, buddy_groups): data = backend_handler( request.post('http://localhost:9090/cluster/createpool', { 'nameDesc': name, 'targets': targets, 'mirrorGroups': buddy_groups }, get_token())) return data['poolId']
def create_nas_server(ip, path): return backend_handler( request.post('http://localhost:9090/cluster/nasmanager', { 'opt': 'nasAdd', 'nasServerList': [{ 'clientIp': ip, 'nasRoot': path }] }, get_token()))
def create_nfs_share(server, path, description, client_list): return backend_handler( request.post( 'http://localhost:9090/cluster/addshareinfo', { 'server': server, 'path': path, 'description': description, 'clientList': client_list }, get_token()))
def set_pattern(dir_path, num_targets, chunk_size, buddy_mirror): return backend_handler( request.post( 'http://localhost:9090/cluster/setpattern', { 'dirPath': dir_path, 'numTargets': str(num_targets), 'chunkSize': str(chunk_size), 'buddyMirror': buddy_mirror }, get_token()))
def delete_local_auth_user_group(name): return backend_handler( request.post( 'http://localhost:9090/cluster/nasusermanager', { 'opt': 'localgroupdelete', 'userInfo': { 'localGroupList': [{ 'groupName': name }] } }, get_token()))
def update_users_or_groups_quota(pool_id, id_type, name, size_limit, inode_limit): return backend_handler( request.post( 'http://localhost:9090/cluster/modifyquota', { 'poolId': pool_id, 'idType': id_type, 'name': name, 'sizeLimit': size_limit, 'inodeLimit': inode_limit }, get_token()))
def get_local_auth_user_validity_period(name): users = backend_handler( request.post('http://localhost:9090/cluster/nasusermanager', {'opt': 'localuserquery'}, get_token())) users = map( lambda user: { 'name': user['userName'], 'validityPeriod': user['passwdindate'] }, users) user = filter(lambda user: user['name'] == name, users)[0] return user['validityPeriod']
def update_local_auth_user_status(name, status): opt = 'locallockuserrecover' if status else 'localuserlock' return backend_handler( request.post('http://localhost:9090/cluster/nasusermanager', { 'opt': opt, 'userInfo': { 'localUserList': [{ 'userName': name }] } }, get_token()))
def delete_cifs_share(server, share_name): return backend_handler( request.post( 'http://localhost:9090/cluster/nascifssharemanager', { 'opt': 'cifsdeleteshare', 'clientCifsInfo': { 'serverIp': server, 'cifsShareList': [{ 'name': share_name }] } }, get_token()))
def update_local_auth_user_passwd(name, passwd): return backend_handler( request.post( 'http://localhost:9090/cluster/nasusermanager', { 'opt': 'localuserchange', 'userInfo': { 'localUserList': [{ 'userName': name, 'passWord': passwd }] } }, get_token()))
def create_local_auth_user_group(name, desc): return backend_handler( request.post( 'http://localhost:9090/cluster/nasusermanager', { 'opt': 'localgroupadd', 'userInfo': { 'localGroupList': [{ 'groupName': name, 'desc': desc }] } }, get_token()))
def remove_local_auth_user_from_group(name, group): return backend_handler( request.post( 'http://localhost:9090/cluster/nasusermanager', { 'opt': 'localgroupremoveuser', 'userInfo': { 'localUserList': [{ 'userName': name, 'secondaryGroup': [group] }] } }, get_token()))
def update_local_auth_user_desc_and_primary_group(name, desc, primary): return backend_handler( request.post( 'http://localhost:9090/cluster/nasusermanager', { 'opt': 'localuserchange', 'userInfo': { 'localUserList': [{ 'userName': name, 'desc': desc, 'primaryGroup': primary }] } }, get_token()))
def repair_file_system(): return backend_handler( request.post( 'http://localhost:9090/cluster/fscheck', { 'opt': 'orcafsckcmd', 'orcaCheckFS': { 'checkFS': True, 'overwriteDbFile': True, 'forceRestart': True, 'quotaEnabled': True, 'automatic': True } }, get_token()))
def create_local_auth_user(name, desc, passwd, primary, secondary): return backend_handler( request.post( 'http://localhost:9090/cluster/nasusermanager', { 'opt': 'localuseradd', 'userInfo': { 'localUserList': [{ 'userName': name, 'passWord': passwd, 'desc': desc, 'primaryGroup': primary, 'secondaryGroup': secondary }] } }, get_token()))
def get_file_system_status(): data = backend_handler( request.post( 'http://localhost:9090/cluster/fscheck', { 'opt': 'orcafsckquery', 'orcaFsCKStatus': { 'Opt': 'orcafsckquerystatus' } }, get_token())) status = data['OrcaFsCheckStatus'] return { 'step': status['Step'], 'status': status['Status'], 'log': status['Logs'], 'date': status['Dates'] }
def update_cifs_share(server, share_name, desc, oplock, notify, offline_cache_mode): return backend_handler( request.post( 'http://localhost:9090/cluster/nascifssharemanager', { 'opt': 'cifschangeshare', 'clientCifsInfo': { 'serverIp': server, 'cifsShareList': [{ 'name': share_name, 'desc': desc, 'oplock': oplock, 'notify': notify, 'cacheMode': offline_cache_mode }] } }, get_token()))
def remove_user_or_group_from_cifs_share(server, share_name, name, user_or_group_type): return backend_handler( request.post( 'http://localhost:9090/cluster/nascifssharemanager', { 'opt': 'cifsdeleteclient', 'clientCifsInfo': { 'serverIp': server, 'cifsShareList': [{ 'name': share_name, 'userList': [{ 'name': name, 'clientType': user_or_group_type }] }] } }, get_token()))
def update_user_or_group_in_cifs_share(server, share_name, name, user_or_group_type, permission): return backend_handler( request.post( 'http://localhost:9090/cluster/nascifssharemanager', { 'opt': 'cifschangeclient', 'clientCifsInfo': { 'serverIp': server, 'cifsShareList': [{ 'name': share_name, 'userList': [{ 'name': name, 'clientType': user_or_group_type, 'permission': permission }] }] } }, get_token()))