airbytehq / airbytehq/PyAirbyte
VenvExecutor fails to install a connector package if it has the wrong executable name
- Langage dominant
- Python
- Étoiles
- 344
- Forks
- 77
- Merge moyen
- 1 j 11 h
- PR mergées (30 j)
- 35
Description
## Problem
In https://github.com/airbytehq/airbyte/pull/40693, we've been fixing source-braintree, and mistakenly set it's script name wrong:
```
[tool.poetry.scripts]
source-braintree = "source_braintree.run:run"
```
When pyairbyte tried to validate, it rightfully noticed that `source-braintree` is not a valid executable in the venv, and attempted reinstalling, but:
```
Successfully built source-braintree
...
Thank you for using PyAirbyte!
Anonymous usage reporting is currently enabled. For more information, please see https://docs.airbyte.com/telemetry
Creating source and validating spec is returned successfully...
Connector executable not found within the virtual environment at
/airbyte-integrations/connectors/source-braintree/.venv-source-braintree/bin/sou
rce-braintree.
Reinstalling...
Installing 'source-braintree' into virtual environment
'/airbyte-integrations/connectors/source-braintree/.venv-source-braintree'.
Running 'pip install airbyte-{connector_name}'...
```
So what happens here is that `self.pip_url` of the executor silently becomes `connector_name`. I see it defaults to `self.name`, but don't see the problem deeper. A nice puzzle if someone wants to tinker ;)
Guide de contribution
Ouvrir le guide de contribution
Évaluation
Cette issue n'a pas encore été évaluée.