##// END OF EJS Templates
tests: Fix --without-vcsserver parameter...
tests: Fix --without-vcsserver parameter Ensuring now that we always disable the vcsserver auto start for the test suite, since the test suite bootstraps its own vcsserver process. Also enhanced TestINI.

File last commit:

r479:c121f2d8 default
r816:43fb99bf default
Show More
shell.nix
57 lines | 1.5 KiB | text/x-nix | NixLexer
{ pkgs ? (import <nixpkgs> {})
, vcsserverPath ? "./../rhodecode-vcsserver"
, vcsserverNix ? "shell.nix"
, doCheck ? true
}:
let
# Convert vcsserverPath to absolute path.
vcsserverAbsPath =
if pkgs.lib.strings.hasPrefix "/" vcsserverPath then
builtins.toPath "${vcsserverPath}"
else
builtins.toPath ("${builtins.getEnv "PWD"}/${vcsserverPath}");
# Import vcsserver if nix file exists, otherwise set it to null.
vcsserver =
let
nixFile = "${vcsserverAbsPath}/${vcsserverNix}";
in
if pkgs.lib.pathExists "${nixFile}" then
builtins.trace
"Using local vcsserver from ${nixFile}"
import "${nixFile}" {inherit pkgs;}
else
null;
hasVcsserver = !isNull vcsserver;
enterprise = import ./default.nix {
inherit pkgs doCheck;
};
pythonPackages = enterprise.pythonPackages;
in enterprise.override (attrs: {
# Avoid that we dump any sources into the store when entering the shell and
# make development a little bit more convenient.
src = null;
buildInputs =
attrs.buildInputs ++
pkgs.lib.optionals (hasVcsserver) vcsserver.propagatedNativeBuildInputs ++
(with pythonPackages; [
bumpversion
invoke
ipdb
]);
shellHook = attrs.shellHook +
pkgs.lib.strings.optionalString (hasVcsserver) ''
# Setup the vcsserver development egg.
pushd ${vcsserverAbsPath}
python setup.py develop --prefix $tmp_path --allow-hosts ""
popd
'';
})