[Piuparts-commits] [SCM] piuparts git repository branch, develop, updated. 0.44-586-g18cd804
Holger Levsen
holger at layer-acht.org
Fri May 25 12:43:20 UTC 2012
The following commit has been merged in the develop branch:
commit e9b2e3a1ce92f04af144e5a539646a93cecea07c
Merge: e144d0177ae621c37049c8e41da38815ed534dfc 23012dbc9709e9a78e29090e745d28f56b7e2a46
Author: Holger Levsen <holger at layer-acht.org>
Date: Fri May 25 14:41:53 2012 +0200
Merge commit '23012dbc9709e9a78e29090e745d28f56b7e2a46' into develop
diff --combined piuparts.py
index 5be5580,d6cb59b..e57320f
--- a/piuparts.py
+++ b/piuparts.py
@@@ -146,7 -146,6 +146,7 @@@ class Settings
self.basetgz = None
self.savetgz = None
self.lvm_volume = None
+ self.existing_chroot = None
self.end_meta = None
self.save_end_meta = None
self.skip_minimize = True
@@@ -361,26 -360,6 +361,6 @@@ def indent_string(str)
return "\n".join([" " + line for line in str.split("\n")])
- safechars = ("abcdefghijklmnopqrstuvwxyz" +
- "ABCDEFGHIJKLMNOPQRSTUVWXYZ" +
- "0123456789" +
- ",.-_!%/=+:")
-
- def shellquote(str):
- if str == "":
- return "''"
-
- result = []
- for c in str:
- if c == "'":
- result.append("\"'\"")
- elif c in safechars:
- result.append(c)
- else:
- result.append("\\" + c)
- return "".join(result)
-
-
def run(command, ignore_errors=False):
"""Run an external command and die with error message if it fails."""
assert type(command) == type([])
@@@ -452,17 -431,6 +432,6 @@@ def create_file(name, contents)
panic()
- def append_to_file(name, contents):
- """Append contents to an existing file."""
- try:
- f = file(name, "a")
- f.write(contents)
- f.close()
- except IOError, detail:
- logging.error("Couldn't append to file %s: %s" % (name, detail))
- panic()
-
-
def remove_files(filenames):
"""Remove some files."""
for filename in filenames:
@@@ -733,8 -701,6 +702,8 @@@ class Chroot
self.unpack_from_tgz(settings.basetgz)
elif settings.lvm_volume:
self.setup_from_lvm(settings.lvm_volume)
+ elif settings.existing_chroot:
+ self.setup_from_dir(settings.existing_chroot)
else:
self.setup_minimal_chroot()
@@@ -819,14 -785,6 +788,14 @@@
logging.info("Mounting LVM snapshot to %s" % self.name);
run(['mount', self.lvm_snapshot, self.name])
+ def setup_from_dir(self, dirname):
+ """Create chroot from an existing one."""
+ logging.debug("Copying %s into %s" % (dirname, self.name))
+ for name in os.listdir(dirname):
+ src = os.path.join(dirname, name)
+ dst = os.path.join(self.name, name)
+ run(["cp", "-ax", src, dst])
+
def run(self, command, ignore_errors=False):
prefix = []
if settings.eatmydata and os.path.isfile(os.path.join(self.name,
@@@ -958,9 -916,6 +927,6 @@@
self.run_scripts("post_distupgrade")
self.check_for_no_processes()
- def apt_get_knows(self, packages):
- return self.get_known_packages(packages)
-
def get_known_packages(self, packages):
"""Does apt-get (or apt-cache) know about a set of packages?"""
known_packages = []
@@@ -2268,11 -2223,6 +2234,11 @@@ def parse_command_line()
action='store_true',
help="Do not verify signatures from the Release files when running debootstrap.")
+ parser.add_option("-e", "--existing-chroot", metavar="DIR",
+ help="Use DIR as the contents of the initial " +
+ "chroot, instead of building a new one with " +
+ "debootstrap")
+
parser.add_option("-i", "--ignore", action="append", metavar="FILENAME",
default=[],
help="Add FILENAME to list of filenames to be " +
@@@ -2454,7 -2404,6 +2420,7 @@@
settings.savetgz = opts.save
settings.lvm_volume = opts.lvm_volume
settings.lvm_snapshot_size = opts.lvm_snapshot_size
+ settings.existing_chroot = opts.existing_chroot
settings.end_meta = opts.end_meta
settings.save_end_meta = opts.save_end_meta
settings.skip_minimize = opts.skip_minimize
--
piuparts git repository
More information about the Piuparts-commits
mailing list