Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Visual Studio 2017 RC #1179

Closed
FeodorFitsner opened this issue Nov 16, 2016 · 552 comments
Closed

Visual Studio 2017 RC #1179

FeodorFitsner opened this issue Nov 16, 2016 · 552 comments

Comments

@FeodorFitsner
Copy link
Member

FeodorFitsner commented Nov 16, 2016

After installing VS 2017 RC on top of VS 2015 base image:

  1. Install AppVeyor vstest.console logger and MSTestV2 support libraries

  2. Replace MSBuild in PATH with MSBuild 15.0

  3. Install latest NuGet 3.5

  4. Pre-cache .NET Core:

    cd %temp%
    md app1
    cd app1
    dotnet new
    dotnet restore
    dotnet run

  5. Install CMake 3.7.1

  6. Re-install Git and Git LFS

  7. Disable Bonjour Service and IpOverUsbSvc and services:

    Set-Service -Name 'Bonjour Service' -StartupType Disabled
    Set-Service -Name 'IpOverUsbSvc' -StartupType Disabled

  8. Apply workaround for NuGet Build Tasks

@FeodorFitsner FeodorFitsner added this to the 6-nov-2016 milestone Nov 16, 2016
janhohenheim referenced this issue in janhohenheim/Hippocrates Nov 18, 2016
Change this to VS15 when appveyor supports it
@niemyjski
Copy link

We really really need this, any updates not this?

@ghuntley
Copy link

ghuntley commented Nov 22, 2016

@madskristensen
Copy link

Is the image created to include everything the "Visual Studio 2015" image has + Visual Studio 2017 RC with SDK?

@FeodorFitsner
Copy link
Member Author

Well, this is what we were going to do - install VS 2017 RC on top of VS 2015 image. Would that work or you have other suggestions?

@clairernovotny
Copy link

One suggestion might be to include the build number in the image name... the version of the RC was updated two days ago, which is later than the one released last Wed. Might be safe to assume there'll be more, so there'll either need to be a way to identify them or something to keep an eye on the updates and roll out new images.

@FeodorFitsner
Copy link
Member Author

I think we'll be maintaining a single Visual Studio 2017 RC image and update VS 2017 in it as soon as new updates appear.

@FeodorFitsner
Copy link
Member Author

We've got a build worker image with Visual Studio 2017 RC installed. Before making it available for everyone we'd like to do some for of "private beta", so please let us know if you want this image to be added under your account (either post your AppVeyor account name here or send to team@).

@madskristensen
Copy link

@FeodorFitsner I would love to give it a spin. Account name "madskristensen"

@andrewvk
Copy link

andrewvk

@FeodorFitsner
Copy link
Member Author

FeodorFitsner commented Nov 23, 2016

Image named Visual Studio 2017 RC has been added to both accounts.

@ejsmith
Copy link

ejsmith commented Nov 23, 2016

ejsmith

@FeodorFitsner
Copy link
Member Author

@ejsmith - done

@madskristensen
Copy link

@FeodorFitsner It works great! Just built an extension successfully. Thanks

@georgeduckett
Copy link

Yes please, georgeduckett

@madskristensen
Copy link

@FeodorFitsner I have an extension with a unit test project and when AppVeyor builds it, I get this issue:

Error: Could not find a test logger with URI or FriendlyName 'Appveyor'

@ig-sinicyn
Copy link

ig-sinicyn commented Nov 23, 2016

@FeodorFitsner

ours failed with

vstest.console /logger:Appveyor "C:\projects\codejam\PerfTests\src-MSTest\bin\Release\CodeJam.PerfTests.MSTest.dll" "C:\projects\codejam\PerfTests\tests-MSTest\bin\Release\CodeJam.PerfTests-Tests.MSTest.dll"

Microsoft (R) Test Execution Command Line Tool Version 15.0.0.0
Copyright (c) Microsoft Corporation.  All rights reserved.
Error: Could not find a test logger with URI or FriendlyName 'Appveyor'.
Command exited with code 1

Get-ChildItem *.PerfTests.log -r | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
Uploading artifact CodeJam-Tests.Performance.ImportantOnly.PerfTests.log (39,279 bytes)...100%

Appveyor.yml is here.

@FeodorFitsner
Copy link
Member Author

Thanks, will take a look.

@janhohenheim
Copy link

janhohenheim commented Nov 23, 2016

Can I try it too? I'm logged into AppVeyor with this Github account.

@FeodorFitsner
Copy link
Member Author

@georgeduckett, @SirRade - added

@georgeduckett
Copy link

@FeodorFitsner, just tried compiling my extension which uses some C#7 syntax and it fails: https://ci.appveyor.com/project/georgeduckett/teamcoding I believe I've set the environment correctly. Is there something else I need to do?

@FeodorFitsner
Copy link
Member Author

Add this to project's appveyor.yml:

image: Visual Studio 2017 RC

@georgeduckett
Copy link

@FeodorFitsner That's done the trick, thanks. Any reason why setting the Build Worker Image in Settings for the project didn't work?

@FeodorFitsner
Copy link
Member Author

because if it's appveyor.yml then all settings should be there - UI settings are ignored.

@georgeduckett
Copy link

Ahh ok, thanks.

@TcT2k
Copy link

TcT2k commented Nov 24, 2016

I would like to try the beta. (using this github account)

@janhohenheim
Copy link

@FeodorFitsner Works great so far, thank you very much.
I first had the same trouble that @georgeduckett had. The solution is not very intuitive.

@caitchison
Copy link

I would love to be in this beta. Account name is trinocity

@csmager
Copy link

csmager commented Mar 11, 2017

