From: Loic Baron Date: Sat, 4 Oct 2014 09:16:38 +0000 (+0200) Subject: Merge branch 'onelab' of ssh://git.onelab.eu/git/myslice into onelab X-Git-Tag: myslice-1.2~1^2~17^2~2 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=44aeb7045d837454a2ecb33fc399fe06320d8387;hp=4be845ba194482e55ecc172ee3495e8126be8555;p=myslice.git Merge branch 'onelab' of ssh://git.onelab.eu/git/myslice into onelab --- diff --git a/activity/__init__.py b/activity/__init__.py index 6157bae7..d2a9e94f 100644 --- a/activity/__init__.py +++ b/activity/__init__.py @@ -56,21 +56,23 @@ def logWrite(request, action, message, objects = None): "apikey" : apikey, "signature" : sign(secret, "%s%s%s%s" % (timestamp, ip, request.user, action)), "slice" : None, - "resource" : None + "resource" : None, + "resource_type" : None, + "facility" : None, + "testbed" : None, } - if objects and 'slice' in objects : - log['slice'] = objects['slice'] - - if objects and 'resource' in objects : - log['resource'] = objects['resource'] + for o in objects : + if (o in log) : + log[o] = objects[o] try : result = urllib2.urlopen(server, urllib.urlencode(log)) - print "===============>> activity: " + action + " <" + request.user + "> " + message + print "===============>> activity: %s <%s> %s" % (action, request.user,message) content = result.read() except urllib2.URLError as e: print "===============>> activity: connection to " + server + " impossible, could not log action" + print "==>> " + e.strerror def log(request, action, message, objects = None): # Create a new thread in Daemon mode to send the log entry diff --git a/manifoldapi/manifoldproxy.py b/manifoldapi/manifoldproxy.py index 433a854b..9897b506 100644 --- a/manifoldapi/manifoldproxy.py +++ b/manifoldapi/manifoldproxy.py @@ -13,6 +13,9 @@ from manifoldresult import ManifoldException from manifold.util.log import Log from myslice.configengine import ConfigEngine +# register activity +import activity.slice + debug=False #debug=True @@ -78,7 +81,26 @@ with the query passed using POST""" if 'description' in result and result['description'] \ and isinstance(result['description'], (tuple, list, set, frozenset)): result [ 'description' ] = [ ResultValue.to_html (x) for x in result['description'] ] - + + print "=> MANIFOLD PROXY executing: " + manifold_query.action.lower() + # + # register activity + # + # resource reservation + if (manifold_query.action.lower() == 'update') : + print result['value'][0] + if 'resource' in result['value'][0] : + for resource in result['value'][0]['resource'] : + activity.slice.resource(request, + { + 'slice' : result['value'][0]['slice_hrn'], + 'resource' : resource['hostname'], + 'resource_type' : resource['type'], + 'facility' : resource['facility_name'], + 'testbed' : resource['testbed_name'] + } + ) + json_answer=json.dumps(result) return HttpResponse (json_answer, mimetype="application/json") diff --git a/portal/templates/slice-tab-experiment.html b/portal/templates/slice-tab-experiment.html index ef6ac0c3..4d58fe51 100644 --- a/portal/templates/slice-tab-experiment.html +++ b/portal/templates/slice-tab-experiment.html @@ -9,7 +9,7 @@ on the reserved nodes. To access your slice on a resource just type the following command:

- $ ssh coverted_slice_name@planetlab-resource.hostname.com + $ ssh converted_slice_name@planetlab-resource.hostname.com

You need to convert your typical slicename into a specific format in order to do SSH. An example below will demonstrate the conversion: