aboutsummaryrefslogtreecommitdiff
path: root/repro-7998.sh
blob: b022d31abbde2f83e970bdd0db32429b522723ca (plain)
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
#!/usr/bin/env bash
set -eux
LOG_FILE=/tmp/repro-7998.log
rm -f "$LOG_FILE"
for i in {1..8}; do
  (
    while true; do
      nix-build \
        --argstr uuid $(uuidgen) \
        --arg drvCount $((RANDOM % 256)) \
        -E '
          { uuid ? "00000000-0000-0000-0000-000000000000", drvCount ? 0 }:
          with import <nixpkgs> { };
          let
            mkDrv = name: buildInputs:
              stdenv.mkDerivation {
                inherit name;
                inherit buildInputs;
                unpackPhase = "date +\"${uuid} %F %T\" >date.txt";
                installPhase = "mkdir -p $out; cp date.txt $out/";
              };
            mkDrvs = n:
              let
                name = "repro-7998-${toString n}";
                buildInputs = if n == 0 then [ ] else [ (mkDrvs (n - 1)) ];
              in mkDrv name buildInputs;
          in mkDrvs drvCount
        '
    done 2>&1 | tee -a "$LOG_FILE"
  ) &
done
read # Press enter to stop
pkill -KILL -f repro-7998.sh