From 40f208c151d0d06410a8f22f9bb297f831f99196 Mon Sep 17 00:00:00 2001 From: Anders Ingemann Date: Sun, 4 May 2014 11:48:03 +0200 Subject: [PATCH] Fix AdjustExpandRootScript Also, only add it when it is required --- bootstrapvz/common/tasks/initd.py | 18 ++++++------------ bootstrapvz/providers/ec2/__init__.py | 4 +++- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/bootstrapvz/common/tasks/initd.py b/bootstrapvz/common/tasks/initd.py index 1bb51d4..fdc14f5 100644 --- a/bootstrapvz/common/tasks/initd.py +++ b/bootstrapvz/common/tasks/initd.py @@ -1,6 +1,5 @@ from bootstrapvz.base import Task from .. import phases -from ..exceptions import TaskError from ..tools import log_check_call from . import assets import os.path @@ -57,14 +56,9 @@ class AdjustExpandRootScript(Task): @classmethod def run(cls, info): - if 'expand-root' not in info.initd['install']: - raise TaskError('The expand-root script was not installed') - - from bootstrapvz.base.fs.partitionmaps.none import NoPartitions - if not isinstance(info.volume.partition_map, NoPartitions): - import os.path - from ..tools import sed_i - script = os.path.join(info.root, 'etc/init.d.expand-root') - root_idx = info.volume.partition_map.root.get_index() - device_path = 'device_path="/dev/xvda{idx}"'.format(idx=root_idx) - sed_i(script, '^device_path="/dev/xvda$', device_path) + import os.path + from ..tools import sed_i + script = os.path.join(info.root, 'etc/init.d/expand-root') + root_idx = info.volume.partition_map.root.get_index() + device_path = 'device_path="/dev/xvda{idx}"'.format(idx=root_idx) + sed_i(script, '^device_path="/dev/xvda$', device_path) diff --git a/bootstrapvz/providers/ec2/__init__.py b/bootstrapvz/providers/ec2/__init__.py index 3b03da8..7fe35d0 100644 --- a/bootstrapvz/providers/ec2/__init__.py +++ b/bootstrapvz/providers/ec2/__init__.py @@ -60,11 +60,13 @@ def resolve_tasks(taskset, manifest): initd.RemoveHWClock, tasks.initd.AddEC2InitScripts, initd.InstallInitScripts, - initd.AdjustExpandRootScript, tasks.ami.RegisterAMI, ]) + if manifest.volume['partitions']['type'] != 'none': + taskset.add(initd.AdjustExpandRootScript) + if manifest.system['bootloader'] == 'pvgrub': taskset.add(boot.AddGrubPackage) taskset.add(tasks.boot.ConfigurePVGrub)