Исправления для --layered

Добавлена проверка наличия CONFIG_OVERLAY_FS в ядре при использовании
опции layered.
Layered используется по-умолчанию если это возможно.
Mike Khiretskiy 9 years ago
parent 384062a610
commit 654f5e16a2

@ -273,22 +273,42 @@ class VariableClBuilderLayeredSet(Variable):
"""
type = "bool"
opt = ["--layered"]
kernel_opt = "CONFIG_OVERLAY_FS"
def init(self):
self.help = _("use layer for build")
self.label = _("Use layer for build")
def check_kernel_option(self):
"""
Проверить возможность ядра использовать overlay fs
"""
return (
self.kernel_opt in self.Get('install.os_install_kernel_config'))
def get(self):
return "off"
try:
self.check_on()
return "on"
except VariableError:
return "off"
def check(self, value):
def check_on(self):
if not self.check_kernel_option():
raise VariableError(
_("You need kernel with %s for use layers")%self.kernel_opt)
if self.Get('cl_builder_disk_dev').startswith('/dev'):
raise VariableError(
_("Layers are used for building in a directory only"))
if isinstance(self.Get('cl_builder_source'), distr.ArchiveDistributive):
if isinstance(self.Get('cl_builder_source'),
distr.ArchiveDistributive):
raise VariableError(
_("Layers are used for building from iso image"))
def check(self, value):
if value == "on":
self.check_on()
class VariableClBuilderPath(ReadonlyVariable):
"""

Loading…
Cancel
Save