xrefcheck/xrefcheck.nix

47 lines
1.4 KiB
Nix
Raw Normal View History

# SPDX-FileCopyrightText: 2020 Serokell <https://serokell.io>
#
# SPDX-License-Identifier: MPL-2.0
2020-04-11 13:22:26 +03:00
{ linux ? false, linux-static ? false, windows ? false }:
2019-12-09 12:38:33 +03:00
let
nixpkgs = (import ./ci.nix).pkgs;
src = (import ./ci.nix).project-src;
2020-04-11 13:22:26 +03:00
pkgs = if linux-static then nixpkgs.pkgsCross.musl64 else if windows then nixpkgs.pkgsCross.mingwW64 else nixpkgs;
project = pkgs.haskell-nix.stackProject {
src = pkgs.haskell-nix.haskellLib.cleanGit { src = ./.; };
modules = [{
packages.xrefcheck = {
ghcOptions =
[ "-Werror" ];
components.tests = {
links-tests = {
build-tools = [ pkgs.vsftpd ];
preCheck = ''
echo "Starting vsftpd..."
touch /tmp/vsftpd.log
vsftpd \
-orun_as_launching_user=yes \
-olisten_port=2221 \
-olisten=yes \
-oftp_username=$(whoami) \
-oanon_root=${./links-tests/ftp_root} \
-opasv_min_port=2222 \
-ohide_file='{.*}' \
-odeny_file='{.*}' \
-oseccomp_sandbox=no \
-olog_ftp_protocol=yes \
-oxferlog_enable=yes \
-ovsftpd_log_file=/tmp/vsftpd.log &
sleep 1
tail -f /tmp/vsftpd.log &
'';
testFlags = [ "--ftp-host" "ftp://localhost:2221" ];
};
};
2019-12-09 12:38:33 +03:00
};
}];
};
in
project.xrefcheck