Repository navigation
Expand file tree
/
Copy pathappveyor.yml
More file actions
49 lines (41 loc) · 2.22 KB
/
Copy pathappveyor.yml
File metadata and controls
49 lines (41 loc) · 2.22 KB
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
version: "{build}"
# Do not use shallow_clone: it fetches a source archive with no .git, so the
# Prism compiler submodule (mrbgems/mruby-compiler/lib/prism) cannot be checked
# out and the build aborts on "git submodule update". A normal clone keeps .git
# so the submodule can be initialized in install below.
#
# Clone by script instead of clone_depth: a depth-limited clone holds only the
# newest commits of the branch, so a build that waited in the queue while the
# branch moved on can no longer check out its commit. Fetching the queued
# commit (or the pull request merge ref) by name transfers just as little and
# always contains the tree to check out.
clone_script:
- cmd: git clone -q --no-checkout --depth=1 https://github.com/%APPVEYOR_REPO_NAME%.git "%APPVEYOR_BUILD_FOLDER%"
- cmd: cd /d "%APPVEYOR_BUILD_FOLDER%"
- cmd: if defined APPVEYOR_PULL_REQUEST_NUMBER (set "CLONE_REF=+refs/pull/%APPVEYOR_PULL_REQUEST_NUMBER%/merge") else (set "CLONE_REF=%APPVEYOR_REPO_COMMIT%")
- cmd: git fetch -q --depth=1 origin %CLONE_REF%
- cmd: git checkout -qf FETCH_HEAD
environment:
matrix:
- job_name: Visual Studio 2022 64-bit
visualcpp: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars64.bat
appveyor_build_worker_image: Visual Studio 2022
- job_name: Visual Studio 2019 64-bit
visualcpp: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat
appveyor_build_worker_image: Visual Studio 2019
- job_name: Visual Studio 2019 32-bit
visualcpp: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars32.bat
appveyor_build_worker_image: Visual Studio 2019
# Visual Studio 2015 and 2017 are dropped: their worker images top out at Ruby
# 2.6, but the Prism compiler the build now depends on requires Ruby >= 2.7 to
# generate its sources. The 2019 and 2022 images ship a new enough Ruby.
init:
- call "%visualcpp%" %machine%
- ruby --version
install:
# Fetch the Prism compiler submodule (init runs before the clone, so this
# must be here, after the repository is checked out).
- git submodule update --init --recursive
build_script:
- set MRUBY_CONFIG=ci/msvc
- rake -m test:run:serial