@@ -155,9 +155,41 @@ jobs:
155155 with :
156156 name : haskell-language-server-wrapper-${{ runner.OS }}${{env.EXE_EXT}}.${{ steps.compress_wrapper_binary.outputs.extension }}
157157 path : ${{ steps.compress_wrapper_binary.outputs.path }}
158+
159+ # generates a custom tarball with sources, used by `ghcup compile hls`
160+ src-tar :
161+ needs : build
162+ runs-on : ubuntu-18.04
163+
164+ steps :
165+ - uses : actions/checkout@v2
166+ with :
167+ submodules : true
168+
169+ - name : " Create source tarball"
170+ run : |
171+ mkdir src-dist
172+ git archive --prefix=haskell-language-server-${{ github.event.release.tag_name }}/ \
173+ --format=tar.gz \
174+ -o src-dist/haskell-language-server.tar.gz \
175+ HEAD
176+
177+ - uses : actions/upload-release-asset@v1.0.2
178+ env :
179+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
180+ with :
181+ upload_url : ${{ github.event.release.upload_url }}
182+ asset_path : src-dist/haskell-language-server.tar.gz
183+ asset_name : haskell-language-server-${{ github.event.release.tag_name }}-src.tar.gz
184+ asset_content_type : application/gzip
158185
186+ - uses : actions/upload-artifact@v2
187+ with :
188+ name : haskell-language-server-${{ github.event.release.tag_name }}-src.tar.gz
189+ path : src-dist/haskell-language-server.tar.gz
190+
159191 # this generates .gz tarfiles containing binaries for all GHC versions and OS's
160- # and a custom tarball with sources, used by ghcup
192+ # used by ` ghcup install hls`
161193 tar :
162194 needs : build
163195 runs-on : ubuntu-18.04
@@ -181,19 +213,6 @@ jobs:
181213 gzip -d *.gz
182214 fi
183215 tar -czpf haskell-language-server.tar.gz *
184-
185- - uses : actions/checkout@v2
186- with :
187- submodules : true
188-
189- - name : " Create source tarball"
190- if : matrix.os == 'Linux'
191- run : |
192- mkdir src-dist
193- git archive --prefix=haskell-language-server-${{ github.event.release.tag_name }}/ \
194- --format=tar.gz \
195- -o src-dist/haskell-language-server.tar.gz \
196- HEAD
197216
198217 - uses : actions/upload-release-asset@v1.0.2
199218 env :
@@ -204,28 +223,13 @@ jobs:
204223 asset_name : haskell-language-server-${{ matrix.os }}-${{ github.event.release.tag_name }}.tar.gz
205224 asset_content_type : application/gzip
206225
207- - uses : actions/upload-release-asset@v1.0.2
208- env :
209- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
210- with :
211- upload_url : ${{ github.event.release.upload_url }}
212- asset_path : src-dist/haskell-language-server.tar.gz
213- asset_name : haskell-language-server-${{ github.event.release.tag_name }}-src.tar.gz
214- asset_content_type : application/gzip
215-
216226 - uses : actions/upload-artifact@v2
217227 with :
218228 name : haskell-language-server-${{ matrix.os }}-${{ github.event.release.tag_name }}.tar.gz
219229 path : bin/haskell-language-server.tar.gz
220230
221- - if : matrix.os == 'Linux'
222- uses : actions/upload-artifact@v2
223- with :
224- name : haskell-language-server-${{ github.event.release.tag_name }}-src.tar.gz
225- path : src-dist/haskell-language-server.tar.gz
226-
227231 sha256sum :
228- needs : tar
232+ needs : [ tar, src-tar]
229233 runs-on : ubuntu-18.04
230234 steps :
231235 - uses : actions/download-artifact@v2
0 commit comments