Merge branch 'geni-v3' of ssh://git.onelab.eu/git/sfa into geni-v3
[sfa.git] / testbeds / iotlab / tests / sfi_client_tests.py
index 9358dce..b1e59ff 100755 (executable)
@@ -30,39 +30,88 @@ rspec_filename_list = ['firexp_avakian_slice_iotlab.rspec',
 'test_delete_all_leases.rspec']
 
 rspec_filename_dict = {
-       ('iotlab_avakian', 'iotlab'):
-               "sfi.py create iotlab.avakian_slice " + rspec_dir + \
+       ('iotlab_avakian', 'iotlab', 'allocate' ):
+               "sfi.py allocate iotlab.avakian_slice " + rspec_dir + \
                        'iotlab_avakian_slice_iotlab.rspec',
 
-       ('iotlab_avakian', 'iotlab2'):
-               "sfi.py create iotlab.avakian_slice " + rspec_dir + \
+       ('iotlab_avakian', 'iotlab2', 'allocate'):
+               "sfi.py allocate iotlab.avakian_slice " + rspec_dir + \
                'iotlab_avakian_slice_iotlab2.rspec',
 
-       ('firexp_user','iotlab'):
-               "sfi.py create firexp.flab.iotlab_slice " + rspec_dir + \
+       ('firexp_user','iotlab', 'allocate'):
+               "sfi.py allocate firexp.flab.iotlab_slice " + rspec_dir + \
                        'firexp_iotlab_slice_iotlab.rspec',
 
-       ('firexp_user', 'all'):
-                       "sfi.py create firexp.flab.iotlab_slice "+ rspec_dir + \
+       ('firexp_user', 'all', 'allocate'):
+                       "sfi.py allocate firexp.flab.iotlab_slice "+ rspec_dir + \
                                'firexp_iotlab_slice_all.rspec',
 
-       ('iotlab_user', 'iotlab'):
-               "sfi.py create iotlab.user_slice "+ rspec_dir + \
+       ('iotlab_user', 'iotlab', 'allocate'):
+               "sfi.py allocate iotlab.user_slice "+ rspec_dir + \
                        'iotlab_user_slice_iotlab.rspec',
 
-       ('firexp_avakian','iotlab'):
-               "sfi.py create firexp.flab.avakian_slice " + rspec_dir + \
+       ('firexp_avakian','iotlab', 'allocate'):
+               "sfi.py allocate firexp.flab.avakian_slice " + rspec_dir + \
                        'firexp_avakian_slice_iotlab.rspec',
 
-       ('iotlab_avakian', 'plab') :
-                       "sfi.py create iotlab.avakian_slice " + rspec_dir + \
+       ('iotlab_avakian', 'plab', 'allocate') :
+                       "sfi.py allocate iotlab.avakian_slice " + rspec_dir + \
                                'iotlab_avakian_slice_plab.rspec',
 
-       ('iotlab_avakian', 'all') :
-        "sfi.py create iotlab.avakian_slice " + rspec_dir + \
-               'iotlab_avakian_slice_all.rspec'
+       ('iotlab_avakian', 'all', 'allocate') :
+        "sfi.py allocate iotlab.avakian_slice " + rspec_dir + \
+               'iotlab_avakian_slice_all.rspec',
 
+    ('iotlab_avakian', 'iotlab', 'provision' ):
+        "sfi.py provision iotlab.avakian_slice",
+
+    ('iotlab_avakian', 'iotlab2', 'provision'):
+        "sfi.py provision iotlab.avakian_slice",
+
+    ('firexp_user','iotlab', 'provision'):
+        "sfi.py provision firexp.flab.iotlab_slice",
+
+    ('firexp_user', 'all', 'provision'):
+            "sfi.py provision firexp.flab.iotlab_slice",
+
+    ('iotlab_user', 'iotlab', 'provision'):
+        "sfi.py provision iotlab.user_slice",
+
+    ('firexp_avakian','iotlab', 'provision'):
+        "sfi.py provision firexp.flab.avakian_slice",
+
+    ('iotlab_avakian', 'plab', 'provision') :
+            "sfi.py provision iotlab.avakian_slice",
+
+    ('iotlab_avakian', 'all', 'provision') :
+     "sfi.py provision iotlab.avakian_slice",
+
+    ('iotlab_avakian', 'iotlab', 'describe' ):
+        "sfi.py describe iotlab.avakian_slice iotlab_avakian_slice_iotlab.rspec",
+
+    ('iotlab_avakian', 'iotlab2', 'describe'):
+        "sfi.py describe iotlab.avakian_slice iotlab_avakian_slice_iotlab2.rspec",
+
+    ('firexp_user','iotlab', 'describe'):
+        "sfi.py describe firexp.flab.iotlab_slice firexp_iotlab_slice_iotlab.rspec",
+
+    ('firexp_user', 'all', 'describe'):
+            "sfi.py describe firexp.flab.iotlab_slice firexp_iotlab_slice_all.rspec",
+
+    ('iotlab_user', 'iotlab', 'describe'):
+        "sfi.py describe iotlab.user_slice iotlab_user_slice_iotlab.rspec",
+
+    ('firexp_avakian','iotlab', 'describe'):
+        "sfi.py describe firexp.flab.avakian_slice firexp_avakian_slice_iotlab.rspec",
+
+    ('iotlab_avakian', 'plab', 'describe') :
+            "sfi.py describe iotlab.avakian_slice iotlab_avakian_slice_plab.rspec",
+
+    ('iotlab_avakian', 'all', 'describe') :
+     "sfi.py describe iotlab.avakian_slice iotlab_avakian_slice_all.rspec"
        }
+
+print rspec_filename_dict
 # check if the firexp user (uid user) is already in LDAP
 # in this is the case, delete it :
 ldap_server = LDAPapi()
@@ -70,10 +119,11 @@ dn = 'uid=' + 'user' + ',' + ldap_server.baseDN
 result = ldap_server.LdapSearch('(uid=user)', [])
 
 if result != []:
-       retval = ldap_server.LDAPDelete(dn)
-       print "deleting firexp user : %s " , retval
-
+       retval = ldap_server.LdapDelete(dn)
+       print "deleting firexp user : ", retval
 
+# Change the sfi config file to be able to start the experiment on the federated
+# testbed with another identity and another slice
 print "config sfi"
 with open ("/root/.sfi/sfi_config", "r") as sfi_config:
        sfi_config_txt = [line for line in sfi_config]
@@ -116,8 +166,8 @@ print " ================= SFI.PY RESOURCES -R IOTLAB -L ALL ============="
 raw_input("Press Enter to continue...")
 os.system('sfi.py resources -r iotlab -l all')
 
-print " ================= SFI.PY RESOURCES -O  output rspec ==========="
-os.system('sfi.py resources -o /root/tests_rspecs/iotlab_devlille_OUTPUT.rspec')
+print " ================= SFI.PY RESOURCES -O  output rspec ==========="
+os.system('sfi.py resources -o /root/tests_rspecs/iotlab_devlille_OUTPUT.rspec')
 
 print " ================= SFI.PY RESOURCES -L LEASES  ============="
 raw_input("Press Enter to continue...")
@@ -129,18 +179,26 @@ raw_input("Press Enter to continue...")
 os.system('sfi.py show iotlab.avakian')
 
 print " =================    SFI.PY SHOW NODE   ============="
-os.system('sfi.py show iotlab.node6.devlille.senslab.info')
+os.system('sfi.py show iotlab.m3-3.devgrenoble.iot-lab.info')
+
 
-print " =================    SFI.PY SLICES       ============="
-raw_input("Press Enter to continue...")
-os.system('sfi.py slices')
 
 print " =================    SFI.PY STATUS SLICE   ============="
 os.system('sfi.py status iotlab.avakian_slice')
 
-print " =================    SFI.PY CREATE SLICE  on iotlab only  ============="
+print " =================    SFI.PY ALLOCATE SLICE  on iotlab only  ============="
+raw_input("Press Enter to continue...")
+os.system( rspec_filename_dict[('iotlab_avakian','iotlab' , 'allocate')])
+
+
+print " =================    SFI.PY PROVISION SLICE  on iotlab only  ============="
 raw_input("Press Enter to continue...")
-os.system( rspec_filename_dict[('iotlab_avakian','iotlab')])
+os.system( rspec_filename_dict[('iotlab_avakian','iotlab' , 'provision')])
+
+
+print " =================    SFI.PY DESCRIBE SLICE  on iotlab only  ============="
+raw_input("Press Enter to continue...")
+os.system( rspec_filename_dict[('iotlab_avakian','iotlab' , 'describe')])
 
 
 print " ================= SFI.PY RESOURCES -l all iotlab.avakian_slice ============="
@@ -153,9 +211,9 @@ raw_input("Press Enter to continue...")
 os.system('sfi.py delete iotlab.avakian_slice')
 
 
-print " =================    SFI.PY CREATE SLICE  on iotlab and firexp  ============="
+print " =================    SFI.PY ALLOCATE SLICE  on iotlab and firexp  ============="
 raw_input("Press Enter to continue...")
-os.system(rspec_filename_dict[('iotlab_avakian','all')])
+os.system(rspec_filename_dict[('iotlab_avakian','all', 'allocate')])
 
 
 print " ================= SFI.PY RESOURCES -l all -r iotlab iotlab.avakian_slice ============="
@@ -178,9 +236,17 @@ os.system('cp /root/.sfi/sfi_config_firexp /root/.sfi/sfi_config')
 
 
 
-print " =================    SFI.PY CREATE SLICE  on iotlab and firexp  ============="
+print " =================    SFI.PY ALLOCATE SLICE  on iotlab and firexp  ============="
+raw_input("Press Enter to continue...")
+os.system(rspec_filename_dict[('firexp_user','all', 'allocate')])
+
+print " =================    SFI.PY DESCRIBE SLICE  on iotlab and firexp  ============="
+raw_input("Press Enter to continue...")
+os.system(rspec_filename_dict[('firexp_user','all', 'describe')])
+
+print " =================    SFI.PY PROVISION SLICE  on iotlab and firexp  ============="
 raw_input("Press Enter to continue...")
-os.system(rspec_filename_dict[('firexp_user','all')])
+os.system(rspec_filename_dict[('firexp_user','all', 'provision')])
 
 
 print " =================    SFI.PY SHOW SLICE   ============="