eobuilder-ctl: debug smart cleanning
This commit is contained in:
parent
fb7e28533e
commit
fbe943ab17
|
@ -27,7 +27,7 @@ def smart_cleaning(files_path):
|
|||
key=lambda x: os.stat(x).st_mtime)
|
||||
for filename in project_files[project]:
|
||||
if nb_versions > settings.MIN_PACKAGE_VERSIONS and \
|
||||
os.stat(project).st_mime < now - settings.MIN_AGE * 86400:
|
||||
os.stat(filename).st_mtime < now - settings.MIN_AGE * 86400:
|
||||
os.remove(filename)
|
||||
nb_versions -= 1
|
||||
|
||||
|
@ -47,16 +47,23 @@ def clean(method):
|
|||
shutil.rmtree(settings.ORIGIN_PATH)
|
||||
elif method == "locks":
|
||||
shutil.rmtree(settings.LOCK_PATH)
|
||||
elif method == "old":
|
||||
# TODO: remove this return
|
||||
return
|
||||
elif method == "smart":
|
||||
results_files = []
|
||||
origin_files = [os.path.join(settings.ORIGIN_PATH, f) \
|
||||
for f in os.listdir(settings.ORIGIN_PATH)]
|
||||
for root, dirs, files in os.walk(settings.PBUILDER_RESULT):
|
||||
results_files.extend(files)
|
||||
for fname in files:
|
||||
results_files.append(os.path.join(root, fname))
|
||||
smart_cleaning(results_files)
|
||||
smart_cleaning(origin_files)
|
||||
now = time.time()
|
||||
for root, dirs, files in os.walk(settings.PBUILDER_RESULT):
|
||||
for fname in files:
|
||||
fname = os.path.join(root, fname)
|
||||
if os.stat(fname).st_mtime < now - 365 * 86400:
|
||||
os.remove(fname)
|
||||
else:
|
||||
error("Cleanning: unknow '%s' option" % method)
|
||||
|
||||
|
||||
def init():
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
#!/bin/sh
|
||||
|
||||
su eobuilder -p -c "/usr/local/bin/eobuilder -c old" > /dev/null
|
||||
su eobuilder -p -c "/usr/local/bin/eobuilder -c smart" > /dev/null
|
||||
|
|
|
@ -44,7 +44,7 @@ def parse_cmdline():
|
|||
action="extend", type="string",
|
||||
dest="cleanning", metavar='CLEANNING_METHODS',
|
||||
default=[],
|
||||
help="CLEANNING_METHODS: git, deb, archives, old and / or all")
|
||||
help="CLEANNING_METHODS: git, deb, archives, smart and / or all")
|
||||
|
||||
(options, args) = parser.parse_args()
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ DEBIAN_VERSIONS = {
|
|||
"lenny": "50"
|
||||
}
|
||||
|
||||
# Cleaning
|
||||
# Smart Cleaning
|
||||
# Keep at least X package versions by project
|
||||
MIN_PACKAGE_VERSIONS = 5
|
||||
# Keep a package version during minum X days
|
||||
|
|
Loading…
Reference in New Issue