yolobs-studio/azure-pipelines.yml

126 lines
4.1 KiB
YAML
Raw Permalink Normal View History

2019-07-27 12:47:10 +00:00
# https://aka.ms/yaml
variables:
CMAKE_PREFIX_PATH: /usr/local/opt/qt5/lib/cmake
2019-09-22 21:19:10 +00:00
CEF_BUILD_VERSION: 3770
CEF_VERSION: 75.1.16+g16a67c4+chromium-75.0.3770.100
2019-07-27 12:47:10 +00:00
TWITCH-CLIENTID: $(twitch_clientid)
TWITCH-HASH: $(twitch_hash)
RESTREAM-CLIENTID: $(restream_clientid)
RESTREAM-HASH: $(restream_hash)
jobs:
2020-03-25 08:07:22 +00:00
- job: Prebuild
pool:
vmImage: 'ubuntu-18.04'
steps:
- bash: |
if curl -s "https://api.github.com/repos/$BUILD_REPOSITORY_ID/issues/$SYSTEM_PULLREQUEST_PULLREQUESTNUMBER/labels" | grep '"name": "Seeking Testers"'
then
echo "##vso[task.setvariable variable=prHasCILabel;isOutput=true]true"
fi
displayName: 'Check if PR should keep artifacts'
condition: eq(variables['Build.Reason'], 'PullRequest')
name: checkPrLabel
2019-07-27 12:47:10 +00:00
- job: 'Build_macOS'
2020-03-25 08:07:22 +00:00
dependsOn: Prebuild
variables:
prHasCILabel: $[ dependencies.Prebuild.outputs['checkPrLabel.prHasCILabel'] ]
2019-07-27 12:47:10 +00:00
pool:
2020-03-25 08:07:22 +00:00
vmImage: 'macOS-10.15'
2019-07-27 12:47:10 +00:00
steps:
- script: git submodule update --init --recursive
displayName: 'Checkout Submodules'
2020-10-01 20:15:25 +00:00
- script: TERM="" ./CI/full-build-macos.sh
displayName: 'Install dependencies and build'
- script: TERM="" ./CI/full-build-macos.sh -s -d -b -p
2020-03-25 08:07:22 +00:00
condition: or(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['prHasCILabel'], true))
2019-07-27 12:47:10 +00:00
displayName: 'Before Deploy'
2020-10-01 20:15:25 +00:00
- bash: |
mkdir -p ./nightly
find ./build -name \*.dmg -exec cp -PR \{\} ./nightly/ \;
displayName: 'Copy disk image'
2019-07-27 12:47:10 +00:00
- task: PublishBuildArtifacts@1
2020-03-25 08:07:22 +00:00
condition: or(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['prHasCILabel'], true))
2019-07-27 12:47:10 +00:00
inputs:
pathtoPublish: './nightly'
2020-05-27 20:57:19 +00:00
artifactName: macbuild
2019-07-27 12:47:10 +00:00
- job: 'Build_Windows32'
2020-03-25 08:07:22 +00:00
dependsOn: Prebuild
variables:
prHasCILabel: $[ dependencies.Prebuild.outputs['checkPrLabel.prHasCILabel'] ]
2019-07-27 12:47:10 +00:00
pool:
2020-03-25 08:07:22 +00:00
vmImage: 'windows-2019'
2019-07-27 12:47:10 +00:00
steps:
- script: git submodule update --init --recursive
displayName: 'Checkout Submodules'
- script: ./CI/install-qt-win.cmd
displayName: 'Install QT'
- script: ./CI/install-script-win.cmd
displayName: 'Download / Setup Deps / Run CMake'
- task: MSBuild@1
displayName: 'Build 32-bit'
2020-10-01 20:15:25 +00:00
inputs:
2019-07-27 12:47:10 +00:00
msbuildArguments: '/m /p:Configuration=RelWithDebInfo'
solution: .\build32\obs-studio.sln
- script: ./CI/before-deploy-win.cmd
2020-03-25 08:07:22 +00:00
condition: or(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['prHasCILabel'], true))
2019-07-27 12:47:10 +00:00
displayName: 'Before deploy'
- task: PublishBuildArtifacts@1
2020-03-25 08:07:22 +00:00
condition: or(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['prHasCILabel'], true))
2019-07-27 12:47:10 +00:00
inputs:
pathtoPublish: './build'
artifactName: winbuild
- job: 'Build_Windows64'
2020-03-25 08:07:22 +00:00
dependsOn: Prebuild
variables:
prHasCILabel: $[ dependencies.Prebuild.outputs['checkPrLabel.prHasCILabel'] ]
2019-07-27 12:47:10 +00:00
pool:
2020-03-25 08:07:22 +00:00
vmImage: 'windows-2019'
2019-07-27 12:47:10 +00:00
steps:
- script: git submodule update --init --recursive
displayName: 'Checkout Submodules'
- script: ./CI/install-qt-win.cmd
displayName: 'Install QT'
- script: ./CI/install-script-win.cmd
displayName: 'Download / Setup Deps / Run CMake'
- task: MSBuild@1
displayName: 'Build 64-bit'
2020-10-01 20:15:25 +00:00
inputs:
2019-07-27 12:47:10 +00:00
msbuildArguments: '/m /p:Configuration=RelWithDebInfo'
solution: .\build64\obs-studio.sln
- script: ./CI/before-deploy-win.cmd
2020-03-25 08:07:22 +00:00
condition: or(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['prHasCILabel'], true))
2019-07-27 12:47:10 +00:00
displayName: 'Before deploy'
- task: PublishBuildArtifacts@1
2020-03-25 08:07:22 +00:00
condition: or(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['prHasCILabel'], true))
2019-07-27 12:47:10 +00:00
inputs:
pathtoPublish: './build'
artifactName: winbuild
- job: 'Build_Linux'
2020-03-25 08:07:22 +00:00
dependsOn: Prebuild
variables:
prHasCILabel: $[ dependencies.Prebuild.outputs['checkPrLabel.prHasCILabel'] ]
2019-07-27 12:47:10 +00:00
pool:
2020-03-25 08:07:22 +00:00
vmImage: 'ubuntu-18.04'
2019-07-27 12:47:10 +00:00
steps:
- script: git submodule update --init --recursive
displayName: 'Checkout Submodules'
- script: ./CI/install-dependencies-linux.sh
displayName: 'Install Dependencies'
- script: ./CI/before-script-linux.sh
displayName: 'CMake'
- bash: |
2020-03-25 08:07:22 +00:00
set -e
2019-07-27 12:47:10 +00:00
cd ./build
make -j4
cd -
displayName: 'Build'