|
|
@ -1,6 +1,6 @@
|
|
|
|
parameters:
|
|
|
|
parameters:
|
|
|
|
LinuxImage: "ubuntu-latest"
|
|
|
|
LinuxImage: 'ubuntu-latest'
|
|
|
|
RestoreBuildProjects: "Jellyfin.Server/Jellyfin.Server.csproj"
|
|
|
|
RestoreBuildProjects: 'Jellyfin.Server/Jellyfin.Server.csproj'
|
|
|
|
DotNetSdkVersion: 3.1.100
|
|
|
|
DotNetSdkVersion: 3.1.100
|
|
|
|
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
jobs:
|
|
|
@ -13,7 +13,7 @@ jobs:
|
|
|
|
Debug:
|
|
|
|
Debug:
|
|
|
|
BuildConfiguration: Debug
|
|
|
|
BuildConfiguration: Debug
|
|
|
|
pool:
|
|
|
|
pool:
|
|
|
|
vmImage: "${{ parameters.LinuxImage }}"
|
|
|
|
vmImage: '${{ parameters.LinuxImage }}'
|
|
|
|
steps:
|
|
|
|
steps:
|
|
|
|
- checkout: self
|
|
|
|
- checkout: self
|
|
|
|
clean: true
|
|
|
|
clean: true
|
|
|
@ -21,7 +21,7 @@ jobs:
|
|
|
|
persistCredentials: true
|
|
|
|
persistCredentials: true
|
|
|
|
|
|
|
|
|
|
|
|
- task: DownloadPipelineArtifact@2
|
|
|
|
- task: DownloadPipelineArtifact@2
|
|
|
|
displayName: "Download Web Branch"
|
|
|
|
displayName: 'Download Web Branch'
|
|
|
|
condition: in(variables['Build.Reason'], 'IndividualCI', 'BatchedCI', 'BuildCompletion')
|
|
|
|
condition: in(variables['Build.Reason'], 'IndividualCI', 'BatchedCI', 'BuildCompletion')
|
|
|
|
inputs:
|
|
|
|
inputs:
|
|
|
|
path: '$(Agent.TempDirectory)'
|
|
|
|
path: '$(Agent.TempDirectory)'
|
|
|
@ -32,7 +32,7 @@ jobs:
|
|
|
|
runBranch: variables['Build.SourceBranch']
|
|
|
|
runBranch: variables['Build.SourceBranch']
|
|
|
|
|
|
|
|
|
|
|
|
- task: DownloadPipelineArtifact@2
|
|
|
|
- task: DownloadPipelineArtifact@2
|
|
|
|
displayName: "Download Web Target"
|
|
|
|
displayName: 'Download Web Target'
|
|
|
|
condition: eq(variables['Build.Reason'], 'PullRequest')
|
|
|
|
condition: eq(variables['Build.Reason'], 'PullRequest')
|
|
|
|
inputs:
|
|
|
|
inputs:
|
|
|
|
path: '$(Agent.TempDirectory)'
|
|
|
|
path: '$(Agent.TempDirectory)'
|
|
|
@ -43,51 +43,51 @@ jobs:
|
|
|
|
runBranch: variables['System.PullRequest.TargetBranch']
|
|
|
|
runBranch: variables['System.PullRequest.TargetBranch']
|
|
|
|
|
|
|
|
|
|
|
|
- task: ExtractFiles@1
|
|
|
|
- task: ExtractFiles@1
|
|
|
|
displayName: "Extract Web Client"
|
|
|
|
displayName: 'Extract Web Client'
|
|
|
|
inputs:
|
|
|
|
inputs:
|
|
|
|
archiveFilePatterns: '$(Agent.TempDirectory)/*.zip'
|
|
|
|
archiveFilePatterns: '$(Agent.TempDirectory)/*.zip'
|
|
|
|
destinationFolder: '$(Build.SourcesDirectory)/MediaBrowser.WebDashboard'
|
|
|
|
destinationFolder: '$(Build.SourcesDirectory)/MediaBrowser.WebDashboard'
|
|
|
|
cleanDestinationFolder: false
|
|
|
|
cleanDestinationFolder: false
|
|
|
|
|
|
|
|
|
|
|
|
- task: UseDotNet@2
|
|
|
|
- task: UseDotNet@2
|
|
|
|
displayName: "Update DotNet"
|
|
|
|
displayName: 'Update DotNet'
|
|
|
|
inputs:
|
|
|
|
inputs:
|
|
|
|
packageType: sdk
|
|
|
|
packageType: sdk
|
|
|
|
version: ${{ parameters.DotNetSdkVersion }}
|
|
|
|
version: ${{ parameters.DotNetSdkVersion }}
|
|
|
|
|
|
|
|
|
|
|
|
- task: DotNetCoreCLI@2
|
|
|
|
- task: DotNetCoreCLI@2
|
|
|
|
displayName: "Publish Server"
|
|
|
|
displayName: 'Publish Server'
|
|
|
|
inputs:
|
|
|
|
inputs:
|
|
|
|
command: publish
|
|
|
|
command: publish
|
|
|
|
publishWebProjects: false
|
|
|
|
publishWebProjects: false
|
|
|
|
projects: "${{ parameters.RestoreBuildProjects }}"
|
|
|
|
projects: '${{ parameters.RestoreBuildProjects }}'
|
|
|
|
arguments: "--configuration $(BuildConfiguration) --output $(Build.ArtifactStagingDirectory)"
|
|
|
|
arguments: '--configuration $(BuildConfiguration) --output $(Build.ArtifactStagingDirectory)'
|
|
|
|
zipAfterPublish: false
|
|
|
|
zipAfterPublish: false
|
|
|
|
|
|
|
|
|
|
|
|
- task: PublishPipelineArtifact@0
|
|
|
|
- task: PublishPipelineArtifact@0
|
|
|
|
displayName: "Publish Artifact Naming"
|
|
|
|
displayName: 'Publish Artifact Naming'
|
|
|
|
condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release'))
|
|
|
|
condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release'))
|
|
|
|
inputs:
|
|
|
|
inputs:
|
|
|
|
targetPath: "$(build.ArtifactStagingDirectory)/Jellyfin.Server/Emby.Naming.dll"
|
|
|
|
targetPath: '$(build.ArtifactStagingDirectory)/Jellyfin.Server/Emby.Naming.dll'
|
|
|
|
artifactName: "Jellyfin.Naming"
|
|
|
|
artifactName: 'Jellyfin.Naming'
|
|
|
|
|
|
|
|
|
|
|
|
- task: PublishPipelineArtifact@0
|
|
|
|
- task: PublishPipelineArtifact@0
|
|
|
|
displayName: "Publish Artifact Controller"
|
|
|
|
displayName: 'Publish Artifact Controller'
|
|
|
|
condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release'))
|
|
|
|
condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release'))
|
|
|
|
inputs:
|
|
|
|
inputs:
|
|
|
|
targetPath: "$(build.ArtifactStagingDirectory)/Jellyfin.Server/MediaBrowser.Controller.dll"
|
|
|
|
targetPath: '$(build.ArtifactStagingDirectory)/Jellyfin.Server/MediaBrowser.Controller.dll'
|
|
|
|
artifactName: "Jellyfin.Controller"
|
|
|
|
artifactName: 'Jellyfin.Controller'
|
|
|
|
|
|
|
|
|
|
|
|
- task: PublishPipelineArtifact@0
|
|
|
|
- task: PublishPipelineArtifact@0
|
|
|
|
displayName: "Publish Artifact Model"
|
|
|
|
displayName: 'Publish Artifact Model'
|
|
|
|
condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release'))
|
|
|
|
condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release'))
|
|
|
|
inputs:
|
|
|
|
inputs:
|
|
|
|
targetPath: "$(build.ArtifactStagingDirectory)/Jellyfin.Server/MediaBrowser.Model.dll"
|
|
|
|
targetPath: '$(build.ArtifactStagingDirectory)/Jellyfin.Server/MediaBrowser.Model.dll'
|
|
|
|
artifactName: "Jellyfin.Model"
|
|
|
|
artifactName: 'Jellyfin.Model'
|
|
|
|
|
|
|
|
|
|
|
|
- task: PublishPipelineArtifact@0
|
|
|
|
- task: PublishPipelineArtifact@0
|
|
|
|
displayName: "Publish Artifact Common"
|
|
|
|
displayName: 'Publish Artifact Common'
|
|
|
|
condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release'))
|
|
|
|
condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release'))
|
|
|
|
inputs:
|
|
|
|
inputs:
|
|
|
|
targetPath: "$(build.ArtifactStagingDirectory)/Jellyfin.Server/MediaBrowser.Common.dll"
|
|
|
|
targetPath: '$(build.ArtifactStagingDirectory)/Jellyfin.Server/MediaBrowser.Common.dll'
|
|
|
|
artifactName: "Jellyfin.Common"
|
|
|
|
artifactName: 'Jellyfin.Common'
|
|
|
|