def copy_black(self): self.G_DEBUG_LOG.info('[BASE.copy_black.start.....]') block_path = 'B:\\tools\\sweeper\\black.xml' base_path = 'c:\\work\\munu_client\\sweeper\\' self.G_DEBUG_LOG.info(block_path + '>' + base_path) if os.path.exists(block_path): CLASS_COMMON_UTIL.python_copy(block_path, base_path) self.G_DEBUG_LOG.info('[BASE.copy_black.end.....]')
def result_action(self): self.G_DEBUG_LOG.info('[BASE.result_action.start.....]') #RB_small if not os.path.exists(self.G_SMALL_PATH): os.makedirs(self.G_SMALL_PATH) if self.G_RENDER_OS == '0': output_path = "/output" outputbak_path = "/outputbak" sp_path = 'outputdata5' output_folder = self.G_OUTPUT_USER_PATH[ self.G_OUTPUT_USER_PATH.rfind(sp_path) + len(sp_path):len(self.G_OUTPUT_USER_PATH)] output_mnt_path = self.G_OUTPUT_USER_PATH.replace( output_folder, '').replace('\\', '/') output_mnt = 'mount -t cifs -o username=administrator,password=Rayvision@2016,codepage=936,iocharset=gb2312 ' + output_mnt_path + ' ' + output_path if not os.path.exists(output_path): os.makedirs(output_path) CLASS_COMMON_UTIL.cmd(output_mnt, my_shell=True) output_path = output_path + output_folder.replace("\\", "/") if not os.path.exists(output_path): os.makedirs(output_path) CLASS_COMMON_UTIL.python_copy(self.G_WORK_RENDER_TASK_OUTPUT, output_path) CLASS_COMMON_UTIL.python_copy(self.G_WORK_RENDER_TASK_OUTPUT, self.G_WORK_RENDER_TASK_OUTPUTBAK) else: # output=self.G_OUTPUT_USER_PATH.encode(sys.getfilesystemencoding()) output = self.G_OUTPUT_USER_PATH if self.G_CG_TILE_COUNT != '1' and self.G_CG_TILE_COUNT != self.G_CG_TILE: output = self.G_TILES_PATH cmd1 = 'c:\\fcopy\\FastCopy.exe /speed=full /force_close /no_confirm_stop /force_start "' + self.G_WORK_RENDER_TASK_OUTPUT.replace( '/', '\\') + '" /to="' + output + '"' # cmd2='"' +frame_check + '" "' + self.G_WORK_RENDER_TASK_OUTPUT + '" "'+ output.rstrip()+'"' cmd3 = 'c:\\fcopy\\FastCopy.exe /cmd=move /speed=full /force_close /no_confirm_stop /force_start "' + self.G_WORK_RENDER_TASK_OUTPUT.replace( '/', '\\' ) + '\\*.*" /to="' + self.G_WORK_RENDER_TASK_OUTPUTBAK.replace( '/', '\\') + '"' CLASS_COMMON_UTIL.cmd(cmd1, my_log=self.G_DEBUG_LOG, try_count=3) # CLASS_COMMON_UTIL.cmd_python3(cmd1,my_log=self.G_DEBUG_LOG) try: self.check_result() except Exception as e: print('[check_result.err]') print(e) CLASS_FRAME_CHECKER.main(self.G_WORK_RENDER_TASK_OUTPUT, output, my_log=self.G_DEBUG_LOG) # CLASS_COMMON_UTIL.cmd(cmd2,my_log=self.G_DEBUG_LOG) CLASS_COMMON_UTIL.cmd(cmd3, my_log=self.G_DEBUG_LOG, try_count=3, continue_on_error=True) self.G_DEBUG_LOG.info('[BASE.result_action.end.....]')
def copy_black(self): self.G_DEBUG_LOG.info('[BASE.copy_black.start.....]') block_path = 'B:\\tools\\sweeper\\black.xml' base_path='c:\\work\\munu_client\\sweeper\\' if self.G_RENDER_OS=='Linux': block_path="\\B\\tools\\sweeper\\black.xml" base_path="/root/rayvision/work/munu_client/sweeper/" self.G_DEBUG_LOG.info(block_path+'>'+base_path) if os.path.exists(block_path): CLASS_COMMON_UTIL.python_copy(block_path,base_path) self.G_DEBUG_LOG.info('[BASE.copy_black.end.....]')
def RB_KAFKA_NOTIFY(self): #9 if self.G_ACTION not in ['Analyze', 'Pre']: self.format_log('kafka发送消息给平台', 'start') self.G_DEBUG_LOG.info('[BASE.RB_KAFKA_NOTIFY.start.....]') send_time = str(int(time.time())) self.G_KAFKA_MESSAGE_DICT["munu_task_id"] = self.G_MUNU_ID self.G_KAFKA_MESSAGE_DICT["munu_job_id"] = self.G_JOB_ID self.G_KAFKA_MESSAGE_DICT["recommit_flag"] = self.G_RECOMMIT_FLAG self.G_KAFKA_MESSAGE_DICT["action"] = self.G_ACTION self.G_KAFKA_MESSAGE_DICT['platform'] = self.G_PLATFORM self.G_KAFKA_MESSAGE_DICT['send_time'] = send_time self.G_KAFKA_MESSAGE_DICT['zone'] = self.G_ZONE self.G_KAFKA_MESSAGE_DICT['node_name'] = self.G_NODE_ID self.G_KAFKA_MESSAGE_DICT['task_id'] = self.G_TASK_ID self.G_KAFKA_MESSAGE_DICT['render_type'] = self.G_RENDER_CORE_TYPE #self.G_KAFKA_MESSAGE_DICT['start_time']=self.G_START_TIME #self.G_KAFKA_MESSAGE_DICT['big_pic']=[] #self.G_KAFKA_MESSAGE_DICT['small_pic']=[] #self.G_KAFKA_MESSAGE_DICT['end_time']=self.G_END_TIME #self.G_KAFKA_MESSAGE_DICT['distribute_node'] = '1' self.G_DEBUG_LOG.info('G_KAFKA_MESSAGE_DICT=' + str(self.G_KAFKA_MESSAGE_DICT)) # write kafka message json file(e.g. C:\work\render\10002736\2017120500004_0_1.json) kafka_message_filename = self.G_MUNU_ID + '_' + self.G_JOB_ID + '.json' if self.G_RECOMMIT_FLAG != '': kafka_message_filename = self.G_MUNU_ID + '_' + self.G_JOB_ID + '_' + self.G_RECOMMIT_FLAG + '.json' kafka_message_json = os.path.join(self.G_WORK_RENDER_TASK, kafka_message_filename) kafka_message_json_str = json.dumps(self.G_KAFKA_MESSAGE_DICT, ensure_ascii=False) CLASS_COMMON_UTIL.write_file(kafka_message_json_str, kafka_message_json) CLASS_COMMON_UTIL.python_copy(kafka_message_json, self.G_CONFIG_PATH) try: kafka_result = CLASS_KAFKA.produce(self.G_KAFKA_MESSAGE_DICT, self.G_KAFKA_SERVER, self.G_KAFKA_TOPIC) self.G_DEBUG_LOG.info('kafka_result=' + str(kafka_result)) except: CLASS_COMMON_UTIL.error_exit_log(self.G_DEBUG_LOG, 'Send Kafka Message Failed', is_exit=False) self.G_DEBUG_LOG.info('[BASE.RB_KAFKA_NOTIFY.end.....]') self.format_log('done', 'end')
def RB_KAFKA_NOTIFY(self): #9 if self.G_ACTION not in ['Analyze', 'Pre']: self.format_log('kafka发送消息给平台', 'start') self.G_DEBUG_LOG.info('[BASE.RB_KAFKA_NOTIFY.start.....]') send_time = str(int(time.time())) self.G_KAFKA_MESSAGE_DICT["action"] = self.G_ACTION self.G_KAFKA_MESSAGE_DICT['platform'] = self.G_PLATFORM self.G_KAFKA_MESSAGE_DICT['sendTime'] = send_time self.G_KAFKA_MESSAGE_DICT['zone'] = self.G_ZONE self.G_KAFKA_MESSAGE_DICT['nodeName'] = self.G_NODE_ID self.G_KAFKA_MESSAGE_DICT['jobId'] = self.G_JOB_ID self.G_KAFKA_MESSAGE_DICT['taskId'] = self.G_TASK_ID self.G_KAFKA_MESSAGE_DICT['renderType'] = self.G_RENDER_CORE_TYPE #self.G_KAFKA_MESSAGE_DICT['startTime']=self.G_START_TIME #self.G_KAFKA_MESSAGE_DICT['bigPic']=[] #self.G_KAFKA_MESSAGE_DICT['smallPic']=[] #self.G_KAFKA_MESSAGE_DICT['endTime']=self.G_END_TIME #self.G_KAFKA_MESSAGE_DICT['distributeNode'] = '1' self.G_DEBUG_LOG.info('G_KAFKA_MESSAGE_DICT=' + str(self.G_KAFKA_MESSAGE_DICT)) # write kafka message json file(e.g. C:\work\render\10002736\1849754-10002736-frame0001.json) # kafka_message_filename = self.G_USER_ID+'-'+self.G_TASK_ID+'-'+self.G_JOB_NAME+'.json' kafka_message_filename = self.G_JOB_ID + '_' + self.G_ACTION + '_' + send_time + '.json' kafka_message_json = os.path.join(self.G_WORK_RENDER_TASK, kafka_message_filename) kafka_message_json_str = json.dumps(self.G_KAFKA_MESSAGE_DICT, ensure_ascii=False) CLASS_COMMON_UTIL.write_file(kafka_message_json_str, kafka_message_json) CLASS_COMMON_UTIL.python_copy(kafka_message_json, self.G_CONFIG_PATH) try: kafka_result = CLASS_KAFKA.produce(self.G_KAFKA_MESSAGE_DICT, self.G_KAFKA_SERVER, self.G_KAFKA_TOPIC) self.G_DEBUG_LOG.info('kafka_result=' + str(kafka_result)) except: CLASS_COMMON_UTIL.error_exit_log(self.G_DEBUG_LOG, 'Send Kafka Message Failed', is_exit=False) self.G_DEBUG_LOG.info('[BASE.RB_KAFKA_NOTIFY.end.....]') self.format_log('done', 'end')
def RB_KAFKA_NOTIFY(self): #9 self.format_log('kafka发送消息给平台', 'start') self.G_DEBUG_LOG.info('[BASE.RB_KAFKA_NOTIFY.start.....]') start_time = time.time() params = {} params["messageKey"] = self.G_ACTION params['platform'] = self.G_PLATFORM params['messageTime'] = str(int(start_time)) params['messageId'] = self.G_TASK_ID + '_' + params[ "messageKey"] + '_' + self.G_JOB_ID self.G_KAFKA_MESSAGE_BODY_DICT['zone'] = self.G_ZONE self.G_KAFKA_MESSAGE_BODY_DICT['nodeName'] = self.G_NODE_ID self.G_KAFKA_MESSAGE_BODY_DICT['jobId'] = self.G_JOB_ID self.G_KAFKA_MESSAGE_BODY_DICT['taskId'] = self.G_TASK_ID self.G_KAFKA_MESSAGE_BODY_DICT['renderType'] = self.G_RENDER_CORE_TYPE #self.G_KAFKA_MESSAGE_BODY_DICT['startTime']=self.G_START_TIME #self.G_KAFKA_MESSAGE_BODY_DICT['smallPic']=self.G_SMALL_PIC #self.G_KAFKA_MESSAGE_BODY_DICT['endTime']=self.G_END_TIME params['messageBody'] = self.G_KAFKA_MESSAGE_BODY_DICT self.G_DEBUG_LOG.info('params=' + str(params)) # write kafka message json file(e.g. C:\work\render\10002736\1849754-10002736-frame0001.json) kafka_message_filename = self.G_USER_ID + '-' + self.G_TASK_ID + '-' + self.G_JOB_NAME + '.json' kafka_message_json = os.path.join(self.G_WORK_RENDER_TASK, kafka_message_filename) kafka_message_json_str = json.dumps(params, ensure_ascii=False) CLASS_COMMON_UTIL.write_file(kafka_message_json_str, kafka_message_json) CLASS_COMMON_UTIL.python_copy(kafka_message_json, self.G_CONFIG_PATH) try: kafka_result = CLASS_KAFKA.produce(params, self.G_KAFKA_SERVER, self.G_KAFKA_TOPIC) self.G_DEBUG_LOG.info('kafka_result=' + str(kafka_result)) except: CLASS_COMMON_UTIL.error_exit_log(self.G_DEBUG_LOG, 'Send Kafka Message Failed', is_exit=False) self.G_DEBUG_LOG.info('[BASE.RB_KAFKA_NOTIFY.end.....]') self.format_log('done', 'end')
def copy_cfg_to_server(self,node_task_json,node_asset_json,node_tips_json): self.G_DEBUG_LOG.info('[BASE.RBhanResult.node_task_json.....]'+node_task_json) self.G_DEBUG_LOG.info('[BASE.RBhanResult.node_asset_json.....]'+node_asset_json) self.G_DEBUG_LOG.info('[BASE.RBhanResult.node_tips_json.....]'+node_tips_json) CLASS_COMMON_UTIL.python_copy(node_task_json,self.G_CONFIG_PATH) CLASS_COMMON_UTIL.python_copy(node_asset_json,self.G_CONFIG_PATH) CLASS_COMMON_UTIL.python_copy(node_tips_json,self.G_CONFIG_PATH)
def __init__(self,**param_dict): print '[BASE.init.start.....]' self.G_RENDER_CORE_TYPE = 'cpu' print param_dict # define global variables # G_JOB_ID,G_USER_ID,G_USER_ID_PARENT,G_TASK_ID,G_SCRIPT_POOL,G_ACTION,G_RENDER_OS,G_SYS_ARGVS,G_TASK_JSON && G_CG_TILE,G_CG_TILE_COUNT,G_CG_FRAMES,G_CG_LAYER_NAME,G_SCHEDULER_CLUSTER_ID,G_SCHEDULER_CLUSTER_NODES #G_NODE_PY for key in param_dict.keys(): if key.startswith('G'): exec('self.'+key+'=param_dict["'+key+'"]') self.G_ACTION_ID=self.G_ACTION+'_'+self.G_JOB_ID self.G_MUNU_ID=self.G_SYS_ARGVS[1] self.G_JOB_NAME=self.G_SYS_ARGVS[3] self.G_NODE_ID=self.G_SYS_ARGVS[4] #11338764789520 self.G_NODE_NAME=self.G_SYS_ARGVS[5] self.G_WORK='c:/work' self.G_LOG_WORK='C:/log/render' if self.G_RENDER_OS=='Linux': self.G_LOG_WORK='/tmp/nzs-data/log/render' self.G_WORK='/tmp/nzs-data/work' #-----------------------------------------log----------------------------------------------- self.G_DEBUG_LOG=logging.getLogger('debug_log') self.G_RENDER_LOG=logging.getLogger('render_log') self.init_log() #-----------------------------------------analyse frame----------------------------------------------- if 'G_CG_FRAMES' in param_dict: self.G_CG_START_FRAME = None self.G_CG_END_FRAME = None self.G_CG_BY_FRAME = None patt = '(-?\d+)(?:-?(-?\d+)(?:\[(-?\d+)\])?)?' m = re.match(patt,self.G_CG_FRAMES) if m != None: self.G_CG_START_FRAME = m.group(1) self.G_CG_END_FRAME = m.group(2) self.G_CG_BY_FRAME = m.group(3) if self.G_CG_END_FRAME == None: self.G_CG_END_FRAME = self.G_CG_START_FRAME if self.G_CG_BY_FRAME == None: self.G_CG_BY_FRAME = '1' else: print 'frames is not match' if 'G_CG_TILE' not in param_dict or ('G_CG_TILE' in param_dict and (self.G_CG_TILE == None or self.G_CG_TILE == '')): self.G_CG_TILE='0' if 'G_CG_TILE_COUNT' not in param_dict or ('G_CG_TILE_COUNT' in param_dict and (self.G_CG_TILE_COUNT == None or self.G_CG_TILE_COUNT == '')): self.G_CG_TILE_COUNT='1' #-----------------------------------------work directory----------------------------------------------- self.G_WORK_RENDER=os.path.normpath(os.path.join(self.G_WORK,'render')) self.G_WORK_RENDER_TASK=os.path.normpath(os.path.join(self.G_WORK_RENDER,self.G_TASK_ID)) self.G_WORK_RENDER_TASK_CFG=os.path.normpath(os.path.join(self.G_WORK_RENDER_TASK,'cfg')) self.G_WORK_RENDER_TASK_OUTPUT=os.path.normpath(os.path.join(self.G_WORK_RENDER_TASK,'output')) self.G_WORK_RENDER_TASK_OUTPUTBAK=os.path.normpath(os.path.join(self.G_WORK_RENDER_TASK,'outputbak')) self.G_WORK_RENDER_TASK_SMALL=os.path.normpath(os.path.join(self.G_WORK_RENDER_TASK,'small')) self.make_dir() #-----------------------------------------kafka----------------------------------------------- # self.G_KAFKA_HOST='10.60.96.143' # self.G_KAFKA_PORT=9091 self.G_KAFKA_SERVER = ["10.60.96.143:9091"] self.G_KAFKA_TOPIC= 'dev-munu-topic' self.G_KAFKA_MESSAGE_BODY_DICT={} self.G_KAFKA_MESSAGE_BODY_DICT['startTime']=str(int(time.time())) self.G_KAFKA_MESSAGE_BODY_DICT['endTime']=str(int(time.time())) #self.G_START_TIME='' #self.G_SMALL_PIC='' #self.G_END_TIME='' #-----------------------------------------task.json----------------------------------------------- self.G_DEBUG_LOG.info(self.G_TASK_JSON) if not os.path.exists(self.G_TASK_JSON): CLASS_COMMON_UTIL.error_exit_log(self.G_DEBUG_LOG,'task.json not exists') CLASS_COMMON_UTIL.python_copy(os.path.normpath(self.G_TASK_JSON),os.path.normpath(self.G_WORK_RENDER_TASK_CFG)) self.G_TASK_JSON=os.path.normpath(os.path.join(self.G_WORK_RENDER_TASK_CFG,'task.json')) self.G_TASK_JSON_DICT=eval(open(self.G_TASK_JSON, 'r').read()) self.G_DEBUG_LOG.info(str(self.G_TASK_JSON_DICT)) self.G_CG_CONFIG_DICT=self.G_TASK_JSON_DICT['software_config'] self.G_CG_VERSION=self.G_TASK_JSON_DICT['software_config']['cg_name']+' '+self.G_TASK_JSON_DICT['software_config']['cg_version'] self.G_ZONE=self.G_TASK_JSON_DICT['system_info']['common']['zone'] self.G_PLATFORM=self.G_TASK_JSON_DICT['system_info']['common']['platform'] self.G_TILES_PATH=os.path.normpath(self.G_TASK_JSON_DICT['system_info']['common']['tiles_path']) self.G_INPUT_CG_FILE=os.path.normpath(self.G_TASK_JSON_DICT['system_info']['common']['input_cg_file']) self.G_CHANNEL=self.G_TASK_JSON_DICT['system_info']['common']['channel'] self.G_INPUT_PROJECT_PATH=os.path.normpath(self.G_TASK_JSON_DICT['system_info']['common']['input_project_path']) self.G_CONFIG_PATH=os.path.normpath(self.G_TASK_JSON_DICT['system_info']['common']['config_path']+'/') self.G_SMALL_PATH=os.path.normpath(self.G_TASK_JSON_DICT['system_info']['common']['small_Path']) self.G_OUTPUT_USER_PATH=os.path.normpath(self.G_TASK_JSON_DICT['system_info']['common']['output_user_path']) self.G_INPUT_USER_PATH=os.path.normpath(self.G_TASK_JSON_DICT['system_info']['common']['input_user_path']) self.G_PLUGIN_PATH=os.path.normpath(self.G_TASK_JSON_DICT['system_info']['common']['plugin_path']) self.G_TEMP_PATH=os.path.normpath(self.G_TASK_JSON_DICT['system_info']['common']['temp_path']) self.G_TIPS_JSON=os.path.normpath(os.path.join(self.G_WORK_RENDER_TASK_CFG,'tips.json')) self.G_DRIVERC_7Z=os.path.normpath('c:/7-Zip/7z.exe') #-----------------------------------------assert.json----------------------------------------------- self.G_ASSET_JSON=os.path.normpath(os.path.join(self.G_WORK_RENDER_TASK_CFG,'asset.json')) asset_json=os.path.join(self.G_CONFIG_PATH,'asset.json') if os.path.exists(asset_json): CLASS_COMMON_UTIL.python_copy(asset_json,self.G_WORK_RENDER_TASK_CFG) self.G_ASSET_JSON_DICT=eval(open(asset_json, 'r').read()) print '[BASE.init.end.....]'
def __init__(self, **param_dict): print('[BASE.init.start.....]') # print(param_dict) # define global variables # G_JOB_NAME,G_JOB_ID,G_CG_FRAMES,G_CG_LAYER_NAME,G_CG_OPTION,G_CG_TILE,G_CG_TILECOUNT # G_CG_NAME,G_ACTION,G_USER_ID,G_TASK_ID,G_TASK_JSON,G_USER_ID_PARENT,G_SCRIPT_POOL,G_RENDER_OS,G_SYS_ARGVS,G_NODE_PY && G_SCHEDULER_CLUSTER_ID,G_SCHEDULER_CLUSTER_NODES for key in list(param_dict.keys()): if key.startswith('G'): exec('self.' + key + '=param_dict["' + key + '"]') self.G_MUNU_ID = self.G_SYS_ARGVS[1] #munu_task_id self.G_JOB_ID = self.G_SYS_ARGVS[2] #munu_job_id self.G_JOB_NAME = self.G_SYS_ARGVS[3] #munu_job_name self.G_NODE_ID = self.G_SYS_ARGVS[4] #11338764789520 self.G_NODE_NAME = self.G_SYS_ARGVS[5] #GD232 self.G_RECOMMIT_FLAG = self.G_SYS_ARGVS[ 6] #recommit_flag,default is "0" self.G_ACTION_ID = self.G_ACTION + '_' + self.G_MUNU_ID + '_' + self.G_JOB_ID self.G_CG_PROCESS_FLAG = 0 # use with B:\config\cg_process.json self.G_WORK = 'c:/work' self.G_LOG_WORK = 'C:/log/render' if self.G_RENDER_OS == '0': #G_RENDER_OS:0 linux ,1 windows self.G_LOG_WORK = '/tmp/nzs-data/log/render' self.G_WORK = '/tmp/nzs-data/work' #-----------------------------------------log----------------------------------------------- self.G_DEBUG_LOG = logging.getLogger('debug_log') self.G_RENDER_LOG = logging.getLogger('render_log') self.init_log() #-----------------------------------------analyse frame----------------------------------------------- if 'G_CG_FRAMES' in param_dict: self.G_CG_START_FRAME = None self.G_CG_END_FRAME = None self.G_CG_BY_FRAME = None patt = '(-?\d+)(?:-?(-?\d+)(?:\[(-?\d+)\])?)?' m = re.match(patt, self.G_CG_FRAMES) if m != None: self.G_CG_START_FRAME = m.group(1) self.G_CG_END_FRAME = m.group(2) self.G_CG_BY_FRAME = m.group(3) if self.G_CG_END_FRAME == None: self.G_CG_END_FRAME = self.G_CG_START_FRAME if self.G_CG_BY_FRAME == None: self.G_CG_BY_FRAME = '1' else: print('frames is not match') if 'G_CG_TILE' not in param_dict or ('G_CG_TILE' in param_dict and (self.G_CG_TILE == None or self.G_CG_TILE == '')): self.G_CG_TILE = '0' if 'G_CG_TILE_COUNT' not in param_dict or ( 'G_CG_TILE_COUNT' in param_dict and (self.G_CG_TILE_COUNT == None or self.G_CG_TILE_COUNT == '')): self.G_CG_TILE_COUNT = '1' #-----------------------------------------work directory----------------------------------------------- self.G_WORK_RENDER = os.path.normpath( os.path.join(self.G_WORK, 'render')) self.G_WORK_RENDER_TASK = os.path.normpath( os.path.join(self.G_WORK_RENDER, self.G_TASK_ID)) self.G_WORK_RENDER_TASK_CFG = os.path.normpath( os.path.join(self.G_WORK_RENDER_TASK, 'cfg')) self.G_WORK_RENDER_TASK_OUTPUT = os.path.normpath( os.path.join(self.G_WORK_RENDER_TASK, 'output')) self.G_WORK_RENDER_TASK_OUTPUTBAK = os.path.normpath( os.path.join(self.G_WORK_RENDER_TASK, 'outputbak')) self.G_WORK_RENDER_TASK_SMALL = os.path.normpath( os.path.join(self.G_WORK_RENDER_TASK, 'small')) self.make_dir() # -----------------------------------------kafka----------------------------------------------- # self.G_KAFKA_MESSAGE_DICT={} # self.G_KAFKA_MESSAGE_DICT['start_time']=str(int(time.time())) # self.G_KAFKA_MESSAGE_DICT['end_time']=str(int(time.time())) # self.G_KAFKA_MESSAGE_DICT['big_pic']=[] # self.G_KAFKA_MESSAGE_DICT['small_pic']=[] # self.G_KAFKA_MESSAGE_DICT['distribute_node'] = '1' # self.G_KAFKA_HOST='10.60.96.142' # self.G_KAFKA_PORT=9092 # self.G_KAFKA_TOPIC= 'dev-munu-topic' # self.G_KAFKA_MESSAGE_BODY_DICT={} # self.G_KAFKA_MESSAGE_BODY_DICT['startTime']=str(int(time.time())) # self.G_KAFKA_MESSAGE_BODY_DICT['endTime']=str(int(time.time())) #self.G_START_TIME='' #self.G_SMALL_PIC='' #self.G_END_TIME='' #-----------------------------------------task.json----------------------------------------------- self.G_DEBUG_LOG.info(self.G_TASK_JSON) if not os.path.exists(self.G_TASK_JSON): CLASS_COMMON_UTIL.error_exit_log(self.G_DEBUG_LOG, 'task.json not exists') CLASS_COMMON_UTIL.python_copy( os.path.normpath(self.G_TASK_JSON), os.path.normpath(self.G_WORK_RENDER_TASK_CFG)) self.G_TASK_JSON = os.path.normpath( os.path.join(self.G_WORK_RENDER_TASK_CFG, 'task.json')) self.G_TASK_JSON_DICT = eval( codecs.open(self.G_TASK_JSON, 'r', 'utf-8').read()) self.G_DEBUG_LOG.info(str(self.G_TASK_JSON_DICT)) self.G_CG_CONFIG_DICT = self.G_TASK_JSON_DICT['software_config'] self.G_CG_VERSION = self.G_TASK_JSON_DICT['software_config'][ 'cg_name'] + ' ' + self.G_TASK_JSON_DICT['software_config'][ 'cg_version'] self.G_ZONE = self.G_TASK_JSON_DICT['system_info']['common']['zone'] self.G_PLATFORM = self.G_TASK_JSON_DICT['system_info']['common'][ 'platform'] self.G_AUTO_COMMIT = str( self.G_TASK_JSON_DICT['system_info']['common']['auto_commit']) self.G_TILES_PATH = os.path.normpath( self.G_TASK_JSON_DICT['system_info']['common']['tiles_path']) self.G_INPUT_CG_FILE = os.path.normpath( self.G_TASK_JSON_DICT['system_info']['common']['input_cg_file']) self.G_CHANNEL = self.G_TASK_JSON_DICT['system_info']['common'][ 'channel'] self.G_INPUT_PROJECT_PATH = os.path.normpath( self.G_TASK_JSON_DICT['system_info']['common'] ['input_project_path']) self.G_CONFIG_PATH = os.path.normpath( self.G_TASK_JSON_DICT['system_info']['common']['config_path'] + '/') self.G_SMALL_PATH = os.path.normpath( self.G_TASK_JSON_DICT['system_info']['common']['small_Path']) self.G_INPUT_USER_PATH = os.path.normpath( self.G_TASK_JSON_DICT['system_info']['common']['input_user_path']) self.G_PLUGIN_PATH = os.path.normpath( self.G_TASK_JSON_DICT['system_info']['common']['plugin_path']) self.G_TEMP_PATH = os.path.normpath( self.G_TASK_JSON_DICT['system_info']['common']['temp_path']) self.G_GRAB_PATH = os.path.normpath( self.G_TASK_JSON_DICT['system_info']['common']['grab_path']) self.G_OUTPUT_USER_PATH = os.path.normpath( self.G_TASK_JSON_DICT['system_info']['common']['output_user_path']) self.G_OUTPUT_USER_PATH = os.path.join( self.G_OUTPUT_USER_PATH, self.G_SMALL_TASK_ID + self.G_OUTPUT_USER_PATH.split(os.sep)[-1][len(self.G_TASK_ID):]) ##KAFKA # self.G_KAFKA_SERVER=self.G_TASK_JSON_DICT['system_info']['common']['kafka_server'] # self.G_KAFKA_TOPIC=self.G_TASK_JSON_DICT['system_info']['common']['kafka_topic'] ##cpu/gpu self.G_RENDER_CORE_TYPE = 'cpu' if 'render_core_type' in self.G_TASK_JSON_DICT['system_info'][ 'common']: self.G_RENDER_CORE_TYPE = self.G_TASK_JSON_DICT['system_info'][ 'common']['render_core_type'] self.G_TIPS_JSON = os.path.normpath( os.path.join(self.G_WORK_RENDER_TASK_CFG, 'tips.json')) self.G_DRIVERC_7Z = os.path.normpath('d:/7-Zip/7z.exe') #-----------------------------------------assert.json----------------------------------------------- self.G_ASSET_JSON = os.path.normpath( os.path.join(self.G_WORK_RENDER_TASK_CFG, 'asset.json')) asset_json = os.path.join(self.G_CONFIG_PATH, 'asset.json') if os.path.exists(asset_json): CLASS_COMMON_UTIL.python_copy(asset_json, self.G_WORK_RENDER_TASK_CFG) self.G_ASSET_JSON_DICT = eval( codecs.open(asset_json, 'r', 'utf-8').read()) # -----------------------------------------fee----------------------------------------------- self.G_FEE_PARSER = configparser.ConfigParser() if not self.G_FEE_PARSER.has_section('render'): self.G_FEE_PARSER.add_section('render') fee_dir = os.path.normpath( os.path.join(self.G_WORK, 'fee', self.G_PLATFORM, self.G_MUNU_ID)) if not os.path.exists(fee_dir): os.makedirs(fee_dir) fee_filename = r'%s_%s.ini' % (self.G_JOB_ID, self.G_RECOMMIT_FLAG) self.G_FEE_FILE = os.path.join( fee_dir, fee_filename ) #c:/work/fee/<platform>/<munu_task_id>/<munu_job_id>_<resubmit>.ini #----------------------------------------------turn global param to str--------------------------------------------------- global_param_dict = self.__dict__ for key, value in list(global_param_dict.items()): if isinstance(value, bytes): exec('self.' + key + ' = CLASS_COMMON_UTIL.bytes_to_str(self.' + key + ')') # global_param_dict= self.__dict__ # for key,value in global_param_dict.items(): # print type(value) # print (key+'='+str(value)) print('[BASE.init.end.....]')