1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
"""Close Singleton"""
import click
from curator.cli_singletons.object_class import CLIAction
from curator.cli_singletons.utils import validate_filter_json
@click.command()
@click.option(
'--search_pattern', type=str, default='*', help='Elasticsearch Index Search Pattern'
)
@click.option(
'--delete_aliases',
is_flag=True,
help='Delete all aliases from indices to be closed',
)
@click.option(
'--skip_flush', is_flag=True, help='Skip flush phase for indices to be closed'
)
@click.option(
'--ignore_empty_list',
is_flag=True,
help='Do not raise exception if there are no actionable indices',
)
@click.option(
'--allow_ilm_indices/--no-allow_ilm_indices',
help='Allow Curator to operate on Index Lifecycle Management monitored indices.',
default=False,
show_default=True,
)
@click.option(
'--include_hidden/--no-include_hidden',
help='Allow Curator to operate on hidden indices (and data_streams).',
default=False,
show_default=True,
)
@click.option(
'--filter_list',
callback=validate_filter_json,
help='JSON array of filters selecting indices to act on.',
required=True,
)
@click.pass_context
def close(
ctx,
search_pattern,
delete_aliases,
skip_flush,
ignore_empty_list,
allow_ilm_indices,
include_hidden,
filter_list,
):
"""
Close Indices
"""
manual_options = {
'search_pattern': search_pattern,
'skip_flush': skip_flush,
'delete_aliases': delete_aliases,
'allow_ilm_indices': allow_ilm_indices,
'include_hidden': include_hidden,
}
# ctx.info_name is the name of the function or name specified in
# @click.command decorator
action = CLIAction(
ctx.info_name,
ctx.obj['configdict'],
manual_options,
filter_list,
ignore_empty_list,
)
action.do_singleton_action(dry_run=ctx.obj['dry_run'])
|