def assertClone(self, identifier, pointsto=None): partition, element, dirname = identifier.split('/') path = "%s/%s/%s/%s" % (self.settings.CLONEDIR, \ partition, element, dirname) if not os.path.isdir(path): raise AssertionError("Clone '%s' not found" % path) if not os.path.isdir("%s/code" % path): raise AssertionError("Clone '%s' does not have code dir" % path) if not os.path.isdir("%s/data" % path): raise AssertionError("Clone '%s' does not have data dir" % path) inventory = get_inventory() self.assertTrue(partition in inventory) self.assertTrue(element in inventory[partition]) refname = dirname_to_refname(dirname) self.assertTrue(refname in inventory[partition][element]) if pointsto is not None: self.assertEquals(get_repository_head(path), pointsto)
def assertClone(self, identifier, pointsto=None): partition, element, dirname = identifier.split('/') path = "%s/%s/%s/%s" % (self.settings.CLONEDIR, \ partition, element, dirname) if not os.path.isdir(path): raise AssertionError("Clone '%s' not found" % path) if not os.path.isdir("%s/code" % path): raise AssertionError("Clone '%s' does not have code dir" % path) if not os.path.isdir("%s/data" % path): raise AssertionError("Clone '%s' does not have data dir" % path) inventory = get_inventory() self.assertTrue(partition in inventory) self.assertTrue(element in inventory[partition]) refname = dirname_to_refname(dirname) self.assertTrue(refname in inventory[partition][element]) if pointsto is not None: self.assertEqual(get_repository_head(path), pointsto)
raise JensRepositoriesError("Unable to list %s (%s)" % (baredir, error)) for name in names: inventory[partition][name] = \ _read_list_of_clones(partition, name) return inventory def _read_list_of_clones(partition, name): settings = Settings() try: clones = os.listdir(settings.CLONEDIR + "/%s/%s" % (partition, name)) except OSError, error: raise JensRepositoriesError("Unable to list clones of %s/%s (%s)" % (partition, name, error)) return [dirname_to_refname(clone) for clone in clones] # This is basically the 'look-ahead' bit def _read_desired_inventory(): desired = {'modules': {}, 'hostgroups': {}, 'common': {}} environments = get_names_of_declared_environments() for environmentname in environments: try: environment = read_environment_definition(environmentname) if 'overrides' in environment: for partition in environment['overrides'].iterkeys(): if partition in ("modules", "hostgroups", "common"): for name, override in \ environment['overrides'][partition].iteritems(): # prefixhash is equivalent to PREFIXhash, contrary to
except OSError, error: raise JensRepositoriesError("Unable to list %s (%s)" % \ (baredir, error)) for name in names: inventory[partition][name] = \ _read_list_of_clones(settings, partition, name) return inventory def _read_list_of_clones(settings, partition, name): try: clones = os.listdir(settings.CLONEDIR + "/%s/%s" % (partition, name)) except OSError, error: raise JensRepositoriesError("Unable to list clones of %s/%s (%s)" % \ (partition, name, error)) return [dirname_to_refname(settings, clone) for clone in clones] # This is basically the 'look-ahead' bit def _read_desired_inventory(settings): desired = {'modules': {}, 'hostgroups': {}, 'common': {}} environments = get_names_of_declared_environments(settings) for environmentname in environments: try: environment = read_environment_definition( settings, environmentname) # TODO: what if overrides empty? what if overrides,partition empty? if 'overrides' in environment: for partition in environment['overrides'].iterkeys(): if partition in ("modules", "hostgroups", "common"): for name, override in \ environment['overrides'][partition].iteritems():
except OSError, error: raise JensRepositoriesError("Unable to list %s (%s)" % \ (baredir, error)) for name in names: inventory[partition][name] = \ _read_list_of_clones(settings, partition, name) return inventory def _read_list_of_clones(settings, partition, name): try: clones = os.listdir(settings.CLONEDIR + "/%s/%s" % (partition, name)) except OSError, error: raise JensRepositoriesError("Unable to list clones of %s/%s (%s)" % \ (partition, name, error)) return [dirname_to_refname(settings, clone) for clone in clones] # This is basically the 'look-ahead' bit def _read_desired_inventory(settings): desired = {'modules': {}, 'hostgroups': {}, 'common': {}} environments = get_names_of_declared_environments(settings) for environmentname in environments: try: environment = read_environment_definition(settings, environmentname) # TODO: what if overrides empty? what if overrides,partition empty? if 'overrides' in environment: for partition in environment['overrides'].iterkeys(): if partition in ("modules", "hostgroups", "common"): for name, override in \