From e2adf59f4adb88182509e419833067255da225f3 Mon Sep 17 00:00:00 2001 From: Jeremy Kaplan Date: Tue, 17 Aug 2021 11:06:05 -0700 Subject: [PATCH] direnv: layout_poetry --- direnv/direnvrc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/direnv/direnvrc b/direnv/direnvrc index 380a7ce..d4a5ad3 100644 --- a/direnv/direnvrc +++ b/direnv/direnvrc @@ -67,3 +67,18 @@ use_nvm() { # Make sure to run `nvm install $node_version` first. nvm use $node_version } + +# From https://github.com/direnv/direnv/wiki/Python#poetry +layout_poetry() { + if [[ ! -f pyproject.toml ]]; then + log_error 'No pyproject.toml found. Use `poetry new` or `poetry init` to create one first.' + exit 2 + fi + + # Create venv if it doesn't exist + poetry run true + + export VIRTUAL_ENV="$(poetry env info --path)" + export POETRY_ACTIVE=1 + PATH_add "$VIRTUAL_ENV/bin" +}