#-*- coding: utf-8 -*- # Copyright 2008-2012 Calculate Ltd. http://www.calculate-linux.org # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import os import sys from os import path from calculate.lib.cl_datavars import Variables from calculate.lib.cl_lang import setLocalTranslate setLocalTranslate('cl_install',sys.modules[__name__]) class InstallAction(Variables): vars = ["ac_install_merge","ac_install_system","ac_install_flash", "ac_install_live"] """ Action variable which has value "up" by default and not flash installation """ ac_install_merge = {} """ Action variable which has value "up" for installation on hdd """ ac_install_system = {} """ Action variable which has value "up" for USB flash """ ac_install_flash = {} """ Action which "up" value describe dinamic templates """ ac_install_live = {} def get_ac_install_merge(self): """Need perform templates for install:merge or install:unmerge""" actionsMap = {'merge':'up', 'system':'up'} cl_action = self.Get('cl_action') if cl_action == 'system' and \ self.Get('os_install_root_type') == 'flash': return "" return actionsMap.get(cl_action,'') def get_ac_install_system(self): """Need perform templates for install:system""" if self.Get('cl_action') == 'system' and \ self.Get('os_install_root_type') != "flash": return "up" else: return "" def get_ac_install_flash(self): """Need perform templates for install:flash""" clAction = self.Get('cl_action') if clAction == 'system' and self.Get('os_install_root_type') == 'flash': return "up" return "" def get_ac_install_live(self): """Need perform templates for install:live""" if self.Get('ac_install_merge') == "up" and \ self.Get('cl_chroot_status') == "off" or \ self.Get('cl_action') == 'live': return "up" else: return ""