X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FMethods%2F__init__.py;h=000edba8aa9fb6ff8737e0d63db4004d8c913b5a;hb=be1560a0ece794e0f047e6e3c18d4b78ec746b15;hp=3f95fce4bbee75546d4f6318bbc6a821a764ffa2;hpb=fe81b2c91b436b1882f63023413c7f51b29538ed;p=plcapi.git diff --git a/PLC/Methods/__init__.py b/PLC/Methods/__init__.py index 3f95fce..000edba 100644 --- a/PLC/Methods/__init__.py +++ b/PLC/Methods/__init__.py @@ -1,193 +1,31 @@ -## Please use make index to update this file -native_methods = """ -AddAddressType -AddAddressTypeToAddress -AddBootState -AddConfFile -AddConfFileToNode -AddConfFileToNodeGroup -AddIlink -AddInitScript -AddInterface -AddInterfaceTag -AddKeyType -AddLeases -AddMessage -AddNetworkMethod -AddNetworkType -AddNode -AddNodeGroup -AddNodeTag -AddNodeToPCU -AddNodeType -AddPCU -AddPCUProtocolType -AddPCUType -AddPeer -AddPerson -AddPersonKey -AddPersonTag -AddPersonToSite -AddPersonToSlice -AddRole -AddRoleToPerson -AddSession -AddSite -AddSiteAddress -AddSiteTag -AddSlice -AddSliceInstantiation -AddSliceTag -AddSliceToNodes -AddSliceToNodesWhitelist -AddTagType -AuthCheck -BindObjectToPeer -BlacklistKey -BootCheckAuthentication -BootGetNodeDetails -BootNotifyOwners -BootUpdateNode -DeleteAddress -DeleteAddressType -DeleteAddressTypeFromAddress -DeleteBootState -DeleteConfFile -DeleteConfFileFromNode -DeleteConfFileFromNodeGroup -DeleteIlink -DeleteInitScript -DeleteInterface -DeleteInterfaceTag -DeleteKey -DeleteKeyType -DeleteLeases -DeleteMessage -DeleteNetworkMethod -DeleteNetworkType -DeleteNode -DeleteNodeFromPCU -DeleteNodeGroup -DeleteNodeTag -DeleteNodeType -DeletePCU -DeletePCUProtocolType -DeletePCUType -DeletePeer -DeletePerson -DeletePersonFromSite -DeletePersonFromSlice -DeletePersonTag -DeleteRole -DeleteRoleFromPerson -DeleteSession -DeleteSite -DeleteSiteTag -DeleteSlice -DeleteSliceFromNodes -DeleteSliceFromNodesWhitelist -DeleteSliceInstantiation -DeleteSliceTag -DeleteTagType -GenerateNodeConfFile -GetAddressTypes -GetAddresses -GetBootMedium -GetBootStates -GetConfFiles -GetEventObjects -GetEvents -GetIlinks -GetInitScripts -GetInterfaceTags -GetInterfaces -GetKeyTypes -GetKeys -GetLeases -GetMessages -GetNetworkMethods -GetNetworkTypes -GetNodeFlavour -GetNodeGroups -GetNodeTags -GetNodeTypes -GetNodes -GetPCUProtocolTypes -GetPCUTypes -GetPCUs -GetPeerData -GetPeerName -GetPeers -GetPersonTags -GetPersons -GetPlcRelease -GetRoles -GetSession -GetSessions -GetSiteTags -GetSites -GetSliceFamily -GetSliceInstantiations -GetSliceKeys -GetSliceTags -GetSliceTicket -GetSlices -GetSlivers -GetTagTypes -GetWhitelist -NotifyPersons -NotifySupport -RebootNode -RebootNodeWithPCU -RefreshPeer -ReportRunlevel -ResetPassword -ResolveSlices -SetPersonPrimarySite -SliceCreate -SliceDelete -SliceExtendedInfo -SliceGetTicket -SliceInfo -SliceListNames -SliceListUserSlices -SliceNodesAdd -SliceNodesDel -SliceNodesList -SliceRenew -SliceTicketGet -SliceUpdate -SliceUserAdd -SliceUserDel -SliceUsersList -UnBindObjectFromPeer -UpdateAddress -UpdateAddressType -UpdateConfFile -UpdateIlink -UpdateInitScript -UpdateInterface -UpdateInterfaceTag -UpdateKey -UpdateLeases -UpdateMessage -UpdateNode -UpdateNodeGroup -UpdateNodeTag -UpdatePCU -UpdatePCUProtocolType -UpdatePCUType -UpdatePeer -UpdatePerson -UpdatePersonTag -UpdateSite -UpdateSiteTag -UpdateSlice -UpdateSliceTag -UpdateTagType -VerifyPerson -system.listMethods -system.methodHelp -system.methodSignature -system.multicall -""".split() +#!/usr/bin/python -tt + +from __future__ import print_function + +import os +import glob + +native_methods = [] +toppath = os.path.dirname(__file__) + +# do not blindly scan this directory, as when using devel tools +# like `make sync` we can easily end up with more files that needed +# which breaks in production + +contents = [ + ('.', '[A-Z][a-zA-Z]*.py'), + ('system', '[a-zA-Z]*.py'), +] + +for dir, pattern in contents: + prefix = len(dir) + 1 + matches = glob.glob("{}/{}".format(dir, pattern)) + for match in matches: + filename = match[prefix:][:-3] + python_name = filename if dir == '.' \ + else "{}.{}".format(dir, filename) + native_methods.append(python_name) + +if __name__ == '__main__': + native_methods.sort() + print(native_methods)