diff --git a/pym/builder/variables/builder.py b/pym/builder/variables/builder.py index d982215..41c849c 100644 --- a/pym/builder/variables/builder.py +++ b/pym/builder/variables/builder.py @@ -77,6 +77,11 @@ class VariableClBuilderAvailableDev(Variable): """ type = "list" + def get(self): + if self.Get('os_root_type') == "livecd": + return ["/run/initramfs/workspace/var/calculate/assemble"] + return [] + class VariableClBuilderDeviceSpool(ReadonlyVariable): """ @@ -656,17 +661,27 @@ class VariableClBuilderImageFilename(Variable): if not value: raise VariableError(_("You must specify image filename")) + def _isoname(self): + shortname = self.Get('os_builder_linux_shortname').lower() + buildnumber = self.Get('os_builder_linux_build') + arch = self.Get('os_builder_arch_machine') + return "%s-%s-%s.iso" % (shortname, buildnumber, + arch) + def get(self): - base_dn = self.Get('cl_builder_base_path') - build_id = self.Get('cl_builder_id') - build_id_path = self.Get('cl_builder_id_path') - if build_id: - shortname = self.Get('os_builder_linux_shortname').lower() - buildnumber = self.Get('os_builder_linux_build') - arch = self.Get('os_builder_arch_machine') - imagename = "%s-%s-%s.iso" % (shortname, buildnumber, - arch) - return path.join(base_dn, build_id_path, "linux", imagename) + if self.Get('os_root_type') == 'livecd': + base_dn = self.Get('cl_builder_base_path') + build_id = self.Get('cl_builder_id') + build_id_path = self.Get('cl_builder_id_path') + if build_id: + imagename = self._isoname() + return path.join(base_dn, build_id_path, "linux", imagename) + else: + build_id = self.Get('cl_builder_id') + base_dn = '/run/initramfs/live/iso' + if build_id: + imagename = self._isoname() + return path.join(base_dn, imagename) return "" @@ -674,7 +689,13 @@ class VariableClBuilderIsoBasePath(Variable): """ Базовый путь, где будут подготавливаться данные, которые будут запакованы в iso """ - value = "/var/calculate/tmp" + livecd_value = '/run/initramfs/live/tmp' + default_value = "/var/calculate/tmp" + + def get(self): + if self.Get('os_root_type') == 'livecd': + return self.livecd_value + return self.default_value class VariableClBuilderIsoPath(ReadonlyVariable):