Commit 1fe3fa5e by Edward Thomson

foo

parent b401273b
...@@ -6,152 +6,164 @@ trigger: ...@@ -6,152 +6,164 @@ trigger:
- maint/* - maint/*
jobs: jobs:
- job: linux_amd64_trusty_gcc_openssl - job: freebsd
displayName: 'Linux (amd64; Trusty; GCC; OpenSSL)' displayName: 'FreeBSD (amd64; 12.0)'
pool: pool:
vmImage: 'Ubuntu 16.04' vmImage: 'Ubuntu 16.04'
steps: steps:
- template: azure-pipelines/docker.yml - template: azure-pipelines/ssh.yml
parameters:
imageName: 'libgit2/trusty-amd64:latest'
environmentVariables: |
CC=gcc
CMAKE_OPTIONS=-DUSE_HTTPS=OpenSSL -DDEPRECATE_HARD=ON
LEAK_CHECK=valgrind
- job: linux_amd64_trusty_gcc_mbedtls
displayName: 'Linux (amd64; Trusty; GCC; mbedTLS)'
pool:
vmImage: 'Ubuntu 16.04'
steps:
- template: azure-pipelines/docker.yml
parameters:
imageName: 'libgit2/trusty-amd64:latest'
environmentVariables: |
CC=gcc
CMAKE_OPTIONS=-DUSE_HTTPS=mbedTLS -DSHA1_BACKEND=mbedTLS -DDEPRECATE_HARD=ON
LEAK_CHECK=valgrind
- job: linux_amd64_trusty_clang_openssl
displayName: 'Linux (amd64; Trusty; Clang; OpenSSL)'
pool:
vmImage: 'Ubuntu 16.04'
steps:
- template: azure-pipelines/docker.yml
parameters:
imageName: 'libgit2/trusty-amd64:latest'
environmentVariables: |
CC=clang
CMAKE_OPTIONS=-DUSE_HTTPS=OpenSSL -DDEPRECATE_HARD=ON
LEAK_CHECK=valgrind
- job: linux_amd64_trusty_clang_mbedtls
displayName: 'Linux (amd64; Trusty; Clang; mbedTLS)'
pool:
vmImage: 'Ubuntu 16.04'
steps:
- template: azure-pipelines/docker.yml
parameters:
imageName: 'libgit2/trusty-amd64:latest'
environmentVariables: |
CC=clang
CMAKE_OPTIONS=-DUSE_HTTPS=mbedTLS -DSHA1_BACKEND=mbedTLS -DDEPRECATE_HARD=ON
LEAK_CHECK=valgrind
- job: macos
displayName: 'macOS'
pool:
vmImage: 'macOS 10.13'
steps:
- bash: . '$(Build.SourcesDirectory)/ci/setup-osx.sh'
displayName: Setup
- template: azure-pipelines/bash.yml
parameters: parameters:
remoteHost: 'build@13.92.132.220'
environmentVariables: environmentVariables:
TMPDIR: $(Agent.TempDirectory) CMAKE_OPTIONS: -DDEPRECATE_HARD=ON
PKG_CONFIG_PATH: /usr/local/opt/openssl/lib/pkgconfig
LEAK_CHECK: leaks
CMAKE_OPTIONS: -G Ninja -DDEPRECATE_HARD=ON
SKIP_SSH_TESTS: true SKIP_SSH_TESTS: true
- job: windows_vs_amd64 #- job: linux_amd64_trusty_gcc_openssl
displayName: 'Windows (amd64; Visual Studio)' # displayName: 'Linux (amd64; Trusty; GCC; OpenSSL)'
pool: Hosted # pool:
steps: # vmImage: 'Ubuntu 16.04'
- template: azure-pipelines/powershell.yml # steps:
parameters: # - template: azure-pipelines/docker.yml
environmentVariables: # parameters:
CMAKE_OPTIONS: -DMSVC_CRTDBG=ON -G"Visual Studio 12 2013 Win64" -DDEPRECATE_HARD=ON # imageName: 'libgit2/trusty-amd64:latest'
# environmentVariables: |
- job: windows_vs_x86 # CC=gcc
displayName: 'Windows (x86; Visual Studio)' # CMAKE_OPTIONS=-DUSE_HTTPS=OpenSSL -DDEPRECATE_HARD=ON
pool: Hosted # LEAK_CHECK=valgrind
steps: #
- template: azure-pipelines/powershell.yml #- job: linux_amd64_trusty_gcc_mbedtls
parameters: # displayName: 'Linux (amd64; Trusty; GCC; mbedTLS)'
environmentVariables: # pool:
CMAKE_OPTIONS: -DMSVC_CRTDBG=ON -G"Visual Studio 12 2013" -DDEPRECATE_HARD=ON # vmImage: 'Ubuntu 16.04'
# steps:
- job: windows_mingw_amd64 # - template: azure-pipelines/docker.yml
displayName: 'Windows (amd64; MinGW)' # parameters:
pool: Hosted # imageName: 'libgit2/trusty-amd64:latest'
steps: # environmentVariables: |
- powershell: . '$(Build.SourcesDirectory)\ci\setup-mingw.ps1' # CC=gcc
displayName: Setup # CMAKE_OPTIONS=-DUSE_HTTPS=mbedTLS -DSHA1_BACKEND=mbedTLS -DDEPRECATE_HARD=ON
env: # LEAK_CHECK=valgrind
TEMP: $(Agent.TempDirectory) #
ARCH: amd64 #- job: linux_amd64_trusty_clang_openssl
- template: azure-pipelines/powershell.yml # displayName: 'Linux (amd64; Trusty; Clang; OpenSSL)'
parameters: # pool:
environmentVariables: # vmImage: 'Ubuntu 16.04'
CMAKE_OPTIONS: -G"MinGW Makefiles" -DDEPRECATE_HARD=ON # steps:
PATH: $(Agent.TempDirectory)\mingw64\bin;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\CMake\bin # - template: azure-pipelines/docker.yml
# parameters:
- job: windows_mingw_x86 # imageName: 'libgit2/trusty-amd64:latest'
displayName: 'Windows (x86; MinGW)' # environmentVariables: |
pool: Hosted # CC=clang
steps: # CMAKE_OPTIONS=-DUSE_HTTPS=OpenSSL -DDEPRECATE_HARD=ON
- powershell: . '$(Build.SourcesDirectory)\ci\setup-mingw.ps1' # LEAK_CHECK=valgrind
displayName: Setup #
workingDirectory: '$(Build.BinariesDirectory)' #- job: linux_amd64_trusty_clang_mbedtls
env: # displayName: 'Linux (amd64; Trusty; Clang; mbedTLS)'
TEMP: $(Agent.TempDirectory) # pool:
ARCH: x86 # vmImage: 'Ubuntu 16.04'
- template: azure-pipelines/powershell.yml # steps:
parameters: # - template: azure-pipelines/docker.yml
environmentVariables: # parameters:
CMAKE_OPTIONS: -G"MinGW Makefiles" -DDEPRECATE_HARD=ON # imageName: 'libgit2/trusty-amd64:latest'
PATH: $(Agent.TempDirectory)\mingw32\bin;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\CMake\bin # environmentVariables: |
# CC=clang
- job: documentation # CMAKE_OPTIONS=-DUSE_HTTPS=mbedTLS -DSHA1_BACKEND=mbedTLS -DDEPRECATE_HARD=ON
displayName: 'Generate Documentation' # LEAK_CHECK=valgrind
pool: #
vmImage: 'Ubuntu 16.04' #- job: macos
steps: # displayName: 'macOS'
- script: | # pool:
git config user.name 'Documentation Generation' # vmImage: 'macOS 10.13'
git config user.email 'libgit2@users.noreply.github.com' # steps:
git branch gh-pages origin/gh-pages # - bash: . '$(Build.SourcesDirectory)/ci/setup-osx.sh'
docker run --rm -v $(Build.SourcesDirectory):/src -w /src libgit2/docurium:latest cm doc api.docurium # displayName: Setup
git checkout gh-pages # - template: azure-pipelines/bash.yml
cp -R * '$(Build.BinariesDirectory)' # parameters:
displayName: 'Generate Documentation' # environmentVariables:
- task: archivefiles@2 # TMPDIR: $(Agent.TempDirectory)
displayName: 'Archive Documentation' # PKG_CONFIG_PATH: /usr/local/opt/openssl/lib/pkgconfig
inputs: # LEAK_CHECK: leaks
rootFolderOrFile: '$(Build.BinariesDirectory)' # CMAKE_OPTIONS: -G Ninja -DDEPRECATE_HARD=ON
includeRootFolder: false # SKIP_SSH_TESTS: true
archiveFile: '$(Build.ArtifactStagingDirectory)/api-documentation.zip' #
- task: publishbuildartifacts@1 #- job: windows_vs_amd64
displayName: 'Upload Documentation Artifact' # displayName: 'Windows (amd64; Visual Studio)'
inputs: # pool: Hosted
pathToPublish: '$(Build.ArtifactStagingDirectory)' # steps:
artifactName: 'docs' # - template: azure-pipelines/powershell.yml
- script: | # parameters:
git remote -v # environmentVariables:
echo 'machine github.com' > ~/.netrc # CMAKE_OPTIONS: -DMSVC_CRTDBG=ON -G"Visual Studio 12 2013 Win64" -DDEPRECATE_HARD=ON
echo 'login $(GITHUB_USERNAME)' >> ~/.netrc #
echo 'password $(GITHUB_PAT)' >> ~/.netrc #- job: windows_vs_x86
git push origin gh-pages # displayName: 'Windows (x86; Visual Studio)'
displayName: 'Publish Documentation' # pool: Hosted
condition: eq(variables['Build.Reason'], 'IndividualCI') # steps:
# - template: azure-pipelines/powershell.yml
# parameters:
# environmentVariables:
# CMAKE_OPTIONS: -DMSVC_CRTDBG=ON -G"Visual Studio 12 2013" -DDEPRECATE_HARD=ON
#
#- job: windows_mingw_amd64
# displayName: 'Windows (amd64; MinGW)'
# pool: Hosted
# steps:
# - powershell: . '$(Build.SourcesDirectory)\ci\setup-mingw.ps1'
# displayName: Setup
# env:
# TEMP: $(Agent.TempDirectory)
# ARCH: amd64
# - template: azure-pipelines/powershell.yml
# parameters:
# environmentVariables:
# CMAKE_OPTIONS: -G"MinGW Makefiles" -DDEPRECATE_HARD=ON
# PATH: $(Agent.TempDirectory)\mingw64\bin;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\CMake\bin
#
#- job: windows_mingw_x86
# displayName: 'Windows (x86; MinGW)'
# pool: Hosted
# steps:
# - powershell: . '$(Build.SourcesDirectory)\ci\setup-mingw.ps1'
# displayName: Setup
# workingDirectory: '$(Build.BinariesDirectory)'
# env:
# TEMP: $(Agent.TempDirectory)
# ARCH: x86
# - template: azure-pipelines/powershell.yml
# parameters:
# environmentVariables:
# CMAKE_OPTIONS: -G"MinGW Makefiles" -DDEPRECATE_HARD=ON
# PATH: $(Agent.TempDirectory)\mingw32\bin;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\CMake\bin
#
#- job: documentation
# displayName: 'Generate Documentation'
# pool:
# vmImage: 'Ubuntu 16.04'
# steps:
# - script: |
# git config user.name 'Documentation Generation'
# git config user.email 'libgit2@users.noreply.github.com'
# git branch gh-pages origin/gh-pages
# docker run --rm -v $(Build.SourcesDirectory):/src -w /src libgit2/docurium:latest cm doc api.docurium
# git checkout gh-pages
# cp -R * '$(Build.BinariesDirectory)'
# displayName: 'Generate Documentation'
# - task: archivefiles@2
# displayName: 'Archive Documentation'
# inputs:
# rootFolderOrFile: '$(Build.BinariesDirectory)'
# includeRootFolder: false
# archiveFile: '$(Build.ArtifactStagingDirectory)/api-documentation.zip'
# - task: publishbuildartifacts@1
# displayName: 'Upload Documentation Artifact'
# inputs:
# pathToPublish: '$(Build.ArtifactStagingDirectory)'
# artifactName: 'docs'
# - script: |
# git remote -v
# echo 'machine github.com' > ~/.netrc
# echo 'login $(GITHUB_USERNAME)' >> ~/.netrc
# echo 'password $(GITHUB_PAT)' >> ~/.netrc
# git push origin gh-pages
# displayName: 'Publish Documentation'
# condition: eq(variables['Build.Reason'], 'IndividualCI')
# These are the steps used for ssh'ing into a remote host to build and test.
steps:
- task: SSH@0
displayName: 'Create Build Directory'
inputs:
sshEndpoint: freebsd
commands: |
set -e
REMOTE_BASEDIR=$(mktemp -d -t build)
REMOTE_SOURCEDIR="${REMOTE_BASEDIR}/src"
REMOTE_OUTPUTDIR="${REMOTE_BASEDIR}/build"
mkdir "${REMOTE_SOURCEDIR}"
mkdir "${REMOTE_OUTPUTDIR}"
echo "##vso[task.setvariable variable=Remote.BaseDir]${REMOTE_BASEDIR}"
echo "##vso[task.setvariable variable=Remote.SourceDir]${REMOTE_SOURCEDIR}"
echo "##vso[task.setvariable variable=Remote.OutputDir]${REMOTE_OUTPUTDIR}"
- task: CopyFilesOverSSH@0
displayName: 'Securely copy files to the remote machine'
inputs:
sshEndpoint: freebsd
sourceFolder: '$(Build.SourcesDirectory)'
targetFolder: '$(Remote.SourceDir)'
- task: SSH@0
displayName: 'Create Build Directory'
inputs:
sshEndpoint: freebsd
commands: |
set -e
cd $(Remote.OutputDir)
$(Remote.SourceDir)/ci/build.sh
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment