mirror of
https://github.com/commercialhaskell/stackage.git
synced 2026-02-12 14:27:30 +01:00
etc/diskspace: factor out keepBuilds: number of pkg build versions to keep
This commit is contained in:
parent
74dc259d66
commit
6d7bd96fc7
@ -11,6 +11,10 @@ import System.Directory
|
|||||||
import System.FilePath
|
import System.FilePath
|
||||||
import Text.Regex.TDFA
|
import Text.Regex.TDFA
|
||||||
|
|
||||||
|
-- keep 2 latest builds
|
||||||
|
keepBuilds :: Int
|
||||||
|
keepBuilds = 2
|
||||||
|
|
||||||
main = do
|
main = do
|
||||||
files <- sort <$> listDirectory "."
|
files <- sort <$> listDirectory "."
|
||||||
let (dynlibs,libdirs) = partition (".so" `isExtensionOf`) files
|
let (dynlibs,libdirs) = partition (".so" `isExtensionOf`) files
|
||||||
@ -42,8 +46,7 @@ main = do
|
|||||||
removeDashSegment = dropWhileEnd (/= '-')
|
removeDashSegment = dropWhileEnd (/= '-')
|
||||||
|
|
||||||
removeOlder remover files = do
|
removeOlder remover files = do
|
||||||
-- keep 2 latest builds
|
oldfiles <- drop keepBuilds . reverse <$> sortByAge files
|
||||||
oldfiles <- drop 2 . reverse <$> sortByAge files
|
|
||||||
mapM_ remover oldfiles
|
mapM_ remover oldfiles
|
||||||
|
|
||||||
sortByAge files = do
|
sortByAge files = do
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user