pp: Add automatic launcher
This commit is contained in:
parent
32d8636ae1
commit
b453c12253
@ -118,6 +118,10 @@
|
|||||||
# Takes a list of experiments and returns a file that contains
|
# Takes a list of experiments and returns a file that contains
|
||||||
# all timetable results from the experiments.
|
# all timetable results from the experiments.
|
||||||
merge = exps: mergeDatasets (map timetableFromTrebuchet exps);
|
merge = exps: mergeDatasets (map timetableFromTrebuchet exps);
|
||||||
|
|
||||||
|
# Automatic launcher
|
||||||
|
launcher = callPackage ./pp/launcher.nix { };
|
||||||
|
resultFromLauncher = l: import (builtins.readFile l);
|
||||||
};
|
};
|
||||||
|
|
||||||
# Apps for Garlic
|
# Apps for Garlic
|
||||||
|
32
garlic/pp/launcher.nix
Normal file
32
garlic/pp/launcher.nix
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
stdenv
|
||||||
|
}:
|
||||||
|
|
||||||
|
trebuchet:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "launcher";
|
||||||
|
preferLocalBuild = true;
|
||||||
|
|
||||||
|
phases = [ "installPhase" ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
if [ ! -e /garlic/run ]; then
|
||||||
|
echo "Missing /garlic/run, cannot continue"
|
||||||
|
echo "Are you running the garlicd daemon?"
|
||||||
|
echo
|
||||||
|
echo "You can manually run the experiment and fetch the results with:"
|
||||||
|
echo
|
||||||
|
echo -e "\e[30;48;5;2mgarlic -RFv ${trebuchetStage}\e[0m"
|
||||||
|
echo
|
||||||
|
echo "See garlic(1) for more details."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ${trebuchet} >> /garlic/run
|
||||||
|
echo "Waiting for experiment results..."
|
||||||
|
results=$(cat /garlic/completed)
|
||||||
|
#ln -s $results $out
|
||||||
|
echo -n "$results" > $out
|
||||||
|
'';
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user