dotnet / netcorecli-fsc

[DEPRECATED] F# and .NET Core SDK working together

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Add mono in CI

enricosada opened this issue · comments

add mono (latest) to ci. The one used in vNext of VS on Mac.

@mmitche the dotnet-ci support mono? have it installed in some build image i can add to current job matrix? /cc @mrward @nosami

plan B: travisci, if support latest mono

@enricosada Yeah, it's installed on many images, though not all. I think it's 4.6.2 What are you looking for?

@mrward @nosami i really need a CI server somehow, i am now manually testing on azure vm, but is not the best. As a note the solution applyed here can be used also for visualfsharp repo, because they have the same issue moving forward /cc @cartermp @KevinRansom @dsyme .

@mmitche what i need is the latest alpha of mono (so 5.0.0.*), other teams doesnt have a similar situation? maybe a build worker with mono nightly (or alpha) installed?
Other possibile way to do it is apt install mono-dev in the docker container job maybe? i think i have two of these. but it will be slower

I think the easiest way would be to use an OSX worker on travis and install a mono .dmg on there

last time i checked travis was not enabled in this dotnet org.
i have seen a notification about appveyor was enabled.
but let me check

@enricosada Is this a nightly shifting version of mono? On Linux only or OSX too?

@mmitche i think the latest mono alpha can be enough if is possibile to have always the alpha (current 5.0 Alpha 3 (5.0.0.61) is bugged for my usage, but next drop will be ok hopefully).
Having a nightly may help to prevent regressions (already happened, that's why i'd like mono on CI)
but @nosami @mrward can help more about choosing the right target.

Is ok for linux only (or mac, what's easiest), i just like to have at least one mono 5.0.* on CI

@enricosada Are you running your testing in a docker container? IMO, I believe on Linux, you should be able to simply apt-get the package in the beginning of your CI process. On mac this is more difficult because we need to be able to remove the packages after the run.

@enricosada The only thing we might need to change over is to an image that doesn't require a password for sudo so that the package installs properly.

@enricosada Last question, this is only ubuntu...or...?

@mmitche only ubuntu ok, but not 16.10 (because f# doesnt work there), if possibile 14.04.
Or any os who support .NET Core Runtime 1.0 because f# doesnt work if just .NET Core runtime 1.1 is installed

kk. And to install mono-dev...do I need to add a new package feed (sorry for all the questions)

@mmitche i followed the instruction in http://www.mono-project.com/download/alpha/#download-lin for Ubuntu 14.04.

so there is also

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/ubuntu alpha-trusty main" | sudo tee /etc/apt/sources.list.d/mono-official-alpha.list
sudo apt-get update

and after sudo apt-get install mono-devel was ok

Dunno if there is a better way /cc @nosami

And np about all the questions. Thanks a lot for help!

awesome. Okay i'm going to add a new VM template that will install the latest. This isn't our desired state in the end, but it's a stopgap to solve the immediate issue. Better VM desired state is being worked on next sprint. We could potentially also use docker for this long-term.

Awesome!
dunno if is easier, but nosami previously commented about osx and dmg in #78 (comment) . maybe is easier or not.

Thank a LOT for help!

@enricosada Testing it manually right now.

@enricosada Okay. I think I got it. Should we enable this as an additional build platform for the CI in this repo?

@mmitche yes, how can i do that?

Closing, development is moving to microsoft/visualfsharp repo, ref #115

Testing is done manually atm, test suite already support it.