New: Run integration tests for various mono versions

pull/976/head
ta264 5 years ago
parent 254a8ce64c
commit 4a2276225c

1
.gitattributes vendored

@ -3,6 +3,7 @@
# Explicitly set bash scripts to have unix endings
*.sh text eol=lf
macOS/Lidarr text eol=lf
# Custom for Visual Studio
*.cs diff=csharp

@ -140,7 +140,6 @@ stages:
pool:
vmImage: 'ubuntu-16.04'
steps:
- bash: sudo apt install dos2unix
- checkout: self
fetchDepth: 1
- task: DownloadPipelineArtifact@2
@ -282,12 +281,13 @@ stages:
testRunTitle: '$(osName) Unit Tests'
failTaskOnFailedTests: true
- stage: Integration_Automation
displayName: Integration / Automation
dependsOn: Package
- stage: Integration
displayName: Integration
dependsOn: Packages
jobs:
- job: Integration
- job: Integration_Native
displayName: Integration Native
strategy:
matrix:
Linux:
@ -357,6 +357,82 @@ stages:
failTaskOnFailedTests: true
displayName: Publish Test Results
- job: Integration_Docker
displayName: Integration Docker
strategy:
matrix:
mono508:
testName: 'Mono 5.8'
containerImage: mono:5.8
mono510:
testName: 'Mono 5.10'
containerImage: mono:5.10
mono516:
testName: 'Mono 5.16'
containerImage: mono:5.16
mono518:
testName: 'Mono 5.18'
containerImage: mono:5.18
mono520:
testName: 'Mono 5.20'
containerImage: mono:5.20
variables:
pattern: 'Lidarr.**.linux.tar.gz'
pool:
vmImage: 'ubuntu-16.04'
container: $[ variables['containerImage'] ]
timeoutInMinutes: 6
steps:
- bash: mono --version
displayName: Check Mono version
- checkout: none
- task: DownloadPipelineArtifact@2
displayName: Download Test Artifact
inputs:
buildType: 'current'
artifactName: WindowsTests
targetPath: $(testsFolder)
- task: DownloadPipelineArtifact@2
displayName: Download Build Artifact
inputs:
buildType: 'current'
artifactName: Packages
itemPattern: '**/$(pattern)'
targetPath: $(Build.ArtifactStagingDirectory)
- task: ExtractFiles@1
inputs:
archiveFilePatterns: '$(Build.ArtifactStagingDirectory)/**/$(pattern)'
destinationFolder: '$(Build.ArtifactStagingDirectory)/bin'
displayName: Extract Package
- bash: |
mkdir -p ./bin/
cp -r -v ${BUILD_ARTIFACTSTAGINGDIRECTORY}/bin/Lidarr/. ./bin/
ls -lR
displayName: Move Package Contents
- task: Bash@3
displayName: Run Integration Tests
inputs:
targetType: 'filePath'
filePath: '$(testsFolder)/test.sh'
arguments: Linux Integration Test
- task: PublishTestResults@2
inputs:
testResultsFormat: 'NUnit'
testResultsFiles: '**/TestResult.xml'
testRunTitle: '$(testName) Integration Tests'
failTaskOnFailedTests: true
displayName: Publish Test Results
- stage: Automation
displayName: Automation
dependsOn: Packages
jobs:
- job: Automation
strategy:
matrix:

@ -196,7 +196,6 @@ PackageMacOS()
echo "Adding Startup script"
cp ./macOS/Lidarr $outputFolderMacOS
dos2unix $outputFolderMacOS/Lidarr
echo "Copying Binaries"
cp -r $outputFolderLinux/* $outputFolderMacOS

Loading…
Cancel
Save