network_inventory/.envrc

49 lines
1.3 KiB
Plaintext
Raw Permalink Normal View History

2022-01-31 20:50:16 +01:00
use flake
2022-03-01 10:04:34 +01:00
eval "$shellHook"
2023-07-12 23:16:32 +02:00
layout_postgres() {
export PGDATA="$(direnv_layout_dir)/postgres"
export PGHOST="$PGDATA"
if [[ ! -d "$PGDATA" ]]; then
initdb
2023-08-28 12:57:32 +02:00
echo -e "listen_addresses = 'localhost'\nunix_socket_directories = '$PGHOST'" >>"$PGDATA/postgresql.conf"
2023-07-14 14:34:56 +02:00
echo "CREATE DATABASE django;" | postgres --single -E postgres
2023-07-12 23:16:32 +02:00
fi
}
layout postgres
2023-08-28 12:57:32 +02:00
layout_poetry() {
PYPROJECT_TOML="${PYPROJECT_TOML:-pyproject.toml}"
if [[ ! -f "$PYPROJECT_TOML" ]]; then
log_status "No pyproject.toml found. Executing \`poetry init\` to create a \`$PYPROJECT_TOML\` first."
poetry init
fi
if [[ -d ".venv" ]]; then
VIRTUAL_ENV="$(pwd)/.venv"
else
VIRTUAL_ENV=$(
poetry env info --path 2>/dev/null
true
)
fi
if [[ -z $VIRTUAL_ENV || ! -d $VIRTUAL_ENV ]]; then
log_status "No virtual environment exists. Executing \`poetry install\` to create one."
poetry install
VIRTUAL_ENV=$(poetry env info --path)
fi
PATH_add "$VIRTUAL_ENV/bin"
export POETRY_ACTIVE=1
export VIRTUAL_ENV
}
if ! has nix; then
layout poetry
fi
2023-07-13 23:02:56 +02:00
export PROJECT_DIR=$(pwd)
export WEBPORT=$(($RANDOM + 1100))
export PGPORT=$(($WEBPORT + 100))
watch_file "$PGDATA/postgresql.conf"