Изначально у меня был только один .csproj
файл для сборки в конфигурации. По образу сборки я передавал проект на dotnet restore
(в моем случае мне также пришлось переделывать матричную логику, чтобы она зависела от переменной окружения appveyor_build_worker_image
):
environment:
matrix:
- job_name: VS 2019 build
appveyor_build_worker_image: Visual Studio 2019
- job_name: VS 2017 build
appveyor_build_worker_image: Visual Studio 2017
# ...
for:
# ...
-
matrix:
only:
- appveyor_build_worker_image: Visual Studio 2017
configuration: ReleaseCI2017
build:
project: 2017\2017.csproj
before_build:
- cmd: dotnet restore 2017\2017.csproj
Как только я это сделал, кажется, что все работает , даже без загрузки + установки .NET Core 3 в сценарии install
.
appveyor.yml
Тема на форуме поддержки AppVeyor
Но, как оказалось, мне нужно было создать два проекта для каждого изображения. Я решил эту проблему, используя дополнительные файлы решений для управления тем, какие проекты следует создавать под каждым образом, вместо того, чтобы полагаться на диспетчер конфигурации VS.
Затем я передаю каждое решение элементу build: project
и AppVeyor. будет пытаться создавать только конкретные проекты, на которые ссылается это решение.
appveyor.yml
Журнал AppVeyor .