-
Notifications
You must be signed in to change notification settings - Fork 8
/
.appveyor.yml
82 lines (68 loc) · 3.67 KB
/
.appveyor.yml
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
image:
- Visual Studio 2019
# - Windows Server 2016 # Doesn't work, private Beta I think
# - Visual Studio 2017 Preview # Doesn't have docker
environment:
matrix:
- MSYSTEM: MINGW64
JUST_IS_TTY: 1
# clone_script:
# - bash -lc "git clone -q --branch="${APPVEYOR_REPO_BRANCH}" https://github.com/${APPVEYOR_REPO_NAME}.git ${APPVEYOR_BUILD_FOLDER}"
# - bash -lc "cd ${APPVEYOR_BUILD_FOLDER} && git checkout -qf ${APPVEYOR_REPO_BRANCH}"
# - bash -lc "cd ${APPVEYOR_BUILD_FOLDER} && git submodule update --init --recursive"
# if(-not $env:appveyor_pull_request_number) {
# git clone -q --branch=$env:appveyor_repo_branch https://github.com/$env:appveyor_repo_name.git $env:appveyor_build_folder
# git checkout -qf $env:appveyor_repo_commit
# } else {
# git clone -q https://github.com/$env:appveyor_repo_name.git $env:appveyor_build_folder
# git fetch -q origin +refs/pull/$env:appveyor_pull_request_number/merge:
# git checkout -qf FETCH_HEAD
# }
# init:
# - ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
install:
# Submodules are added in install
# see https://www.appveyor.com/docs/how-to/private-git-sub-modules/
- git submodule update --init --recursive
- git config --global --add safe.directory '*'
- git config --global protocol.file.allow always
# Update the db and mirrors
- C:\msys64\usr\bin\bash -lc "pacman --needed --noconfirm -Sy pacman-mirrors"
# Update the db again, since we just got new mirrors, and then update pacman (again)
- C:\msys64\usr\bin\bash -lc "pacman --noconfirm -Sydd pacman"
# This is too late to install rank mirrors to make it worth it
# Plus, rankmirrors doesn't appear to work
# - C:\msys64\usr\bin\bash -lc "pacman --noconfirm -S pacman-contrib"
# additional packages for test. This has to be a separate call from the pacman
# install, due to pacman supporting a newer zip format
- C:\msys64\usr\bin\bash -lc "pacman --noconfirm -Sy unzip"
# debugging outputs
- C:\msys64\usr\bin\bash -lc "cat ~/.bashrc"
- C:\msys64\usr\bin\bash -lc "cat ~/.bash_profile"
- C:\msys64\usr\bin\bash -lc "echo ${PATH}"
# - ps: Get-ComputerInfo # Useless
# - set
# - bash -lc "declare -p"
# - bash -lc "cygpath -w /tmp"
# - systeminfo
# - '"C:\Program Files\Docker\Docker\DockerCli.exe" -SwitchLinuxEngine'
# - docker-switch-linux # Suggested way to do the exact same command above
# This is how you select "Script mode" instead of "MSBuild" mode. There MUST
# be something in build_script, else it doesn't count :(
build_script:
- rem
test_script:
# tests/optionaltest and tests/shtest fail on Windows; run them
# anyways but ignore their failures. Also, trace shtest.
- bash -lc "exec 0</dev/null && cd ${APPVEYOR_BUILD_FOLDER} && source setup.env && just test"
- bash -lc "exec 0</dev/null && cd ${APPVEYOR_BUILD_FOLDER} && source setup.env && just test int git_mirror"
# Deal with long path limit of 46 characters in miniforge:
# https://github.com/conda/constructor/blob/1563c60c5a15f67d4a771d82b7801e8eb743cb9c/constructor/nsis/main.nsi.tmpl#L863-L864
- mkdir C:\tmp
- set TMP=C:\tmp & bash -lc "exec 0</dev/null && cd ${APPVEYOR_BUILD_FOLDER} && source setup.env && just test int just_install_functions"
# - bash -lc "exec 0</dev/null && cd ${APPVEYOR_BUILD_FOLDER} && source setup.env && just test int_appveyor"
# Appveyor only has Docker with linux containers in closed beta/"Premium" service :()
# on_failure:
# - bash -lc "start cmd //k echo hi; sleep 3600"
# on_finish:
# - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))