You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
calculate-utils-2.2-install/scripts/cl-template

77 lines
2.4 KiB

#!/usr/bin/env python2
#-*- coding: utf-8 -*-
# Copyright 2010 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 sys
import os
sys.path.insert(0,os.path.abspath('/usr/lib/calculate-2.2/calculate-lib/pym'))
sys.path.insert(0,
os.path.abspath('/usr/lib/calculate-2.2/calculate-install/pym'))
from cl_lang import lang
tr = lang()
tr.setGlobalDomain('cl_install')
tr.setLanguage(sys.modules[__name__])
from cl_apply_template_cmd import apply_template_cmd
if __name__ == "__main__":
obj = apply_template_cmd()
ret = obj.optobj.parse_args()
if ret is False:
sys.exit(1)
options, args = ret
# set color/nocolor for display messages
obj.setPrintNoColor(options)
# set values to variables
if not obj.setVars(options):
sys.exit(1)
# Печать переменных
if options.v:
obj.printVars(options)
sys.exit(0)
# check root
if not obj.isRoot():
sys.exit(1)
listLocate = options.l
if listLocate:
if 'all' in listLocate:
# apply all templates
if not obj.applyAllTemplates(options.merge):
sys.exit(1)
elif 'local' in listLocate:
# apply local templates
if not obj.applyLocalTemplates(options.merge):
sys.exit(1)
elif 'remote' in listLocate:
# apply remote templates
if not obj.applyRemoteTemplates(options.merge):
sys.exit(1)
elif 'clt' in listLocate:
# apply clt templates
if not obj.applyCltTemplates():
sys.exit(1)
elif options.clt:
cltPath = options.clt
# apply one clt template
if not obj.applyCltTemplate(cltPath):
sys.exit(1)
elif args:
cltPath = args[0]
# apply one clt template
if not obj.applyCltTemplate(cltPath):
sys.exit(1)
sys.exit(0)