comparison bin/publishpackages.py @ 578:bccd69dedbe5

shlex.split all config parameters that may contain a command Return the command as list and use @ operator for the variable in cmdexpand
author Bjoern Ricks <bricks@intevation.de>
date Sat, 03 Sep 2011 11:53:12 +0000
parents eadcb1bb54e2
children
comparison
equal deleted inserted replaced
577:7a9841e4958f 578:bccd69dedbe5
22 from treepkg.util import ensure_directory, listdir_abs, \ 22 from treepkg.util import ensure_directory, listdir_abs, \
23 remove_trailing_slashes, expand_filename 23 remove_trailing_slashes, expand_filename
24 from treepkg.publish import prefix_for_remote_command, copy_to_publishdir 24 from treepkg.publish import prefix_for_remote_command, copy_to_publishdir
25 25
26 config_desc = ["distribution", "section", "num_newest", 26 config_desc = ["distribution", "section", "num_newest",
27 "build_user", "build_host", "build_listpackages", 27 "build_user", "build_host",
28 ("build_listpackages", shlex.split),
28 "publish_user", "publish_host", 29 "publish_user", "publish_host",
29 ("after_upload_hook", shlex.split), 30 ("after_upload_hook", shlex.split),
30 ("publish_remove_old_packages", convert_bool), 31 ("publish_remove_old_packages", convert_bool),
31 ("publish_dir", remove_trailing_slashes), 32 ("publish_dir", remove_trailing_slashes),
32 ("cachedir", 33 ("cachedir",
84 else: 85 else:
85 listpackages_vars["revision"] = [] 86 listpackages_vars["revision"] = []
86 87
87 runremote = prefix_for_remote_command(variables["build_user"], 88 runremote = prefix_for_remote_command(variables["build_user"],
88 variables["build_host"]) 89 variables["build_host"])
89 files = capture_output(cmdexpand("@runremote $build_listpackages" 90 files = capture_output(cmdexpand("@runremote @build_listpackages"
90 " @track @revision $pkgtype" 91 " @track @revision $pkgtype"
91 " --newest=$num_newest", 92 " --newest=$num_newest",
92 runremote=runremote, 93 runremote=runremote,
93 **listpackages_vars)).splitlines() 94 **listpackages_vars)).splitlines()
94 95
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)