import sys
-def TestJenkinsWhileSlabIsDead():
- return 1
+
-#def parse_options():
-
- ##arguments supplied
- #if len(sys.argv) > 1 :
- #options_list = sys.argv[1:]
- ##For each valid option, execute the associated function
- ##(defined in the dictionnary supported_options)
- #job_id = 1
- #valid_options_dict = {}
- #value_list = []
- ##Passing options to the script should be done like this :
- ##-10 OAR -2 SlabDriver
- #for option in options_list:
- #if option in supported_options:
- ##update the values used for the fonctions associated
- ##with the options
+def parse_options():
+
+ #arguments supplied
+ if len(sys.argv) > 1 :
+ options_list = sys.argv[1:]
+ #For each valid option, execute the associated function
+ #(defined in the dictionnary supported_options)
+ job_id = 1
+ valid_options_dict = {}
+ value_list = []
+ #Passing options to the script should be done like this :
+ #-10 OAR -2 SlabDriver
+ for option in options_list:
+ if option in supported_options:
+ #update the values used for the fonctions associated
+ #with the options
- #valid_options_dict[option] = value_list
- ##empty the values list for next option
- #value_list = []
- #print valid_options_dict
- #else:
- #if option[0] == '-':
- #value_list.append(option[1:])
- #print "value_list",value_list
+ valid_options_dict[option] = value_list
+ #empty the values list for next option
+ value_list = []
+ print valid_options_dict
+ else:
+ if option[0] == '-':
+ value_list.append(option[1:])
+ print "value_list",value_list
- #return valid_options_dict
+ return valid_options_dict
-#def TestLdap():
- #logger.setLevelDebug()
+def TestLdap():
+ logger.setLevelDebug()
- #ldap = LDAPapi()
- #ret = ldap.conn.connect(bind=True)
- #ldap.conn.close()
- #print "TEST ldap.conn.connect(bind=True)" , ret
-
- #ret = ldap.conn.connect(bind=False)
- #ldap.conn.close()
- #print "TEST ldap.conn.connect(bind=False)", ret
+ ldap = LDAPapi()
+ ret = ldap.conn.connect(bind=True)
+ ldap.conn.close()
+ print "TEST ldap.conn.connect(bind=True)" , ret
+
+ ret = ldap.conn.connect(bind=False)
+ ldap.conn.close()
+ print "TEST ldap.conn.connect(bind=False)", ret
- #ret = ldap.LdapSearch()
- #print "TEST ldap.LdapSearch ALL",ret
+ ret = ldap.LdapSearch()
+ print "TEST ldap.LdapSearch ALL",ret
- #ret = ldap.LdapSearch('(uid=avakian)', [])
- #print "\r\n TEST ldap.LdapSearch ids = avakian",ret
+ ret = ldap.LdapSearch('(uid=avakian)', [])
+ print "\r\n TEST ldap.LdapSearch ids = avakian",ret
- #password = ldap.generate_password()
- #print "\r\n TEST generate_password ",password
+ password = ldap.generate_password()
+ print "\r\n TEST generate_password ",password
- #maxi = ldap.find_max_uidNumber()
- #print "\r\n TEST find_max_uidNumber " , maxi
+ maxi = ldap.find_max_uidNumber()
+ print "\r\n TEST find_max_uidNumber " , maxi
- #data = {}
- #data['last_name'] = "Drake"
- #data['first_name']="Tim"
- #data['givenName']= data['first_name']
- #data['mail'] = "robin@arkham.fr"
-
- #record={}
- #record['hrn'] = 'senslab2.drake'
- #record['last_name'] = "Drake"
- #record['first_name']="Tim"
- #record['mail'] = "robin@arkham.fr"
-
- #datanight = {}
- #datanight['last_name'] = "Grayson"
- #datanight['first_name']="Dick"
- #datanight['givenName']= datanight['first_name']
- #datanight['mail'] = "nightwing@arkham.fr"
-
-
- #record_night = {}
- #record_night['hrn'] = 'senslab2.grayson'
- #record_night['last_name'] = datanight['last_name']
- #record_night['first_name'] = datanight['first_name']
- #record_night['mail'] = datanight['mail']
-
- #login = ldap.generate_login(data)
- #print "\r\n Robin \tgenerate_login ", ret
-
- #ret = ldap.LdapAddUser(data)
- #print "\r\n Robin \tLdapAddUser ", ret
+ data = {}
+ data['last_name'] = "Drake"
+ data['first_name']="Tim"
+ data['givenName']= data['first_name']
+ data['mail'] = "robin@arkham.fr"
+
+ record={}
+ record['hrn'] = 'senslab2.drake'
+ record['last_name'] = "Drake"
+ record['first_name']="Tim"
+ record['mail'] = "robin@arkham.fr"
+
+ datanight = {}
+ datanight['last_name'] = "Grayson"
+ datanight['first_name']="Dick"
+ datanight['givenName']= datanight['first_name']
+ datanight['mail'] = "nightwing@arkham.fr"
+
+
+ record_night = {}
+ record_night['hrn'] = 'senslab2.grayson'
+ record_night['last_name'] = datanight['last_name']
+ record_night['first_name'] = datanight['first_name']
+ record_night['mail'] = datanight['mail']
+
+ login = ldap.generate_login(data)
+ print "\r\n Robin \tgenerate_login ", ret
+
+ ret = ldap.LdapAddUser(data)
+ print "\r\n Robin \tLdapAddUser ", ret
- #req_ldap = '(uid=' + login + ')'
- #ret = ldap.LdapSearch(req_ldap, [])
- #print "\r\n Robin \tldap.LdapSearch ids = %s %s"%(login,ret )
+ req_ldap = '(uid=' + login + ')'
+ ret = ldap.LdapSearch(req_ldap, [])
+ print "\r\n Robin \tldap.LdapSearch ids = %s %s"%(login,ret )
- #password = "Thridrobin"
- #enc = ldap.encrypt_password(password)
- #print "\r\n Robin \tencrypt_password ", enc
+ password = "Thridrobin"
+ enc = ldap.encrypt_password(password)
+ print "\r\n Robin \tencrypt_password ", enc
- #ret = ldap.LdapModifyUser(record, {'userPassword':enc})
- #print "\r\n Robin \tChange password LdapModifyUser ", ret
+ ret = ldap.LdapModifyUser(record, {'userPassword':enc})
+ print "\r\n Robin \tChange password LdapModifyUser ", ret
- #dn = 'uid=' + login + ',' + ldap.baseDN
- #ret = ldap.LdapDelete(dn)
- #print "\r\n Robin \tLdapDelete ", ret
+ dn = 'uid=' + login + ',' + ldap.baseDN
+ ret = ldap.LdapDelete(dn)
+ print "\r\n Robin \tLdapDelete ", ret
- #ret = ldap.LdapFindUser(record_night)
- #print "\r\n Nightwing \tldap.LdapFindHrn %s : %s"%(record_night,ret)
+ ret = ldap.LdapFindUser(record_night)
+ print "\r\n Nightwing \tldap.LdapFindHrn %s : %s"%(record_night,ret)
- #ret = ldap.LdapSearch('(uid=grayson)', [])
- #print "\r\n Nightwing \tldap.LdapSearch ids = %s %s"%('grayson',ret )
+ ret = ldap.LdapSearch('(uid=grayson)', [])
+ print "\r\n Nightwing \tldap.LdapSearch ids = %s %s"%('grayson',ret )
- #ret = ldap.LdapAddUser(datanight)
- #print "\r\n Nightwing \tLdapAddUser ", ret
+ ret = ldap.LdapAddUser(datanight)
+ print "\r\n Nightwing \tLdapAddUser ", ret
- #ret = ldap.LdapResetPassword(record_night)
- #print "\r\n Nightwing \tLdapResetPassword de %s : %s "%(record_night,ret)
+ ret = ldap.LdapResetPassword(record_night)
+ print "\r\n Nightwing \tLdapResetPassword de %s : %s "%(record_night,ret)
- #ret = ldap.LdapDeleteUser(record_night)
- #print "\r\n Nightwing \tLdapDeleteUser ", ret
+ ret = ldap.LdapDeleteUser(record_night)
+ print "\r\n Nightwing \tLdapDeleteUser ", ret
- #record_avakian = {}
- #record_avakian['last_name'] = 'avakian'
- #record_avakian['first_name'] = 'sandrine'
- #record_avakian['email'] = 'sandrine.avakian@inria.fr'
- #pubkey = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwSUkJ+cr3xM47h8lFkIXJoJhg4wHakTaLJmgTXkzvUmQsQeFB2MjUZ6WAelMXj/EFz2+XkK+bcWNXwfbrLptJQ+XwGpPZlu9YV/kzO63ghVrAyEg0+p7Pn1TO9f1ZYg4R6JfP/3qwH1AsE+X3PNpIewsuEIKwd2wUCJDf5RXJTpl39GizcBFemrRqgs0bdqAN/vUT9YvtWn8fCYR5EfJHVXOK8P1KmnbuGZpk7ryz21pDMlgw13+8aYB+LPkxdv5zG54A5c6o9N3zOCblvRFWaNBqathS8y04cOYWPmyu+Q0Xccwi7vM3Ktm8RoJw+raQNwsmneJOm6KXKnjoOQeiQ== savakian@sfa2.grenoble.senslab.info"
+ record_avakian = {}
+ record_avakian['last_name'] = 'avakian'
+ record_avakian['first_name'] = 'sandrine'
+ record_avakian['email'] = 'sandrine.avakian@inria.fr'
+ pubkey = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwSUkJ+cr3xM47h8lFkIXJoJhg4wHakTaLJmgTXkzvUmQsQeFB2MjUZ6WAelMXj/EFz2+XkK+bcWNXwfbrLptJQ+XwGpPZlu9YV/kzO63ghVrAyEg0+p7Pn1TO9f1ZYg4R6JfP/3qwH1AsE+X3PNpIewsuEIKwd2wUCJDf5RXJTpl39GizcBFemrRqgs0bdqAN/vUT9YvtWn8fCYR5EfJHVXOK8P1KmnbuGZpk7ryz21pDMlgw13+8aYB+LPkxdv5zG54A5c6o9N3zOCblvRFWaNBqathS8y04cOYWPmyu+Q0Xccwi7vM3Ktm8RoJw+raQNwsmneJOm6KXKnjoOQeiQ== savakian@sfa2.grenoble.senslab.info"
- #ret = ldap.LdapModifyUser(record_avakian, {'sshPublicKey':pubkey})
- #print "\r\n Sandrine \tChange pubkey LdapModifyUser ", ret
+ ret = ldap.LdapModifyUser(record_avakian, {'sshPublicKey':pubkey})
+ print "\r\n Sandrine \tChange pubkey LdapModifyUser ", ret
- #password = "ReptileFight"
- #enc = ldap.encrypt_password(password)
- #print "\r\n sandrine \tencrypt_password ", enc
+ password = "ReptileFight"
+ enc = ldap.encrypt_password(password)
+ print "\r\n sandrine \tencrypt_password ", enc
- #ret = ldap.LdapModifyUser(record_avakian, {'userPassword':enc})
- #print "\r\n sandrine \tChange password LdapModifyUser ", ret
- #return
+ ret = ldap.LdapModifyUser(record_avakian, {'userPassword':enc})
+ print "\r\n sandrine \tChange password LdapModifyUser ", ret
+ return
-#def get_stuff(oar, uri):
- #import httplib
- #import json
- #headers = {}
- #data = json.dumps({})
+def get_stuff(oar, uri):
+ import httplib
+ import json
+ headers = {}
+ data = json.dumps({})
- #headers['X-REMOTE_IDENT'] = 'avakian'
+ headers['X-REMOTE_IDENT'] = 'avakian'
- #headers['content-length'] = '0' #seems that it does not work if we don't add this
+ headers['content-length'] = '0' #seems that it does not work if we don't add this
- #conn = httplib.HTTPConnection(oar.oarserver['ip'],oar.oarserver['port'])
- #conn.request("GET",uri,data , headers )
- #resp = ( conn.getresponse()).read()
- ##logger.debug("OARrestapi: \t GETRequestToOARRestAPI resp %s" %( resp))
- #conn.close()
+ conn = httplib.HTTPConnection(oar.oarserver['ip'],oar.oarserver['port'])
+ conn.request("GET",uri,data , headers )
+ resp = ( conn.getresponse()).read()
+ #logger.debug("OARrestapi: \t GETRequestToOARRestAPI resp %s" %( resp))
+ conn.close()
- #js = json.loads(resp)
- #return js
+ js = json.loads(resp)
+ return js
-#def TestOAR(job_id = None):
+def TestOAR(job_id = 1):
- #if isinstance(job_id,list) and len(job_id) == 1:
- #job_id = job_id[0]
+ if isinstance(job_id,list) and len(job_id) == 1:
+ job_id = job_id[0]
- #oar = OARrestapi()
- #jobs = oar.parser.SendRequest("GET_reserved_nodes", username = 'avakian')
- #print "\r\n OAR GET_reserved_nodes ",jobs
+ oar = OARrestapi()
+ jobs = oar.parser.SendRequest("GET_reserved_nodes", username = 'avakian')
+ print "\r\n OAR GET_reserved_nodes ",jobs
- #jobs = oar.parser.SendRequest("GET_jobs")
- #print "\r\n OAR GET_jobs ",jobs
+ jobs = oar.parser.SendRequest("GET_jobs")
+ print "\r\n OAR GET_jobs ",jobs
- #jobs = oar.parser.SendRequest("GET_jobs_id", job_id, 'avakian')
- #print "\r\n OAR GET_jobs_id ",jobs
+ jobs = oar.parser.SendRequest("GET_jobs_id", job_id, 'avakian')
+ print "\r\n OAR GET_jobs_id ",jobs
- #uri = '/oarapi/jobs/details.json?state=Running,Waiting,Launching&user=avakian'
- #raw_json = get_stuff(oar,uri)
- #print "\r\nOAR ", uri, raw_json, "\r\n KKK \t",raw_json.keys()
+ uri = '/oarapi/jobs/details.json?state=Running,Waiting,Launching&user=avakian'
+ raw_json = get_stuff(oar,uri)
+ print "\r\nOAR ", uri, raw_json, "\r\n KKK \t",raw_json.keys()
- #uri = '/oarapi/jobs/' + job_id +'.json'
- #raw_json = get_stuff(oar,uri)
- #print "\r\n OAR ",uri,raw_json, "\r\n KKK \t",raw_json.keys()
+ uri = '/oarapi/jobs/' + job_id +'.json'
+ raw_json = get_stuff(oar,uri)
+ print "\r\n OAR ",uri,raw_json, "\r\n KKK \t",raw_json.keys()
- #uri = '/oarapi/jobs/' + job_id + '/resources.json'
- #raw_json = get_stuff(oar,uri)
- #print "\r\n OAR ",uri, raw_json, "\r\n KKK \t",raw_json.keys()
+ uri = '/oarapi/jobs/' + job_id + '/resources.json'
+ raw_json = get_stuff(oar,uri)
+ print "\r\n OAR ",uri, raw_json, "\r\n KKK \t",raw_json.keys()
- #time_format = "%Y-%m-%d %H:%M:%S"
+ time_format = "%Y-%m-%d %H:%M:%S"
- #server_timestamp,server_tz = oar.parser.SendRequest("GET_timezone")
+ server_timestamp,server_tz = oar.parser.SendRequest("GET_timezone")
- #print "\r\n OAR GetTimezone ",server_timestamp, server_tz
- #print(datetime.fromtimestamp(int(server_timestamp)).strftime('%Y-%m-%d %H:%M:%S'))
+ print "\r\n OAR GetTimezone ",server_timestamp, server_tz
+ print(datetime.fromtimestamp(int(server_timestamp)).strftime('%Y-%m-%d %H:%M:%S'))
- #uri = '/oarapi/resources/full.json'
- #raw_json = get_stuff(oar,uri)
- #print "\r\n OAR ",uri, raw_json, "\r\n KKK \t",raw_json.keys()
+ uri = '/oarapi/resources/full.json'
+ raw_json = get_stuff(oar,uri)
+ print "\r\n OAR ",uri, raw_json, "\r\n KKK \t",raw_json.keys()
- #uri = '/oarapi/jobs.json?user=avakian'
- #raw_json = get_stuff(oar,uri)
- #print "\r\nOAR ", uri, raw_json, "\r\n KKK \t",raw_json.keys()
- #return
+ uri = '/oarapi/jobs.json?user=avakian'
+ raw_json = get_stuff(oar,uri)
+ print "\r\nOAR ", uri, raw_json, "\r\n KKK \t",raw_json.keys()
+ return
-#def TestSlabDriver(job_id):
- #if isinstance(job_id,list) and len(job_id) == 1:
- #job_id = job_id[0]
- #slabdriver = SlabDriver(Config())
- #nodes = slabdriver.GetReservedNodes(username='avakian')
- #print "\r\n \r\n" ,nodes
+def TestSlabDriver(job_id = 1):
+ if isinstance(job_id,list) and len(job_id) == 1:
+ job_id = job_id[0]
+ slabdriver = SlabDriver(Config())
+ nodes = slabdriver.GetReservedNodes(username='avakian')
+ print "\r\n \r\n" ,nodes
- #l = slabdriver.GetSlices(slice_filter = '29', slice_filter_type = 'record_id_user')
+ l = slabdriver.GetSlices(slice_filter = '29', slice_filter_type = 'record_id_user')
- #print "\r\n \r\nGetSlices" ,l
+ print "\r\n \r\nGetSlices" ,l
- #persons = slabdriver.GetPersons()
- #print "\r\n \r\n GetPersons" ,persons
- ##slabdriver.DeleteJobs(job_id,'senslab2.avakian_slice')
+ persons = slabdriver.GetPersons()
+ print "\r\n \r\n GetPersons" ,persons
+ #slabdriver.DeleteJobs(job_id,'senslab2.avakian_slice')
-#def RunAll():
- #TestLdap()
- #TestOAR()
+def RunAll():
+ TestLdap()
+ TestOAR()
-#supported_options = {
- #'OAR' : TestOAR,
- #'LDAP': TestLdap,
- #'driver': TestSlabDriver,
- #'all' : RunAll }
+supported_options = {
+ 'OAR' : TestOAR,
+ 'LDAP': TestLdap,
+ 'driver': TestSlabDriver,
+ 'all' : RunAll }
def main():
- #opts = parse_options()
- #print opts
- #for opt in opts:
- #supported_options[opt](opts[opt])
-
- TestJenkinsWhileSlabIsDead()
+ opts = parse_options()
+ print opts
+ for opt in opts:
+ supported_options[opt](opts[opt])
+
if __name__ == "__main__":
main()
\ No newline at end of file