def config_testsuite(): """Loads an initial config from ``testsuite.cfg``. This is meant to be used as/from a pytest fixture, but isn't declared here as such; individual modules should declare fixtures which use it. Tests which don't care about a specific configuration should leave the config alone. This allows the developer to test with different configurations, e.g. different DBMS backends. if testsuite.cfg doesn't exist, sane defaults are provided. """ # NOTE: The file ``testsuite.cfg.default`` Should be updated whenever # The default settings here are modified. if os.path.isfile('testsuite.cfg'): config.load('testsuite.cfg') else: config_set({ 'extensions': { # Use the null network allocator and auth plugin by default: 'hil.ext.network_allocators.null': '', 'hil.ext.auth.null': '', }, 'devel': { 'dry_run': 'True', }, 'headnode': { 'base_imgs': 'base-headnode, img1, img2, img3, img4', }, 'database': { 'uri': 'sqlite:///:memory:', } })
def config_testsuite(): """Loads an initial config from ``testsuite.cfg``. This is meant to be used as/from a pytest fixture, but isn't declared here as such; individual modules should declare fixtures which use it. Tests which don't care about a specific configuration should leave the config alone. This allows the developer to test with different configurations, e.g. different DBMS backends. if testsuite.cfg doesn't exist, sane defaults are provided. """ # NOTE: The file ``testsuite.cfg.default`` Should be updated whenever # The default settings here are modified. if os.path.isfile('testsuite.cfg'): config.load('testsuite.cfg') else: config_set({ 'extensions': { # Use the null network allocator and auth plugin by default: 'hil.ext.network_allocators.null': '', 'hil.ext.auth.null': '', }, 'devel': { 'dry_run': True, }, 'headnode': { 'base_imgs': 'base-headnode, img1, img2, img3, img4', }, 'database': { 'uri': 'sqlite:///:memory:', } })
def configure(tmpdir): """Set up HIL configuration. This creates a hil.cfg in tmpdir, and loads it. The file needs to be written out separately , since we invoke other commands that read it, besides the test process. """ cfg = '\n'.join([ "[extensions]", "hil.ext.network_allocators.null =", "hil.ext.auth.null =", "hil.ext.obm.ipmi = ", "[devel]", "dry_run = True", "[headnode]", "base_imgs = base-headnode, img1, img2, img3, img4", "[database]", "uri = sqlite:///" + tmpdir + "/hil.db", ]) with open(tmpdir + '/hil.cfg', 'w') as f: f.write(cfg) config.load(tmpdir + '/hil.cfg') config.configure_logging() config.load_extensions()