def test_missing_kernels_dist(self): """ Test handing of a release without kernels in Dists """ subs = CONFIG_SUBS.copy() subs['@DISTS@'] = 'src base' rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def setUp(self): subs = copy.deepcopy(CONFIG_SUBS) subs['@INSTALLROOT@'] = INSTALLROOT os.mkdir(INSTALLROOT) rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) farbconfig, handler = ZConfig.loadConfig(SCHEMA, RELEASE_CONFIG_FILE) # Copy in each release and package root needed for release in RELEASE_NAMES: rewrite_config( CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@': 'CD_VERSION = ' + release.upper()}) releasedest = os.path.join(BUILDROOT, release, 'releaseroot', builder.RELEASE_CD_PATH) utils.copyRecursive(ISO_MOUNTPOINT, releasedest) # The fake CD image we have is for 6.2, so we might need to rename a # directory os.rename(os.path.join(releasedest, '6.2-RELEASE'), os.path.join(releasedest, release.upper())) # Create the package root and its package directory pkgdest = os.path.join(BUILDROOT, release, 'pkgroot', 'usr', 'ports', 'packages') utils.copyRecursive(PACKAGEDIR, pkgdest) self.nbr = runner.NetInstallAssemblerRunner(farbconfig) self.nbr.run()
def test_missing_iso(self): """ Test handling of BinaryReleases without ISO """ subs = CONFIG_SUBS.copy() del subs['@ISO@'] rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_ports_dist(self): """ Test handling of a release with ports defined in Dists """ subs = CONFIG_SUBS.copy() subs['@DISTS@'] = 'base ports src generic' rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_missing_ports_source(self): """ Test handling of UsePortsnap and CVSRoot not existing """ subs = CONFIG_SUBS.copy() del subs['@PORTSOURCE@'] rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_cvsroot_present(self): """ Verify CVSRoot is set when BinaryRelease is False """ subs = CONFIG_SUBS.copy() subs['@RELEASETYPE@'] = 'CVSTag RELENG_6_0' rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_missing_release_type(self): """ Test handling of unset release type """ subs = CONFIG_SUBS.copy() del subs['@RELEASETYPE@'] rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def setUp(self): self.assembler = builder.PackageChrootAssembler(RELEASEROOT, PKGROOT) self.log = open(PROCESS_LOG, 'w+') self.dists = {'base' : ['base'], 'src' : ['szomg', 'swtf']} # Copy in a release to RELEASEROOT rewrite_config(CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@' : 'CD_VERSION = 6.2-RELEASE'}) utils.copyRecursive(ISO_MOUNTPOINT, os.path.join(RELEASEROOT, builder.RELEASE_CD_PATH))
def test_cvstag_present(self): """ Verify CVSTag is set when BinaryRelease is False """ subs = CONFIG_SUBS.copy() subs['@PORTSOURCE@'] = 'CVSRoot ' + CVSROOT subs['@RELEASETYPE@'] = 'BinaryRelease False' rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_releases_cvstag(self): """ Test handling of duplicate CVS Tags """ bs = CONFIG_SUBS.copy() bs['@TAG1@'] = 'boom' bs['@TAG2@'] = 'boom' rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, bs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_ports_cvs(self): """ Test using CVS for ports in binary release """ subs = CONFIG_SUBS.copy() subs['@PORTSOURCE@'] = 'CVSRoot ' + CVSROOT rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) config, handler = ZConfig.loadConfig(self.schema, RELEASE_CONFIG_FILE) release = config.Releases.Release[2] self.assertEquals(release.cvsroot, CVSROOT)
def test_ports_cvs(self): """ Test using CVS for ports in binary release """ subs = CONFIG_SUBS.copy() subs['@PORTSOURCE@'] = 'CVSRoot ' + CVSROOT rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) config, handler = ZConfig.loadConfig(self.schema, RELEASE_CONFIG_FILE) release = config.Releases.Release[2] self.assertEquals(release.cvsroot, CVSROOT)
def setUp(self): self.log = open(PROCESS_LOG, 'w+') self.installs = [builder.InstallAssembler('testinstall', 'Test Install', RELEASEROOT, INSTALL_CFG),] self.releaseInstalls = [builder.ReleaseAssembler('6.2', RELEASEROOT, PKGROOT),] self.irb = builder.NetInstallAssembler(INSTALLROOT, self.releaseInstalls, self.installs) # Create dummy "release" to copy to netinstall directory rewrite_config(CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@' : 'CD_VERSION = 6.2-RELEASE'}) utils.copyRecursive(ISO_MOUNTPOINT, os.path.join(RELEASEROOT, builder.RELEASE_CD_PATH))
def test_releases_cvstag(self): """ Test handling of duplicate CVS Tags """ bs = CONFIG_SUBS.copy() bs['@TAG1@'] = 'boom' bs['@TAG2@'] = 'boom' rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, bs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_default_dists(self): """ Ensure that default Dists are set properly """ subs = CONFIG_SUBS.copy() rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) config, handler = ZConfig.loadConfig(self.schema, RELEASE_CONFIG_FILE) release = config.Releases.Release[1] self.assertEquals(release.dists, ["base", "kernels", "doc", "games", "manpages", "catpages", "proflibs", "dict", "info", "src"]) self.assertEquals(release.kerneldists, ["GENERIC", "SMP"])
def test_default_dists(self): """ Ensure that default Dists are set properly """ subs = CONFIG_SUBS.copy() rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) config, handler = ZConfig.loadConfig(self.schema, RELEASE_CONFIG_FILE) release = config.Releases.Release[1] self.assertEquals(release.dists, [ "base", "kernels", "doc", "games", "manpages", "catpages", "proflibs", "dict", "info", "src" ]) self.assertEquals(release.kerneldists, ["GENERIC", "SMP"])
def test_partition_softupdates(self): """ Verify that SoftUpdates flags are tweaked appropriately """ bs = CONFIG_SUBS.copy() bs['@SWAPSU@'] = 'True' rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, bs) config, handler = ZConfig.loadConfig(self.schema, RELEASE_CONFIG_FILE) for part in config.Partitions.PartitionMap[0].Partition: if (part.type == 'swap'): self.assertEquals(part.softupdates, False) elif (part.mount == '/usr'): self.assertEquals(part.softupdates, True)
def test_partition_softupdates(self): """ Verify that SoftUpdates flags are tweaked appropriately """ bs = CONFIG_SUBS.copy() bs['@SWAPSU@'] = 'True' rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, bs) config, handler = ZConfig.loadConfig(self.schema, RELEASE_CONFIG_FILE) for part in config.Partitions.PartitionMap[0].Partition: if (part.type == 'swap'): self.assertEquals(part.softupdates, False) elif (part.mount == '/usr'): self.assertEquals(part.softupdates, True)
def setUp(self): self.log = open(PROCESS_LOG, 'w+') self.destdir = os.path.join(TFTPROOT, 'testinstall') self.mfsroot = os.path.join(self.destdir, 'mfsroot') self.installCfg = os.path.join(self.destdir, 'mnt', 'install.cfg') self.bootConf = os.path.join(self.destdir, 'boot.conf') self.builder = builder.InstallAssembler('testinstall', 'Test Install', RELEASEROOT, INSTALL_CFG) os.mkdir(TFTPROOT) os.mkdir(self.destdir) # Create dummy "release" containing the kernel and mfsroot needed rewrite_config(CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@' : 'CD_VERSION = 6.2-RELEASE'}) utils.copyRecursive(ISO_MOUNTPOINT, os.path.join(RELEASEROOT, builder.RELEASE_CD_PATH))
def test_missingPartitionMap(self): """ Test handling of a missing PartitionMap """ # Break referential integrity subs = CONFIG_SUBS.copy() subs['@PMAP@'] = 'DoesNotExist' # Rewrite and reload config rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.config, handler = ZConfig.loadConfig(self.schema, RELEASE_CONFIG_FILE) # Kaboom? self.assertRaises(ZConfig.ConfigurationError, config.verifyReferences, self.config)
def setUp(self): rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, CONFIG_SUBS) farbconfig, handler = ZConfig.loadConfig(SCHEMA, RELEASE_CONFIG_FILE) config.verifyPackages(farbconfig) # Copy in each release needed for release in RELEASE_NAMES: rewrite_config(CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@' : 'CD_VERSION = ' + release.upper()}) dest = os.path.join(BUILDROOT, release, 'releaseroot', builder.RELEASE_CD_PATH) utils.copyRecursive(ISO_MOUNTPOINT, dest) # The fake CD image we have is for 6.2, so we might need to rename a # directory os.rename(os.path.join(dest, '6.2-RELEASE'), os.path.join(dest, release.upper())) self.pbr = runner.PackageBuildRunner(farbconfig) self.pbr.run()
def test_missingPackageSet(self): """ Test handling of a missing PackageSet """ # Break referential integrity subs = CONFIG_SUBS.copy() subs['@PSET@'] = 'DoesNotExist' # Rewrite and reload config rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.config, handler = ZConfig.loadConfig(self.schema, RELEASE_CONFIG_FILE) self.instSection = self.config.Installations.Installation[0] # Kaboom? self.assertRaises(ZConfig.ConfigurationError, config.verifyReferences, self.config)
def test_missingPartitionMap(self): """ Test handling of a missing PartitionMap """ # Break referential integrity subs = CONFIG_SUBS.copy() subs['@PMAP@'] = 'DoesNotExist' # Rewrite and reload config rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.config, handler = ZConfig.loadConfig(self.schema, RELEASE_CONFIG_FILE) # Kaboom? self.assertRaises(ZConfig.ConfigurationError, config.verifyReferences, self.config)
def test_missingPackageSet(self): """ Test handling of a missing PackageSet """ # Break referential integrity subs = CONFIG_SUBS.copy() subs['@PSET@'] = 'DoesNotExist' # Rewrite and reload config rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.config, handler = ZConfig.loadConfig(self.schema, RELEASE_CONFIG_FILE) self.instSection = self.config.Installations.Installation[0] # Kaboom? self.assertRaises(ZConfig.ConfigurationError, config.verifyReferences, self.config)
def setUp(self): rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, CONFIG_SUBS) farbconfig, handler = ZConfig.loadConfig(SCHEMA, RELEASE_CONFIG_FILE) config.verifyPackages(farbconfig) # Copy in each release needed for release in RELEASE_NAMES: rewrite_config( CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@': 'CD_VERSION = ' + release.upper()}) dest = os.path.join(BUILDROOT, release, 'releaseroot', builder.RELEASE_CD_PATH) utils.copyRecursive(ISO_MOUNTPOINT, dest) # The fake CD image we have is for 6.2, so we might need to rename a # directory os.rename(os.path.join(dest, '6.2-RELEASE'), os.path.join(dest, release.upper())) self.pbr = runner.PackageBuildRunner(farbconfig) self.pbr.run()
def setUp(self): subs = copy.deepcopy(CONFIG_SUBS) subs['@INSTALLROOT@'] = INSTALLROOT os.mkdir(INSTALLROOT) rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) farbconfig, handler = ZConfig.loadConfig(SCHEMA, RELEASE_CONFIG_FILE) # Copy in each release and package root needed for release in RELEASE_NAMES: rewrite_config(CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@' : 'CD_VERSION = ' + release.upper()}) releasedest = os.path.join(BUILDROOT, release, 'releaseroot', builder.RELEASE_CD_PATH) utils.copyRecursive(ISO_MOUNTPOINT, releasedest) # The fake CD image we have is for 6.2, so we might need to rename a # directory os.rename(os.path.join(releasedest, '6.2-RELEASE'), os.path.join(releasedest, release.upper())) # Create the package root and its package directory pkgdest = os.path.join(BUILDROOT, release, 'pkgroot', 'usr', 'ports', 'packages') utils.copyRecursive(PACKAGEDIR, pkgdest) self.nbr = runner.NetInstallAssemblerRunner(farbconfig) self.nbr.run()
def setUp(self): # Load ZConfig schema self.schema = ZConfig.loadSchema(farb.CONFIG_SCHEMA) rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, CONFIG_SUBS) rewrite_config(PACKAGES_CONFIG_FILE_IN, PACKAGES_CONFIG_FILE, CONFIG_SUBS) rewrite_config(PACKAGES_BAD_CONFIG_FILE_IN, PACKAGES_BAD_CONFIG_FILE, CONFIG_SUBS)
def test_clean(self): # Now try the same thing with a chroot that isn't empty rewrite_config(CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@' : 'CD_VERSION = 6.2-RELEASE'}) utils.copyRecursive(ISO_MOUNTPOINT, os.path.join(RELEASEROOT, builder.RELEASE_CD_PATH)) self.cleaner.clean(self.log) self._dirCreated()
def setUp(self): # Load ZConfig schema self.schema = ZConfig.loadSchema(farb.CONFIG_SCHEMA) rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, CONFIG_SUBS) rewrite_config(PACKAGES_CONFIG_FILE_IN, PACKAGES_CONFIG_FILE, CONFIG_SUBS) rewrite_config(PACKAGES_BAD_CONFIG_FILE_IN, PACKAGES_BAD_CONFIG_FILE, CONFIG_SUBS)
def setUp(self): rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, CONFIG_SUBS) farbconfig, handler = ZConfig.loadConfig(SCHEMA, RELEASE_CONFIG_FILE) self.rbr = runner.ReleaseBuildRunner(farbconfig) self.rbr.run()
def setUp(self): self.log = open(PROCESS_LOG, 'w+') self.destdir = os.path.join(INSTALLROOT, 'buildtest') # Create dummy "release" rewrite_config(CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@' : 'CD_VERSION = 6.2-RELEASE'}) utils.copyRecursive(ISO_MOUNTPOINT, os.path.join(RELEASEROOT, builder.RELEASE_CD_PATH))
def setUp(self): rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, CONFIG_SUBS) farbconfig, handler = ZConfig.loadConfig(SCHEMA, RELEASE_CONFIG_FILE) self.rbr = runner.ReleaseBuildRunner(farbconfig) self.rbr.run()
def test_ports_dist(self): """ Test handling of a release with ports defined in Dists """ subs = CONFIG_SUBS.copy() subs['@DISTS@'] = 'base ports src generic' rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_missing_kernels_dist(self): """ Test handing of a release without kernels in Dists """ subs = CONFIG_SUBS.copy() subs['@DISTS@'] = 'src base' rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_getCDRelease(self): rewrite_config(CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@' : 'CD_VERSION = 6.2-RELEASE'}) self.assertEquals(builder._getCDRelease(os.path.dirname(CDROM_INF)), '6.2-RELEASE')
def test_missing_ports_source(self): """ Test handling of UsePortsnap and CVSRoot not existing """ subs = CONFIG_SUBS.copy() del subs['@PORTSOURCE@'] rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_missing_iso(self): """ Test handling of BinaryReleases without ISO """ subs = CONFIG_SUBS.copy() del subs['@ISO@'] rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)
def test_badCDInf(self): # Make sure we have an exception when CD_VERSION line looks wrong rewrite_config(CDROM_INF_IN, CDROM_INF, {'@CD_VERSION_LINE@' : 'hi I am a CD!'}) self.assertRaises(builder.CDReleaseError, builder._getCDRelease, os.path.dirname(CDROM_INF))
def test_missing_release_type(self): """ Test handling of unset release type """ subs = CONFIG_SUBS.copy() del subs['@RELEASETYPE@'] rewrite_config(RELEASE_CONFIG_FILE_IN, RELEASE_CONFIG_FILE, subs) self.assertRaises(ZConfig.ConfigurationError, ZConfig.loadConfig, self.schema, RELEASE_CONFIG_FILE)