ci: introduce vsts builds (cherry picked from commit 67f5304f552a287dd46951b8ef96695f080c5ff2)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
diff --git a/.vsts-ci.yml b/.vsts-ci.yml
new file mode 100644
index 0000000..cbd7f11
--- /dev/null
+++ b/.vsts-ci.yml
@@ -0,0 +1,105 @@
+resources:
+- repo: self
+
+phases:
+- phase: linux_trusty_openssl
+ displayName: 'Linux (Trusty; OpenSSL)'
+ queue:
+ name: 'Hosted Linux Preview'
+ steps:
+ - task: Docker@0
+ displayName: Build
+ inputs:
+ action: 'Run an image'
+ imageName: 'ethomson/libgit2-trusty-openssl:latest'
+ volumes: |
+ $(Build.SourcesDirectory):/src
+ $(Build.BinariesDirectory):/build
+ workDir: '/build'
+ containerCommand: '/src/ci/build.sh'
+ detached: false
+ - task: Docker@0
+ displayName: Test
+ inputs:
+ action: 'Run an image'
+ imageName: 'ethomson/libgit2-trusty-openssl:latest'
+ volumes: |
+ $(Build.SourcesDirectory):/src
+ $(Build.BinariesDirectory):/build
+ workDir: '/build'
+ containerCommand: '/src/ci/test.sh'
+ detached: false
+
+- phase: macos
+ displayName: 'macOS'
+ queue:
+ name: 'Hosted macOS Preview'
+ steps:
+ - bash: . '$(Build.SourcesDirectory)/ci/setup-macos.sh'
+ displayName: Setup
+ - bash: . '$(Build.SourcesDirectory)/ci/build.sh'
+ displayName: Build
+ env:
+ PKG_CONFIG_PATH: /usr/local/opt/openssl/lib/pkgconfig
+ - bash: . '$(Build.SourcesDirectory)/ci/test.sh'
+ displayName: Test
+ env:
+ TMPDIR: $(Agent.TempDirectory)
+
+- phase: windows_vs_amd64
+ displayName: 'Windows (Visual Studio; amd64)'
+ queue:
+ name: Hosted
+ steps:
+ - powershell: . '$(Build.SourcesDirectory)\ci\build.ps1'
+ displayName: Build
+ env:
+ CMAKE_OPTIONS: -G"Visual Studio 12 2013 Win64"
+ - powershell: . '$(Build.SourcesDirectory)\ci\test.ps1'
+ displayName: Test
+
+- phase: windows_vs_x86
+ displayName: 'Windows (Visual Studio; x86)'
+ queue:
+ name: Hosted
+ steps:
+ - powershell: . '$(Build.SourcesDirectory)\ci\build.ps1'
+ displayName: Build
+ env:
+ CMAKE_OPTIONS: -G"Visual Studio 12 2013"
+ - powershell: . '$(Build.SourcesDirectory)\ci\test.ps1'
+ displayName: Test
+
+- phase: windows_mingw_amd64
+ displayName: 'Windows (MinGW; amd64)'
+ queue:
+ name: Hosted
+ steps:
+ - powershell: . '$(Build.SourcesDirectory)\ci\setup-mingw-amd64.ps1'
+ displayName: Setup
+ env:
+ TEMP: $(Agent.TempDirectory)
+ - powershell: . '$(Build.SourcesDirectory)\ci\build.ps1'
+ displayName: Build
+ env:
+ CMAKE_OPTIONS: -G"MinGW Makefiles"
+ 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
+ - powershell: . '$(Build.SourcesDirectory)\ci\test.ps1'
+ displayName: Test
+
+- phase: windows_mingw_x86
+ displayName: 'Windows (MinGW; x86)'
+ queue:
+ name: Hosted
+ steps:
+ - powershell: . '$(Build.SourcesDirectory)\ci\setup-mingw-x86.ps1'
+ displayName: Setup
+ env:
+ TEMP: $(Agent.TempDirectory)
+ - powershell: . '$(Build.SourcesDirectory)\ci\build.ps1'
+ displayName: Build
+ env:
+ CMAKE_OPTIONS: -G"MinGW Makefiles"
+ 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
+ - powershell: . '$(Build.SourcesDirectory)\ci\test.ps1'
+ displayName: Test
diff --git a/ci/build.sh b/ci/build.sh
index 39d35f1..45f0748 100755
--- a/ci/build.sh
+++ b/ci/build.sh
@@ -27,6 +27,7 @@ echo "##########################################################################
echo "## Configuring build environment"
echo "##############################################################################"
+echo cmake ${SOURCE_DIR} -DBUILD_EXAMPLES=ON ${CMAKE_OPTIONS}
cmake ${SOURCE_DIR} -DBUILD_EXAMPLES=ON ${CMAKE_OPTIONS}
echo ""