bazel-contrib / bazel-contrib/rules_python

Add a `pip_parse` attribute to pass an SSL certificate

Abierto
#3,915 1 comentario 0 reacciones 0 asignados Ver en GitHub
help wanted P4 type: pip
Lenguaje dominante
Starlark
Estrellas
688
Forks
721
Merge medio
15 h 7 min
PR fusionados (30 d)
76

Descripción

# 🚀 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.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

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.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
python
Área
build-system
Tipo de issue
Nueva funcionalidad
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Tranquilo
Claridad
Bastante claro
Aptitud para principiantes
52/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.