Skip to content
This repository has been archived by the owner on Oct 13, 2024. It is now read-only.

Download and Release Roslyn #10

Download and Release Roslyn

Download and Release Roslyn #10

name: Download and Release Roslyn
on:
workflow_dispatch:
inputs:
version:
type: string
description: 'Version to download and release'
default: '4.9.0-3.23604.10'
jobs:
download:
runs-on: ubuntu-latest
strategy:
matrix:
rid: ['osx-x64', 'osx-arm64', 'linux-x64', 'linux-arm64', 'alpine-x64', 'alpine-arm64', 'win-x64', 'win-x86', 'win-arm64']
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
global-json-file: server/global.json
- name: Download for ${{ matrix.rid }}
run: >
dotnet restore ./server
/p:PackageName=microsoft.codeanalysis.languageserver.${{ matrix.rid }}
/p:PackageVersion=${{ github.event.inputs.version }}
- name: Package downloaded files
run: >
tar -czvf roslyn-${{ github.event.inputs.version }}-${{ matrix.rid }}.tar.gz
-C server/out/microsoft.codeanalysis.languageserver.${{ matrix.rid }}/${{ github.event.inputs.version }}/content/LanguageServer/${{ matrix.rid }} .
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.rid }}
path: roslyn-${{ github.event.inputs.version }}-${{ matrix.rid }}.tar.gz
if-no-files-found: error
release:
runs-on: ubuntu-latest
needs: download
permissions:
contents: write
steps:
- name: Download artifacts
uses: actions/download-artifact@v3
- name: Create Release and Upload Artifact
uses: softprops/action-gh-release@v1
with:
name: Roslyn Language Server ${{ github.event.inputs.version }}
tag_name: ${{ github.event.inputs.version }}
files: |
win-x64/roslyn-${{ github.event.inputs.version }}-win-x64.tar.gz
win-x86/roslyn-${{ github.event.inputs.version }}-win-x86.tar.gz
win-arm64/roslyn-${{ github.event.inputs.version }}-win-arm64.tar.gz
osx-x64/roslyn-${{ github.event.inputs.version }}-osx-x64.tar.gz
osx-arm64/roslyn-${{ github.event.inputs.version }}-osx-arm64.tar.gz
linux-x64/roslyn-${{ github.event.inputs.version }}-linux-x64.tar.gz
linux-arm64/roslyn-${{ github.event.inputs.version }}-linux-arm64.tar.gz
alpine-x64/roslyn-${{ github.event.inputs.version }}-alpine-x64.tar.gz
alpine-arm64/roslyn-${{ github.event.inputs.version }}-alpine-arm64.tar.gz