[
https://issues.apache.org/jira/browse/HDDS-11728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17902781#comment-17902781
]
Ethan Rose commented on HDDS-11728:
-----------------------------------
Yes the original intent was about arranging the CLI, not the package structure.
I see how this may not have been clear. For example:
* All commands that only work for one component should be under a dedicated
subcommand. Examples:
** {{ozone debug om fso-repair}} instead of {{{}ozone debug fso-repair{}}}.
** {{ozone repair quota}} which should be {{ozone om repair quota}}
** {{ozone repair ldb snapshot}} should be {{ozone repair om snapshot}} since
it is not a generic across RocksDB instances.
*** We probably want to remove {{ozone repair ldb}} all together since there
are no plans to support arbitrary modifications to RocksDB per discussion on
[https://github.com/apache/ozone/pull/7177]
** Since debug/repair commands run locally, it is important that they specify
the component that they are intended for.
* Commands relevant to one aspect that affects multiple components should be
grouped together. For example:
** {{ozone debug ratis log-parser}} instead of {{ozone debug ratislogparser}}
so that we can add other Ratis debug commands later.
** {{ozone debug ldb}} should remain a top level command since it should work
on any ozone rocksdb instance.
* IMO commands that run over the network should not be part of debug/repair
and should be moved elsewhere. Otherwise it is ambiguous for which commands the
cluster needs to be up when running, and whether kinit is required. We might
want to discuss this more. Examples include:
** {{ozone debug read-replicas}} which could be moved to an {{ozone sh key}}
subcommand
** {{ozone debug recover}} which could be moved somewhere under {{ozone
admin}} or {{{}ozone sh key{}}}. It is not read-only and should not be under
{{debug}}
This is not an exhaustive list, but rather my attempt to summarize the areas
where we can improve the CLI layout to make it clear where to find commands in
the CLI and what nodes they should be run on.
> Refactor subcommand layouts of ozone debug and repair
> -----------------------------------------------------
>
> Key: HDDS-11728
> URL: https://issues.apache.org/jira/browse/HDDS-11728
> Project: Apache Ozone
> Issue Type: Sub-task
> Reporter: Ethan Rose
> Assignee: Sarveksha Yeshavantha Raju
> Priority: Major
> Labels: pull-request-available
> Fix For: 2.0.0
>
>
> The current layout of {{ozone debug}} and {{ozone repair}} subcommands is
> quite confusing and disorganized due to the ad-hoc nature that the tools have
> been developed. Since these commands are not supposed to be scripted, we can
> probably be more lenient with our CLI compatibility guarantees and adjust the
> subcommand layout so that it is easy to find existing commands and new
> commands have logical places to be added.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]