IslandzVW / halcyon

InWorldz Halcyon 3d virtual reality world simulator
BSD 3-Clause "New" or "Revised" License
21 stars 26 forks source link

Ci integration #388

Closed kf6kjg closed 7 years ago

kf6kjg commented 7 years ago

How would you like your compilation served? This iteration is just Windows .NET AppVeyor builds and works with runprebuild.bat if it exists, and skips it if it does not.

The version is pulled from the resulting OpenSim.Framework.Servers.dll, so should reflect real-world versioning of Halcyon.

It is set to build on pushes to every branch. This can be restricted to any specific branch or set thereof.

I can also set it up to push the result to a draft GitHub release if it is a tagged commit.

See example build here: https://ci.appveyor.com/project/kf6kjg/halcyon And see example resulting artifact ZIP at: https://ci.appveyor.com/project/kf6kjg/halcyon/build/artifacts

appurist commented 7 years ago

I love seeing progress like this, on the goals that we all know we want to make progress on. CI and CD are clear goals here.

I also like this commit because it is confined to a single file, that has no impact on anything else in the project.

One concern I have is how out of date it could get very quickly with other commits. We had a full nuget-based build in a branch but we had to postpone that merge due to a couple of issues that popped up with limited time. Once the missing prim fix goes out in 0.9.35, I think we need to return to the nuget work before the branches get too far out of sync and we loose that work. At that time, the .sln file will be the "hot" original, and runprebuild will be gone. I think this PR is nicely set up for that being optional so we're good, but any commits related to the build process will need to be aware of this file and the CI process. We can discuss the setup for that separately.

I think this PR is good to go, at least in terms of it not having impact on anything done elsewhere, but may need additional commits in the future as we update the build process (or may not!).

kf6kjg commented 7 years ago

Actually I designed it to seamlessly handle that branch. :) Didn't test, so I'm not 100% confident, but it should.

appurist commented 7 years ago

"it is confined to a single file, that has no impact on anything else in the project."

Merging. ;)