コード例 #1
0
 def _action(self):
     params = web.input()
     node = session.runtime.node
     clusternoderaidprogress = {}
     clusternoderaidprogress = clusnodelib.func_node_raid_progress(
         node, params['raidname'])
     return simplejson.dumps(clusternoderaidprogress)
コード例 #2
0
 def _action(self):
     params = web.input()
     unit = 'unit' in params and params['unit'] or None
     if unit:
         session.runtime.unit = unit
         clusterservices = clusservicelib.func_service_list_all(unit)
         return simplejson.dumps(clusterservices)
コード例 #3
0
 def _action(self):
     #node = session.runtime.node
     node = ''
     params = web.input()
     retcode = clusnodelib.func_node_disk_muti_op(params['type'], node,
                                                  params['disk_str'])
     return retcode
コード例 #4
0
 def _action(self):
     #node = session.runtime.node
     params = web.input()
     node = params['node']
     clusternoderaidname = params['clusternoderaidname']
     retcode = clusnodelib.func_node_raid_del(node, clusternoderaidname)
     return retcode
コード例 #5
0
 def _action(self):
     params = web.input()
     servicename = params['service_name']
     nodename = params['node_name']
     tar_ip = params['targetip']
     ret = clusservicelib.func_service_del_nfs_links(servicename, nodename, tar_ip)
     return ret
コード例 #6
0
 def _action(self):
     params = web.input()
     service_name = params['service_name']
     clusterservicename = params['service_name']
     userip = params['userip']
     retcode = clusservicelib.func_service_nfs_del_user(clusterservicename, userip)
     return retcode
コード例 #7
0
 def _action(self):
     params = web.input()
     servicename = params['service_name']
     nodename = params['node_name']
     pid = params['pid']
     ret = clusservicelib.func_service_del_cifs_links(servicename, nodename, pid)
     return ret
コード例 #8
0
 def _action(self):
     params = web.input()
     clusterservicename = params['clusterservicename']
     type = params['type']
     clusterserviceoption = 'status'
     retcode = clusservicelib.func_service_export(clusterserviceoption, type, clusterservicename)
     return simplejson.dumps(retcode)
コード例 #9
0
ファイル: index.py プロジェクト: lpx0309/digioceanfs_gui
 def _action(self):
     params = web.input()
     clusternodename = params['clusternodename']
     clusternodedisk = clusnodelib.func_node_disk_info(clusternodename)
     clusternodedisklight_status = clusnodelib.func_node_get_disk_lightstatus(
         clusternodename)
     diskinfo = []
     for disk in clusternodedisk:
         if disk['position'] == "-1":
             if disk['devname'] not in clusternodedisklight_status:
                 disk['light_status'] = 'greenlight'
             else:
                 disk['light_status'] = 'redlight'
             diskinfo.append(disk)
             print >> sys.stderr, disk
         else:
             if disk['devname'] not in clusternodedisklight_status:
                 disk['light_status'] = 'greenlight'
             else:
                 disk['light_status'] = 'redlight'
             diskinfo.append(disk)
     print >> sys.stderr, '---------------------------------------------------'
     print >> sys.stderr, diskinfo
     print >> sys.stderr, '---------------------------------------------------'
     return simplejson.dumps(diskinfo)
コード例 #10
0
 def _action(self):
     device_id = ''
     params = web.input()
     #nodename = params['nodename'] 
     nodename = 'node-1'
     device_id = clusnodelib.func_node_get_device_id(nodename)
     return device_id
コード例 #11
0
 def _action(self):
     params = web.input()
     node = session.runtime.node
     unit = 'unit' in params and params['unit'] or None
     if unit:
         session.runtime.unit = unit
     clusternodediskinfo = clusnodelib.func_node_disk_info(node, unit)
     return simplejson.dumps(clusternodediskinfo)
コード例 #12
0
 def _action(self):
     node = session.runtime.node
     params = web.input(clusterraiddev_hs=[])
     clusterraiddev_hs = ' '.join(params['clusterraiddev_hs'])
     clusterraidname = params['clusterraidname']
     retcode = clusnodelib.func_node_raid_del_hs(node, clusterraidname,
                                                 clusterraiddev_hs)
     return retcode
コード例 #13
0
 def _action(self):
     params = web.input()
     service_name = params['service_name']
     clusterservicename = params['service_name']
     username = params['username']
     password = params['password']
     retcode = clusservicelib.func_service_cifs_add_user(clusterservicename, username, password)
     return retcode
