Merge lp:~r.kintzi/vmbuilder/existing-chroot into lp:vmbuilder

Proposed by Radosław Kintzi
Status: Merged
Merged at revision: 462
Proposed branch: lp:~r.kintzi/vmbuilder/existing-chroot
Merge into: lp:vmbuilder
Diff against target: 52 lines (+9/-1)
2 files modified
VMBuilder/contrib/cli.py (+8/-0)
VMBuilder/plugins/ubuntu/distro.py (+1/-1)
To merge this branch: bzr merge lp:~r.kintzi/vmbuilder/existing-chroot
Reviewer Review Type Date Requested Status
Serge Hallyn Approve
Review via email: mp+45398@code.launchpad.net

Description of the change

- new --chroot-dir option to build chroot in specific directory (usefull wiht --only-chroot)
- /etc/hostname and /etc/hosts files are now generated at image build stage not at bootstrap (just like /etc/network/interfaces); This allows to use chroots (previously built with --only-chroot option) as templates for disk images

To post a comment you must log in.
Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

Thanks.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'VMBuilder/contrib/cli.py'
--- VMBuilder/contrib/cli.py 2010-07-09 21:48:56 +0000
+++ VMBuilder/contrib/cli.py 2011-01-06 15:33:14 +0000
@@ -78,6 +78,8 @@
78 action='store_true',78 action='store_true',
79 help=("Only build the chroot. Don't install it "79 help=("Only build the chroot. Don't install it "
80 "on disk images or anything."))80 "on disk images or anything."))
81 group.add_option('--chroot-dir',
82 help="Build the chroot in directory.")
81 group.add_option('--existing-chroot',83 group.add_option('--existing-chroot',
82 help="Use existing chroot.")84 help="Use existing chroot.")
83 group.add_option('--tmp',85 group.add_option('--tmp',
@@ -155,6 +157,9 @@
155 destdir = self.options.destdir or ('%s-%s' % (distro.arg,157 destdir = self.options.destdir or ('%s-%s' % (distro.arg,
156 hypervisor.arg))158 hypervisor.arg))
157159
160 if self.options.tmpfs and self.options.chroot_dir:
161 raise VMBuilderUserError('--chroot-dir and --tmpfs can not be used together.')
162
158 if os.path.exists(destdir):163 if os.path.exists(destdir):
159 if self.options.overwrite:164 if self.options.overwrite:
160 logging.debug('%s existed, but -o was specified. '165 logging.debug('%s existed, but -o was specified. '
@@ -202,6 +207,9 @@
202 tmpfs_mount_point = util.set_up_tmpfs(207 tmpfs_mount_point = util.set_up_tmpfs(
203 tmp_root=self.options.tmp_root, size=tmpfs_size)208 tmp_root=self.options.tmp_root, size=tmpfs_size)
204 chroot_dir = tmpfs_mount_point209 chroot_dir = tmpfs_mount_point
210 elif self.options.chroot_dir:
211 os.mkdir(self.options.chroot_dir)
212 chroot_dir = self.options.chroot_dir
205 else:213 else:
206 chroot_dir = util.tmpdir(tmp_root=self.options.tmp_root)214 chroot_dir = util.tmpdir(tmp_root=self.options.tmp_root)
207 distro.set_chroot_dir(chroot_dir)215 distro.set_chroot_dir(chroot_dir)
208216
=== modified file 'VMBuilder/plugins/ubuntu/distro.py'
--- VMBuilder/plugins/ubuntu/distro.py 2010-11-16 16:32:47 +0000
+++ VMBuilder/plugins/ubuntu/distro.py 2011-01-06 15:33:14 +0000
@@ -144,7 +144,6 @@
144 self.suite.install_extras()144 self.suite.install_extras()
145 self.suite.create_initial_user()145 self.suite.create_initial_user()
146 self.suite.install_authorized_keys()146 self.suite.install_authorized_keys()
147 self.suite.config_host_and_domainname()
148 self.suite.set_timezone()147 self.suite.set_timezone()
149 self.suite.set_locale()148 self.suite.set_locale()
150 self.suite.update()149 self.suite.update()
@@ -158,6 +157,7 @@
158 self.suite.create_manifest()157 self.suite.create_manifest()
159158
160 def configure_networking(self, nics):159 def configure_networking(self, nics):
160 self.suite.config_host_and_domainname()
161 self.suite.config_interfaces(nics)161 self.suite.config_interfaces(nics)
162162
163 def configure_mounting(self, disks, filesystems):163 def configure_mounting(self, disks, filesystems):

Subscribers

People subscribed via source and target branches