27
27
matrix :
28
28
ghc : ["9.2.7", "9.6.2"]
29
29
cabal : ["3.10.1.0"]
30
- os : [macos-latest, windows-latest]
30
+ os : [macos-latest, windows-latest, ubuntu-latest ]
31
31
32
32
env :
33
33
# Modify this value to "invalidate" the cabal cache.
@@ -63,48 +63,18 @@ jobs:
63
63
g+${{ (startsWith(github.ref, 'refs/heads/gh-readonly-queue/') && github.run_id) || github.event.pull_request.number || github.ref }}
64
64
65
65
- name : Install Haskell
66
- uses : input-output-hk/setup- haskell@v1
66
+ uses : input-output-hk/actions/ haskell@latest
67
67
id : setup-haskell
68
68
with :
69
69
ghc-version : ${{ matrix.ghc }}
70
70
cabal-version : ${{ matrix.cabal }}
71
- pacman-packages : >
72
- mingw-w64-x86_64-pkg-config
73
- mingw-w64-x86_64-libsodium
74
- mingw-w64-x86_64-openssl
75
- base-devel
76
- autoconf-wrapper
77
- autoconf
78
- automake
79
- libtool
80
- make
81
71
82
- - uses : actions/checkout@v3
83
-
84
- - name : " [PowerShell] Add build script path"
85
- if : runner.os == 'Windows'
86
- shell : pwsh
87
- run : Add-Content $env:GITHUB_PATH "$(pwd)/.github/bin"
88
-
89
- - name : " [Bash] Add build script path"
90
- if : runner.os != 'Windows'
91
- run : echo "$(pwd)/.github/bin" >> $GITHUB_PATH
92
-
93
-
94
- - name : " MAC: Install build environment (brew)"
95
- if : runner.os == 'macOS'
96
- run : |
97
- brew install libsodium
98
-
99
- - name : " MAC: Install build environment (for secp256k1)"
100
- if : runner.os == 'macOS'
101
- run : brew install autoconf automake libtool
102
-
103
- - name : Install secp256k1
104
- uses : input-output-hk/setup-secp256k1@v1
72
+ - name : Install system dependencies
73
+ uses : input-output-hk/actions/base@latest
105
74
with :
106
- git-ref : ${{ env.SECP256K1_REF }}
107
- cache-version : ${{ env.SECP_CACHE_VERSION }}
75
+ use-sodium-vrf : true # default is true
76
+
77
+ - uses : actions/checkout@v3
108
78
109
79
- name : Cabal update
110
80
run : cabal update
118
88
119
89
- name : Build dry run
120
90
run : |
121
- # The tests call out to msys2 commands. We generally do not want to mix toolchains, so
122
- # we are very deliberate about only adding msys64 to the path where absolutely necessary.
123
- ${{ (runner.os == 'Windows' && '$env:PATH=("C:\msys64\mingw64\bin;{0}" -f $env:PATH)') || '' }}
124
91
cabal build all --dry-run --minimize-conflict-set
125
92
126
93
# For users who fork cardano-node and want to define a writable cache, then can set up their own
@@ -164,16 +131,10 @@ jobs:
164
131
165
132
- name : Build core components
166
133
run : |
167
- # The tests call out to msys2 commands. We generally do not want to mix toolchains, so
168
- # we are very deliberate about only adding msys64 to the path where absolutely necessary.
169
- ${{ (runner.os == 'Windows' && '$env:PATH=("C:\msys64\mingw64\bin;{0}" -f $env:PATH)') || '' }}
170
134
cabal build cardano-node cardano-cli cardano-node-chairman cardano-submit-api -j1
171
135
172
136
- name : Build remaining components
173
137
run : |
174
- # The tests call out to msys2 commands. We generally do not want to mix toolchains, so
175
- # we are very deliberate about only adding msys64 to the path where absolutely necessary.
176
- ${{ (runner.os == 'Windows' && '$env:PATH=("C:\msys64\mingw64\bin;{0}" -f $env:PATH)') || '' }}
177
138
cabal build all
178
139
179
140
- name : Run tests
@@ -182,9 +143,6 @@ jobs:
182
143
TMP : ${{ runner.temp }}
183
144
KEEP_WORKSPACE : 1
184
145
run : |
185
- # The tests call out to msys2 commands. We generally do not want to mix toolchains, so
186
- # we are very deliberate about only adding msys64 to the path where absolutely necessary.
187
- ${{ (runner.os == 'Windows' && '$env:PATH=("C:\msys64\mingw64\bin;{0}" -f $env:PATH)') || '' }}
188
146
cabal test cardano-testnet cardano-node cardano-node-chairman cardano-submit-api
189
147
190
148
- name : Tar failed tests workspaces
0 commit comments