diff options
author | Neil Williams <codehelp@debian.org> | 2015-09-02 21:07:35 +0100 |
---|---|---|
committer | Neil Williams <codehelp@debian.org> | 2015-09-02 21:43:01 +0100 |
commit | 5c54e70b6d13241bc096880fd39f346f95561a54 (patch) | |
tree | 500ff2edceb3240f55d3b86e54601d2f48aafb99 /vmdebootstrap | |
parent | 31d98be0dc493620e28ad9bd24d3889499333b50 (diff) | |
download | vmdebootstrap-5c54e70b6d13241bc096880fd39f346f95561a54.tar.gz |
move some more functions into modules
Diffstat (limited to 'vmdebootstrap')
-rw-r--r-- | vmdebootstrap/__init__.py | 1 | ||||
-rw-r--r-- | vmdebootstrap/base.py | 18 | ||||
-rw-r--r-- | vmdebootstrap/codenames.py | 18 | ||||
-rw-r--r-- | vmdebootstrap/extlinux.py | 2 | ||||
-rw-r--r-- | vmdebootstrap/grub.py | 5 | ||||
-rw-r--r-- | vmdebootstrap/uefi.py | 7 |
6 files changed, 50 insertions, 1 deletions
diff --git a/vmdebootstrap/__init__.py b/vmdebootstrap/__init__.py index 8b13789..e69de29 100644 --- a/vmdebootstrap/__init__.py +++ b/vmdebootstrap/__init__.py @@ -1 +0,0 @@ - diff --git a/vmdebootstrap/base.py b/vmdebootstrap/base.py index be51ce6..fc7305d 100644 --- a/vmdebootstrap/base.py +++ b/vmdebootstrap/base.py @@ -178,3 +178,21 @@ class Base(object): logging.debug("Setting minimum 256Mb swap space") extent = "%s%%" % int(100 * (self.settings['size'] - swap) / self.settings['size']) return extent + + def make_swap(self, extent): + if self.settings['swap'] > 0: + logging.debug("Creating swap partition") + runcmd([ + 'parted', '-s', self.settings['image'], + 'mkpart', 'primary', 'linux-swap', extent, '100%']) + + def base_packages(self): + packages = [] + if not self.settings['foreign'] and not self.settings['no-acpid']: + packages.append('acpid') + if self.settings['sudo']: + packages.append('sudo') + if not self.settings['no-kernel']: + if self.settings['kernel-package']: + packages.append(self.settings['kernel-package']) + return packages diff --git a/vmdebootstrap/codenames.py b/vmdebootstrap/codenames.py index 25cd94d..d0f71fe 100644 --- a/vmdebootstrap/codenames.py +++ b/vmdebootstrap/codenames.py @@ -59,3 +59,21 @@ class Codenames(Base): if not self.debian_info.valid(suite): return False return suite == self.debian_info.stable(limit) + + def kernel_package(self): + packages = [] + if not self.settings['no-kernel']: + if self.settings['kernel-package']: + return packages + if self.settings['arch'] == 'i386': + # wheezy (which became oldstable on 04/25/2015) used '486' + if self.was_oldstable(datetime.date(2015, 4, 26)): + kernel_arch = '486' + else: + kernel_arch = '586' + elif self.settings['arch'] == 'armhf': + kernel_arch = 'armmp' + else: + kernel_arch = self.settings['arch'] + packages.append('linux-image-%s' % kernel_arch) + return packages diff --git a/vmdebootstrap/extlinux.py b/vmdebootstrap/extlinux.py index d5861a9..5698f6c 100644 --- a/vmdebootstrap/extlinux.py +++ b/vmdebootstrap/extlinux.py @@ -32,6 +32,8 @@ from vmdebootstrap.base import Base, runcmd class ExtLinux(Base): + name = 'extlinux' + def __init__(self): super(ExtLinux, self).__init__() diff --git a/vmdebootstrap/grub.py b/vmdebootstrap/grub.py index 909c2d1..95b17eb 100644 --- a/vmdebootstrap/grub.py +++ b/vmdebootstrap/grub.py @@ -116,3 +116,8 @@ class GrubHandler(Base): umount_wrapper(rootdir) if not ret: raise cliapp.AppException("Failed to install extra grub uefi") + + def grub_packages(self): + if self.settings['grub'] and not self.settings['use-uefi']: + return ['grub-pc'] + return [] diff --git a/vmdebootstrap/uefi.py b/vmdebootstrap/uefi.py index 7f77f9f..50ad842 100644 --- a/vmdebootstrap/uefi.py +++ b/vmdebootstrap/uefi.py @@ -46,6 +46,8 @@ class Uefi(Base): def efi_packages(self): packages = [] + if self.settings['grub'] and not self.settings['use-uefi']: + return packages pkg = arch_table[self.settings['arch']]['package'] self.message("Adding %s" % pkg) packages.append(pkg) @@ -123,3 +125,8 @@ class Uefi(Base): self.mkfs(bootdev, fstype='vfat') os.makedirs(self.bootdir) return self.bootdir + + def make_root(self, extent): + bootsize = self.settings['esp-size'] / (1024 * 1024) + 1 + runcmd(['parted', '-s', self.settings['image'], + 'mkpart', 'primary', str(bootsize), extent]) |