bazel-contrib / bazel-contrib/rules_python
Add a `pip_parse` attribute to pass an SSL certificate
- Lingua principale
- Starlark
- Stelle
- 688
- Fork
- 721
- Merge medio
- 15h 7m
- PR unite (30g)
- 76
Descrizione
# 🚀 feature request
### Relevant Rules
I would like to add support for passing additional files to the `pip_parse` rule.
### Description
This feature request is a follow-up to https://github.com/bazel-contrib/rules_python/issues/3858.
After passing a custom certificate to `compile_pip_requirements`, we also need a way to pass a custom certificate, or another pip-related file (i.e. pip config with a certificate), to `pip_parse`.
I tried to find a way to do this, but it looks like `pip_parse` does not currently accept data or another label-based attribute for passing extra files to the repository rule.
### Describe the solution you'd like
I would like pip_parse to support an additional label-based attribute for files needed by pip, for example `extra_files`, `pip_config`, or `ssl_cert`.
The most general option seems to be something like `extra_files`, because certificates can be passed to pip in more than one way: `--cert=`, `PIP_CERT`, or `PIP_CONFIG_FILE`.
### Describe alternatives you've considered
The main alternative I considered is passing the pip config file or SSL certificate through `PIP_CONFIG_FILE` or `PIP_CERT` environment variables. However, this requires using raw paths, while I would prefer a Bazel-native labels approach.
If there is already a supported way to do such thing, please let me know.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Start by inspecting the pip_parse rule and the follow-up issue 3858 to understand how compile_pip_requirements passes certificate-related files. Determine how a label-based extra file can reach pip, then verify that pip_parse accepts the chosen attribute and supports the certificate or pip configuration use cases described here.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- build-system
- Tipo di issue
- Funzionalità
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 52/100