appveyor.yml 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433
  1. #***************************************************************************
  2. # _ _ ____ _
  3. # Project ___| | | | _ \| |
  4. # / __| | | | |_) | |
  5. # | (__| |_| | _ <| |___
  6. # \___|\___/|_| \_\_____|
  7. #
  8. # Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
  9. #
  10. # This software is licensed as described in the file COPYING, which
  11. # you should have received as part of this distribution. The terms
  12. # are also available at https://curl.se/docs/copyright.html.
  13. #
  14. # You may opt to use, copy, modify, merge, publish, distribute and/or sell
  15. # copies of the Software, and permit persons to whom the Software is
  16. # furnished to do so, under the terms of the COPYING file.
  17. #
  18. # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
  19. # KIND, either express or implied.
  20. #
  21. # SPDX-License-Identifier: curl
  22. #
  23. ###########################################################################
  24. # https://ci.appveyor.com/project/curlorg/curl/history
  25. # Appveyor configuration
  26. # https://www.appveyor.com/docs/appveyor-yml/
  27. version: 7.50.0.{build}
  28. environment:
  29. UNITY: 'OFF'
  30. OPENSSL: 'OFF'
  31. DEBUG: 'ON'
  32. SHARED: 'OFF'
  33. matrix:
  34. # generated CMake-based Visual Studio Release builds
  35. - job_name: 'CMake, VS2008, Release x86, Schannel, Build-only'
  36. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
  37. BUILD_SYSTEM: CMake
  38. PRJ_GEN: 'Visual Studio 9 2008'
  39. PRJ_CFG: Release
  40. SCHANNEL: 'ON'
  41. ENABLE_UNICODE: 'OFF'
  42. HTTP_ONLY: 'OFF'
  43. SHARED: 'ON'
  44. TESTING: 'OFF'
  45. DISABLED_TESTS: ''
  46. SKIP_RUN: 'Needs missing MSVCR90.dll'
  47. - job_name: 'CMake, VS2022, Release x64, OpenSSL, WebSockets, Unity, Build-only'
  48. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
  49. BUILD_SYSTEM: CMake
  50. PRJ_GEN: 'Visual Studio 17 2022'
  51. TARGET: '-A x64'
  52. PRJ_CFG: Release
  53. OPENSSL: 'ON'
  54. SCHANNEL: 'OFF'
  55. ENABLE_UNICODE: 'OFF'
  56. HTTP_ONLY: 'OFF'
  57. SHARED: 'ON'
  58. TESTING: 'OFF'
  59. DISABLED_TESTS: ''
  60. WEBSOCKETS: 'ON'
  61. UNITY: 'ON'
  62. - job_name: 'CMake, VS2022, Release arm64, Schannel, Static, Build-only'
  63. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
  64. BUILD_SYSTEM: CMake
  65. PRJ_GEN: 'Visual Studio 17 2022'
  66. TARGET: '-A ARM64'
  67. PRJ_CFG: Release
  68. SCHANNEL: 'ON'
  69. ENABLE_UNICODE: 'OFF'
  70. HTTP_ONLY: 'OFF'
  71. TESTING: 'OFF'
  72. DISABLED_TESTS: ''
  73. # generated CMake-based Visual Studio Debug builds
  74. - job_name: 'CMake, VS2010, Debug x64, no SSL, Static'
  75. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
  76. BUILD_SYSTEM: CMake
  77. PRJ_GEN: 'Visual Studio 10 2010 Win64'
  78. PRJ_CFG: Debug
  79. SCHANNEL: 'OFF'
  80. ENABLE_UNICODE: 'OFF'
  81. HTTP_ONLY: 'OFF'
  82. TESTING: 'ON'
  83. DISABLED_TESTS: '!1139 !1501'
  84. ADD_PATH: 'C:\msys64\usr\bin'
  85. - job_name: 'CMake, VS2022, Debug x64, Schannel, Static, Unicode'
  86. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
  87. BUILD_SYSTEM: CMake
  88. PRJ_GEN: 'Visual Studio 17 2022'
  89. TARGET: '-A x64'
  90. PRJ_CFG: Debug
  91. SCHANNEL: 'ON'
  92. ENABLE_UNICODE: 'ON'
  93. HTTP_ONLY: 'OFF'
  94. TESTING: 'ON'
  95. DISABLED_TESTS: '!1139 !1501'
  96. ADD_PATH: 'C:\msys64\usr\bin'
  97. - job_name: 'CMake, VS2022, Debug x64, no SSL, Static'
  98. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
  99. BUILD_SYSTEM: CMake
  100. PRJ_GEN: 'Visual Studio 17 2022'
  101. TARGET: '-A x64'
  102. PRJ_CFG: Debug
  103. SCHANNEL: 'OFF'
  104. ENABLE_UNICODE: 'OFF'
  105. HTTP_ONLY: 'OFF'
  106. TESTING: 'ON'
  107. DISABLED_TESTS: '!1139 !1501'
  108. ADD_PATH: 'C:\msys64\usr\bin'
  109. - job_name: 'CMake, VS2022, Debug x64, no SSL, Static, HTTP only'
  110. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
  111. BUILD_SYSTEM: CMake
  112. PRJ_GEN: 'Visual Studio 17 2022'
  113. TARGET: '-A x64'
  114. PRJ_CFG: Debug
  115. SCHANNEL: 'OFF'
  116. ENABLE_UNICODE: 'OFF'
  117. HTTP_ONLY: 'ON'
  118. TESTING: 'ON'
  119. DISABLED_TESTS: '!1139 !1501'
  120. ADD_PATH: 'C:\msys64\usr\bin'
  121. # generated CMake-based MSYS Makefiles builds (mingw cross-compiling)
  122. - job_name: 'CMake, mingw-w64, gcc 13, Debug x64, Schannel, Static, Unicode, Unity'
  123. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
  124. BUILD_SYSTEM: CMake
  125. PRJ_GEN: 'MSYS Makefiles'
  126. PRJ_CFG: Debug
  127. SCHANNEL: 'ON'
  128. ENABLE_UNICODE: 'ON'
  129. HTTP_ONLY: 'OFF'
  130. TESTING: 'ON'
  131. DISABLED_TESTS: '!1086 !1139 !1451 !1501'
  132. ADD_PATH: 'C:\msys64\mingw64\bin;C:\msys64\usr\bin'
  133. MSYS2_ARG_CONV_EXCL: '/*'
  134. BUILD_OPT: -k
  135. UNITY: 'ON'
  136. - job_name: 'CMake, mingw-w64, gcc 7, Debug x64, Schannel, Static, Unicode'
  137. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
  138. BUILD_SYSTEM: CMake
  139. PRJ_GEN: 'MSYS Makefiles'
  140. PRJ_CFG: Debug
  141. SCHANNEL: 'ON'
  142. ENABLE_UNICODE: 'ON'
  143. HTTP_ONLY: 'OFF'
  144. TESTING: 'ON'
  145. DISABLED_TESTS: '!1086 !1139 !1451 !1501'
  146. ADD_PATH: 'C:\mingw-w64\x86_64-7.2.0-posix-seh-rt_v5-rev1\mingw64\bin;C:\msys64\usr\bin'
  147. MSYS2_ARG_CONV_EXCL: '/*'
  148. BUILD_OPT: -k
  149. - job_name: 'CMake, mingw-w64, gcc 9, Debug x64, Schannel, Static, Unity'
  150. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
  151. BUILD_SYSTEM: CMake
  152. PRJ_GEN: 'MSYS Makefiles'
  153. PRJ_CFG: Debug
  154. SCHANNEL: 'ON'
  155. ENABLE_UNICODE: 'OFF'
  156. HTTP_ONLY: 'OFF'
  157. TESTING: 'ON'
  158. # test 286 disabled due to https://github.com/curl/curl/issues/12040
  159. DISABLED_TESTS: '~286 !1086 !1139 !1451 !1501'
  160. ADD_PATH: 'C:\msys64\mingw64\bin;C:\msys64\usr\bin'
  161. MSYS2_ARG_CONV_EXCL: '/*'
  162. BUILD_OPT: -k
  163. UNITY: 'ON'
  164. - job_name: 'CMake, mingw-w64, gcc 6, Debug x86, Schannel, Static'
  165. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
  166. BUILD_SYSTEM: CMake
  167. PRJ_GEN: 'MSYS Makefiles'
  168. PRJ_CFG: Debug
  169. SCHANNEL: 'ON'
  170. ENABLE_UNICODE: 'OFF'
  171. HTTP_ONLY: 'OFF'
  172. TESTING: 'ON'
  173. DISABLED_TESTS: '!1086 !1139 !1451 !1501'
  174. ADD_PATH: 'C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32\bin;C:\msys64\usr\bin'
  175. MSYS2_ARG_CONV_EXCL: '/*'
  176. BUILD_OPT: -k
  177. # winbuild-based builds
  178. - job_name: 'winbuild, VS2015, Debug, x64, Build-only'
  179. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
  180. BUILD_SYSTEM: winbuild_vs2015
  181. DEBUG: 'yes'
  182. PATHPART: debug
  183. TESTING: 'OFF'
  184. ENABLE_UNICODE: 'no'
  185. - job_name: 'winbuild, VS2015, Release, x64, Build-only'
  186. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
  187. BUILD_SYSTEM: winbuild_vs2015
  188. DEBUG: 'no'
  189. PATHPART: release
  190. TESTING: 'OFF'
  191. ENABLE_UNICODE: 'no'
  192. - job_name: 'winbuild, VS2017, Debug, x64, Build-only'
  193. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
  194. BUILD_SYSTEM: winbuild_vs2017
  195. DEBUG: 'yes'
  196. PATHPART: debug
  197. TESTING: 'OFF'
  198. ENABLE_UNICODE: 'no'
  199. - job_name: 'winbuild, VS2017, Release, x64, Build-only'
  200. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
  201. BUILD_SYSTEM: winbuild_vs2017
  202. DEBUG: 'no'
  203. PATHPART: release
  204. TESTING: 'OFF'
  205. ENABLE_UNICODE: 'no'
  206. - job_name: 'winbuild, VS2015, Debug, x64, Unicode, Build-only'
  207. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
  208. BUILD_SYSTEM: winbuild_vs2015
  209. DEBUG: 'yes'
  210. PATHPART: debug
  211. TESTING: 'OFF'
  212. ENABLE_UNICODE: 'yes'
  213. - job_name: 'winbuild, VS2015, Release, x64, Unicode, Build-only'
  214. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
  215. BUILD_SYSTEM: winbuild_vs2015
  216. DEBUG: 'no'
  217. PATHPART: release
  218. TESTING: 'OFF'
  219. ENABLE_UNICODE: 'yes'
  220. - job_name: 'winbuild, VS2017, Debug, x64, Unicode, Build-only'
  221. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
  222. BUILD_SYSTEM: winbuild_vs2017
  223. DEBUG: 'yes'
  224. PATHPART: debug
  225. TESTING: 'OFF'
  226. ENABLE_UNICODE: 'yes'
  227. - job_name: 'winbuild, VS2017, Release, x64, Unicode, Build-only'
  228. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
  229. BUILD_SYSTEM: winbuild_vs2017
  230. DEBUG: 'no'
  231. PATHPART: release
  232. TESTING: 'OFF'
  233. ENABLE_UNICODE: 'yes'
  234. # generated VisualStudioSolution-based builds
  235. - job_name: 'VisualStudioSolution, VS2017, Debug, x86, Build-only'
  236. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
  237. BUILD_SYSTEM: VisualStudioSolution
  238. PRJ_CFG: 'DLL Debug - DLL Windows SSPI - DLL WinIDN'
  239. TESTING: 'OFF'
  240. VC_VERSION: VC14.10
  241. # autotools-based builds (NOT mingw cross-compiling, but msys2 native)
  242. - job_name: 'autotools, msys2, Debug, x86_64, no Proxy, no SSL'
  243. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
  244. BUILD_SYSTEM: autotools
  245. TESTING: 'ON'
  246. DISABLED_TESTS: '!19 !1233'
  247. ADD_PATH: 'C:\msys64\usr\bin'
  248. CONFIG_ARGS: '--enable-debug --enable-werror --disable-threaded-resolver --disable-proxy --without-ssl --enable-websockets'
  249. - job_name: 'autotools, msys2, Debug, x86_64, no SSL'
  250. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
  251. BUILD_SYSTEM: autotools
  252. TESTING: 'ON'
  253. DISABLED_TESTS: '!19 !504 !704 !705 !1233'
  254. ADD_PATH: 'C:\msys64\usr\bin'
  255. CONFIG_ARGS: '--enable-debug --enable-werror --disable-threaded-resolver --without-ssl --enable-websockets'
  256. - job_name: 'autotools, msys2, Release, x86_64, no SSL'
  257. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
  258. BUILD_SYSTEM: autotools
  259. TESTING: 'ON'
  260. DISABLED_TESTS: '!19 !504 !704 !705 !1233'
  261. ADD_PATH: 'C:\msys64\usr\bin'
  262. CONFIG_ARGS: '--enable-warnings --enable-werror --without-ssl --enable-websockets'
  263. # autotools-based Cygwin build
  264. - job_name: 'autotools, cygwin, Debug, x86_64, no SSL'
  265. APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
  266. BUILD_SYSTEM: autotools
  267. TESTING: 'ON'
  268. DISABLED_TESTS: ''
  269. ADD_PATH: 'C:\cygwin64\bin'
  270. CONFIG_ARGS: '--enable-debug --enable-werror --disable-threaded-resolver --without-ssl --enable-websockets'
  271. POSIX_PATH_PREFIX: '/cygdrive'
  272. install:
  273. - ps: |
  274. if($env:ADD_PATH -ne $null) {
  275. $env:PATH = "$env:ADD_PATH;$env:PATH"
  276. }
  277. build_script:
  278. - ps: |
  279. function Pull-BatchFile-Env {
  280. param([string]$Path, [string]$Parameters)
  281. $tempFile = [IO.Path]::GetTempFileName()
  282. cmd.exe /c " `"$Path`" $Parameters && set " > $tempFile
  283. Get-Content $tempFile | ForEach-Object { if($_ -match '^(.*?)=(.*)$') { Set-Content "env:\$($matches[1])" $matches[2] } }
  284. Remove-Item $tempFile
  285. }
  286. $ErrorActionPreference = 'Stop'
  287. $openssl_root = 'C:\OpenSSL-v111-Win64'
  288. if($env:BUILD_SYSTEM -eq 'CMake') {
  289. $options = @('-DCURL_WERROR=ON')
  290. $options += "-G$env:PRJ_GEN"
  291. if($env:TARGET -ne $null) {
  292. $options += "$env:TARGET"
  293. if($env:TARGET.Contains('ARM64')) {
  294. $env:SKIP_RUN = 'ARM64 architecture'
  295. }
  296. }
  297. $options += "-DCURL_USE_OPENSSL=$env:OPENSSL"
  298. if($env:OPENSSL -eq 'ON') {
  299. $options += "-DOPENSSL_ROOT_DIR=$openssl_root"
  300. }
  301. $options += "-DCURL_USE_SCHANNEL=$env:SCHANNEL"
  302. $options += "-DHTTP_ONLY=$env:HTTP_ONLY"
  303. $options += "-DBUILD_SHARED_LIBS=$env:SHARED"
  304. $options += "-DBUILD_TESTING=$env:TESTING"
  305. $options += "-DENABLE_WEBSOCKETS=$env:WEBSOCKETS"
  306. $options += "-DCMAKE_UNITY_BUILD=$env:UNITY"
  307. $options += "-DENABLE_DEBUG=$env:DEBUG"
  308. $options += "-DENABLE_UNICODE=$env:ENABLE_UNICODE"
  309. $options += '-DCMAKE_INSTALL_PREFIX=C:/CURL'
  310. $options += "-DCMAKE_BUILD_TYPE=$env:PRJ_CFG"
  311. if($env:PRJ_CFG -eq 'Debug') {
  312. $options += '-DCMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG='
  313. }
  314. elseif ($env:PRJ_CFG -eq 'Release') {
  315. $options += '-DCMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE='
  316. }
  317. if($env:PRJ_GEN.Contains('Visual Studio')) {
  318. $options += '-DCMAKE_VS_GLOBALS=TrackFileAccess=false'
  319. }
  320. cmake --version
  321. Write-Host 'CMake options:' $options
  322. cmake . $options
  323. cmake --build . --config $env:PRJ_CFG --parallel 2 --clean-first -- $env:BUILD_OPT
  324. if($env:SHARED -eq 'ON') {
  325. Copy-Item -Path 'C:\Projects\curl\lib\*.dll' -Destination 'C:\projects\curl\src'
  326. Copy-Item -Path 'C:\Projects\curl\lib\*.dll' -Destination 'C:\projects\curl\tests\libtest'
  327. }
  328. if($env:OPENSSL -eq 'ON') {
  329. Copy-Item -Path "$openssl_root\*.dll" -Destination 'C:\projects\curl\src'
  330. }
  331. $curl = '.\src\curl.exe'
  332. }
  333. elseif($env:BUILD_SYSTEM -eq 'VisualStudioSolution') {
  334. cd projects
  335. .\generate.bat $env:VC_VERSION
  336. msbuild.exe -maxcpucount "-property:Configuration=$env:PRJ_CFG" "Windows\$env:VC_VERSION\curl-all.sln"
  337. $curl = "..\build\Win32\$env:VC_VERSION\$env:PRJ_CFG\curld.exe"
  338. }
  339. elseif($env:BUILD_SYSTEM -eq 'winbuild_vs2015') {
  340. .\buildconf.bat
  341. cd winbuild
  342. Pull-BatchFile-Env 'C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd' /x64
  343. Pull-BatchFile-Env 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat' x86_amd64
  344. nmake /nologo /f Makefile.vc mode=dll VC=14 "SSL_PATH=$openssl_root" WITH_SSL=dll MACHINE=x64 DEBUG=$env:DEBUG ENABLE_UNICODE=$env:ENABLE_UNICODE
  345. $curl = "..\builds\libcurl-vc14-x64-$env:PATHPART-dll-ssl-dll-ipv6-sspi\bin\curl.exe"
  346. }
  347. elseif($env:BUILD_SYSTEM -eq 'winbuild_vs2017') {
  348. .\buildconf.bat
  349. cd winbuild
  350. Pull-BatchFile-Env 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat'
  351. nmake /nologo /f Makefile.vc mode=dll VC=14.10 "SSL_PATH=$openssl_root" WITH_SSL=dll MACHINE=x64 DEBUG=$env:DEBUG ENABLE_UNICODE=$env:ENABLE_UNICODE
  352. $curl = "..\builds\libcurl-vc14.10-x64-$env:PATHPART-dll-ssl-dll-ipv6-sspi\bin\curl.exe"
  353. }
  354. elseif($env:BUILD_SYSTEM -eq 'autotools') {
  355. & bash -e -c "cd $env:POSIX_PATH_PREFIX/c/projects/curl && autoreconf -fi 2>&1 && ./configure $env:CONFIG_ARGS 2>&1 && make V=1 && make V=1 examples && cd tests && make V=1"
  356. $curl = '.\src\curl.exe'
  357. }
  358. Get-ChildItem -Path C:\projects\curl -Include ('*.exe', '*.dll') -Recurse -Name
  359. if($env:SKIP_RUN -eq $null) {
  360. cmd.exe /c "`"$curl`" -V 2>&1"
  361. if(-not $?) {
  362. Write-Host "Error running curl: '$curl':" ("0x" + $LastExitCode.ToString("X"))
  363. exit 1
  364. }
  365. }
  366. else {
  367. Write-Host "Skip running curl.exe. Reason: $env:SKIP_RUN"
  368. }
  369. if($false) {
  370. if(Test-Path CMakeFiles/CMakeConfigureLog.yaml) { cat CMakeFiles/CMakeConfigureLog.yaml }
  371. if(Test-Path CMakeFiles/CMakeOutput.log) { cat CMakeFiles/CMakeOutput.log }
  372. if(Test-Path CMakeFiles/CMakeError.log) { cat CMakeFiles/CMakeError.log }
  373. if(Test-Path config.log) { cat config.log }
  374. }
  375. if($env:TESTING -eq 'ON' -and $env:BUILD_SYSTEM -eq 'CMake') {
  376. cmake --build . --config $env:PRJ_CFG --parallel 2 --target testdeps
  377. }
  378. test_script:
  379. - ps: |
  380. if(Test-Path 'C:/msys64/usr/bin/curl.exe') {
  381. $acurl="-ac $env:POSIX_PATH_PREFIX/c/msys64/usr/bin/curl.exe"
  382. }
  383. if(Test-Path 'C:/Windows/System32/curl.exe') {
  384. $acurl="-ac $env:POSIX_PATH_PREFIX/c/Windows/System32/curl.exe"
  385. }
  386. if($env:TESTING -eq 'ON') {
  387. if($env:BUILD_SYSTEM -eq 'CMake') {
  388. $env:TFLAGS="$acurl $env:DISABLED_TESTS"
  389. cmake --build . --config $env:PRJ_CFG --target test-ci
  390. }
  391. elseif($env:BUILD_SYSTEM -eq 'autotools') {
  392. & bash -e -c "cd $env:POSIX_PATH_PREFIX/c/projects/curl && make V=1 TFLAGS='$acurl $env:DISABLED_TESTS' test-ci"
  393. }
  394. else {
  395. & bash -e -c "cd $env:POSIX_PATH_PREFIX/c/projects/curl/tests && ./runtests.pl -a -p !flaky -r -rm $acurl $env:DISABLED_TESTS"
  396. }
  397. }
  398. clone_depth: 10
  399. # select branches to avoid testing feature branches twice (as branch and as pull request)
  400. branches:
  401. only:
  402. - master
  403. - /\/ci$/
  404. skip_commits:
  405. files:
  406. - '.azure-pipelines.yml'
  407. - '.circleci/**/*'
  408. - '.cirrus.yml'
  409. - '.github/**/*'
  410. - 'packages/**/*'
  411. - 'plan9/**/*'
  412. artifacts:
  413. - path: '**/curl.exe'
  414. name: curl
  415. - path: '**/*curl*.dll'
  416. name: libcurl dll