X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=dak%2Fmake_suite_file_list.py;h=9836560d7e88940a5732c99cabc81484bf619784;hb=9f9da35e524274a0a013279cbe0b52fb8f0d0930;hp=20fe186c5914376a08e30cd6181a2158f5b4d1f5;hpb=e2ae71066cbb134753d7bfceb16e87d0b76dfd6e;p=dak.git diff --git a/dak/make_suite_file_list.py b/dak/make_suite_file_list.py index 20fe186c..9836560d 100755 --- a/dak/make_suite_file_list.py +++ b/dak/make_suite_file_list.py @@ -33,7 +33,7 @@ ################################################################################ -import copy, os, pg, string, sys +import copy, os, pg, sys import apt_pkg import symlink_dists import daklib.database @@ -59,6 +59,7 @@ Write out file lists suitable for use with apt-ftparchive. -a, --architecture=ARCH only write file lists for this architecture -c, --component=COMPONENT only write file lists for this component + -f, --force ignore Untouchable suite directives in dak.conf -h, --help show this help and exit -n, --no-delete don't delete older versions -s, --suite=SUITE only write file lists for this suite @@ -84,7 +85,7 @@ def delete_packages(delete_versions, pkg, dominant_arch, suite, delete_version = version[0] delete_id = packages[delete_unique_id]["id"] delete_arch = packages[delete_unique_id]["arch"] - if not Cnf.Find("Suite::%s::Untouchable" % (suite)): + if not Cnf.Find("Suite::%s::Untouchable" % (suite)) or Options["Force"]: if Options["No-Delete"]: print "Would delete %s_%s_%s in %s in favour of %s_%s" % (pkg, delete_arch, delete_version, suite, dominant_version, dominant_arch) else: @@ -275,7 +276,7 @@ def write_filelists(packages, dislocated_files): suites = Cnf.SubTree("Suite").List() else: suites = daklib.utils.split_args(Options["Suite"]) - for suite in map(string.lower, suites): + for suite in [ i.lower() for i in suites ]: d.setdefault(suite, {}) if not Options["Component"]: components = Cnf.ValueList("Suite::%s::Components" % (suite)) @@ -293,7 +294,7 @@ def write_filelists(packages, dislocated_files): architectures = Cnf.ValueList("Suite::%s::Architectures" % (suite)) else: architectures = daklib.utils.split_args(Options["Architectures"]) - for arch in map(string.lower, architectures): + for arch in [ i.lower() for i in architectures ]: d[suite][component].setdefault(arch, {}) if arch == "source": types = [ "dsc" ] @@ -413,8 +414,9 @@ def main(): ('c', "component", "Make-Suite-File-List::Options::Component", "HasArg"), ('h', "help", "Make-Suite-File-List::Options::Help"), ('n', "no-delete", "Make-Suite-File-List::Options::No-Delete"), + ('f', "force", "Make-Suite-File-List::Options::Force"), ('s', "suite", "Make-Suite-File-List::Options::Suite", "HasArg")] - for i in ["architecture", "component", "help", "no-delete", "suite" ]: + for i in ["architecture", "component", "help", "no-delete", "suite", "force-touch" ]: if not Cnf.has_key("Make-Suite-File-List::Options::%s" % (i)): Cnf["Make-Suite-File-List::Options::%s" % (i)] = "" apt_pkg.ParseCommandLine(Cnf,Arguments,sys.argv)