From 8f91a75912df7fce175100403caf3c3ae02104d9 Mon Sep 17 00:00:00 2001 From: nlebreto Date: Wed, 29 Jan 2014 15:52:47 +0100 Subject: [PATCH] r1.5 deleting bonfire.py in sfa/client repository --- sfa/client/bonfire.py | 141 ------------------------------------------ 1 file changed, 141 deletions(-) delete mode 100644 sfa/client/bonfire.py diff --git a/sfa/client/bonfire.py b/sfa/client/bonfire.py deleted file mode 100644 index 96ec1727..00000000 --- a/sfa/client/bonfire.py +++ /dev/null @@ -1,141 +0,0 @@ -#tested with federica 18 -#yum -y install python-pip -#pip install requests -import requests -import xml.etree.ElementTree as ET - -# helping functions -# ########################################################## # - -def create_fed4fire_exp(name, groups, description, walltime, slice_id, exp_owner): - # create experiement with tag fed4fire - xmldescription='' + name + '' + groups + '' + description + '' + walltime + 'ready' + slice_id + '' + exp_owner + '' - postexp("https://api.integration.bonfire.grid5000.fr/experiments", xmldescription) - -def postexp(url, xmldescription): - headers = {'content-type': 'application/vnd.bonfire+xml'} - r = requests.post(url, data=xmldescription, headers=headers, verify=False, auth=('nlebreto', 'GDRU_23tc$')) - -def stop_vm(testbed, num_compute): - # compute bonfire to stopped state - url = "https://api.integration.bonfire.grid5000.fr/" + "locations/" + testbed + "/computes/" + num_compute - xmldescription = 'stopped' - headers = {'content-type': 'application/vnd.bonfire+xml'} - requests.put(url, data=xmldescription, headers=headers, verify=False, auth=('nlebreto', 'GDRU_23tc$')) - -def provisioning(num_experiment): - # experiment bonfire to running status - url = "https://api.integration.bonfire.grid5000.fr/experiments/" + num_experiment - xmldescription = 'running' - headers = {'content-type': 'application/vnd.bonfire+xml'} - requests.put(url, data=xmldescription, headers=headers, verify=False, auth=('nlebreto', 'GDRU_23tc$')) - -def callcurl(url): - r = requests.get(url, verify=False, auth=('nlebreto', 'GDRU_23tc$')) - if r.status_code == 200: - return r.text - -def buildpagehttp(part1, part2): - res = [] - for page in locations: - res.append(part1 + page + "/" + part2) - return res - -def boucle(itemname, xmltree, hashrspec, name): - for item in xmltree.findall(itemname): - hashrspec[name.text][itemname] = item.text - -def jfedfeat(bonfires, pageurl): - pageforstatus = callcurl(pageurl) - xmlreduit = ET.fromstring(pageforstatus) - hashrspec = {} - itemshost = ["DISK_USAGE", "MEM_USAGE", "CPU_USAGE", "MAX_DISK", "MAX_MEM", "MAX_CPU", - "FREE_DISK", "FREE_MEM", "FREE_CPU", "FREE_MEM", "FREE_CPU", "USED_DISK", - "USED_MEM", "USED_CPU", "RUNNING_VMS" - ] - # retrieve info for xml tree - for host in xmlreduit.findall('HOST'): - for name in host.findall('NAME'): - hashrspec[name.text] = {"name" : name.text} - for hostshare in host.findall('HOST_SHARE'): - for itemshostname in itemshost: - boucle(itemshostname, hostshare, hashrspec, name) - # jfed feature - for clef in hashrspec: - bonfires.append("" + - " " + - " " + - " " + - " " + - " " + - " ") - for infohost in itemshost: - bonfires.append(" ") - bonfires.append("") - -def remove_needless_txt(txt): - txt=str(txt) - txt=txt.replace("\n","\n") - txt=txt.replace("\n","\n") - return txt - -def rsa_user_bonfire(testbed, num_compute): - url = "https://api.integration.bonfire.grid5000.fr/" + "locations/" + testbed + "/computes/" + num_compute - pagebonfirecompute = callcurl(url) - xmlreduit = ET.fromstring(pagebonfirecompute) - hash = {} - hash["url"] = url - for name in xmlreduit: - if name.tag == "{http://api.bonfire-project.eu/doc/schemas/occi}groups": - hash["name"] = name.text - for context in name: - if context.tag == "{http://api.bonfire-project.eu/doc/schemas/occi}authorized_keys": - hash["keys"] = context.text - return hash - -# parameters -# ########################################################## # -locations = ["fr-inria", "be-ibbt", "uk-epcc"] -urlnetworks = buildpagehttp("https://api.integration.bonfire.grid5000.fr/locations/", "networks") -urlstorages = buildpagehttp("https://api.integration.bonfire.grid5000.fr/locations/", "storages") -urlcomputes = buildpagehttp("https://api.integration.bonfire.grid5000.fr/locations/", "computes") - -# main code -# ########################################################## # - -# list for all bonfire resources -def bonsources(): - bonfires = [] - bonfires.append("") - bonfires.append("") - manag_exp = remove_needless_txt(callcurl("https://api.bonfire-project.eu/managed_experiments")) - bonfires.append(manag_exp) - bonfires.append("") - jfedfeat(bonfires, "http://frontend.bonfire.grid5000.fr/one-status.xml") - jfedfeat(bonfires, "http://bonfire.epcc.ed.ac.uk/one-status.xml") - jfedfeat(bonfires, "http://bonfire.psnc.pl/one-status.xml") - jfedfeat(bonfires, "http://nebulosus.rus.uni-stuttgart.de/one-status.xml") - bonfires.append("") - for xmlnetworks in urlnetworks: - bonfires.append(remove_needless_txt(callcurl(xmlnetworks))) - bonfires.append("") - for xmlstorages in urlstorages: - bonfires.append(remove_needless_txt(callcurl(xmlstorages))) - bonfires.append("") - for xmlcomputes in urlcomputes: - bonfires.append(remove_needless_txt(callcurl(xmlcomputes))) - bonfires.append("") - exp = callcurl("https://api.integration.bonfire.grid5000.fr/experiments") - rexp = remove_needless_txt(exp) - bonfires.append(rexp) - bonfires.append("") - reserv = callcurl("https://api.integration.bonfire.grid5000.fr/locations/fr-inria/reservations") - rreserv = remove_needless_txt(reserv) - bonfires.append(rreserv) - bonfires.append("") - bonfires.append("") - bonfires = "\n".join(bonfires) - bonfires = bonfires.replace("\n\n","") - return bonfires -- 2.43.0