summary refs log tree commit diff
path: root/pkgs/build-support/dotnet/build-dotnet-module/hooks/dotnet-build-hook.sh
blob: 0e2650da51ca84f068ca1a37fb87ee013807c91a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# inherit arguments from derivation
dotnetBuildFlags=( ${dotnetBuildFlags[@]-} )

dotnetBuildHook() {
    echo "Executing dotnetBuildHook"

    runHook preBuild

    if [ "${enableParallelBuilding-}" ]; then
        maxCpuFlag="$NIX_BUILD_CORES"
        parallelBuildFlag="true"
    else
        maxCpuFlag="1"
        parallelBuildFlag="false"
    fi

    if [ "${version-}" ]; then
        versionFlag="-p:Version=${version-}"
    fi

    for project in ${projectFile[@]} ${testProjectFile[@]}; do
        env \
            dotnet build "$project" \
                -maxcpucount:$maxCpuFlag \
                -p:BuildInParallel=$parallelBuildFlag \
                -p:ContinuousIntegrationBuild=true \
                -p:Deterministic=true \
                --configuration "@buildType@" \
                --no-restore \
                ${versionFlag-} \
                "${dotnetBuildFlags[@]}"  \
                "${dotnetFlags[@]}"
    done

    runHook postBuild

    echo "Finished dotnetBuildHook"
}

if [[ -z "${dontDotnetBuild-}" && -z "${buildPhase-}" ]]; then
    buildPhase=dotnetBuildHook
fi