Automate reference docs for commandline flags and env vars
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- rust
調査の方向性
既存の CRD リファレンス生成ワークフローと、手動で生成されている HBase のコマンドラインおよび環境変数のリファレンスページを確認します。次に、issue で説明されている build.rs と clap パーサーの統合と、operators のヘルプ出力を比較し、subcommands に個別の処理が必要かどうかも確認します。手書きの flag と環境変数の一覧を使わずに利用可能なリファレンスページを生成できる、保守しやすい生成方式を選択して実装すれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Problem: Currently we have hand written docs in every operator about commandline flags and environment variables read by the operators. This is difficult to maintain and in some places it is already out of date. Like the CRD references, it would be good to generate this to reduce maintenance burden.
Cheapo variant A: dump the help page
The help pages of the operators actually already reference all the flags (obviously) and also most env vars (some would need to be added through clap, that is easy though). We already do this for stackablectl. It isn't pretty, the formatting is actually quite ugly.
By default the help doesn't show help for subcommands. Maybe we have to call each subcommand individually (or maybe we just show the help for run).
Slightly more involved variant B: generate man page, convert to adoc
There is https://github.com/clap-rs/clap/tree/master/clap_mangen to generate man pages from clap.
We could use pandoc to convert the man page to an adoc file:
pandoc -s -t asciidoc example.man -o example.adoc
And use that as our reference page.
This is a bit annoying to implement because the build.rs file has to include the clap parser definition too. Also I am unsure about the pandoc converted adoc page, I am not sure if the styling can be changed or how easily it can be done.
For reference (currently manually generated):
https://docs.stackable.tech/home/stable/hbase/reference/commandline-parameters/
https://docs.stackable.tech/home/stable/hbase/reference/environment-variables/
- 主要言語
- CSS
- スター
- 13
- フォーク
- 14
- 平均マージ
- 4日 8時間
- マージ済み PR(30日)
- 10
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
stackabletech/documentation のほかの issue
-
Withdraw ADR018 オープン
難易度 1/5 1時間未満 初心者へのやさしさ 68/100
stackabletech/documentation#734 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 55/100
stackabletech/documentation#779 ·
-
customer-request
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
stackabletech/documentation#773 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
stackabletech/documentation#754 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 25/100
stackabletech/documentation#753 ·
stackabletech/documentation の issue をすべて見る
似ている issue
-
Update to NCCL 2.32 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
conda-forge/nccl-feedstock#166 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
dsx-ai-factory/infra-controller#6694 ·
-
bug build
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
facebookincubator/velox#19143 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
pydantic/pydantic-ai#8636 ·
-
0.kind: enhancement 9.needs: package (update)
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100