diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2021-10-22 20:55:58 +0200 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2021-10-24 12:02:00 +0200 |
commit | c1ab2c58b68b0a012bb935420d42a6c1661536d3 (patch) | |
tree | f373a65bf3bc2a1940a6acd4926d4ed3cedd71f7 | |
parent | 1a82808aebdd8161bb9b40395af77e24d45f25c4 (diff) |
Add database dev helpers in dev environment
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
-rw-r--r-- | default.nix | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/default.nix b/default.nix index e8cbc19..a76efdd 100644 --- a/default.nix +++ b/default.nix @@ -54,6 +54,31 @@ in rec { ''; }; + postgresDb = "helloworlddb"; + postgresUser = "helloworlduser"; + postgresPassword = "asdfghjkl"; + + postgresContainerName = "helloworld-dev-db"; + + run-dev-postgres-container = pkgs.writeScriptBin "run-dev-postgres-container" '' + ${pkgs.docker}/bin/docker run \ + --name ${postgresContainerName} \ + -e POSTGRES_PASSWORD="${postgresPassword}" \ + -p 5432:5432 \ + -m 512m \ + -d \ + --rm \ + postgres + + sleep 2 # because postgres needs to spin up + docker exec -it ${postgresContainerName} psql -U postgres -c "CREATE USER ${postgresUser} PASSWORD '${postgresPassword}' SUPERUSER CREATEDB INHERIT LOGIN" + docker exec -it ${postgresContainerName} createdb -U postgres ${postgresDb} + ''; + + destroy-dev-postgres-container = pkgs.writeScriptBin "destroy-dev-postgres-container" '' + docker stop ${postgresContainerName} + ''; + shell = let moz_overlay = import ( builtins.fetchTarball https://github.com/mozilla/nixpkgs-mozilla/archive/master.tar.gz @@ -68,9 +93,12 @@ in rec { deploy-to-kind test-deployment redeploy + run-dev-postgres-container + destroy-dev-postgres-container curl docker kubectl + diesel-cli rustchannel.rust-std rustchannel.rust @@ -82,8 +110,12 @@ in rec { gcc openssl pkgconfig + postgresql ]; + POSTGRES_PASSWORD = "${postgresPassword}"; + DATABASE_URL="postgres://${postgresUser}:${postgresPassword}@localhost/${postgresDb}"; + LIBCLANG_PATH = "${pkgs.llvmPackages.libclang}/lib"; }; |