From 65765bda7e1a08d7c7c1bb5adf09f95b7452deff Mon Sep 17 00:00:00 2001 From: dkanada Date: Sun, 7 Jun 2020 14:37:08 +0900 Subject: rename abi pipeline --- .ci/azure-pipelines-abi.yml | 96 ++++++++++++++++++++++++++++++++++++++++++ .ci/azure-pipelines-compat.yml | 96 ------------------------------------------ .ci/azure-pipelines.yml | 16 +++---- 3 files changed, 104 insertions(+), 104 deletions(-) create mode 100644 .ci/azure-pipelines-abi.yml delete mode 100644 .ci/azure-pipelines-compat.yml diff --git a/.ci/azure-pipelines-abi.yml b/.ci/azure-pipelines-abi.yml new file mode 100644 index 0000000000..1ffaaf2b98 --- /dev/null +++ b/.ci/azure-pipelines-abi.yml @@ -0,0 +1,96 @@ +parameters: +- name: Packages + type: object + default: {} +- name: LinuxImage + type: string + default: "ubuntu-latest" +- name: DotNetSdkVersion + type: string + default: 3.1.100 + +jobs: + - job: CompatibilityCheck + displayName: Compatibility Check + pool: + vmImage: "${{ parameters.LinuxImage }}" + # only execute for pull requests + condition: and(succeeded(), variables['System.PullRequest.PullRequestNumber']) + strategy: + matrix: + ${{ each Package in parameters.Packages }}: + ${{ Package.key }}: + NugetPackageName: ${{ Package.value.NugetPackageName }} + AssemblyFileName: ${{ Package.value.AssemblyFileName }} + maxParallel: 2 + dependsOn: Build + steps: + - checkout: none + + - task: UseDotNet@2 + displayName: "Update DotNet" + inputs: + packageType: sdk + version: ${{ parameters.DotNetSdkVersion }} + + - task: DownloadPipelineArtifact@2 + displayName: "Download New Assembly Build Artifact" + inputs: + source: "current" + artifact: "$(NugetPackageName)" + path: "$(System.ArtifactsDirectory)/new-artifacts" + runVersion: "latest" + + - task: CopyFiles@2 + displayName: "Copy New Assembly Build Artifact" + inputs: + sourceFolder: $(System.ArtifactsDirectory)/new-artifacts + contents: "**/*.dll" + targetFolder: $(System.ArtifactsDirectory)/new-release + cleanTargetFolder: true + overWrite: true + flattenFolders: true + + - task: DownloadPipelineArtifact@2 + displayName: "Download Reference Assembly Build Artifact" + inputs: + source: "specific" + artifact: "$(NugetPackageName)" + path: "$(System.ArtifactsDirectory)/current-artifacts" + project: "$(System.TeamProjectId)" + pipeline: "$(System.DefinitionId)" + runVersion: "latestFromBranch" + runBranch: "refs/heads/$(System.PullRequest.TargetBranch)" + + - task: CopyFiles@2 + displayName: "Copy Reference Assembly Build Artifact" + inputs: + sourceFolder: $(System.ArtifactsDirectory)/current-artifacts + contents: "**/*.dll" + targetFolder: $(System.ArtifactsDirectory)/current-release + cleanTargetFolder: true + overWrite: true + flattenFolders: true + + - task: DownloadGitHubRelease@0 + displayName: "Download ABI Compatibility Check Tool" + inputs: + connection: Jellyfin Release Download + userRepository: EraYaN/dotnet-compatibility + defaultVersionType: "latest" + itemPattern: "**-ci.zip" + downloadPath: "$(System.ArtifactsDirectory)" + + - task: ExtractFiles@1 + displayName: "Extract ABI Compatibility Check Tool" + inputs: + archiveFilePatterns: "$(System.ArtifactsDirectory)/*-ci.zip" + destinationFolder: $(System.ArtifactsDirectory)/tools + cleanDestinationFolder: true + + # The `--warnings-only` switch will swallow the return code and not emit any errors. + - task: CmdLine@2 + displayName: "Execute ABI Compatibility Check Tool" + inputs: + script: "dotnet tools/CompatibilityCheckerCLI.dll current-release/$(AssemblyFileName) new-release/$(AssemblyFileName) --azure-pipelines --warnings-only" + workingDirectory: $(System.ArtifactsDirectory) diff --git a/.ci/azure-pipelines-compat.yml b/.ci/azure-pipelines-compat.yml deleted file mode 100644 index 1ffaaf2b98..0000000000 --- a/.ci/azure-pipelines-compat.yml +++ /dev/null @@ -1,96 +0,0 @@ -parameters: -- name: Packages - type: object - default: {} -- name: LinuxImage - type: string - default: "ubuntu-latest" -- name: DotNetSdkVersion - type: string - default: 3.1.100 - -jobs: - - job: CompatibilityCheck - displayName: Compatibility Check - pool: - vmImage: "${{ parameters.LinuxImage }}" - # only execute for pull requests - condition: and(succeeded(), variables['System.PullRequest.PullRequestNumber']) - strategy: - matrix: - ${{ each Package in parameters.Packages }}: - ${{ Package.key }}: - NugetPackageName: ${{ Package.value.NugetPackageName }} - AssemblyFileName: ${{ Package.value.AssemblyFileName }} - maxParallel: 2 - dependsOn: Build - steps: - - checkout: none - - - task: UseDotNet@2 - displayName: "Update DotNet" - inputs: - packageType: sdk - version: ${{ parameters.DotNetSdkVersion }} - - - task: DownloadPipelineArtifact@2 - displayName: "Download New Assembly Build Artifact" - inputs: - source: "current" - artifact: "$(NugetPackageName)" - path: "$(System.ArtifactsDirectory)/new-artifacts" - runVersion: "latest" - - - task: CopyFiles@2 - displayName: "Copy New Assembly Build Artifact" - inputs: - sourceFolder: $(System.ArtifactsDirectory)/new-artifacts - contents: "**/*.dll" - targetFolder: $(System.ArtifactsDirectory)/new-release - cleanTargetFolder: true - overWrite: true - flattenFolders: true - - - task: DownloadPipelineArtifact@2 - displayName: "Download Reference Assembly Build Artifact" - inputs: - source: "specific" - artifact: "$(NugetPackageName)" - path: "$(System.ArtifactsDirectory)/current-artifacts" - project: "$(System.TeamProjectId)" - pipeline: "$(System.DefinitionId)" - runVersion: "latestFromBranch" - runBranch: "refs/heads/$(System.PullRequest.TargetBranch)" - - - task: CopyFiles@2 - displayName: "Copy Reference Assembly Build Artifact" - inputs: - sourceFolder: $(System.ArtifactsDirectory)/current-artifacts - contents: "**/*.dll" - targetFolder: $(System.ArtifactsDirectory)/current-release - cleanTargetFolder: true - overWrite: true - flattenFolders: true - - - task: DownloadGitHubRelease@0 - displayName: "Download ABI Compatibility Check Tool" - inputs: - connection: Jellyfin Release Download - userRepository: EraYaN/dotnet-compatibility - defaultVersionType: "latest" - itemPattern: "**-ci.zip" - downloadPath: "$(System.ArtifactsDirectory)" - - - task: ExtractFiles@1 - displayName: "Extract ABI Compatibility Check Tool" - inputs: - archiveFilePatterns: "$(System.ArtifactsDirectory)/*-ci.zip" - destinationFolder: $(System.ArtifactsDirectory)/tools - cleanDestinationFolder: true - - # The `--warnings-only` switch will swallow the return code and not emit any errors. - - task: CmdLine@2 - displayName: "Execute ABI Compatibility Check Tool" - inputs: - script: "dotnet tools/CompatibilityCheckerCLI.dll current-release/$(AssemblyFileName) new-release/$(AssemblyFileName) --azure-pipelines --warnings-only" - workingDirectory: $(System.ArtifactsDirectory) diff --git a/.ci/azure-pipelines.yml b/.ci/azure-pipelines.yml index 1a439c7185..3283121e2e 100644 --- a/.ci/azure-pipelines.yml +++ b/.ci/azure-pipelines.yml @@ -2,9 +2,9 @@ name: $(Date:yyyyMMdd)$(Rev:.r) variables: - name: TestProjects - value: "tests/**/*Tests.csproj" + value: 'tests/**/*Tests.csproj' - name: RestoreBuildProjects - value: "Jellyfin.Server/Jellyfin.Server.csproj" + value: 'Jellyfin.Server/Jellyfin.Server.csproj' - name: DotNetSdkVersion value: 3.1.100 @@ -17,17 +17,17 @@ trigger: jobs: - template: azure-pipelines-main.yml parameters: - LinuxImage: "ubuntu-latest" + LinuxImage: 'ubuntu-latest' RestoreBuildProjects: $(RestoreBuildProjects) - template: azure-pipelines-test.yml parameters: ImageNames: - Linux: "ubuntu-latest" - Windows: "windows-latest" - macOS: "macos-latest" + Linux: 'ubuntu-latest' + Windows: 'windows-latest' + macOS: 'macos-latest' - - template: azure-pipelines-compat.yml + - template: azure-pipelines-abi.yml parameters: Packages: Naming: @@ -42,4 +42,4 @@ jobs: Common: NugetPackageName: Jellyfin.Common AssemblyFileName: MediaBrowser.Common.dll - LinuxImage: "ubuntu-latest" + LinuxImage: 'ubuntu-latest' -- cgit v1.2.3