[Bug] CI build script accepts flags as values for required options
- Linguagem predominante
- C++
- Estrelas
- 65
- Forks
- 25
- Merge médio
- 2d 12h
- PRs com merge (30d)
- 80
Descrição
### 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!
Guia de contribuição
Direção de pesquisa
Comece com ci/scripts/build_paimon.sh e reproduza os comandos listados para rastrear como os valores de opção obrigatórios e --build_type são validados. Adicione cobertura no nível do script para valores ausentes ou semelhantes a opções e tipos de build não suportados; considera-se concluído quando argumentos inválidos falham antes que diretórios de build sejam criados ou CMake seja invocado, enquanto os quatro tipos de build do CMake listados continuam sendo aceitos.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- cmake, shell
- Domínio
- build-system, cli
- Tipo de issue
- Bug
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Status de atividade
- Ativa
- Clareza
- Claramente especificada
- Facilidade para iniciantes
- 74/100