@kzu I didn't know that existed. I see you're the owner. Will give it a look and see if we should go that way. I think the required VSIX still should be installed if it's intended that you should be able to use the installed version on the worker image, however.

@kzu
Copy link

kzu commented Mar 11, 2017

I'm just redistributing in a convenient way the binaries, that's all. I did for this same reason, avoiding requirements on CI bots

@FeodorFitsner
Copy link
Member Author

All right, WiX extension for VS 2017 was missing. It should be fine now.

@litichevskiydv
Copy link

@FeodorFitsner, I have just tried new Visual Studio 2017 image (https://ci.appveyor.com/project/litichevskiydv/tipsandtricks/build/1.0.21) and in TESTS tab I see "The build job has not produced any test results", but in CONSOLE I see "Total tests: 88. Passed: 88...". Previously everything worked fine (https://ci.appveyor.com/project/litichevskiydv/tipsandtricks/build/1.0.6). Please, help.

@bhagvan
Copy link

bhagvan commented Mar 12, 2017

@FeodorFitsner can you please add a custom image with VS 2017 + VS 2015 to my account please
account name is novitas

@csmager
Copy link

csmager commented Mar 12, 2017

@bhagvan both are installed in the Visual Studio 2017 image - see this comment and the list of pre-installed software for more detail of what's on each VM.

@roji
Copy link

roji commented Mar 12, 2017

@FeodorFitsner confirm successful MSI build with Wix 3.11 RC, thanks for the superb reactivity!

@bhagvan
Copy link

bhagvan commented Mar 12, 2017

@csmager thanks for the quick response ... i will look into my build scripts

@jbogard
Copy link

jbogard commented Mar 13, 2017

@FeodorFitsner does the VS 2017 image have any version of SQL Server installed? Even LocalDB would work.

@JSkimming
Copy link

JSkimming commented Mar 13, 2017

@jbogard I believe it does, we use the Azure storage emulator, when it starts I noticed it logs the following:

"C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator\AzureStorageEmulator.exe" start
Windows Azure Storage Emulator 5.0.0.0 command line tool
Autodetect requested. Autodetecting SQL Instance to use.
Looking for a LocalDB Installation.
Probing SQL Instance: '(localdb)\MSSQLLocalDB'.
Found a LocalDB Installation.
Probing SQL Instance: '(localdb)\MSSQLLocalDB'.
Found SQL Instance (localdb)\MSSQLLocalDB.
Creating database AzureStorageEmulatorDb50 on SQL instance '(localdb)\MSSQLLocalDB'.
Granting database access to user APPVYR-WIN\appveyor.
Database access for user APPVYR-WIN\appveyor was granted.
Initialization successful. The storage emulator is now ready for use.
The storage emulator was successfully started.

Here's the full list of install software:

https://www.appveyor.com/docs/build-environment/#pre-installed-software

If you want to start SQL express, here's the documentation to follow:

https://www.appveyor.com/docs/services-databases/#sql-server-2016

@FeodorFitsner
Copy link
Member Author

FeodorFitsner commented Mar 14, 2017

All - thank you very much for your efforts in testing Visual Studio 2017 RC image. I'd like to inform you that we are going to discontinue Visual Studio 2017 RC image starting next week (March 20).

Please switch to Visual Studio 2017 image if not done already.

@seburgi
Copy link

seburgi commented Mar 15, 2017

Currently I am not able to RDP into machines running on the new 2017 image. I tried 2015 machines and there it works. Can somebody confirm this behavior?

@onqtam
Copy link

onqtam commented Mar 15, 2017

Previously I could do builds with VS 2008/2010/2012/2013/2015 all at the same time.

Now I want to incorporate 2017 as well. To do that I need to set the image to Visual Studio 2017 but then the builds for 2008/2010/2012... all fail because the newest image doesn't have all those previous VS versions.

I tried adding image to the build matrix like this:

environment:
  matrix:
  - platform: x64
    image: Visual Studio 2015
  - platform: x64
    image: Visual Studio 2017

but it doesn't seem to work - only when setting it globally does it actually set anything - and if I set 2017 globally - then there are no older VS versions.

How can I tackle this problem?

@micbou
Copy link

micbou commented Mar 15, 2017

@onqtam You need to set the APPVEYOR_BUILD_WORKER_IMAGE environment variable:

environment:
  matrix:
  - platform: x64
    APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
  - platform: x64
    APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017

@onqtam
Copy link

onqtam commented Mar 15, 2017

@micbou omg Thanks! just tested it and it worked!

@mcintyre321
Copy link

Does anyone know a good way to set the <PackageVersion> in csproj to the AppVeyor build no? All my packages are building as foo.1.0.0.nupkg

@jbogard
Copy link

jbogard commented Mar 18, 2017 via email

@JSkimming
Copy link

@mcintyre321 I got it working on a project I manage. Essentially:

msbuild <proj path> /t:pack /p:Configuration=%CONFIGURATION%;PackageVersion=%APPVEYOR_BUILD_VERSION%;IncludeSource=true

Here's the documentation.

@mcintyre321
Copy link

Thanks @jbogard and @JSkimming

I brute forced it with this beforeBuild script in the end

nuget restore

$configFiles = Get-ChildItem . *.csproj -rec
$versionString = "<PackageVersion>" + $env:APPVEYOR_BUILD_VERSION + "</PackageVersion>"
foreach ($file in $configFiles)
{
    (Get-Content $file.PSPath) |
    Foreach-Object { $_ -replace "<PackageVersion>1.0.0</PackageVersion>", $versionString  } |
    Set-Content $file.PSPath
}

@FeodorFitsner
Copy link
Member Author

Visual Studio 2017 RC image has been removed. Please switch to Visual Studio 2017 image.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests