apache / apache/paimon-cpp

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

Aberta
#293 0 comentários 0 reações 0 responsáveis Ver no GitHub
bug
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

Abrir o 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

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.