diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml index 6af694519..130f549fa 100644 --- a/.azure-pipelines.yml +++ b/.azure-pipelines.yml @@ -20,7 +20,8 @@ jobs: parameters: target: "x86_64-unknown-linux-gnu" executableName: "texlab" - artifactName: "texlab-x86_64-linux" + archiveFile: "texlab-x86_64-linux.tar.gz" + archiveType: "tar" coverage: true - job: Windows pool: @@ -40,7 +41,8 @@ jobs: parameters: target: "x86_64-pc-windows-msvc" executableName: "texlab.exe" - artifactName: "texlab-x86_64-windows.exe" + archiveFile: "texlab-x86_64-windows.zip" + archiveType: "zip" - job: macOS pool: vmImage: "macos-10.14" @@ -61,7 +63,8 @@ jobs: parameters: target: "x86_64-apple-darwin" executableName: "texlab" - artifactName: "texlab-x86_64-darwin" + archiveFile: "texlab-x86_64-macos.tar.gz" + archiveType: "tar" - job: Publish dependsOn: - Linux diff --git a/.build-steps.yml b/.build-steps.yml index d517b1a1a..165acd277 100644 --- a/.build-steps.yml +++ b/.build-steps.yml @@ -1,7 +1,8 @@ parameters: target: "" executableName: "" - artifactName: "" + archiveFile: "" + archiveType: "" coverage: false steps: @@ -46,9 +47,17 @@ steps: displayName: "Publish coverage report" - bash: | cargo build --release --target ${{ parameters.target }} - cp target/${{ parameters.target }}/${{ parameters.executableName }} $(Build.ArtifactStagingDirectory)/${{ parameters.artifactName }} condition: and(succeeded(), eq(variables['isReleaseBuild'], 'true')) displayName: "Build release artifact" + - task: ArchiveFiles@2 + inputs: + rootFolderOrFile: "target/${{ parameters.target }}/${{ parameters.executableName }}" + archiveType: ${{ parameters.archiveType }} + tarCompression: "gz" + archiveFile: "$(Build.ArtifactStagingDirectory)/${{ parameters.archiveFile }}" + condition: and(succeeded(), eq(variables['isReleaseBuild'], 'true')) + displayName: "Compress release artifact" - publish: $(Build.ArtifactStagingDirectory) - artifact: ${{ parameters.artifactName }} + artifact: ${{ parameters.archiveFile }} condition: and(succeeded(), eq(variables['isReleaseBuild'], 'true')) + displayName: "Publish release artifact" diff --git a/README.md b/README.md index 651299c80..15a40ab0a 100644 --- a/README.md +++ b/README.md @@ -44,11 +44,10 @@ You can create a debug build by building the server without the `--release` flag The resulting build can be used with the [Visual Studio Code extension](https://github.com/latex-lsp/texlab-vscode) by creating a symbolic link: -| Platform | Symlink | -| ----------- | ---------------------------------------------------------------------------------- | -| Windows x64 | `texlab/target/debug/texlab.exe -> texlab-vscode/server/texlab-x86_64-windows.exe` | -| macOS x64 | `texlab/target/debug/texlab -> texlab-vscode/server/texlab-x86_64-darwin` | -| Linux x64 | `texlab/target/debug/texlab -> texlab-vscode/server/texlab-x86_64-linux` | +| Platform | Symlink | +| ---------------- | ------------------------------------------------------------------- | +| Windows x64 | `texlab/target/debug/texlab.exe -> texlab-vscode/server/texlab.exe` | +| Linux, macOS x64 | `texlab/target/debug/texlab -> texlab-vscode/server/texlab` | TexLab has an extensive test suite of unit and integration tests. You can run them by executing