alunduil / alunduil/zfs-replicate
The CI Python matrix is defined once rather than duplicated across two jobs
- Linguagem predominante
- Python
- Estrelas
- 24
- Forks
- 6
- Merge médio
- 3h 11min
- PRs com merge (30d)
- 49
Descrição
## Summary
Remove the duplicated matrix and setup steps between the `python-tests` and
`cli-entry-point` jobs in `ci.yml`, without churning the check-run names #507
is trying to stabilise.
## Motivation
Found while fixing the pre-commit job in #615.
`cli-entry-point` (`ci.yml:67-91`) is a four-leg matrix job whose payload is a
single command, `poetry run -- zfs-replicate --help`. Everything above that
line duplicates `python-tests`: the matrix block at `ci.yml:72-82` is
byte-identical to `ci.yml:39-49`, and the checkout / `setup-poetry` /
`poetry install` prefix is identical too.
The supported Python versions are therefore declared twice and can drift
independently; #461 has to edit both to do its job. The pair also occupies
eight runner slots and pays for eight `poetry install` runs to produce four
test runs plus one extra command.
Folding the `--help` check into `python-tests` as a fifth step deletes roughly
25 lines and four jobs, but it also deletes four check-run names. #507 is
holding the Terraform baseline in alunduil/alunduil-infrastructure#25 pending a
decision about which check names are stable enough to require, so that deletion
belongs to that decision rather than being a free cleanup.
## Scope
- Decide, with #507, whether `Check CLI entry point *` is worth keeping as its
own gate.
- If it is not, fold `poetry run -- zfs-replicate --help` into `python-tests`
and delete the `cli-entry-point` job.
- If it is, share the matrix another way or accept the duplication explicitly,
so the next reader stops re-deriving this.
## Acceptance criteria
- [ ] The `3.10`/`3.11`/`3.12`/`3.x` list and its `experimental` flags appear
once in `ci.yml`
- [ ] Any check-run name removed is one #507 agreed was not worth requiring
## Additional context
#558 covers the other duplication in this file, the coveralls step re-running
the suite, and is not in scope here.
Guia de contribuição
Direção de pesquisa
Read ci.yml:39-91 to compare the python-tests and cli-entry-point matrix, setup prefix, and check-run names. Then review #507 and its Terraform baseline context before choosing whether the CLI gate remains separate. Done means the Python versions and experimental flags appear once, with any removed check-run name explicitly agreed as unnecessary.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- github-actions, python
- Domínio
- ci-cd
- Tipo de issue
- Refatoração
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Pouca atividade
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 45/100