@@ -38,108 +38,108 @@ jobs:
38
38
- run : |
39
39
bazelisk test buildifier:buildifier_test
40
40
41
- test-nixpkgs :
42
- name : Build & Test - Nixpkgs
43
- strategy :
44
- fail-fast : false
45
- matrix :
46
- os : [ubuntu-latest, macos-13]
47
- module : [rules_haskell, rules_haskell_nix, rules_haskell_tests]
48
- bzlmod : [true, false]
49
- ghc :
50
- - 9.4.6
51
- - 9.6.5
52
- - 9.8.1
53
- exclude :
54
- - module : rules_haskell_nix
41
+ # test-nixpkgs:
42
+ # name: Build & Test - Nixpkgs
43
+ # strategy:
44
+ # fail-fast: false
45
+ # matrix:
46
+ # os: [ubuntu-latest, macos-13]
47
+ # module: [rules_haskell, rules_haskell_nix, rules_haskell_tests]
48
+ # bzlmod: [true, false]
49
+ # ghc:
50
+ # - 9.4.6
51
+ # - 9.6.5
52
+ # - 9.8.1
53
+ # exclude:
54
+ # - module: rules_haskell_nix
55
55
56
- bzlmod : false
57
- # TODO: in a MODULE.bazel file we declare version specific dependencies, would need to use stack snapshot json
58
- # and stack config per GHC version
59
- - ghc : 9.8.1
60
- bzlmod : true
61
- - ghc : 9.6.5
62
- bzlmod : true
63
- runs-on : ${{ matrix.os }}
64
- env :
65
- NIX_SHELL_ARGS : --arg docTools false --argstr ghcVersion ${{ matrix.ghc }}
66
- steps :
67
- - uses : actions/checkout@v4
68
- - uses : ./.github/actions/free_disk_space_on_linux
69
- - name : Mount Bazel cache
70
- uses : actions/cache@v4
71
- with :
72
- path : ~/repo-cache
73
- key : repo-cache-${{ runner.os }}-nixpkgs-${{ env.cache-version }}
74
- - uses : cachix/install-nix-action@v30
75
- with :
76
- nix_path : nixpkgs=./nixpkgs/default.nix
77
- extra_nix_config : |
78
- trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ=
79
- extra-substituters = https://cache.iog.io
80
- - uses : tweag/configure-bazel-remote-cache-auth@v0
81
- with :
82
- buildbuddy_api_key : ${{ secrets.BUILDBUDDY_API_KEY }}
83
- bazelrc_path : .bazelrc.auth
84
- - uses : ./.github/actions/set_tcp_keepalive_time
85
- - uses : extractions/netrc@v2
86
- with :
87
- machine : api.github.com
88
- password : ${{ secrets.GITHUB_TOKEN }}
89
- - name : Configure
90
- run : |
91
- case ${{ runner.os }} in
92
- macOS) BUILD_CONFIG=macos-nixpkgs;;
93
- Linux) BUILD_CONFIG=linux-nixpkgs;;
94
- esac
95
- cat >>.bazelrc.local <<EOF
96
- common --config=ci
97
- build --config=$BUILD_CONFIG
98
- common --enable_bzlmod=${{ matrix.bzlmod }}
99
- EOF
100
- cp .bazelrc.local rules_haskell_nix
101
- cp .bazelrc.local rules_haskell_tests
102
- - name : Build & test - rules_haskell
103
- if : matrix.module == 'rules_haskell'
104
- uses : tweag/run-nix-shell@v0
105
- with :
106
- options : ${{ env.NIX_SHELL_ARGS }}
107
- run : |
108
- bazel test //...
109
- bazel build //docs:api_html
110
- bazel build //docs:guide_html
111
- - name : Build & test - rules_haskell_nix
112
- if : matrix.module == 'rules_haskell_nix'
113
- uses : tweag/run-nix-shell@v0
114
- with :
115
- options : ${{ env.NIX_SHELL_ARGS }}
116
- working-directory : rules_haskell_nix
117
- run : bazel test //...
118
- - name : Build & test - rules_haskell_tests
119
- if : matrix.module == 'rules_haskell_tests'
120
- uses : tweag/run-nix-shell@v0
121
- with :
122
- options : ${{ env.NIX_SHELL_ARGS }}
123
- working-directory : rules_haskell_tests
124
- run : |
125
- # XXX run start script `--with-bzlmod=true` when supported
126
- if ! ${{ matrix.bzlmod }}; then
127
- ./tests/run-start-script.sh --use-nix --with-bzlmod=${{ matrix.bzlmod }}
128
- fi
129
- bazel build //tests:run-tests
130
- # Shutdown Bazel to free up memory
131
- # https://github.com/tweag/rules_haskell/issues/2089.
132
- bazel shutdown
133
- # Execute the tests dumping out memory/process information before and after each test.
134
- RHT_PRINT_MEMORY=true ./bazel-ci-bin/tests/run-tests
135
- bazel coverage //...
56
+ # bzlmod: false
57
+ # # TODO: in a MODULE.bazel file we declare version specific dependencies, would need to use stack snapshot json
58
+ # # and stack config per GHC version
59
+ # - ghc: 9.8.1
60
+ # bzlmod: true
61
+ # - ghc: 9.6.5
62
+ # bzlmod: true
63
+ # runs-on: ${{ matrix.os }}
64
+ # env:
65
+ # NIX_SHELL_ARGS: --arg docTools false --argstr ghcVersion ${{ matrix.ghc }}
66
+ # steps:
67
+ # - uses: actions/checkout@v4
68
+ # - uses: ./.github/actions/free_disk_space_on_linux
69
+ # - name: Mount Bazel cache
70
+ # uses: actions/cache@v4
71
+ # with:
72
+ # path: ~/repo-cache
73
+ # key: repo-cache-${{ runner.os }}-nixpkgs-${{ env.cache-version }}
74
+ # - uses: cachix/install-nix-action@v30
75
+ # with:
76
+ # nix_path: nixpkgs=./nixpkgs/default.nix
77
+ # extra_nix_config: |
78
+ # trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ=
79
+ # extra-substituters = https://cache.iog.io
80
+ # - uses: tweag/configure-bazel-remote-cache-auth@v0
81
+ # with:
82
+ # buildbuddy_api_key: ${{ secrets.BUILDBUDDY_API_KEY }}
83
+ # bazelrc_path: .bazelrc.auth
84
+ # - uses: ./.github/actions/set_tcp_keepalive_time
85
+ # - uses: extractions/netrc@v2
86
+ # with:
87
+ # machine: api.github.com
88
+ # password: ${{ secrets.GITHUB_TOKEN }}
89
+ # - name: Configure
90
+ # run: |
91
+ # case ${{ runner.os }} in
92
+ # macOS) BUILD_CONFIG=macos-nixpkgs;;
93
+ # Linux) BUILD_CONFIG=linux-nixpkgs;;
94
+ # esac
95
+ # cat >>.bazelrc.local <<EOF
96
+ # common --config=ci
97
+ # build --config=$BUILD_CONFIG
98
+ # common --enable_bzlmod=${{ matrix.bzlmod }}
99
+ # EOF
100
+ # cp .bazelrc.local rules_haskell_nix
101
+ # cp .bazelrc.local rules_haskell_tests
102
+ # - name: Build & test - rules_haskell
103
+ # if: matrix.module == 'rules_haskell'
104
+ # uses: tweag/run-nix-shell@v0
105
+ # with:
106
+ # options: ${{ env.NIX_SHELL_ARGS }}
107
+ # run: |
108
+ # bazel test //...
109
+ # bazel build //docs:api_html
110
+ # bazel build //docs:guide_html
111
+ # - name: Build & test - rules_haskell_nix
112
+ # if: matrix.module == 'rules_haskell_nix'
113
+ # uses: tweag/run-nix-shell@v0
114
+ # with:
115
+ # options: ${{ env.NIX_SHELL_ARGS }}
116
+ # working-directory: rules_haskell_nix
117
+ # run: bazel test //...
118
+ # - name: Build & test - rules_haskell_tests
119
+ # if: matrix.module == 'rules_haskell_tests'
120
+ # uses: tweag/run-nix-shell@v0
121
+ # with:
122
+ # options: ${{ env.NIX_SHELL_ARGS }}
123
+ # working-directory: rules_haskell_tests
124
+ # run: |
125
+ # # XXX run start script `--with-bzlmod=true` when supported
126
+ # if ! ${{ matrix.bzlmod }}; then
127
+ # ./tests/run-start-script.sh --use-nix --with-bzlmod=${{ matrix.bzlmod }}
128
+ # fi
129
+ # bazel build //tests:run-tests
130
+ # # Shutdown Bazel to free up memory
131
+ # # https://github.com/tweag/rules_haskell/issues/2089.
132
+ # bazel shutdown
133
+ # # Execute the tests dumping out memory/process information before and after each test.
134
+ # RHT_PRINT_MEMORY=true ./bazel-ci-bin/tests/run-tests
135
+ # bazel coverage //...
136
136
137
137
test-bindist :
138
138
name : Build & Test - bindist
139
139
strategy :
140
140
fail-fast : false
141
141
matrix :
142
- os : [ubuntu-latest, macos-13, windows-latest]
142
+ os : [ windows-latest]
143
143
module : [rules_haskell, rules_haskell_tests]
144
144
bzlmod : [true, false]
145
145
ghc :
@@ -218,6 +218,12 @@ jobs:
218
218
# Quote the package specifier so that it works on Windows
219
219
bazelisk test "//..."
220
220
221
+ - name : Setup tmate session
222
+ if : ${{ failure() }}
223
+ uses : mxschmitt/action-tmate@v3
224
+ with :
225
+ limit-access-to-actor : true
226
+
221
227
- name : Build & test - rules_haskell_tests
222
228
if : matrix.module == 'rules_haskell_tests'
223
229
shell : bash
@@ -256,7 +262,7 @@ jobs:
256
262
runs-on : ubuntu-latest
257
263
needs :
258
264
- lint
259
- - test-nixpkgs
265
+ # - test-nixpkgs
260
266
- test-bindist
261
267
if : ${{ always() }}
262
268
steps :
0 commit comments