nixos-config/shells/dodona.nix
Charlotte Van Petegem da840aea6f Dodona env update
2020-09-13 16:40:50 +02:00

34 lines
916 B
Nix

let
pkgs = import <nixpkgs> { };
in
pkgs.mkShell {
buildInputs = with pkgs; [
chromedriver
libmysqlclient
nodejs-14_x
ruby_2_7
yarn
zlib
(
pkgs.writeScriptBin "start-dockers" ''
#!${bash}/bin/bash
trap "systemd-run --user --no-block docker stop dodona-db dodona-cache" 0
docker run -d --name dodona-db -p 3306:3306 --rm -v dodona-db-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=dodona mariadb:latest
docker run -d --name dodona-cache -p 11211:11211 --rm memcached:latest
while [ 1 -eq 1 ]
do
sleep 1000
done
''
)
];
shellHook = ''
export TEST_DATABASE_URL="mysql2://root:dodona@127.0.0.1:3306/dodona_test"
export DATABASE_URL="mysql2://root:dodona@127.0.0.1:3306/dodona"
export GEM_HOME="$PWD/vendor/bundle/$(ruby -e 'puts RUBY_VERSION')"
export PATH="$GEM_HOME/bin:$PATH"
'';
}