diff --git a/.gitattributes b/.gitattributes index 9838f5cec..b4206acbb 100644 --- a/.gitattributes +++ b/.gitattributes @@ -3,6 +3,7 @@ # Explicitly set bash scripts to have unix endings *.sh text eol=lf +macOS/Radarr text eol=lf # Custom for Visual Studio *.cs diff=csharp diff --git a/azure-pipelines.yml b/azure-pipelines.yml index ab83fb511..bee17a982 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -161,7 +161,6 @@ stages: pool: vmImage: 'ubuntu-16.04' steps: - - bash: sudo apt-get install dos2unix - checkout: self fetchDepth: 1 - task: DownloadPipelineArtifact@2 @@ -300,7 +299,8 @@ stages: dependsOn: Package jobs: - - job: Integration + - job: Integration_Native + displayName: Integration Native strategy: matrix: Linux: @@ -374,6 +374,88 @@ stages: failTaskOnFailedTests: true displayName: Publish Test Results + - job: Integration_Docker + displayName: Integration Docker + strategy: + matrix: + mono504: + testName: 'Mono 5.4' + containerImage: mono:5.4 + mono508: + testName: 'Mono 5.8' + containerImage: mono:5.8 + mono510: + testName: 'Mono 5.10' + containerImage: mono:5.10 + mono512: + testName: 'Mono 5.12' + containerImage: mono:5.12 + mono514: + testName: 'Mono 5.14' + containerImage: mono:5.14 + 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: 'Radarr.**.linux.tar.gz' + + pool: + vmImage: 'ubuntu-16.04' + + container: $[ variables['containerImage'] ] + + steps: + - bash: mono --version + displayName: Check Mono version + - task: UseDotNet@2 + displayName: 'Install .net core 2.2' + inputs: + version: $(dotnetVersion) + - checkout: none + - task: DownloadPipelineArtifact@2 + displayName: Download Test Artifact + inputs: + buildType: 'current' + artifactName: 'LinuxTests' + 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/Radarr/. ./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 + - job: Automation strategy: matrix: diff --git a/build.sh b/build.sh index 90dc5c337..9a72a7fa8 100755 --- a/build.sh +++ b/build.sh @@ -153,7 +153,6 @@ PackageMacOS() echo "Adding Startup script" cp ./macOS/Radarr $folder - dos2unix $folder/Radarr echo "Removing Service helpers" rm -f $folder/ServiceUninstall.*