Итак, я снова создаю хорошую программу на python, которая делает мою жизнь еще более легкой и экономит много времени. Конечно, для этого используется virtualenv, созданный с помощью функции mkvirtualenv
virtualenvwrapper. В проекте есть файл requirements.txt с несколькими необходимыми библиотеками (запросы тоже :D), и программа не будет работать без этих библиотек.
Я пытаюсь добавить bin/run-app
исполняемый shell скрипт, который будет находиться в моем пути (симлинк фактически). Теперь, внутри этого скрипта, мне нужно переключиться на virtualenv, прежде чем я смогу запустить эту программу. Поэтому я поместил это в
#!/bin/bash
# cd into the project directory
workon "$(cat .venv)"
python main.py
Файл .venv
содержит имя virtualenv. Но когда я запускаю этот сценарий, я получаю workon: command not found
ошибку.
Конечно, у меня есть virtualenvwrapper.sh в моем bashrc, но он, похоже, не доступен в этом сценарии.
Итак, как я могу получить доступ к этим функциям virtualenvwrapper здесь? Или я делаю это неправильно? Как вы запускаете инструменты python, каждый из которых имеет свой собственный virtualenv?