|
15 | 15 |
|
16 | 16 | env:
|
17 | 17 | ###
|
18 |
| - ### NOTE: This configuration uses `build.sh` interface, which uses `default.nix` interface, which exposes the Nixpkgs Haskell Lib interface. |
| 18 | + ### NOTE: Table example of the provided build configuration keys |
| 19 | + ### Infrastructure uses `build.sh` API, which uses `default.nix` API, which exposes the almost literal Nixpkgs Haskell Lib API wich was abstracted for use outside of Nix language. |
19 | 20 | ###
|
20 | 21 | ### Documentation of this settings is mosly in `default.nix`, since most settings it Nixpkgs related
|
21 | 22 | ### and the other part of keys explained in `build.sh`, since those address external procedures aound the builds.
|
@@ -67,54 +68,59 @@ jobs:
|
67 | 68 | - name: Determined nix-build
|
68 | 69 | run: ./build.sh
|
69 | 70 |
|
| 71 | + |
70 | 72 | # NOTE: Example of customization using Nixpkgs Haskell Lib API
|
71 | 73 | build20:
|
72 | 74 | name: "Release-quality test, SDist, Optimization, Benchmark, Haddock, GHC 8.10.1, Nix shell"
|
73 | 75 | runs-on: ubuntu-latest
|
74 |
| - env: |
75 |
| - compiler: "ghc8101" |
76 |
| - buildFromSdist: "true" |
77 |
| - linkWithGold: "true" |
78 |
| - doHaddock: "true" |
79 |
| - doHyperlinkSource: "true" |
80 |
| - doBenchmark: "true" |
81 |
| - disableOptimization: "false" |
82 |
| - enableDeadCodeElimination: "true" |
83 |
| - generateOptparseApplicativeCompletions: "false" |
84 | 76 | steps:
|
85 | 77 | - name: Git checkout
|
86 | 78 | uses: actions/checkout@v2
|
87 | 79 | - name: Install Nix
|
88 | 80 | uses: cachix/install-nix-action@v10
|
89 | 81 | - name: Determined nix-build
|
| 82 | + env: |
| 83 | + compiler: "ghc8101" |
| 84 | + buildFromSdist: "true" |
| 85 | + linkWithGold: "true" |
| 86 | + doHaddock: "true" |
| 87 | + doHyperlinkSource: "true" |
| 88 | + disableOptimization: "false" |
| 89 | + enableDeadCodeElimination: "true" |
| 90 | + doBenchmark: "true" |
| 91 | + generateOptparseApplicativeCompletions: "false" |
90 | 92 | run: ./build.sh
|
91 | 93 |
|
| 94 | + |
92 | 95 | # NOTE: Build on latest stable NixOS release
|
93 | 96 | build30:
|
94 | 97 | name: "NixOS 20.03 stable channel, default GHC (8.8.3)"
|
95 | 98 | runs-on: ubuntu-latest
|
96 |
| - env: |
97 |
| - rev: "nixos-20.03" |
98 | 99 | steps:
|
99 | 100 | - name: Git checkout
|
100 | 101 | uses: actions/checkout@v2
|
101 | 102 | - name: Install Nix
|
102 | 103 | uses: cachix/install-nix-action@v10
|
103 | 104 | - name: Determined nix-build
|
| 105 | + env: |
| 106 | + rev: "nixos-20.03" |
104 | 107 | run: ./build.sh
|
105 | 108 |
|
| 109 | + |
106 | 110 | # NOTE: This would additionally test that the Nix shell customization of the project works.
|
107 | 111 | # By default *this setup provides local hoogle and generates database of project documentation
|
108 | 112 | build40:
|
109 |
| - name: "Test Nix-shell" |
| 113 | + name: "Nix-shell & supplied locall Hoogle DB" |
110 | 114 | runs-on: ubuntu-latest
|
111 | 115 | steps:
|
112 | 116 | - name: Git checkout
|
113 | 117 | uses: actions/checkout@v2
|
114 | 118 | - name: Install Nix
|
115 | 119 | uses: cachix/install-nix-action@v10
|
116 |
| - - name: Test Nix-shell |
117 |
| - run: nix-shell --command 'echo "Evaluated, loaded and entered $IN_NIX_SHELL Nix shell env."\n\n"Testing local Hoogle DB:" && hoogle True' |
| 120 | + - name: Nix-shell |
| 121 | + run: nix-shell --command 'echo "Evaluated, loaded and entered $IN_NIX_SHELL Nix shell env."' |
| 122 | + - name: Project Hoogle DB by Nix-shell |
| 123 | + run: nix-shell --command 'hoogle True' |
118 | 124 |
|
119 | 125 |
|
120 | 126 | # Other samples of tests used in the project see in the directory
|
0 commit comments