Log In | Get Help   
Home My Page Projects Code Snippets Project Openings BonFIRE VCOC Demonstration Kit
Summary Activity SCM Files Wiki
[bonfiredemokit] View of /ea/experiment_type.py
[bonfiredemokit] / ea / experiment_type.py Repository:
ViewVC logotype

View of /ea/experiment_type.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 9 - (download) (as text) (annotate)
Thu Aug 30 12:48:07 2012 UTC (11 years, 9 months ago) by agomez
File size: 4210 byte(s)
Added license text
#
# BonFIRE Virtual Clusters on Federated Clouds Demonstration Kit
#
# Copyright (c) Fundacion Centro Tecnologico de Supercomputacion de Galicia 2012
# 
# License GPL Version 3
#
# The research leading to these results has received funding from 
# the European Community's Seventh Frameqork Programme (FP7/2007-2013) 
# under agreement number 257386
#
# This software is provided with ABSOLUTELY NO WARRANTY
# 
'''
Created on 02/02/2012

@author: R.Valin
'''

#import simplejson
#import sub_pycurl


def json_exp(locations, duration):
    """Indicamos la lista de sites a los que queremos enviar, la duracion de los experimentos
    y nos devuelve una lista de strings con los json de los experimentos para todos
    los posibles recursos de ese site"""

    exp_name = 'Cesgabfmedidas'
    compute = 'Cesgatest'
    #duration= 120
    exp = dict()
    #locations=['be-ibbt','fr-inria','uk-hplabs','uk-uedin']
    
    #Disponibles
    #storage=['BonFIRE Debian Squeeze 2G v3','BonFIRE SAP Debian Squeeze v2','BonFIRE Zabbix Aggregator v5','BonFIRE Debian Squeeze v3','BonFIRE Debian Squeeze 10G v3']
    #networks=['BonFIRE WAN','BonFIRE OnDemand WAN','Public IPv4 (EXPERIMENTAL)']
    #instance=['lite','small','medium','large','Large-EN',"Large+",'xlarge']
    
    instance_ibbt = ['Large-EN']
    #instance_inria = ['lite', 'small', 'medium']
    instance_inria = ['medium']
    instance_hp = ['Large+']
    #instance_uedin = ['lite', 'small', 'medium', 'large', 'xlarge']
    instance_uedin = ['large']
    
    storage_ibbt = ['BonFIRE Debian Squeeze 2G v3']
    storage_inria = ['BonFIRE Debian Squeeze 2G v3', 'BonFIRE Zabbix Aggregator v5', 'BonFIRE Debian Squeeze v3', 'BonFIRE Debian Squeeze 10G v3']
    #storage_inria = ['BonFIRE Debian Squeeze v3']
    storage_hp = ['BonFIRE SAP Debian Squeeze v2', 'BonFIRE Debian Squeeze 10G']
    storage_uedin = ['BonFIRE Debian Squeeze v3']
    #storage_uedin = ['BonFIRE Debian Squeeze v3', 'BonFIRE Debian Squeeze 2G v3', 'BonFIRE Debian Squeeze 10G v3', 'BonFIRE Zabbix Aggregator v5']
    #storage_uedin = ['BonFIRE Debian Squeeze 2G v3', 'BonFIRE Zabbix Aggregator v5', 'BonFIRE Debian Squeeze v3', 'BonFIRE Debian Squeeze 10G v3']
    #storage_uedin = ['BonFIRE Debian Squeeze 2G v3', 'BonFIRE Zabbix Aggregator v5']
 
    exp['be-ibbt'] = [instance_ibbt, storage_ibbt]
    exp['fr-inria'] = [instance_inria, storage_inria]
    exp['uk-hplabs'] = [instance_hp, storage_hp]
    exp['uk-epcc'] = [instance_uedin, storage_uedin]
    
    exp_def = []
    info_instance=dict()
    info_storage=dict()
    info_location=dict()
    for i in locations:
        for j in exp[i][0]:
            for k in exp[i][1]:
                exp_json = {'description': exp_name,
                          'duration': 120,
                          'name': exp_name,
                          'resources': [{'compute': {'name': compute,
                                                     'description': compute,
                                                     'instanceType': j,
                                                     'locations': [i],
                                                     'resources':[{'storage':'@' + k}, {'network':'@BonFIRE WAN'}]}}]}
                exp_def.append(exp_json)
                info_instance[str(exp_json)]=j
                info_storage[str(exp_json)]='@' + k
                info_location[str(exp_json)]=i
    
    return (exp_def,info_instance,info_storage,info_location)

#locations=['fr-inria']    
#duration=120
#print(json_exp(locations,duration)[0])
#print(simplejson.dumps(json_exp(locations,duration)[0]))

    
    
    
    #for i in exp_def:
    #    print i
    
    #exp={'description': 'Experiment description',
    #     'duration': 120,
    #     'name': 'My Experiment',
    #     'resources': [{'compute': {'name': 'JSON-COMPUTE-TEST',
    #                                'description': 'A description of the compute.',
    #                                'instanceType': 'small',
    #                                'locations': ['fr-inria'],
    #                                'resources':[{'storage': '@BonFIRE Debian Squeeze v3'},{'network':'@BonFIRE WAN'}]}}]}
    
    
    
    
    

root@forge.cesga.es
ViewVC Help
Powered by ViewVC 1.0.0  

Powered By FusionForge