From 0d7a471bb90436f05fa06fd886b37f211ece5d4c Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Sat, 17 Jun 2017 13:38:40 +0300 Subject: Add: Run apt under eatmydata, for speed --- vmdb/plugins/apt_plugin.py | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/vmdb/plugins/apt_plugin.py b/vmdb/plugins/apt_plugin.py index d40f4cd..a2e6232 100644 --- a/vmdb/plugins/apt_plugin.py +++ b/vmdb/plugins/apt_plugin.py @@ -17,9 +17,7 @@ -import logging import os -import sys import cliapp @@ -42,13 +40,20 @@ class AptStepRunner(vmdb.StepRunnerInterface): fstag = step['fs-tag'] mount_point = state.mounts[fstag] + if not self.got_eatmydata(state): + self.install_package(mount_point, [], 'eatmydata') + state.got_eatmydata = True + self.install_package(mount_point, ['eatmydata'], package) + + def got_eatmydata(self, state): + return hasattr(state, 'got_eatmydata') and getattr(state, 'got_eatmydata') + + def install_package(self, mount_point, argv_prefix, package): env = os.environ.copy() env['DEBIAN_FRONTEND'] = 'noninteractive' - vmdb.progress( - 'Install package {} to filesystem at {} ({})'.format( - package, mount_point, fstag)) vmdb.runcmd( - ['chroot', mount_point, - 'apt-get', '-y', '--no-show-progress', 'install', package], + ['chroot', mount_point] + + argv_prefix + + ['apt-get', '-y', '--no-show-progress', 'install', package], env=env) -- cgit v1.2.1