|
|
|
@ -419,7 +419,7 @@ class objValue(object):
|
|
|
|
|
v_select=None
|
|
|
|
|
# переменная для внутреннего использования (official)
|
|
|
|
|
v_official=False
|
|
|
|
|
# печатаемое значение
|
|
|
|
|
# печатаемое значение
|
|
|
|
|
v_printval=None
|
|
|
|
|
# переменная заполнена? - ее значение можно в последствии
|
|
|
|
|
# получить сразу из __value
|
|
|
|
@ -441,7 +441,7 @@ class objValue(object):
|
|
|
|
|
def isPure(self):
|
|
|
|
|
'''Переменная не установлена и не заполнялась'''
|
|
|
|
|
return not (self.__wasSet or self.__alreadyFill)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def SetOutdated(self):
|
|
|
|
|
'''Устанавливает переменную в состояние устарела'''
|
|
|
|
|
self.__alreadyFill = False
|
|
|
|
@ -502,13 +502,13 @@ class objValue(object):
|
|
|
|
|
# тоже должны изменить если эта переменная изменится
|
|
|
|
|
if self.getstack:
|
|
|
|
|
self.__ichangethey = self.__ichangethey.union(self.getstack)
|
|
|
|
|
# если переменная не заполненная и не установленная
|
|
|
|
|
if (self.__dynamicValue or
|
|
|
|
|
# если переменная не заполненная и не установленная
|
|
|
|
|
if (self.__dynamicValue or
|
|
|
|
|
not self.__alreadyFill) and not self.__wasSet:
|
|
|
|
|
# устанавливаем флаг, что оно вычилсенно, для избежания
|
|
|
|
|
# бесконечных рекурсий
|
|
|
|
|
self.__alreadyFill = True
|
|
|
|
|
#помещаем себя в список переменных, которые вызывают get
|
|
|
|
|
#помещаем себя в список переменных, которые вызывают get
|
|
|
|
|
self.getstack.add(self)
|
|
|
|
|
# вызываем метод заполения переменной
|
|
|
|
|
val = self.simpleget()
|
|
|
|
@ -808,6 +808,8 @@ class fillVars:
|
|
|
|
|
value_setup_pass = self.Get('setup_pass')
|
|
|
|
|
if value_setup_pass == 'builder':
|
|
|
|
|
return '/mnt/builder'
|
|
|
|
|
elif value_setup_pass == 'install':
|
|
|
|
|
return "/mnt/install"
|
|
|
|
|
else:
|
|
|
|
|
return '/'
|
|
|
|
|
|
|
|
|
@ -956,7 +958,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
res=cls.__runos(cstr)
|
|
|
|
|
if res:
|
|
|
|
|
return res.strip()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_setup_path_profinstall(self):
|
|
|
|
|
profpath = '/usr/lib/calculate/calculate-server/profile'
|
|
|
|
@ -971,13 +973,16 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
def get_soft_samba_domain(self):
|
|
|
|
|
return "CDS"
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_root(self):
|
|
|
|
|
return "calculate"
|
|
|
|
|
|
|
|
|
|
def get_soft_samba_netbios(self):
|
|
|
|
|
return "PDC-CDS"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_base(self):
|
|
|
|
|
return "dc=%s"%(self.Get('soft_ldap_root'))
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_services_dn(self):
|
|
|
|
|
def get_soft_ldap_sevices_dn(self):
|
|
|
|
|
return "ou=%s,%s"\
|
|
|
|
|
%(self.Get('soft_ldap_sevices_dn_name'),
|
|
|
|
|
self.Get('soft_ldap_base'))
|
|
|
|
@ -989,7 +994,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
return "proxyuser"
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_bind(self):
|
|
|
|
|
return "cn=%s,%s"% (self.Get('soft_ldap_bindname'),
|
|
|
|
|
return "cn=%s,%s"% (self.Get('soft_ldap_bindname'),
|
|
|
|
|
self.Get('soft_ldap_base'))
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_bindpw(self):
|
|
|
|
@ -1002,11 +1007,11 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_admin_tmp(self):
|
|
|
|
|
return "cn=ldaproot,%s"%self.Get('soft_ldap_base')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_adminpw_tmp(self):
|
|
|
|
|
return cl_utils.genpassword().strip()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_adminpw_tmp_hash(self):
|
|
|
|
|
return fillVars.gethashfrom_slappasswd(self.G_path,
|
|
|
|
|
self.Get('soft_ldap_adminpw_tmp'),
|
|
|
|
@ -1019,6 +1024,11 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
return "cn=%s,%s"% (self.Get('soft_ldap_adminname'),
|
|
|
|
|
self.Get('soft_ldap_base'))
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_adminpw_hash(self):
|
|
|
|
|
return fillVars.gethashfrom_slappasswd(self.G_path,
|
|
|
|
|
self.Get('soft_ldap_adminpw'),
|
|
|
|
|
self.Get('soft_ldap_hash_encrypt'))
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_adminpw(self):
|
|
|
|
|
'''Заполнение переменной soft_ldap_adminpw
|
|
|
|
|
постоянный пользователь root, прописываемый в базу при первой загрузке
|
|
|
|
@ -1040,7 +1050,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_admin_jabber(self):
|
|
|
|
|
return "ou=Jabber,%s" % self.Get('soft_ldap_sevices_dn')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_admin_jabberpw(self):
|
|
|
|
|
return cl_utils.genpassword().strip()
|
|
|
|
|
|
|
|
|
@ -1055,7 +1065,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_admin_unix(self):
|
|
|
|
|
return "ou=Unix,%s" % self.Get('soft_ldap_sevices_dn')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_admin_unixpw(self):
|
|
|
|
|
return cl_utils.genpassword().strip()
|
|
|
|
|
|
|
|
|
@ -1070,7 +1080,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_admin_samba(self):
|
|
|
|
|
return "ou=Samba,%s" % self.Get('soft_ldap_sevices_dn')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_admin_sambapw(self):
|
|
|
|
|
return cl_utils.genpassword().strip()
|
|
|
|
|
|
|
|
|
@ -1085,7 +1095,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_admin_mail(self):
|
|
|
|
|
return "ou=Mail,%s" % self.Get('soft_ldap_sevices_dn')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_soft_ldap_admin_mailpw(self):
|
|
|
|
|
return cl_utils.genpassword().strip()
|
|
|
|
|
|
|
|
|
@ -1232,7 +1242,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
if route:
|
|
|
|
|
self.Set('net_gw_dev', route[7])
|
|
|
|
|
return route[1]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_net_gw_dev(self):
|
|
|
|
|
'''Определить сетевой адаптер для шлюза'''
|
|
|
|
|
route=self._runos("""%sroute -n | grep "^0.0.0.0" """%self.G_path)
|
|
|
|
@ -1243,11 +1253,11 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
|
def common_netfunc(cls, value_net_gw,value_net_gw_dev):
|
|
|
|
|
''' Общие действия выполняемые для заполнения
|
|
|
|
|
шлюз, локальные интерфейсы, локальные сети, настройки
|
|
|
|
|
''' Общие действия выполняемые для заполнения
|
|
|
|
|
шлюз, локальные интерфейсы, локальные сети, настройки
|
|
|
|
|
/etc/conf.d/net, сетевые устройства
|
|
|
|
|
net_conf, net_hosts_allow, net_networks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Входные параметры:
|
|
|
|
|
value_net_gw значение переменной окружения net_gw
|
|
|
|
|
value_net_gw_dev значение переменной окружения net_gw_dev
|
|
|
|
@ -1332,7 +1342,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
n_key = nets.keys()
|
|
|
|
|
n_key.sort()
|
|
|
|
|
return gateway_dhcp, n_key, networks, host_allow, netconf
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_net_conf(self):
|
|
|
|
|
'''Получить конфигурацию сети'''
|
|
|
|
|
gateway_dhcp, n_key, networks, host_allow, netconf= \
|
|
|
|
@ -1388,7 +1398,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
value_sys_domain)) and\
|
|
|
|
|
sock.connect_ex(('nfs.%s' % value_sys_domain,2049))==0:
|
|
|
|
|
return 'nfs.%s' % value_sys_domain
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
|
def commonproxyfunc(cls,value_cmd_exec_host, value_sys_domain):
|
|
|
|
|
ret_net_proxy = None
|
|
|
|
@ -1422,11 +1432,11 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
self.Get('sys_domain'))
|
|
|
|
|
self.Set('net_proxy', ret_net_proxy)
|
|
|
|
|
return ret_net_proxy_port
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_net_proxy_url(self):
|
|
|
|
|
'''Получить url прокси'''
|
|
|
|
|
if self.Get('net_proxy') and self.Get('net_proxy_port'):
|
|
|
|
|
return "http://%s:%s" % (self.Get('net_proxy'),
|
|
|
|
|
return "http://%s:%s" % (self.Get('net_proxy'),
|
|
|
|
|
self.Get('net_proxy_port'))
|
|
|
|
|
|
|
|
|
|
def get_net_ntp(self):
|
|
|
|
@ -1494,7 +1504,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
return res_n[1]
|
|
|
|
|
else:
|
|
|
|
|
return 0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_sys_current_ver(self):
|
|
|
|
|
'''Получить текущий sys_current_ver'''
|
|
|
|
|
parone = fillVars.commonsplitissue()
|
|
|
|
@ -1549,7 +1559,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
g_load_num = int(g_load_num)
|
|
|
|
|
except:
|
|
|
|
|
return None
|
|
|
|
|
if g_load_num == 2:
|
|
|
|
|
if g_load_num == 2:
|
|
|
|
|
if not os.path.exists("/dev/%s3"%g_load_dev):
|
|
|
|
|
print _("Incorrect partition")
|
|
|
|
|
sys.exit(0)
|
|
|
|
@ -1684,7 +1694,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
def get_boot_grub_map(self):
|
|
|
|
|
'''Запонить переменную boot_grub_map'''
|
|
|
|
|
value_boot_grub_setupdev, value_boot_grub_loaddev, grub_map = \
|
|
|
|
|
fillVars.commongrubfunc(self.Get('setup_installdev'),
|
|
|
|
|
fillVars.commongrubfunc(self.Get('setup_installdev'),
|
|
|
|
|
self.Get('sys_loaddev'))
|
|
|
|
|
self.Set( "boot_grub_setupdev", value_boot_grub_setupdev)
|
|
|
|
|
self.Set( "boot_grub_loaddev", value_boot_grub_loaddev )
|
|
|
|
@ -1693,7 +1703,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
def get_boot_grub_setupdev(self):
|
|
|
|
|
'''Запонить переменную boot_grub_map'''
|
|
|
|
|
value_boot_grub_setupdev, value_boot_grub_loaddev, grub_map = \
|
|
|
|
|
fillVars.commongrubfunc(self.Get('setup_installdev'),
|
|
|
|
|
fillVars.commongrubfunc(self.Get('setup_installdev'),
|
|
|
|
|
self.Get('sys_loaddev'))
|
|
|
|
|
self.Set( "boot_grub_loaddev", value_boot_grub_loaddev )
|
|
|
|
|
self.Set( "boot_grub_map", grub_map )
|
|
|
|
@ -1702,7 +1712,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
def get_boot_grub_loaddev(self):
|
|
|
|
|
'''Запонить переменную boot_grub_map'''
|
|
|
|
|
value_boot_grub_setupdev, value_boot_grub_loaddev, grub_map = \
|
|
|
|
|
fillVars.commongrubfunc(self.Get('setup_installdev'),
|
|
|
|
|
fillVars.commongrubfunc(self.Get('setup_installdev'),
|
|
|
|
|
self.Get('sys_loaddev'))
|
|
|
|
|
self.Set( "boot_grub_setupdev", value_boot_grub_setupdev)
|
|
|
|
|
self.Set( "boot_grub_map", grub_map )
|
|
|
|
@ -1810,7 +1820,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
return val
|
|
|
|
|
else:
|
|
|
|
|
return value
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_sys_swap_line(self):
|
|
|
|
|
'''Заполнить переменную sys_swap_line'''
|
|
|
|
|
return '/dev/%s\tnone\t\tswap\tsw\t\t\t0 0'%self.Get('sys_swap_dev')
|
|
|
|
@ -1888,7 +1898,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
self.Set('sys_path_mounts', "")
|
|
|
|
|
self.Set('sys_mount_line', "")
|
|
|
|
|
return ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_sys_path_mounts(self):
|
|
|
|
|
'''Заполнить переменную sys_mount_dev, а также sys_path_mounts,
|
|
|
|
|
sys_mount_line'''
|
|
|
|
@ -2017,10 +2027,6 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
def get_setup_path_tmp(self):
|
|
|
|
|
'''Определить директорию временных файлов setup_path_tmp '''
|
|
|
|
|
return '/tmp/calculate'
|
|
|
|
|
|
|
|
|
|
def get_setup_path_install(self):
|
|
|
|
|
'''Определить директорию установки setup_path_install '''
|
|
|
|
|
return "/mnt/install"
|
|
|
|
|
|
|
|
|
|
def get_setup_makeopts(self):
|
|
|
|
|
'''Определить makeopts
|
|
|
|
@ -2052,7 +2058,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
self.Get('setup_march'))
|
|
|
|
|
if os.path.exists(pkgpath):
|
|
|
|
|
return pkgpath
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_cmd_run_emerge1(self):
|
|
|
|
|
'''Команда emerge с указанием OVERLAY и MAKEOPTS
|
|
|
|
|
cmd_run_emerge1
|
|
|
|
@ -2065,7 +2071,7 @@ http://distro.ibiblio.org/pub/linux/distributions/gentoo"
|
|
|
|
|
def get_cmd_run_emerge2(self):
|
|
|
|
|
'''cmd_run_emerge'''
|
|
|
|
|
return ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# от flGlobal
|
|
|
|
|
#packages=(G_inst_path+"/builder/packages",\
|
|
|
|
|
#self.G_shr_path+"/builder/packages")
|
|
|
|
@ -2209,6 +2215,7 @@ class DataVars:
|
|
|
|
|
файла модуля содержащего описание переменных'''
|
|
|
|
|
if modname in self.__implist:
|
|
|
|
|
return
|
|
|
|
|
self.__implist.append(modname)
|
|
|
|
|
modname=self.__modlist[modname]
|
|
|
|
|
# импортирем модуль с переменными окружения
|
|
|
|
|
exec ("import %s" % (modname))
|
|
|
|
@ -2408,6 +2415,11 @@ class DataVars:
|
|
|
|
|
else:
|
|
|
|
|
return False
|
|
|
|
|
|
|
|
|
|
def flServer(self, **args):
|
|
|
|
|
'''Заполнить конфигурацию переменных, для ldap'''
|
|
|
|
|
# заполнить переменные окружения алгоритмом по умолнанию
|
|
|
|
|
self.addVars("Server")
|
|
|
|
|
|
|
|
|
|
def flBuilder(self, **args):
|
|
|
|
|
'''Заполнить конфигурацию переменных, для билдера'''
|
|
|
|
|
self.Set('setup_pass','builder',True)
|
|
|
|
|