[Abtlinux-svn] SF.net SVN: abtlinux: [478] src/trunk
Status: Alpha
Brought to you by:
eschabell
From: <esc...@us...> - 2008-01-14 11:32:11
|
Revision: 478 http://abtlinux.svn.sourceforge.net/abtlinux/?rev=478&view=rev Author: eschabell Date: 2008-01-14 03:32:04 -0800 (Mon, 14 Jan 2008) Log Message: ----------- Refactored cache package from logmanager to the package manager, makes more sense to me. Fixed unit tests to reflect move. Modified Paths: -------------- src/trunk/libs/abtlogmanager.rb src/trunk/libs/abtpackagemanager.rb src/trunk/tests/testabtlogmanager.rb src/trunk/tests/testabtpackagemanager.rb Modified: src/trunk/libs/abtlogmanager.rb =================================================================== --- src/trunk/libs/abtlogmanager.rb 2008-01-12 18:32:06 UTC (rev 477) +++ src/trunk/libs/abtlogmanager.rb 2008-01-14 11:32:04 UTC (rev 478) @@ -194,92 +194,5 @@ return true end - - ## - # Provides a complete log of the given packages build. Includes everything - # needed to duplicate the build at a later date. - # - # <b>PARAM</b> <i>String</i> - Package name. - # - # <b>RETURN</b> <i>boolean</i> - True if package cache created successfully, - # otherwise false. - ## - def cache_package(package) - system = AbtSystemManager.new - - if (system.package_installed(package)) - sw = eval("#{package.capitalize}.new") - cachedDir = $PACKAGE_CACHED + "/" + sw.srcDir - sourcePath = $SOURCES_REPOSITORY + "/" + File.basename(sw.srcUrl) - sourceFile = File.basename(sw.srcUrl) - installLog = get_log(package, 'install') - buildLog = get_log(package, 'build') - configureLog = get_log(package, 'configure') - integrityLog = get_log(package, 'integrity') - packageFile = "#{$PACKAGE_PATH}#{package}.rb" - - - FileUtils.mkdir_p(cachedDir) - # collect package source. - if (FileTest::exist?(sourcePath)) - FileUtils.copy_file(sourcePath, "#{cachedDir}/#{sourceFile}") - puts "\nCaching copy of #{package} source." - else - puts "\nUnable to cache copy of #{package} source." - end - - # collect package install log. - if (FileTest::exist?(installLog)) - FileUtils.copy_file(installLog, "#{cachedDir}/#{sw.srcDir}.install") - puts "\nCaching copy of #{package} install log." - else - puts "\nUnable to cache copy of #{package} install log." - end - - # collect package build log. - if (FileTest::exist?(buildLog)) - FileUtils.copy_file(buildLog, "#{cachedDir}/#{sw.srcDir}.build") - puts "\nCaching copy of #{package} build log." - else - puts "\nUnable to cache copy of #{package} build log." - end - - # collect package configure log. - if (FileTest::exist?(configureLog)) - FileUtils.copy_file(configureLog, "#{cachedDir}/#{sw.srcDir}.configure") - puts "\nCaching copy of #{package} configure log." - else - puts "\nUnable to cache copy of #{package} configure log." - end - - # collect package integrity log. - if (FileTest::exist?(integrityLog)) - FileUtils.copy_file(integrityLog, "#{cachedDir}/#{sw.srcDir}.integrity") - puts "\nCaching copy of #{package} integrity log." - else - puts "\nUnable to cache copy of #{package} integrity log." - end - - # collect package description (class file). - if (FileTest::exist?(packageFile)) - FileUtils.copy_file(packageFile, "#{cachedDir}/#{package}.rb") - puts "\nCaching copy of #{package} package description." - else - puts "\nUnable to cache copy of #{package} package description, from location #{packageFile}" - end - - # tar and bzip this directory (package-cache-version.tar.bz2) - Dir.chdir($PACKAGE_CACHED) - if (system("tar -cf #{sw.srcDir}.tar #{sw.srcDir}") && - system("bzip2 -f #{sw.srcDir}.tar")) - # last but not least, remove our tarball directory - FileUtils.rm_rf(cachedDir) - return true - end - end - - return false # package not installed, can't cache it. - end - end Modified: src/trunk/libs/abtpackagemanager.rb =================================================================== --- src/trunk/libs/abtpackagemanager.rb 2008-01-12 18:32:06 UTC (rev 477) +++ src/trunk/libs/abtpackagemanager.rb 2008-01-14 11:32:04 UTC (rev 478) @@ -221,8 +221,7 @@ ## def reinstall_package(package, automated_build=false) logger = Logger.new($JOURNAL) - # TODO: look into refactoring myLogger: - myLogger = AbtLogManager.new + manager = AbtPackageManager.new system = AbtSystemManager.new # check for frozen. @@ -265,7 +264,7 @@ puts "\n\n" logger.info("Completed reinstall of #{package}.") - if (myLogger.cache_package(package)) + if (manager.cache_package(package)) puts "\n\n" puts "*** Completed caching of package #{package}. ***" puts "\n\n" @@ -421,4 +420,93 @@ exit end end + + ## + # Provides a complete log of the given packages build. Includes everything + # needed to duplicate the build at a later date. + # + # <b>PARAM</b> <i>String</i> - Package name. + # + # <b>RETURN</b> <i>boolean</i> - True if package cache created successfully, + # otherwise false. + ## + def cache_package(package) + system = AbtSystemManager.new + logger = AbtLogManager.new + + if (system.package_installed(package)) + sw = eval("#{package.capitalize}.new") + cachedDir = $PACKAGE_CACHED + "/" + sw.srcDir + sourcePath = $SOURCES_REPOSITORY + "/" + File.basename(sw.srcUrl) + sourceFile = File.basename(sw.srcUrl) + installLog = logger.get_log(package, 'install') + buildLog = logger.get_log(package, 'build') + configureLog = logger.get_log(package, 'configure') + integrityLog = logger.get_log(package, 'integrity') + packageFile = "#{$PACKAGE_PATH}#{package}.rb" + + + FileUtils.mkdir_p(cachedDir) + + # collect package source. + if (FileTest::exist?(sourcePath)) + FileUtils.copy_file(sourcePath, "#{cachedDir}/#{sourceFile}") + puts "\nCaching copy of #{package} source." + else + puts "\nUnable to cache copy of #{package} source." + end + + # collect package install log. + if (FileTest::exist?(installLog)) + FileUtils.copy_file(installLog, "#{cachedDir}/#{sw.srcDir}.install") + puts "\nCaching copy of #{package} install log." + else + puts "\nUnable to cache copy of #{package} install log." + end + + # collect package build log. + if (FileTest::exist?(buildLog)) + FileUtils.copy_file(buildLog, "#{cachedDir}/#{sw.srcDir}.build") + puts "\nCaching copy of #{package} build log." + else + puts "\nUnable to cache copy of #{package} build log." + end + + # collect package configure log. + if (FileTest::exist?(configureLog)) + FileUtils.copy_file(configureLog, "#{cachedDir}/#{sw.srcDir}.configure") + puts "\nCaching copy of #{package} configure log." + else + puts "\nUnable to cache copy of #{package} configure log." + end + + # collect package integrity log. + if (FileTest::exist?(integrityLog)) + FileUtils.copy_file(integrityLog, "#{cachedDir}/#{sw.srcDir}.integrity") + puts "\nCaching copy of #{package} integrity log." + else + puts "\nUnable to cache copy of #{package} integrity log." + end + + # collect package description (class file). + if (FileTest::exist?(packageFile)) + FileUtils.copy_file(packageFile, "#{cachedDir}/#{package}.rb") + puts "\nCaching copy of #{package} package description." + else + puts "\nUnable to cache copy of #{package} package description, from location #{packageFile}" + end + + # tar and bzip this directory (package-cache-version.tar.bz2) + Dir.chdir($PACKAGE_CACHED) + if (system("tar -cf #{sw.srcDir}.tar #{sw.srcDir}") && + system("bzip2 -f #{sw.srcDir}.tar")) + # last but not least, remove our tarball directory + FileUtils.rm_rf(cachedDir) + return true + end + end + + return false # package not installed, can't cache it. + end + end Modified: src/trunk/tests/testabtlogmanager.rb =================================================================== --- src/trunk/tests/testabtlogmanager.rb 2008-01-12 18:32:06 UTC (rev 477) +++ src/trunk/tests/testabtlogmanager.rb 2008-01-14 11:32:04 UTC (rev 478) @@ -96,15 +96,4 @@ assert(@logger.log_package_build("ipc"), "test_log_package_build()") end - ## - # Test method for 'AbtLogManager.test_cache_package()' - ## - def test_cache_package() - if !@system.package_installed("ipc") - @manager.install_package("ipc") - end - - assert(@logger.cache_package("ipc"), "test_cache_package()") - end - end Modified: src/trunk/tests/testabtpackagemanager.rb =================================================================== --- src/trunk/tests/testabtpackagemanager.rb 2008-01-12 18:32:06 UTC (rev 477) +++ src/trunk/tests/testabtpackagemanager.rb 2008-01-14 11:32:04 UTC (rev 478) @@ -130,5 +130,16 @@ assert(true) end end - + + ## + # Test method for 'AbtLogManager.test_cache_package()' + ## + def test_cache_package() + if !@system.package_installed("ipc") + @manager.install_package("ipc") + end + + assert(@manager.cache_package("ipc"), "test_cache_package()") + end + end This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |