it compiles... ship it! :)
Yesterday, I finally managed to get the Travis CI build running. This was a bit tricky, because Travis CI runs on Linux with xbuild (not msbuild) and uses the mono compiler.
Because of Linux, the file names are case-sensitive, which is different from Windows. I also think that calling msbuild.exe in the project file is not possible, or I'm just not smart enough ;)
I had to put some conditionals to avoid Travis CI to call some build scripts (they transform and pack some javascript), e.g. here:
<Target Name="TransformBabel" AfterTargets="Build" Condition=" '$(TRAVIS)' == '' ">
<Exec Command=""$(MSBuildToolsPath)\MSBuild.exe" $(ProjectDirectory)TransformBabel.proj /p:OutputPath=$(OutputPath) /nr:false" />
</Target>
<Target Name="CopyScripts" AfterTargets="TransformBabel" Condition=" '$(TRAVIS)' == '' ">
<Exec Command=""$(MSBuildToolsPath)\MSBuild.exe" $(ProjectDirectory)CopyScripts.proj /p:OutputPath=$(OutputPath) /nr:false" />
</Target>
Then I also wasted some time trying to add a build parameter for Travis CI. This didn't work, and later I found out msbuild is able to resolve normal environment variables just like parameters. So, instead I could have simply added an environment variable in the Travis CI config. However, I found out that Travis CI adds some default environment variables, so I used just one of them - "TRAVIS".
Another issue I had: nuget pack doesn't seem to be implemented on xbuild/mono (whatever). Because I'm not pushing nuget packages by Travis CI, I deactivated that for "TRAVIS" too.
Anyways... now I'm happy that it builds. With a next step I will add the nunit test runner, so we see if they are still successful for each push or pull request.