[Title] Sort by modified time when removing cached package files
authordonghyuk.yang <donghyuk.yang@samsung.com>
Fri, 31 Aug 2012 07:21:50 +0000 (16:21 +0900)
committerdonghyuk.yang <donghyuk.yang@samsung.com>
Fri, 31 Aug 2012 07:21:50 +0000 (16:21 +0900)
[Type]
[Module]
[Priority]
[Jira#]
[Redmine#]
[Problem]
[Cause]
[Solution]
[TestCase]

src/pkg_server/client.rb

index 27948059c898d0e794b9ceb93efe12a7ad96ebdb..2c2fde8ccf0060d79b0948e03d17037f4ba02037 100644 (file)
@@ -251,7 +251,7 @@ class Client
        private
        def remove_downloaded_pkgs(pkg_name, os)
                pkg_file_prefix = "#{@download_path}/#{pkg_name}_*_#{os}.zip"
-               pkg_files = Dir.glob(pkg_file_prefix).sort {|x,y| y <=> x }
+               pkg_files = Dir[pkg_file_prefix].sort_by { |f| File.mtime(f) }.reverse
 
                if not pkg_files.nil? and pkg_files.length >= 4 then 
                        Utils.execute_shell("rm -rf #{pkg_files[3..-1].join(" ")}")
@@ -288,7 +288,7 @@ class Client
        private
        def remove_snapshots()
                listing_prefix = "#{@snapshots_path}/*"                 
-               dirs = Dir.glob(listing_prefix).sort {|x,y| y <=> x}
+               dirs = Dir[listing_prefix].sort_by { |f| File.mtime(f) }.reverse
 
                if not dirs.nil? and dirs.length >= 20 then
                        Utils.execute_shell("rm -rf #{dirs[19..-1].join(" ")}")