run lxc-enter-namespace with --noseclabel
[tests.git] / system / config_default.py
index b0eabdb..8fd549a 100644 (file)
@@ -1,5 +1,6 @@
+# -*- python3 -*-
 # Thierry Parmentelat <thierry.parmentelat@inria.fr>
-# Copyright (C) 2010 INRIA 
+# Copyright (C) 2015 INRIA 
 #
 # a configuration module is expected:
 # (*) to define a config method
@@ -65,6 +66,9 @@ def nodes(options,index):
              'route_fields' :           { 'subnet' : '0.0.0.0/0',
                                           'next_hop' : 'xxx-deferred-xxx',
                                           },
+             # boot cd settings
+             # we should have tags here instead of the hard-wired
+             # options set for GetBootMedium in TestNode.py
              }]
 
 def all_nodenames (options,index):
@@ -431,6 +435,9 @@ def tcp_specs (options,index):
     # with the addition of omf-friendly slices..
     slice3='%s_sl4'%login_base(2)
     slice4='%s_sl5'%login_base(2)
+
+# NOTE: port 9999 is hard-wired in the code to be used for checking network readiness
+# so it is not to be used here
 # bind on 0.0.0.0 and try to reach this on localhost
 # not expected to work
     same_node_same_slice_lo =   { 'server_node': 'node1', 'server_slice': slice1,
@@ -455,7 +462,7 @@ def tcp_specs (options,index):
     specs += [ same_node_same_slice ]
 # worth another try
     specs += [ same_node_2_slices ]
-    if options.size >:
+    if options.size > 1:
         specs += [ two_nodes_same_slice, two_nodes_2_slices ]
     return specs
 
@@ -483,59 +490,68 @@ def plc (options,index) :
         'vservername': 'deferred-vservername',
         'vserverip': 'deferred-vserverip',
         'role' : 'root',
-        'PLC_NAME' : 'Regression TestLab',
-        'PLC_ROOT_USER' : 'root@test.onelab.eu',
-        'PLC_ROOT_PASSWORD' : 'test++',
-        'PLC_SLICE_PREFIX' : 'auto',
-        'PLC_HRN_ROOT': sfa_root(index),
-        'PLC_SHORTNAME' : 'Rlab',
-        'PLC_MAIL_ENABLED':'false',
-        'PLC_MAIL_SUPPORT_ADDRESS' : 'thierry.parmentelat@inria.fr',
-        'PLC_DB_HOST' : 'deferred-myplc-hostname',
-#        'PLC_DB_PASSWORD' : 'mnbvcxzlkjhgfdsapoiuytrewq',
-        'PLC_API_HOST' : 'deferred-myplc-hostname',
-        'PLC_WWW_HOST' : 'deferred-myplc-hostname',
-        'PLC_BOOT_HOST' : 'deferred-myplc-hostname',
-        'PLC_NET_DNS1' : 'deferred-dns-1',
-        'PLC_NET_DNS2' : 'deferred-dns-2',
-        'PLC_RESERVATION_GRANULARITY':1800,
-        'PLC_VSYS_DEFAULTS':' , vif_up, vif_down, fd_tuntap, promisc, ',
+        # these go to plc-config-tty
+        'settings': {
+            'PLC_NAME' : 'Regression TestLab',
+            'PLC_ROOT_USER' : 'root@test.onelab.eu',
+            'PLC_ROOT_PASSWORD' : 'test++',
+            'PLC_SLICE_PREFIX' : 'auto',
+            'PLC_HRN_ROOT': sfa_root(index),
+            'PLC_SHORTNAME' : 'Rlab',
+            'PLC_MAIL_ENABLED':'false',
+            'PLC_MAIL_SUPPORT_ADDRESS' : 'thierry.parmentelat@inria.fr',
+            'PLC_DB_HOST' : 'deferred-myplc-hostname',
+#            'PLC_DB_PASSWORD' : 'mnbvcxzlkjhgfdsapoiuytrewq',
+            'PLC_API_HOST' : 'deferred-myplc-hostname',
+            'PLC_WWW_HOST' : 'deferred-myplc-hostname',
+            'PLC_BOOT_HOST' : 'deferred-myplc-hostname',
+            'PLC_NET_DNS1' : 'deferred-dns-1',
+            'PLC_NET_DNS2' : 'deferred-dns-2',
+            'PLC_RESERVATION_GRANULARITY':1800,
+            'PLC_VSYS_DEFAULTS':' , vif_up, vif_down, fd_tuntap, promisc, ',
+            'PLC_OMF_ENABLED' : 'true',
+            'PLC_OMF_XMPP_SERVER': 'deferred-myplc-hostname',
+        },
         'expected_vsys_tags': [ 'vif_up', 'vif_down', 'fd_tuntap', 'promisc', ],
         # minimal config so the omf plugins actually trigger
-        'PLC_OMF_ENABLED' : 'true',
-        'PLC_OMF_XMPP_SERVER': 'deferred-myplc-hostname',
         'sites' : sites(options,index),
         'keys' : keys(options,index),
         'initscripts': initscripts(options,index),
         'slices' : slices(options,index),
         'tcp_specs' : tcp_specs(options,index),
-       'sfa' : sfa(options,index),
+        'sfa' : sfa(options,index),
         'leases' : leases (options, index),
         # big distros need more time to install nodes
         'ssh_node_boot_timers': (40,38),
         'ssh_node_debug_timers': (10,8),
     }
 
-# NOTE: SFA currently has SFA_AGGREGATE_API_VERSION=2 baked into the code
 def sfa (options,index) :
     return { 
-        # the default is to use AMs in the various aggregates.xml
+        # the port used to generate the various aggregates.xml
         # stack config_sfamesh to point to SMs instead
         'neighbours-port':12346,
+        # the port that sfi connects to - used to be 12347 when the SM was still running
+        # but now the SM is just turned off for these tests
+        'sfi-connects-to-port' : 12346,
         ## global sfa-config-tty stuff
-        'SFA_REGISTRY_ROOT_AUTH' : sfa_root(index),
-        'SFA_INTERFACE_HRN' : sfa_root(index),
-       'SFA_REGISTRY_HOST' : 'deferred-myplc-hostname',
-       'SFA_AGGREGATE_HOST': 'deferred-myplc-hostname',
-       'SFA_SM_HOST': 'deferred-myplc-hostname',
-       'SFA_PLC_URL' : 'deferred-myplc-api-url',
-        'SFA_PLC_USER' : 'root@test.onelab.eu',
-        'SFA_PLC_PASSWORD' : 'test++',
+        'settings': {
+            'SFA_REGISTRY_ROOT_AUTH' : sfa_root(index),
+            'SFA_INTERFACE_HRN' : sfa_root(index),
+            'SFA_REGISTRY_HOST' : 'deferred-myplc-hostname',
+            'SFA_AGGREGATE_HOST': 'deferred-myplc-hostname',
+            'SFA_SM_HOST': 'deferred-myplc-hostname',
+# turning off SM and using only AM; be explicit on this as the default has changed in the code
+            'SFA_SM_ENABLED' : 'false',
+            'SFA_PLC_URL' : 'deferred-myplc-api-url',
+            'SFA_PLC_USER' : 'root@test.onelab.eu',
+            'SFA_PLC_PASSWORD' : 'test++',
 # use -c sfadebug to increment this one
-        'SFA_API_LOGLEVEL': 1,
+            'SFA_API_LOGLEVEL': 1,
 # use -c sfavoid to set this to 'void'
-        'SFA_GENERIC_FLAVOUR' : 'pl',
-        'SFA_AGGREGATE_ENABLED' : 'true',
+            'SFA_GENERIC_FLAVOUR' : 'pl',
+            'SFA_AGGREGATE_ENABLED' : 'true',
+        },
         # details of the slices to create
         'auth_sfa_specs' : [ test_auth_sfa_spec(options,index,rspec_style) 
                              for rspec_style in options.rspec_styles ]
@@ -596,9 +612,26 @@ def test_auth_sfa_spec (options,index,rspec_style):
              } 
 
 
-def config (plc_specs,options):
-    result=plc_specs
+def config (plc_specs, options):
+    result = plc_specs
     # plc 'index' starts with 1 
-    for i in range (options.size):
-        result.append(plc(options,i+1))
+    for i in range(options.size):
+        result.append(plc(options, i+1))
     return result
+
+### for creating a sample config interactively
+def sample_test_plc_spec ():
+    class Void: pass
+
+    options = Void()
+    options.size = 1
+    options.rspec_styles = ['pg']
+
+    return config([], options)[0]
+
+if __name__ == '__main__':
+    s = sample_test_plc_spec()
+    print('Sample plc_spec has the following keys')
+    for k in sorted(s.keys()):
+        print(k)    
+