Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def set_up_index(idx):
alias = es_client().indices.get_aliases(index=idx)
if not alias or not alias.keys() or idx in alias.keys():
# Deal with empty indices or the first migration
index = '{}_v1'.format(idx)
search.create_index(index=index)
logger.info('Reindexing {0} to {1}_v1'.format(idx, idx))
helpers.reindex(es_client(), idx, index)
logger.info('Deleting {} index'.format(idx))
es_client().indices.delete(index=idx)
es_client().indices.put_alias(index=index, name=idx)
else:
# Increment version
version = int(list(alias.keys())[0].split('_v')[1]) + 1
logger.info('Incrementing index version to {}'.format(version))
index = '{0}_v{1}'.format(idx, version)
search.create_index(index=index)
logger.info('{} index created'.format(index))
return index