1
0
Fork 0
mirror of https://github.com/Jackett/Jackett synced 2024-12-22 15:57:50 +00:00

ci/cd: optimize build pipeline (#13460)

This commit is contained in:
Diego Heras 2022-08-09 07:23:36 +02:00 committed by GitHub
parent 5d826f3c30
commit ed95a8975f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -29,20 +29,14 @@ stages:
clean: all clean: all
strategy: strategy:
matrix: matrix:
Mono:
buildDescription: Mono
imageName: ubuntu-20.04
framework: net461
runtime: linux-x64
archiveType: tar
artifactName: Jackett.Binaries.Mono.tar.gz
Windows: Windows:
buildDescription: Windows buildDescription: Windows
imageName: windows-2019 imageName: windows-2022
framework: $(netCoreFramework) framework: $(netCoreFramework)
runtime: win-x86 runtime: win-x86
archiveType: zip archiveType: zip
artifactName: Jackett.Binaries.Windows.zip artifactName: Jackett.Binaries.Windows.zip
buildDelay: 0
macOS: macOS:
buildDescription: macOS buildDescription: macOS
imageName: macOS-12 imageName: macOS-12
@ -50,6 +44,7 @@ stages:
runtime: osx-x64 runtime: osx-x64
archiveType: tar archiveType: tar
artifactName: Jackett.Binaries.macOS.tar.gz artifactName: Jackett.Binaries.macOS.tar.gz
buildDelay: 10
macOSARM64: macOSARM64:
buildDescription: macOS ARM64 buildDescription: macOS ARM64
imageName: macOS-12 imageName: macOS-12
@ -57,6 +52,7 @@ stages:
runtime: osx-arm64 runtime: osx-arm64
archiveType: tar archiveType: tar
artifactName: Jackett.Binaries.macOSARM64.tar.gz artifactName: Jackett.Binaries.macOSARM64.tar.gz
buildDelay: 20
LinuxAMDx64: LinuxAMDx64:
buildDescription: Linux AMD x64 buildDescription: Linux AMD x64
imageName: ubuntu-20.04 imageName: ubuntu-20.04
@ -64,6 +60,7 @@ stages:
runtime: linux-x64 runtime: linux-x64
archiveType: tar archiveType: tar
artifactName: Jackett.Binaries.LinuxAMDx64.tar.gz artifactName: Jackett.Binaries.LinuxAMDx64.tar.gz
buildDelay: 30
LinuxARM32: LinuxARM32:
buildDescription: Linux ARM32 buildDescription: Linux ARM32
imageName: ubuntu-20.04 imageName: ubuntu-20.04
@ -71,6 +68,7 @@ stages:
runtime: linux-arm runtime: linux-arm
archiveType: tar archiveType: tar
artifactName: Jackett.Binaries.LinuxARM32.tar.gz artifactName: Jackett.Binaries.LinuxARM32.tar.gz
buildDelay: 40
LinuxARM64: LinuxARM64:
buildDescription: Linux ARM64 buildDescription: Linux ARM64
imageName: ubuntu-20.04 imageName: ubuntu-20.04
@ -78,6 +76,7 @@ stages:
runtime: linux-arm64 runtime: linux-arm64
archiveType: tar archiveType: tar
artifactName: Jackett.Binaries.LinuxARM64.tar.gz artifactName: Jackett.Binaries.LinuxARM64.tar.gz
buildDelay: 50
LinuxMuslAMDx64: LinuxMuslAMDx64:
buildDescription: Linux musl AMD x64 buildDescription: Linux musl AMD x64
imageName: ubuntu-20.04 imageName: ubuntu-20.04
@ -85,6 +84,7 @@ stages:
runtime: linux-musl-x64 runtime: linux-musl-x64
archiveType: tar archiveType: tar
artifactName: Jackett.Binaries.LinuxMuslAMDx64.tar.gz artifactName: Jackett.Binaries.LinuxMuslAMDx64.tar.gz
buildDelay: 60
LinuxMuslARM32: LinuxMuslARM32:
buildDescription: Linux musl ARM32 buildDescription: Linux musl ARM32
imageName: ubuntu-20.04 imageName: ubuntu-20.04
@ -92,6 +92,7 @@ stages:
runtime: linux-musl-arm runtime: linux-musl-arm
archiveType: tar archiveType: tar
artifactName: Jackett.Binaries.LinuxMuslARM32.tar.gz artifactName: Jackett.Binaries.LinuxMuslARM32.tar.gz
buildDelay: 70
LinuxMuslARM64: LinuxMuslARM64:
buildDescription: Linux musl ARM64 buildDescription: Linux musl ARM64
imageName: ubuntu-20.04 imageName: ubuntu-20.04
@ -99,6 +100,15 @@ stages:
runtime: linux-musl-arm64 runtime: linux-musl-arm64
archiveType: tar archiveType: tar
artifactName: Jackett.Binaries.LinuxMuslARM64.tar.gz artifactName: Jackett.Binaries.LinuxMuslARM64.tar.gz
buildDelay: 80
Mono:
buildDescription: Mono
imageName: ubuntu-20.04
framework: net461
runtime: linux-x64
archiveType: tar
artifactName: Jackett.Binaries.Mono.tar.gz
buildDelay: 90
pool: pool:
vmImage: $(imageName) vmImage: $(imageName)
displayName: ${{ variables.buildDescription }} displayName: ${{ variables.buildDescription }}
@ -112,6 +122,16 @@ stages:
version: $(netCoreSdkVersion) version: $(netCoreSdkVersion)
installationPath: $(Agent.ToolsDirectory)/dotnet installationPath: $(Agent.ToolsDirectory)/dotnet
- task: PowerShell@2
# Because we have many parallel builds this error occurs:
# error MSB4018: System.IO.IOException: The process cannot access the file
# '/home/vsts/work/1/s/src/DateTimeRoutines/bin/Release/netstandard2.0/DateTimeRoutines.deps.json'
# because it is being used by another process. [/home/vsts/work/1/s/src/DateTimeRoutines/DateTimeRoutines.csproj]
displayName: Wait before build
inputs:
targetType: inline
script: Start-Sleep -Seconds $(buildDelay)
- task: DotNetCoreCLI@2 - task: DotNetCoreCLI@2
displayName: Build Jackett Server displayName: Build Jackett Server
inputs: inputs:
@ -391,14 +411,9 @@ stages:
clean: all clean: all
strategy: strategy:
matrix: matrix:
Mono:
buildDescription: Mono
imageName: ubuntu-20.04
framework: net461
runtime: linux-x64
Windows: Windows:
buildDescription: Windows buildDescription: Windows
imageName: windows-2019 imageName: windows-2022
framework: $(netCoreFramework) framework: $(netCoreFramework)
runtime: win-x86 runtime: win-x86
macOS: macOS:
@ -411,6 +426,11 @@ stages:
imageName: ubuntu-20.04 imageName: ubuntu-20.04
framework: $(netCoreFramework) framework: $(netCoreFramework)
runtime: linux-x64 runtime: linux-x64
Mono:
buildDescription: Mono
imageName: ubuntu-20.04
framework: net461
runtime: linux-x64
pool: pool:
vmImage: $(imageName) vmImage: $(imageName)
displayName: ${{ variables.buildDescription }} displayName: ${{ variables.buildDescription }}
@ -484,15 +504,9 @@ stages:
clean: all clean: all
strategy: strategy:
matrix: matrix:
Mono:
buildDescription: Mono
imageName: ubuntu-20.04
artifactName: Jackett.Binaries.Mono.tar.gz
framework: net461
runtime: linux-x64
Windows: Windows:
buildDescription: Windows buildDescription: Windows
imageName: windows-2019 imageName: windows-2022
artifactName: Jackett.Binaries.Windows.zip artifactName: Jackett.Binaries.Windows.zip
framework: $(netCoreFramework) framework: $(netCoreFramework)
runtime: win-x86 runtime: win-x86
@ -508,6 +522,12 @@ stages:
artifactName: Jackett.Binaries.LinuxAMDx64.tar.gz artifactName: Jackett.Binaries.LinuxAMDx64.tar.gz
framework: $(netCoreFramework) framework: $(netCoreFramework)
runtime: linux-x64 runtime: linux-x64
Mono:
buildDescription: Mono
imageName: ubuntu-20.04
artifactName: Jackett.Binaries.Mono.tar.gz
framework: net461
runtime: linux-x64
pool: pool:
vmImage: $(imageName) vmImage: $(imageName)
displayName: ${{ variables.buildDescription }} displayName: ${{ variables.buildDescription }}