2014-03-23 23:12:07 +01:00
|
|
|
from bootstrapvz.base import Task
|
|
|
|
from bootstrapvz.common import phases
|
2013-05-02 19:13:35 +02:00
|
|
|
|
|
|
|
|
2013-12-29 16:09:47 +01:00
|
|
|
class DefaultPackages(Task):
|
|
|
|
description = 'Adding image packages required for EC2'
|
2013-06-23 22:12:29 +02:00
|
|
|
phase = phases.preparation
|
2013-06-09 20:29:54 +02:00
|
|
|
|
2014-01-05 15:57:11 +01:00
|
|
|
@classmethod
|
|
|
|
def run(cls, info):
|
2013-12-29 16:09:47 +01:00
|
|
|
info.packages.add('file') # Needed for the init scripts
|
2015-06-17 09:49:58 -03:00
|
|
|
|
|
|
|
# isc-dhcp-client before jessie doesn't work properly with ec2
|
2015-04-29 20:55:55 +02:00
|
|
|
from bootstrapvz.common.releases import jessie
|
2015-06-17 09:49:58 -03:00
|
|
|
if info.manifest.release < jessie:
|
2014-07-06 19:05:00 +02:00
|
|
|
info.packages.add('dhcpcd')
|
2015-06-17 09:49:58 -03:00
|
|
|
info.exclude_packages.add('isc-dhcp-client')
|
|
|
|
info.exclude_packages.add('isc-dhcp-common')
|
2013-06-26 20:14:37 +02:00
|
|
|
|
2014-02-23 20:14:23 +01:00
|
|
|
import os.path
|
2014-07-05 20:01:20 +02:00
|
|
|
kernel_packages_path = os.path.join(os.path.dirname(__file__), 'packages-kernels.yml')
|
2014-03-23 23:12:07 +01:00
|
|
|
from bootstrapvz.common.tools import config_get
|
2015-04-29 20:55:55 +02:00
|
|
|
kernel_package = config_get(kernel_packages_path, [info.manifest.release.codename,
|
2014-02-23 20:14:23 +01:00
|
|
|
info.manifest.system['architecture']])
|
2013-12-29 16:09:47 +01:00
|
|
|
info.packages.add(kernel_package)
|