mirror of https://github.com/Ombi-app/Ombi
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
117 lines
3.3 KiB
117 lines
3.3 KiB
|
|
variables:
|
|
- template: templates/variables.yml
|
|
|
|
stages:
|
|
- stage: build
|
|
jobs:
|
|
- job: Build
|
|
pool:
|
|
vmImage: ${{ variables.vmImage }}
|
|
steps:
|
|
- template: templates/build-steps.yml
|
|
|
|
- stage: publish
|
|
jobs:
|
|
- job:
|
|
strategy:
|
|
matrix:
|
|
win10-x64:
|
|
runtime: win10-x64
|
|
format: zip
|
|
compression: zip
|
|
win10-x86:
|
|
runtime: win10-x86
|
|
format: zip
|
|
compression: zip
|
|
osx-x64:
|
|
runtime: osx-x64
|
|
format: tar.gz
|
|
compression: tar
|
|
linux-x64:
|
|
runtime: linux-x64
|
|
format: tar.gz
|
|
compression: tar
|
|
linux-arm:
|
|
runtime: linux-arm
|
|
format: tar.gz
|
|
compression: tar
|
|
linux-arm64:
|
|
runtime: linux-arm64
|
|
format: tar.gz
|
|
compression: tar
|
|
pool:
|
|
vmImage: ${{ variables.vmImage }}
|
|
steps:
|
|
- template: templates/publish-os-steps.yml
|
|
|
|
- stage: deploy
|
|
jobs:
|
|
- job:
|
|
condition: and(succeeded(), eq(variables.isMain, true))
|
|
steps:
|
|
- task: DownloadPipelineArtifact@2
|
|
inputs:
|
|
buildType: 'current'
|
|
targetPath: '$(System.ArtifactsDirectory)'
|
|
|
|
- task: PowerShell@2
|
|
displayName: 'Get Release Notes'
|
|
inputs:
|
|
targetType: 'inline'
|
|
script: |
|
|
$response = Invoke-WebRequest -Uri "https://ombireleasenote.azurewebsites.net/api/ReleaseNotesFunction?buildId=$(Build.BuildId)"
|
|
Write-Host "##vso[task.setvariable variable=ReleaseNotes;]$response"
|
|
|
|
- task: GitHubRelease@1
|
|
displayName: 'Ombi.Releases Release'
|
|
inputs:
|
|
gitHubConnection: 'PAT'
|
|
repositoryName: 'Ombi-app/Ombi.Releases'
|
|
action: 'create'
|
|
target: 'c7fcbb77b58aef1076d635a9ef99e4374abc8672'
|
|
tagSource: 'userSpecifiedTag'
|
|
tag: '$(gitTag)'
|
|
releaseNotesSource: 'inline'
|
|
releaseNotesInline: '$(ReleaseNotes)'
|
|
assets: |
|
|
$(System.ArtifactsDirectory)/**/*.zip
|
|
$(System.ArtifactsDirectory)/**/*.tar.gz
|
|
isPreRelease: true
|
|
changeLogCompareToRelease: 'lastNonDraftRelease'
|
|
changeLogType: 'commitBased'
|
|
|
|
- task: GitHubRelease@1
|
|
displayName: 'Ombi Release'
|
|
inputs:
|
|
gitHubConnection: 'PAT'
|
|
repositoryName: 'Ombi-app/Ombi'
|
|
action: 'create'
|
|
target: '$(Build.SourceVersion)'
|
|
tagSource: 'userSpecifiedTag'
|
|
tag: '$(gitTag)'
|
|
releaseNotesSource: 'inline'
|
|
releaseNotesInline: '$(ReleaseNotes)'
|
|
assets: |
|
|
$(System.ArtifactsDirectory)/**/*.zip
|
|
$(System.ArtifactsDirectory)/**/*.tar.gz
|
|
isPreRelease: true
|
|
changeLogCompareToRelease: 'lastNonDraftRelease'
|
|
changeLogType: 'commitBased'
|
|
|
|
- task: PowerShell@2
|
|
displayName: "Trigger APT build"
|
|
inputs:
|
|
targetType: 'inline'
|
|
script: |
|
|
$body = @{
|
|
"ref"="main"
|
|
"inputs"= @{"version"= "$(gitTag)"}
|
|
} | ConvertTo-Json
|
|
|
|
$header = @{
|
|
"Accept"="application/vnd.github.v3+json"
|
|
"Authorization"="Bearer ${env:APTPAT}"
|
|
}
|
|
|
|
Invoke-RestMethod -Uri "https://api.github.com/repos/Ombi-app/Ombi.Apt/actions/workflows/build-deb.yml/dispatches" -Method 'Post' -Body $body -Headers $header |