def finish_handle(self): filepath = os.path.join(settings.FILEPATH, 'submodules','core-hq-src','corehq','pillows','mappings','case_mapping.py') casepillow = CasePillow(create_index=False) #current index #check current index aliased_indices = casepillow.check_alias() # current_index = '%s_%s' % (casepillow.es_index_prefix, casepillow.calc_meta()) current_index = casepillow.es_index #regenerate the mapping dict m = DEFAULT_MAPPING_WRAPPER m['properties'] = dynamic.set_properties(self.doc_class, custom_types=case_special_types) m['_meta']['comment'] = "Autogenerated [%s] mapping from ptop_generate_mapping %s" % (self.doc_class_str, datetime.utcnow().strftime('%m/%d/%Y')) casepillow.default_mapping = m delattr(casepillow, '_calc_meta_cache') output = [] output.append('CASE_INDEX="%s_%s"' % (casepillow.es_index_prefix, casepillow.calc_meta())) output.append('CASE_MAPPING=%s' % pprint.pformat(m)) newcalc_index = "%s_%s" % (casepillow.es_index_prefix, casepillow.calc_meta()) print "Writing new case_index and mapping: %s" % output[0] with open(filepath, 'w') as outfile: outfile.write('\n'.join(output)) if newcalc_index not in aliased_indices and newcalc_index != current_index: sys.stderr.write("\n\tWarning, current index %s is not aliased at the moment\n" % current_index) sys.stderr.write("\tCurrent live aliased index: %s\n\n" % (','.join(aliased_indices))) sys.stderr.write("File written to %s\n" % filepath)
def finish_handle(self): filepath = os.path.join(settings.FILEPATH, 'corehq', 'pillows', 'mappings', 'case_mapping.py') case_pillow = CasePillow(create_index=False) #check current index current_index = case_pillow.es_index sys.stderr.write("current index:\n") sys.stderr.write('CASE_INDEX="%s"\n' % current_index) #regenerate the mapping dict mapping = case_mapping.CASE_MAPPING case_pillow.default_mapping = mapping delattr(case_pillow, '_calc_meta_cache') calc_index = "%s_%s" % (case_pillow.es_index_prefix, case_pillow.calc_meta()) #aliased_indices = case_pillow.check_alias() # if calc_index not in aliased_indices and calc_index != current_index: # sys.stderr.write("\n\tWarning, current index %s is not aliased at the moment\n" % current_index) # sys.stderr.write("\tCurrent live aliased index: %s\n\n" % (','.join(aliased_indices))) if calc_index != current_index: sys.stderr.write("############# HEADS UP!!! #################\n") sys.stderr.write( "CASE_INDEX hash has changed, please update \n\t%s\n\tCASE_INDEX property with the line below:\n" % filepath) sys.stdout.write('CASE_INDEX="%s"\n' % calc_index) else: sys.stderr.write("CASE_INDEX unchanged\n")
def finish_handle(self): filepath = os.path.join(settings.FILEPATH, 'corehq','pillows','mappings','case_mapping.py') case_pillow = CasePillow(create_index=False) #check current index current_index = case_pillow.es_index sys.stderr.write("current index:\n") sys.stderr.write('CASE_INDEX="%s"\n' % current_index) #regenerate the mapping dict mapping = case_mapping.CASE_MAPPING case_pillow.default_mapping = mapping delattr(case_pillow, '_calc_meta_cache') calc_index = "%s_%s" % (case_pillow.es_index_prefix, case_pillow.calc_meta()) #aliased_indices = case_pillow.check_alias() # if calc_index not in aliased_indices and calc_index != current_index: # sys.stderr.write("\n\tWarning, current index %s is not aliased at the moment\n" % current_index) # sys.stderr.write("\tCurrent live aliased index: %s\n\n" % (','.join(aliased_indices))) if calc_index != current_index: sys.stderr.write("############# HEADS UP!!! #################\n") sys.stderr.write("CASE_INDEX hash has changed, please update \n\t%s\n\tCASE_INDEX property with the line below:\n" % filepath) sys.stdout.write('CASE_INDEX="%s"\n' % calc_index) else: sys.stderr.write("CASE_INDEX unchanged\n")
def finish_handle(self): filepath = os.path.join(settings.FILEPATH, 'corehq', 'pillows', 'mappings', 'case_mapping.py') casepillow = CasePillow(create_index=False) #current index #check current index aliased_indices = casepillow.check_alias() # current_index = '%s_%s' % (casepillow.es_index_prefix, casepillow.calc_meta()) current_index = casepillow.es_index #regenerate the mapping dict m = DEFAULT_MAPPING_WRAPPER m['properties'] = dynamic.set_properties( self.doc_class, custom_types=case_special_types) m['_meta'][ 'comment'] = "Autogenerated [%s] mapping from ptop_generate_mapping %s" % ( self.doc_class_str, datetime.utcnow().strftime('%m/%d/%Y')) casepillow.default_mapping = m delattr(casepillow, '_calc_meta_cache') output = [] output.append('CASE_INDEX="%s_%s"' % (casepillow.es_index_prefix, casepillow.calc_meta())) output.append('CASE_MAPPING=%s' % pprint.pformat(m)) newcalc_index = "%s_%s" % (casepillow.es_index_prefix, casepillow.calc_meta()) print "Writing new case_index and mapping: %s" % output[0] with open(filepath, 'w') as outfile: outfile.write('\n'.join(output)) if newcalc_index not in aliased_indices and newcalc_index != current_index: sys.stderr.write( "\n\tWarning, current index %s is not aliased at the moment\n" % current_index) sys.stderr.write("\tCurrent live aliased index: %s\n\n" % (','.join(aliased_indices))) sys.stderr.write("File written to %s\n" % filepath)