56
56
GHC_VER : ${{ matrix.ghc }}
57
57
run : |
58
58
echo "EXE_EXT=.exe" >> $GITHUB_ENV
59
+ # We normalize windows+choco ghc version 8.10.2.2
59
60
GHC_VER=$(echo $GHC_VER | sed 's/8.10.2.2/8.10.2/g')
60
61
echo "GHC_VERSION=$GHC_VER" >> $GITHUB_ENV
61
62
74
75
run : |
75
76
echo "GHC_VERSION=$GHC_VER" >> $GITHUB_ENV
76
77
77
- - name : Tentative Workaround for GHC 8.10.5 on macOS
78
+ - name : Workaround for GHC 8.10.5 on macOS
78
79
if : matrix.os == 'macOS-latest' && matrix.ghc == '8.10.5'
79
80
run : |
80
81
echo "# uninstalling CommandLineTools (see https://github.com/haskell/haskell-language-server/issues/1913#issuecomment-861667786)"
89
90
- name : Compress Server Binary
90
91
id : compress_server_binary
91
92
run : |
92
- # We normalize windows+choco ghc version 8.10.2.2
93
93
HLS_BUILD=$(find dist-newstyle \( -name 'hls' -o -name 'hls.exe' \) -type f)
94
94
HLS=haskell-language-server-${{env.GHC_VERSION}}
95
95
mv $HLS_BUILD $HLS${{env.EXE_EXT}}
@@ -167,18 +167,23 @@ jobs:
167
167
runs-on : ubuntu-18.04
168
168
strategy :
169
169
matrix :
170
- os : [Linux, macOS]
170
+ os : [Linux, macOS, Windows ]
171
171
steps :
172
172
- uses : actions/download-artifact@v2
173
173
174
174
- run : |
175
175
# move the binaries for the specific platform into bin/
176
176
mkdir bin
177
- mv haskell-language-server-${{ matrix.os }}-*.gz/haskell-language-server-*.gz bin
178
- mv haskell-language-server-wrapper-${{ matrix.os }}.gz/haskell-language-server-wrapper.gz bin
177
+ mv haskell-language-server-${{ matrix.os }}-*/* bin
178
+ mv haskell-language-server-wrapper-${{ matrix.os }}.*/* bin
179
179
# decompress them
180
- gzip -d bin/*.gz
181
180
cd bin
181
+ if [[ "${{ matrix.os }}" == "Windows" ]]; then
182
+ 7z x "*.zip"
183
+ rm *.zip
184
+ else
185
+ gzip -d *.gz
186
+ fi
182
187
tar -czpf haskell-language-server.tar.gz *
183
188
184
189
- uses : actions/upload-release-asset@v1.0.2
@@ -189,3 +194,34 @@ jobs:
189
194
asset_path : bin/haskell-language-server.tar.gz
190
195
asset_name : haskell-language-server-${{ matrix.os }}-${{ github.event.release.tag_name }}.tar.gz
191
196
asset_content_type : application/gzip
197
+
198
+ - uses : actions/upload-artifact@v2
199
+ with :
200
+ name : haskell-language-server-${{ matrix.os }}-${{ github.event.release.tag_name }}.tar.gz
201
+ path : bin/haskell-language-server.tar.gz
202
+
203
+ sha256sum :
204
+ needs : tar
205
+ runs-on : ubuntu-18.04
206
+ steps :
207
+ - uses : actions/download-artifact@v2
208
+
209
+ - run : |
210
+ # generate sha256 sums for all current artifacts
211
+ sha256sum --tag haskell-language-server*/* >> SHA256SUMS
212
+ # we clean up tags to match the release file names
213
+ sed -i 's/\/.*)/)/g' SHA256SUMS
214
+
215
+ - uses : actions/upload-release-asset@v1.0.2
216
+ env :
217
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
218
+ with :
219
+ upload_url : ${{ github.event.release.upload_url }}
220
+ asset_path : SHA256SUMS
221
+ asset_name : SHA256SUMS
222
+ asset_content_type : plain/text
223
+
224
+ - uses : actions/upload-artifact@v2
225
+ with :
226
+ name : SHA256SUMS
227
+ path : SHA256SUMS
0 commit comments