| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | R | S | T | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | serv | Quick Reference | Color Legend | Documentation Status | Upcoming Release | Roadmap | |||||||||||||
2 | Meshery CLI Commands and Documentation | completed | "cmd index" | "cmd page" | v0.8.0 | mesheryctl Roadmap | |||||||||||||
3 | not completed | ||||||||||||||||||
4 | partially completed | refers to mesheryctl command reference | refers to page dedicated to command | ||||||||||||||||
5 | mesheryctl open issues and pull requests | not applicable | |||||||||||||||||
6 | needs more info | ||||||||||||||||||
7 | action item | ||||||||||||||||||
8 | experimental | ||||||||||||||||||
9 | |||||||||||||||||||
10 | Global Commands and Flags | ||||||||||||||||||
11 | command | flag | function | usage | comments | implemented? | Tests Written? | context awareness | Docker | K8s | Mac | Linux | Win | cmd index | cmd page | release status | roadmap | ||
12 | mesheryctl | ||||||||||||||||||
13 | completion | generates completion script | mesheryctl completion [bash\|zsh\|fish] | Yes | N/A | N/A | N/A | Yes | Yes | N/A | Yes | Ready | |||||||
14 | mesheryctl | version | displays the version of mesheryctl and the SHA of the release binary | mesheryctl version | |||||||||||||||
15 | help, h | displays help for any command | mesheryctl --help | displays the complete help | Look through each of the inbuilt docs and fix any errors | N/A | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | |||||
16 | mesheryctl system --help | displays the help for system commands | N/A | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | ||||||||
17 | mesheryctl system start --help | displays help for the system start command | N/A | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | ||||||||
18 | config | path to mesheryctl config file(~/.meshery/config.yaml) | mesheryctl system reset --config=<path to config file> | default value of the config file is ~/.meshery/config.yaml. | Yes | N/A | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | |||||
19 | verbose, v | displays verbose/debug logs | mesheryctl system update --verbose | even though the flag is global, verbose/debug logs are not added to commands | Yes: verbose flag | N/A | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | |||||
20 | No: debug logs | N/A | N/A | N/A | Yes | Yes | add debug logs | ||||||||||||
21 | |||||||||||||||||||
22 | Meshery Lifecycle and Troubleshooting | ||||||||||||||||||
23 | arguments | flag | function | usage | comments | implemented? | context awareness | Docker | K8s | Mac | Linux | Win | cmd index | cmd page | release status | roadmap | |||
24 | system | ||||||||||||||||||
25 | system | context, c | mesheryctl system reset -c <temporary context name> | global flag applicable to all system commands | Yes | N/A | N/A | N/A | Yes | Yes | Yes | Ready | |||||||
26 | start | start Meshery display endpoint based on the platform | mesheryctl system start | starts Meshery containers for Docker; applies manifest files to the cluster for Kubernetes; displays endpoint based on platform(The endpoint for docker users is http://localhost:PORT, where PORT is taken from the endpoint specified in meshconfig) | The endpoint returned when deployed to Kubernetes is wrong/inaccessible | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | need to handle error when version is higher than available version | mesheryctl should only change specific stuff in meshery.yaml, versions should be addable in meshconfig | |||
27 | skip-update | start Meshery- skip checking for new Meshery container images | mesheryctl system start --skip-update | Not for Kubernetes- dependent on caching manifests locally | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
28 | reset | start Meshery- reset Meshery's configuration file to default settings | mesheryctl system start --reset | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | reset flag does not work properly | |||||||
29 | yes, y | start Meshery- silently create Meshery's configuration file with default settings | mesheryctl system start --yes | Yes | Yes | Yes | Yes | Yes | TBD | Yes | Yes | Ready | |||||||
30 | stop | stop Meshery | mesheryctl system stop | stops running Meshery containers for Docker; deletes Meshery deployments from the cluster for Kubernetes. Working to apply and remove operator manifests on start and stop respectively, for platform: docker | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | fails if meshery pods are already running in the cluster | add debug logs | |||
31 | reset | stop Meshery- reset Meshery's configuration file to default settings | mesheryctl system stop --reset | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Ready | ||||||||
32 | restart | restart all Meshery containers, their instances and their connected volumes | mesheryctl system restart | Modifying the working to delete all the running pods and let the services restart the pod automatically | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | restart would not work if meshery is not already started (occurs sometimes if the platform is Kubernetes) | ||||
33 | skip-update | restart Meshery - skip checking for new Meshery container images | mesheryctl system restart --skip-update | Yes | Yes | Yes | Yes | TBD | TBD | Yes | TBD | Yes | Yes | Ready | |||||
34 | reset | resets meshery.yaml file with a copy from Meshery repo | mesheryctl system reset | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||||||
35 | update | pulls new Meshery images from Docker Hub. Does not update mesheryctl. This command can be run while Meshery is running. | mesheryctl system update | Does not update operator manifests for Docker platform | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | for docker it does not update the operator manifests, okay for kubernetes | |||||
36 | config | configures Meshery with kubeconfig. Generated with the help of user details to provide access for public clouds(GKE/EKS) | mesheryctl system config gke --token <path to token> | Yes | Yes | TBD | N/A | N/A | Yes | Yes | TBD | Yes | Yes | if the platform is not specified, it does not show what to input to the user | |||||
37 | log | starts tailing Meshery server debug logs | mesheryctl system log | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | the docs does not specify that it support arguments | should have a flag to tail logs(in Kubernetes)- tailing logs being worked upon in meshsync | ||||
38 | status | display the endpoint and status of the containers/pods in a Meshery deployment | mesheryctl system status | Displays endpoint based on platform: 1. docker users have the endpoint http://localhost:PORT, where PORT is taken from the endpoint specified in meshconfig. 2. Kubernetes users have the service endpoint displayed, obtained by querying the Kubernetes API | Yes | Yes | N/A | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Ready | ||||
39 | check | checks current environment and Meshery deployment health | mesheryctl system check | Yes | N/A | Yes | Yes | N/A | N/A | N/A | Yes | Yes | |||||||
40 | preflight | only runs Docker and Kubernetes checks | mesheryctl system check --preflight | Yes | No | Yes | Yes | N/A | N/A | N/A | Yes | Yes | |||||||
41 | adapter | checks on specific adapter | mesheryctl system check --adapter | Yes | No | ||||||||||||||
42 | operator | verifies health of Meshery Operator deployment with MeshSync and Broker | mesheryctl system check --operator | No | No | ||||||||||||||
43 | report | runs diagnostics collection and bundles for opening an issue | mesheryctl system check --report | No | No | ||||||||||||||
44 | system channel | ||||||||||||||||||
45 | system channel | set | sets release channel and version of context in focus | mesheryctl system channel set | Yes | Yes | N/A | N/A | Yes | Yes | Yes | Yes | TBD | should show confirmation to the user, should validate the channel | |||||
46 | view | view release channel and version of context in focus | mesheryctl system channel view | Yes | Yes | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | ||||||
47 | all, a | view release channel and version of all contexts | mesheryctl system channel view --all | Yes | Yes | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | ||||||
48 | switch | switch release channel and version of context in focus | mesheryctl system channel switch | Yes | Yes | N/A | N/A | Yes | Yes | Yes | Yes | TBD | Error on MacOS and Windows | ||||||
49 | system context | ||||||||||||||||||
50 | system context | display the current context | mesheryctl system context | Yes | Yes | N/A | Yes | Yes | Yes | Yes | Yes | Yes | Ready | ||||||
51 | create | create a new context in config.yaml file | mesheryctl system context create <context name> | Yes | Yes | N/A | Yes | Yes | Yes | Yes | Yes | Yes | Ready | ||||||
52 | url, u | create a new context in config.yaml file- set Meshery server URL. Defaults to "https://localhost:9081" | mesheryctl system context create <context name> --url <URL> | Yes | Yes | N/A | Yes | Yes | Yes | Yes | Yes | Yes | Ready | ||||||
53 | set, s | create a new context in config.yaml file- set as current context | mesheryctl system context create <context name> --set | Yes | Yes | N/A | Yes | Yes | Yes | TBD | Yes | Yes | Ready | ||||||
54 | platform | create a new context in config.yaml file- specify the platform | mesheryctl system context create <context name> --platform [docker|kubernetes] | Yes | Yes | Yes | Yes | Yes | TBD | Yes | TBD | Ready | |||||||
55 | adapters, a | create a new context in config.yaml file- specify the list of adapters to be added | mesheryctl system context create <context name> --adapters <list of adapters> | Yes | Yes | N/A | Yes | Yes | Yes | TBD | Yes | Yes | Ready | ||||||
56 | delete | delete the specified context from the config.yaml file - in case user chooses to delete the current context, a confirmatory question and an interactive list are displayed, both of which can be automated using flags | mesheryctl system context delete <context name> | Yes | Yes | N/A | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Introduced interactivity to select context when the user is deleting current context. (PR #3060) | |||||
57 | switch | switch between contexts | mesheryctl system context switch <context name> | Yes | Yes | N/A | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | |||||
58 | view | view the configurations of the current context | mesheryctl system context view | Yes | Yes | N/A | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | |||||
59 | --context | view the configurations of the specified context | mesheryctl system context view --context <context name> | Yes | Yes | N/A | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | |||||
60 | --all | if set, shows the configurations of all the contexts | mesheryctl system context view --all | Yes | Yes | N/A | N/A | N/A | Yes | Yes | Yes | Yes | Yes | Ready | |||||
61 | list | lists all the available contexts and the current context | mesheryctl system context list | Yes | Yes | N/A | N/A | N/A | Yes | Yes | Yes | Yes | TBD | Ready | |||||
62 | system token | ||||||||||||||||||
63 | // Token CRUD specific commands to be added here | ||||||||||||||||||
64 | Performance Management | ||||||||||||||||||
65 | command | flag | function | usage | comments | implemented? | Support for Nighthawk? | Docker | K8s | Mac | Linux | Win | cmd index | cmd page | release status | roadmap | |||
66 | perf | ||||||||||||||||||
67 | perf | performance management- baseline and testing | does not support performance profiles. Consideration of new subcommands in design spec. | Yes | No | Yes | No | Yes | Yes | Yes | Yes | ||||||||
68 | apply | run a performance test with the performance profile specified | mesheryctl perf apply profile-name | will be supported with this spec. | Yes | ||||||||||||||
69 | url | (required) endpoint URL to test | mesheryctl perf apply profile-name --url <URL> | Yes | No | Yes | No | Yes | Yes | Yes | Yes | Yes | |||||||
70 | name | name of the test | mesheryctl perf apply profile-name --name "<name>" --url <URL> | Yes | No | Yes | No | Yes | Yes | Yes | Yes | Yes | |||||||
71 | mesh | name of the adapter | mesheryctl perf apply profile-name --adapter <name> --url <URL> | Yes | No | Yes | No | Yes | Yes | Yes | Yes | Yes | |||||||
72 | qps | queries per second | mesheryctl perf apply profile-name --qps <queries> --url <URL> | Yes | No | Yes | No | Yes | Yes | Yes | Yes | Yes | |||||||
73 | concurrent-requests | number of parallel requests | mesheryctl perf apply profile-name --concurrent-requests <number of requests> --url <URL> | Yes | No | Yes | No | Yes | Yes | Yes | Yes | Yes | |||||||
74 | duration | length of the test (e.g. 10s, 5m, 2h). For more, see https://golang.org/pkg/time/#ParseDuration | mesheryctl perf apply profile-name --duration <time> --url <URL> | Yes | No | Yes | No | Yes | Yes | Yes | Yes | Yes | |||||||
75 | token | path to Meshery auth token | mesheryctl perf apply profile-name --token <path to token> --url <URL> | Yes | No | Yes | No | Yes | Yes | Yes | Yes | Yes | |||||||
76 | load-generator | load generator to be used (fortio/wrk2) | mesheryctl perf apply profile-name --load-generator [fortio/wrk2] --url <URL> | Yes | No | Yes | No | Yes | Yes | Yes | Yes | Yes | |||||||
77 | file | file containing SMP compatible test configuration. For more, see https://github.com/layer5io/service-mesh-performance-specification | mesheryctl perf apply profile-name --file <path to file> --url <URL> | need to add support to import and apply SMP compatible files from GitHub or local. Being considered in this spec. | Yes | No | Yes | No | Yes | Yes | TBD | Yes | Yes | ||||||
78 | profile | lists all the available performance profiles | mesheryctl perf profile | will be added with this spec | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | ||||||
79 | lists and search performance profiles with the given name | mesheryctl perf profile [profile-name] | will be added with this spec | Yes | Yes | No | Yes | Yes | Yes | Yes | No | ||||||||
80 | view | view single performance profile with detailed fashion | mesheryctl perf profile --view | will be added with this spec | Yes | Yes | Yes | Yes | Yes | Yes | |||||||||
81 | output-format | print performance profiles in [json|yaml] | mesheryctl perf profile --output-format [json|yaml] | will be added with this spec | Yes | Yes | Yes | Yes | Yes | Yes | |||||||||
82 | result | list all the performance results with the matching profile name | mesheryctl perf result [profile-name] | will be added with this spec | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | ||||||
83 | view | view single the performance result with additional details the matching profile name | mesheryctl perf result [profile-name] --view | will be added with this spec | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | ||||||
84 | output-format | print performance results in [json|yaml] | mesheryctl perf result [profile-name] --output-format [json|yaml] | will be added with this spec | Yes | Yes | Yes | Yes | Yes | Yes | |||||||||
85 | |||||||||||||||||||
86 | Lifecycle Management | ||||||||||||||||||
87 | command | flag | function | usage | comments | implemented? | context awareness | Docker | K8s | Mac | Linux | Win | cmd index | cmd page | release status | roadmap | |||
88 | mesh | ||||||||||||||||||
89 | mesh | validate | validate cloud native infrastructure conformance to different standard specifications | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
90 | adapter, a | (required) adapter to use for validation. Defaults to "meshery-osm:10010" | mesheryctl adapter validate [mesh name] --adapter <name of the adapter> --tokenPath <path to token for authentication> --spec <specification to be used for conformance test> | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
91 | spec, s | (required) specification to be used for conformance test. Defaults to "smi" | Only istio supports "Analyse Running Configuration" [istio-vet] (for now) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
92 | tokenPath, t | (optional) path to token for authenticating to Meshery API | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | |||||||||
93 | namespace, n | Kubernetes namespace to be used for deploying the validation tests and sample workload | mesheryctl adapter validate [mesh name] --adapter <name of the adapter> --tokenPath <path to token for authentication> --spec <specification to be used for conformance test> --namespace <namespace to be used> | No need for this in "smi". This should be removed. | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | |||||||
94 | validate view | view the result of a Conformance Test | mesheryctl validate view [name|id] | New command to be added. Being considered in this design spec. | No | No | No | No | No | No | No | No | |||||||
95 | --all | view all the results | mesheryctl validate view --all | No | No | No | No | No | No | No | No | ||||||||
96 | deploy | deploy cloud native infrastructure into the cluster | mesheryctl adapter deploy [mesh name] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
97 | apply | adapter operations | mesheryctl adapter apply <name of operation like mTLS> | No | No | No | No | No | No | No | No | ||||||||
98 | remove | remove a cloud native infrastructure from the cluster | mesheryctl adapter remove [mesh name] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||
99 | |||||||||||||||||||
100 | Configuration Management | ||||||||||||||||||