Skip to content

Latest commit

 

History

History
113 lines (111 loc) · 3.72 KB

File metadata and controls

113 lines (111 loc) · 3.72 KB

Todo list for esctl-go

Repo

  • Add Cobra to repo for subcommands
  • Separate authentication into its own package
  • Separate helper utilities into their own package
  • Separate elastic functions into their own package
  • Add CI for building packages
  • Add common badges to README
  • Add ability to switch between elastic clusters
    • Via command
    • Via flag
  • Add automatic documentation for command usage (https://godoc.org/github.com/spf13/cobra/doc)
  • Make top level command esctl display avaiable subcommands if no arguments are present
  • Make second level command esctl get display available subcommands if no arguements are present
  • Determine which verbs esctl should use other than get
  • Add support for optional modules at compile time
    • Create a script to initialize new modules
    • Create a Makefile that allows compilation of optional modules
  • Add the ability to debug (requires a code change to activate)
  • Mock Watcher apis
    • Put Watcher
    • Get Watcher
    • Delete Watcher
    • Execute Watcher
    • Get Watcher Stats
    • Ack Watcher
    • Activate Watcher
    • Deactivate Watcher
    • Stop Watcher Service
    • Start Watcher Service
    • List Watchers
    • Show Active Watchers
    • Show Inactive Watchers
  • Add support for output format flag
  • Mock Cluster apis
  • Improve error handling to be more verbose (somewhat complete, needs improvement)
  • Add API module to make requests in VERB ENDPOINT form to support not yet implemented endpoints
    • MVP
    • Support for output format flag and other existing flags
    • General alignment with esapi.Request objects (duplicate code)
    • Rename functions/structs/interfaces. (Probably GenericRequest and similar)
    • Move api subcommand under escmd. It shouldn't be considered an extension/option. Every subcommand should probably have its own package. Keeping the current structure
  • Mock functions from kubectl config
    • current-context
    • delete-cluster
    • delete-context
    • get-clusters
    • get-contexts
    • rename-context
    • set
    • set-cluster
    • set-context
    • set-credentials
    • use-context
    • view (currently read)
    • generate
    • validate
  • add ability to execute artibrary commands rather than store username/password in config file
  • escli_ls
  • escli_lsl
  • usage_chk1
  • usage_chk2
  • usage_chk3
  • usage_chk4
  • usage_chk5
  • list_nodes
  • list_nodes_storage
  • show_shards
  • show_big_shards
  • show_small_shards
  • relo_s
  • cancel_relo_shard
  • cancel_relo_shards_all
  • increase_balance_throttle
  • reset_balance_throttle
  • show_balance_throttle
  • show_recovery
  • show_recovery_full
  • enable_readonly_idx_pattern
  • disable_readonly_idx_pattern
  • enable_readonly_idxs
  • disable_readonly_idxs
  • show_readonly_idxs_full
  • show_readonly_idxs
  • estop
  • estop_recovery
  • estop_relo
  • show_health
  • show_watermarks
  • show_state
  • showcfg_cluster
  • showcfg_num_shards_per_idx
  • showcfg_shard_allocations
  • explain_allocations
  • help_cat
  • help_indices
  • show_idx_sizes
  • show_idx_stats
  • delete_idx
  • exclude_node_name
  • show_excluded_nodes
  • clear_excluded_nodes