Create _golemcli
Command completion for the CLI of Golem ( https://github.com/golemfactory/golem )
This commit is contained in:
parent
d3a273cedf
commit
2dfc458fdd
|
@ -0,0 +1,156 @@
|
||||||
|
#compdef golemcli
|
||||||
|
|
||||||
|
local -a _1st_arguments
|
||||||
|
|
||||||
|
_1st_arguments=(
|
||||||
|
'account:Account Manage account'
|
||||||
|
'exit:Exit the interactive shell'
|
||||||
|
'help:Display this help message'
|
||||||
|
'debug:Debug RPC'
|
||||||
|
'envs:Manage environments'
|
||||||
|
'network:Manage network'
|
||||||
|
'incomes:Display incomes'
|
||||||
|
'payments:Display payments'
|
||||||
|
'res:Manage resources'
|
||||||
|
'settings:Manage settings'
|
||||||
|
'tasks:Manage tasks'
|
||||||
|
'subtasks:Manage subtasks'
|
||||||
|
'terms:Show and accept terms of use'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _2nd_arguments_account
|
||||||
|
_2nd_arguments_account=(
|
||||||
|
'info:Display account & financial info'
|
||||||
|
'unlock:Unlock account, will prompt for your password'
|
||||||
|
'withdraw:Withdraw GNT/ETH'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _2nd_arguments_debug
|
||||||
|
_2nd_arguments_debug=(
|
||||||
|
'rpc:Debug RPC calls'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _2nd_arguments_envs
|
||||||
|
_2nd_arguments_envs=(
|
||||||
|
'disable:Disable environment'
|
||||||
|
'enable:Enable environment'
|
||||||
|
'perf_mult:Gets accepted performance multiplier'
|
||||||
|
'perf_mult_set:Sets accepted performance multiplier'
|
||||||
|
'recount:Recount performance for an environment'
|
||||||
|
'show:Show environments'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _2nd_arguments_tasks
|
||||||
|
_2nd_arguments_tasks=(
|
||||||
|
'abort:Abort a task'
|
||||||
|
'create:Create a task from file. Note: no client-side validation is performed yet. This will change in the future'
|
||||||
|
'delete:Delete a task'
|
||||||
|
'dump:Dump an existing task'
|
||||||
|
'restart:Restart a task'
|
||||||
|
'restart_subtasks:Restart given subtasks from a task'
|
||||||
|
'show:Show task details'
|
||||||
|
'stats:Show statistics for tasks'
|
||||||
|
'subtasks:Show sub-tasks'
|
||||||
|
'template:Dump a task template'
|
||||||
|
'unsupport:Show statistics for unsupported tasks'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _2nd_arguments_network
|
||||||
|
_2nd_arguments_network=(
|
||||||
|
'block:Block provider'
|
||||||
|
'connect:Connect to a node'
|
||||||
|
'dht:Show known nodes'
|
||||||
|
'show:Show connected nodes'
|
||||||
|
'status:Show client status'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _2nd_arguments_res
|
||||||
|
_2nd_arguments_res=(
|
||||||
|
'clear:Clear provider / requestor resources'
|
||||||
|
'show:Show information on used resources'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _2nd_arguments_settings
|
||||||
|
_2nd_arguments_settings=(
|
||||||
|
'set:Change settings'
|
||||||
|
'show:Show current settings'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _2nd_arguments_subtasks
|
||||||
|
_2nd_arguments_subtasks=(
|
||||||
|
'restart:Restart a subtask'
|
||||||
|
'show:Show subtask details'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _2nd_arguments_terms
|
||||||
|
_2nd_arguments_terms=(
|
||||||
|
'accept:Accept terms of use'
|
||||||
|
'show:Show terms of use'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _3rd_arguments_settings_set
|
||||||
|
_3rd_arguments_settings_set=(
|
||||||
|
'node_name:non-empty string Node name'
|
||||||
|
'accept_tasks:int {0, 1} Accept tasks'
|
||||||
|
'max_resource_size:int > 0 [kB] Maximal resource size'
|
||||||
|
'getting_tasks_interval:int > 0 [s] Interval between task requests'
|
||||||
|
'getting_peers_interval:int > 0 [s] Interval between peer requests'
|
||||||
|
'task_session_timeout:int > 0 [s] Task session timeout'
|
||||||
|
'p2p_session_timeout:int > 0 [s] P2P session timeout'
|
||||||
|
'requesting_trust:float [-1., 1.] Minimal requestor trust'
|
||||||
|
'computing_trust:float [-1., 1.] Minimal provider trust'
|
||||||
|
'min_price:float >= 0 Min GNT/h price (provider)'
|
||||||
|
'max_price:float >= 0 Max GNT/h price (requestor)'
|
||||||
|
'use_ipv6:int {0, 1} Use IPv6'
|
||||||
|
'opt_peer_num:int > 0 Number of peers to keep'
|
||||||
|
'send_pings:int {0, 1} Send ping messages to peers'
|
||||||
|
'pings_interval:int > 0 Interval between ping messages'
|
||||||
|
'max_memory_size:16777216 > int >= 1048576 [kB] Max memory size'
|
||||||
|
'num_cores:8 >= int >= 1 Number of CPU cores to use'
|
||||||
|
'enable_talkback:int {0, 1} Enable error reporting with talkback service'
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
if (( CURRENT == 2 )); then
|
||||||
|
_describe -t commands "golemcli subcommand" _1st_arguments
|
||||||
|
fi
|
||||||
|
|
||||||
|
if (( CURRENT == 3 )); then
|
||||||
|
case "$words[2]" in
|
||||||
|
account)
|
||||||
|
_describe -t commands "golemcli subcommand" _2nd_arguments_account
|
||||||
|
;;
|
||||||
|
debug)
|
||||||
|
_describe -t commands "golemcli subcommand" _2nd_arguments_debug
|
||||||
|
;;
|
||||||
|
envs)
|
||||||
|
_describe -t commands "golemcli subcommand" _2nd_arguments_envs
|
||||||
|
;;
|
||||||
|
network)
|
||||||
|
_describe -t commands "golemcli subcommand" _2nd_arguments_network
|
||||||
|
;;
|
||||||
|
res)
|
||||||
|
_describe -t commands "golemcli subcommand" _2nd_arguments_res
|
||||||
|
;;
|
||||||
|
settings)
|
||||||
|
_describe -t commands "golemcli subcommand" _2nd_arguments_settings
|
||||||
|
;;
|
||||||
|
subtasks)
|
||||||
|
_describe -t commands "golemcli subcommand" _2nd_arguments_subtasks
|
||||||
|
;;
|
||||||
|
tasks)
|
||||||
|
_describe -t commands "golemcli subcommand" _2nd_arguments_tasks
|
||||||
|
;;
|
||||||
|
terms)
|
||||||
|
_describe -t commands "golemcli subcommand" _2nd_arguments_terms
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
if (( CURRENT == 4 )); then
|
||||||
|
case "$words[2]" in
|
||||||
|
settings)
|
||||||
|
_describe -t commands "golemcli subcommand" _3rd_arguments_settings_set
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
Loading…
Reference in New Issue