Files
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

44 lines
1.1 KiB
Nix

# Tests the `projectReferences = [ ... ];` feature of buildDotnetModule.
# The `library` derivation exposes a .nupkg, which is then consumed by the `application` derivation.
# https://nixos.org/manual/nixpkgs/unstable/index.html#packaging-a-dotnet-application
{
lib,
dotnet-sdk,
buildPackages, # buildDotnetModule
runCommand,
}:
let
inherit (buildPackages) buildDotnetModule;
nugetDeps = ./nuget-deps.json;
# Specify the TargetFramework via an environment variable so that we don't
# have to update the .csproj files when updating dotnet-sdk
TargetFramework = "net${lib.versions.majorMinor (lib.getVersion dotnet-sdk)}";
library = buildDotnetModule {
name = "project-references-test-library";
src = ./library;
inherit nugetDeps;
env.TargetFramework = TargetFramework;
packNupkg = true;
};
application = buildDotnetModule {
name = "project-references-test-application";
src = ./application;
inherit nugetDeps;
env.TargetFramework = TargetFramework;
projectReferences = [ library ];
};
in
runCommand "project-references-test" { } ''
${application}/bin/Application
mkdir $out
''