Merge pull request #53 from myhro/tasksel

Add option to install packages from tasksel
This commit is contained in:
Anders Ingemann 2014-04-01 23:46:09 +02:00
commit 8495a5a421
3 changed files with 19 additions and 1 deletions

View file

@ -71,6 +71,9 @@
]
},
"minItems": 1
},
"install_standard": {
"type": "boolean"
}
},
"additionalProperties": false

View file

@ -65,6 +65,8 @@ def get_apt_set(manifest):
base.append(apt.InstallTrustedKeys)
if 'install' in manifest.packages:
base.append(packages.AddManifestPackages)
if manifest.packages.get('install_standard', False):
base.append(packages.AddTaskselStandardPackages)
return base

View file

@ -1,6 +1,7 @@
from base import Task
from common import phases
from common.tasks import apt
from common.tools import log_check_call
class AddManifestPackages(Task):
@ -74,7 +75,6 @@ class InstallPackages(Task):
@classmethod
def install_local(cls, info, local_packages):
from shutil import copy
from common.tools import log_check_call
import os
absolute_package_paths = []
@ -97,3 +97,16 @@ class InstallPackages(Task):
for path in absolute_package_paths:
os.remove(path)
class AddTaskselStandardPackages(Task):
description = 'Adding standard packages from tasksel'
phase = phases.package_installation
predecessors = [apt.AptUpdate]
successors = [InstallPackages]
@classmethod
def run(cls, info):
tasksel_packages = log_check_call(['chroot', info.root, 'tasksel', '--task-packages', 'standard'])
for pkg in tasksel_packages:
info.packages.add(pkg)