mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
995bdd69de
to possibly deal with failures like https://ci.appveyor.com/project/ruby/ruby/builds/45097615. I'm not sure how vcpkg retries things, but at least aria2c seems to attempt downloads 5 times by default. https://aria2.github.io/manual/en/html/aria2c.html Looking at the CI log, vcpkg might be already trying it 5 times, but let me give it a try too.
129 lines
4.3 KiB
YAML
129 lines
4.3 KiB
YAML
---
|
|
version: '{build}'
|
|
init:
|
|
- git config --global user.name git
|
|
- git config --global user.email svn-admin@ruby-lang.org
|
|
- git config --global core.autocrlf false
|
|
- git config --global core.eol lf
|
|
- git config --global advice.detachedHead 0
|
|
shallow_clone: true
|
|
clone_depth: 10
|
|
platform:
|
|
- x64
|
|
skip_commits:
|
|
message: /\[DOC\]/
|
|
files:
|
|
- doc/*
|
|
- '**/*.md'
|
|
- '**/*.rdoc'
|
|
- '**/.document'
|
|
environment:
|
|
ruby_version: "24-%Platform%"
|
|
matrix:
|
|
# Test only the oldest supported version because AppVeyor is unstable, its concurrency
|
|
# is limited, and compatibility issues that happen only in newer versions are rare.
|
|
# You may test some other stuff on GitHub Actions instead.
|
|
- build: vs
|
|
vs: 120
|
|
ssl: OpenSSL-v111
|
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
|
GEMS_FOR_TEST: ""
|
|
RELINE_TEST_ENCODING: "UTF-8"
|
|
cache:
|
|
- c:\Tools\vcpkg\installed\
|
|
for:
|
|
-
|
|
matrix:
|
|
only:
|
|
- build: vs
|
|
install:
|
|
- ver
|
|
- chcp
|
|
- SET BITS=%Platform:x86=32%
|
|
- SET BITS=%BITS:x=%
|
|
- SET OPENSSL_DIR=C:\%ssl%-Win%BITS%
|
|
- cd C:\Tools\vcpkg
|
|
- git pull -q
|
|
- .\bootstrap-vcpkg.bat
|
|
- cd %APPVEYOR_BUILD_FOLDER%
|
|
- vcpkg --triplet %Platform%-windows install --x-use-aria2 libffi libyaml readline zlib
|
|
- CALL SET vcvars=%%^VS%VS%COMNTOOLS^%%..\..\VC\vcvarsall.bat
|
|
- SET vcvars
|
|
- '"%vcvars%" %Platform:x64=amd64%'
|
|
- SET ruby_path=C:\Ruby%ruby_version:-x86=%
|
|
- SET PATH=\usr\local\bin;%ruby_path%\bin;%PATH%;C:\msys64\mingw64\bin;C:\msys64\usr\bin
|
|
- ruby --version
|
|
- 'cl'
|
|
- echo> Makefile srcdir=.
|
|
- echo>> Makefile MSC_VER=0
|
|
- echo>> Makefile RT=none
|
|
- echo>> Makefile RT_VER=0
|
|
- echo>> Makefile BUILTIN_ENCOBJS=nul
|
|
- type win32\Makefile.sub >> Makefile
|
|
- nmake %mflags% up VCSUP="echo Update OK"
|
|
- nmake %mflags% extract-extlibs
|
|
- del Makefile
|
|
- mkdir \usr\local\bin
|
|
- mkdir \usr\local\include
|
|
- mkdir \usr\local\lib
|
|
- for %%I in (%OPENSSL_DIR%\*.dll) do mklink /h \usr\local\bin\%%~nxI %%I
|
|
- for %%I in (c:\Tools\vcpkg\installed\%Platform%-windows\bin\*.dll) do (
|
|
if not %%~nI == readline mklink \usr\local\bin\%%~nxI %%I
|
|
)
|
|
- attrib +r /s /d
|
|
- mkdir %Platform%-mswin_%vs%
|
|
build_script:
|
|
- cd %APPVEYOR_BUILD_FOLDER%
|
|
- cd %Platform%-mswin_%vs%
|
|
- >-
|
|
..\win32\configure.bat
|
|
--with-opt-dir="/usr/local;c:/Tools/vcpkg/installed/%Platform%-windows"
|
|
--with-openssl-dir=%OPENSSL_DIR:\=/%
|
|
- nmake -l
|
|
- nmake install-nodoc
|
|
- \usr\bin\ruby -v -e "p :locale => Encoding.find('locale'), :filesystem => Encoding.find('filesystem')"
|
|
- if not "%GEMS_FOR_TEST%" == "" \usr\bin\gem install --no-document %GEMS_FOR_TEST%
|
|
- \usr\bin\ruby -ropenssl -e "puts 'Build ' + OpenSSL::OPENSSL_VERSION, 'Runtime ' + OpenSSL::OPENSSL_LIBRARY_VERSION"
|
|
test_script:
|
|
- set /a JOBS=%NUMBER_OF_PROCESSORS%
|
|
- nmake -l "TESTOPTS=-v -q" btest
|
|
- nmake -l "TESTOPTS=-v -q" test-basic
|
|
- >-
|
|
nmake -l "TESTOPTS=-v --timeout-scale=3.0
|
|
--excludes=../test/excludes/_appveyor -j%JOBS%
|
|
--exclude win32ole
|
|
--exclude test_bignum
|
|
--exclude test_syntax
|
|
--exclude test_open-uri
|
|
--exclude test_bundled_ca
|
|
" test-all
|
|
# separately execute tests without -j which may crash worker with -j.
|
|
- >-
|
|
nmake -l
|
|
"TESTOPTS=-v --timeout-scale=3.0 --excludes=../test/excludes/_appveyor"
|
|
TESTS="
|
|
../test/win32ole
|
|
../test/ruby/test_bignum.rb
|
|
../test/ruby/test_syntax.rb
|
|
../test/open-uri/test_open-uri.rb
|
|
../test/rubygems/test_bundled_ca.rb
|
|
" test-all
|
|
- nmake -l test-spec MSPECOPT=-fs # not using `-j` because sometimes `mspec -j` silently dies on Windows
|
|
notifications:
|
|
- provider: Webhook
|
|
method: POST
|
|
url:
|
|
secure: CcFlJNDJ/a6to7u3Z4Fnz6dScEPNx7hTha2GkSRlV+1U6dqmxY/7uBcLXYb9gR3jfQk6w+2o/HrjNAyXMNGU/JOka3s2WRI4VKitzM+lQ08owvJIh0R7LxrGH0J2e81U # ruby-lang slack: ruby/simpler-alerts-bot
|
|
body: >-
|
|
{{^isPullRequest}}
|
|
{
|
|
"ci": "AppVeyor CI",
|
|
"env": "Visual Studio 2013",
|
|
"url": "{{buildUrl}}",
|
|
"commit": "{{commitId}}",
|
|
"branch": "{{branch}}"
|
|
}
|
|
{{/isPullRequest}}
|
|
on_build_success: false
|
|
on_build_failure: true
|
|
on_build_status_changed: false
|