コード例 #14
0
ファイル: index.py プロジェクト: lpx0309/digioceanfs_gui
    def POST(self):
        params = web.input()
        name = None
        passwd = None
        enpasswd = None

        if os.path.exists("/usr/local/digioceanfs_gui/password"):
            f = open("/usr/local/digioceanfs_gui/password")
            old_password = f.read().replace("\n", "")
            f.close()
        else:
            os.system("sudo touch /usr/local/digioceanfs_gui/password")
            os.system("sudo chmod 777 /usr/local/digioceanfs_gui/password")
            old_password = ""

        if old_password == "":
            old_password = '******'

        user = {
            'name': 'admin',
            #'pass':'******', # perabytes
            'pass': old_password,  # 123456
            'skin': 'redmond',
            'lang': 'zh_CN',
            'time': time.time()
        }
        if 'name' in params:
            name = params['name'].strip()
        if 'passwd' in params:
            passwd = params['passwd'].strip()
        if not name or not passwd:
            raise web.seeother('/login')
        try:
            from hashlib import md5
            enpasswd = md5(passwd)  #.hexdigest()
        except:
            import md5
            enpasswd = md5.new(passwd)
        #retcode = clusindex.func_login(name, enpasswd)
        #if retcode == '0':
        if name != user['name']:
            retcode = _('15001')
            return simplejson.dumps(retcode)
        elif enpasswd.hexdigest() != user['pass']:
            retcode = _('15002')
            return simplejson.dumps(retcode)
        elif name == user['name'] and enpasswd.hexdigest() == user['pass']:
            session.user.id = 1
            session.user.name = name
            session.runtime.unit = 'GB'
            retcode = 0
            #if 'redirect_url' in params:
            #    raise web.seeother(params['redirect_url'])
            #else:
            #    raise web.seeother('/clusterhome')
            #else:
            #raise web.seeother('/login')
            return simplejson.dumps(retcode)
コード例 #15
0
 def _logic(self):
     params = web.input()
     service_name = params['service_name']
     self.setup = stow({
         'template':'clusterservicenfschecklinks'
     })
     self.content = stow({
         'service_name':service_name
     })
コード例 #16
0
 def _action(self):
     node = session.runtime.node
     params = web.input()
     clusterraidname = params['clusterraidname']
     clusterraiddev_hs = clusnodelib.func_node_list_raid(node, '')
     if clusterraidname in clusterraiddev_hs:
         return simplejson.dumps(clusterraiddev_hs[clusterraidname])
     else:
         return simplejson.dumps([])
コード例 #17
0
 def _action(self):
     params = web.input()
     service = session.runtime.service
     #print >>sys.stderr, params
     #print >>sys.stderr, params['expandarray'].decode('UTF-8')
     print >> sys.stderr, params
     print >> sys.stderr, params['expandarray']
     my_dict= clusservicelib.func_service_afr_info_search(service, '', params['expandarray'])
     return simplejson.dumps([my_dict], encoding="UTF-8")
コード例 #18
0
 def _logic(self):
     params = web.input()
     print >> sys.stderr, params
     service_name = params['service_name']
     self.setup = stow({
         'template':'clusterservicenfsmanage'
     })
     self.content = stow({
         'service_name':service_name
     })
コード例 #19
0
 def _action(self):
     args = web.input()
     msg_id = args['msg_id']
     msglist = clusnotifylib.func_getMsg('all')
     flist = clusnotifylib.func_getMsgContent(msglist)
     for msg in flist:
         if msg_id == msg['filectime']:
             clusnotifylib.func_tagFile(msg['filepath'])
     session.global_v.new_msg_num = len(clusnotifylib.func_getMsg('new'))
     return '0'
コード例 #20
0
 def _action(self):
     params = web.input()
     node = session.runtime.node
     ifaceinfo = [
         params['iface'], params['newipaddr'], params['newmask'],
         params['newgateway'], params['newbroadcast']
     ]
     newifaceinfo = ' '.join(ifaceinfo)
     retcode = clusnodelib.func_node_ipaddr_set(node, newifaceinfo)
     return retcode
コード例 #21
0
 def _action(self):
     params = web.input()
     clusternodeold = params['clusternodeold']
     clusternodenew = params['clusternodenew']
     if not clusternodenew:
         return _("fillupclusternodeipaddr")
     else:
         retcode = clusnodelib.func_node_replace(clusternodeold,
                                                 clusternodenew)
     return retcode
コード例 #22
0
ファイル: index.py プロジェクト: lpx0309/digioceanfs_gui
 def _action(self):
     args = web.input()
     msg_id = args['msg_id']
     for msg in session.global_v.rlist:
         print >> sys.stderr, type(msg_id)
         print >> sys.stderr, type(msg['timest'])
         if float(msg_id) == msg['timest']:
             msg['isread'] = "Y"
             if session.global_v.new_msg_num > 0:
                 session.global_v.new_msg_num -= 1
     return '0'
コード例 #23
0
 def _logic(self):
     params = web.input()
     service = 'service' in params and params['service'] or None
     if service:
         session.runtime.service = service
     self.content = stow({
         'servicename': service
     })
     self.setup = stow({
         'template':'clusterserviceviewload'
     })
コード例 #24
0
 def _action(self):
     #node = session.runtime.node
     params = web.input()
     node = params['node']
     params = web.input(clusternewraiddev=[])
     clusternewraiddev = ' '.join(params['clusternewraiddev'])
     clusterraidlv = params['clusterraidlv']
     if clusterraidlv == 'RAID0':
         clusterraidlv = '0'
     elif clusterraidlv == 'RAID1':
         clusterraidlv = '1'
     elif clusterraidlv == 'RAID10':
         clusterraidlv = '10'
     elif clusterraidlv == 'RAID5':
         clusterraidlv = '5'
     elif clusterraidlv == 'RAID6':
         clusterraidlv = '6'
     retcode = clusnodelib.func_node_raid_create(node, clusterraidlv,
                                                 clusternewraiddev)
     return retcode
コード例 #25
0
 def _logic(self):
     params = web.input()
     clusterclientnodes = clusservicelib.func_client_node_list_all(params['service_name'])
     #print >> sys.stderr, clusterclientnodes
     self.content = stow({
         'clusterclientnodes':clusterclientnodes
     })
     self.setup = stow({
         'template':'clusterclientnodeload',
         #'jstemplate':['datatable_ZH']
     })
コード例 #26
0
 def _logic(self):
     params = web.input()
     ifacename = params['iface']
     self._checknode()
     node = session.runtime.node
     clusternodenicinfo = clusnodelib.func_node_iface_info(node)
     clusternodeniciface = {}
     for iface in clusternodenicinfo:
         if ifacename in iface.values():
             clusternodeniciface = iface
     self.content = stow({'clusternodeniciface': clusternodeniciface})
     self.setup = stow({'template': 'clusternodesetipaddr_single'})
コード例 #27
0
ファイル: index.py プロジェクト: lpx0309/digioceanfs_gui
 def GET(self):
     params = web.input()
     lang = session.user.lang
     self._jsrender()
     content = stow({
         'title': settings.procname,
         'lang': lang,
         'javascript_files': self.setup['javascript_files']
     })
     if 'redirect_url' in params:
         content['redirect_url'] = params['redirect_url']
     return render.login(content)
コード例 #28
0
 def _logic(self):
     #node = session.runtime.node
     params = web.input()
     node = params['node']
     unit = session.runtime.unit
     clusternodediskunused = []
     for disk in clusnodelib.func_node_disk_info(node, unit):
         if disk['status'] == 'unused' and disk['type'] != 'raid':
             clusternodediskunused.append(disk['devname'])
     self.content = stow({
         'clusternodediskunused': clusternodediskunused,
     })
     self.setup = stow({'template': 'clusternoderaidcreate'})
コード例 #29
0
ファイル: index.py プロジェクト: lpx0309/digioceanfs_gui
 def _action(self):
     params = web.input()
     clusternodename = params['clusternodename']
     clusternodedisk = clusnodelib.func_node_raid_info(clusternodename)
     raiddict = {}
     diskinfo = []
     for disk in clusternodedisk:
         if disk['raidname'] not in raiddict.keys():
             raiddict[disk['raidname']] = []
             raiddict[disk['raidname']].append(disk)
         else:
             raiddict[disk['raidname']].append(disk)
     return simplejson.dumps(raiddict)
コード例 #30
0
 def _action(self):
     node = session.runtime.node
     #params = web.input(clusterreplacedisk=[])
     #clusterreplacedisk = ' '.join(params['clusterreplacedisk'])
     params = web.input()
     clusterreplacedisk = params['clusterreplacedisk']
     service = params['clusterservicename']
     format = params['format']
     ret = clusnodelib.func_node_disk_update(node)
     retcode = clusnodelib.func_node_replace_nodisk(node, service,
                                                    clusterreplacedisk,
                                                    format)
     return retcode