apache / apache/paimon-cpp

[Bug] CI build script accepts flags as values for required options

未關閉
#293 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
bug
主要語言
C++
星號
65
分支
25
平均合併
2 天 12 小時
30 天內合併 PR
80

描述

### Search before asking

- [x] I searched in the [issues](https://github.com/apache/paimon-cpp/issues) and found nothing similar.

### Paimon-cpp version

### Paimon version

Current `main` branch.

### Minimal reproduce step

Run one of the following commands:

```bash
ci/scripts/build_paimon.sh --source_dir --enable_asan

ci/scripts/build_paimon.sh \
--source_dir . \
--build_type --enable_asan

ci/scripts/build_paimon.sh \
--source_dir . \
--lint_git_target_commit --enable_asan
```

The script treats the following option as the value of the preceding option and continues until a later command fails or CMake is invoked with an invalid value.

The script also accepts unsupported build types:

```
ci/scripts/build_paimon.sh \
--source_dir . \
--build_type Profile
```

### What doesn't meet your expectations?

Options that require a value should reject an empty value or another `--option` with a clear error message.

The `--build_type` option should only accept the standard CMake build types used by the project:
- `Debug`
- `Release`
- `RelWithDebInfo`
- `MinSizeRel`
Invalid arguments should be rejected before creating build directories or invoking CMake.

The argument validation behavior is currently not covered by dedicated script-level tests.

### Anything else?

_No response_

### Are you willing to submit a PR?

- [x] I'm willing to submit a PR!

貢獻指南

開啟貢獻指南

研究方向

從 ci/scripts/build_paimon.sh 開始,重現列出的命令,以追蹤必要的選項值和 --build_type 如何進行驗證。為缺少的值、看起來像選項的值,以及不受支援的建置類型新增腳本層級的涵蓋;完成的標準是無效引數在呼叫建置目錄或 CMake 之前失敗,同時列出的四種 CMake 建置類型仍維持接受。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
cmake, shell
領域
build-system, cli
Issue 類型
缺陷
難度
3/5
預估耗時
1-2 天
活躍度
活躍
描述清晰度
描述清楚
新手友好度
74/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。