arfbtwn / banshee

http://banshee.fm/
MIT License
6 stars 4 forks source link

ci: Add basic Travis CI support #12

Open Carbenium opened 7 years ago

Carbenium commented 7 years ago

Travis CI builds the sln using msbuild in Release and Debug configurations

Still disabled projects:

B.YouTube pulls its dependecies on Google.GData.* using NuGet

Ref #4

arfbtwn commented 7 years ago

I notice the trusty distro tag, does that mean we can create a ppa (or whatever the current Ubuntu community project is) from our builds?

Carbenium commented 7 years ago

Yeah, packaging is something we should think about, too. In this case the distro tag ensures we build on Ubuntu 14.04. Without it, Travis would default to 12.04, which does not have all dependencies (and frankly is quite old).

nicman23 commented 6 years ago

i could probably make the makefiles for a basic deb ...

Carbenium commented 6 years ago

@arfbtwn I enabled some more projects to be built.

Do you want the autotools part in this PR? Although I don't really know how to deal with NuGet dependencies using that build system. So some help there would be really appreciated.

arfbtwn commented 6 years ago

I wouldn't worry about auto-tools for this one - I guess for NuGet packages we'd want to record the dependencies somewhere in the makefiles and have them restored during the configure phase but having the PackageReference elements seems like the way to go for MSBuild, I'm guessing the YouTube support libraries aren't available as distribution packages anymore?

Carbenium commented 6 years ago

I at least couldn't find any distribution packages. Even for gstreamer-sharp I couldn't find anything in the *.deb-world

nicman23 commented 6 years ago

werent there an issue to move away from gstreamer-sharp?

arfbtwn commented 6 years ago

@nicman23: yeah #6, it's request for comments though; when we raised it we were having some fundamental trouble with the managed engine that @Carbenium was able to patch in #8.

@Carbenium: No worries on the tricky to build/OS dependent stuff, we'll try and take care of some of it in the autotools version so let's remove the commented build script for gstreamer-sharp.

Somewhat unrelated but I had a look at setting up an Ubuntu PPA, might be a solution for getting the tricky dependencies built and packaged so we can install them on the CI build host and target machines in the usual way with apt.

This is looking really good, I'm not sure about the inter-extension dependency from the ubuntu sound menu to the notification area (in order to get the notify-sharp binding stuff) though - perhaps we should pull that internal define out into a small library (ala Mtp) so we can keep those separate? - if you have time to do the refactor and MSBuild changes then I'll follow up with an autotools commit for it.

Carbenium commented 6 years ago

[...] perhaps we should pull that internal define out into a small library (ala Mtp) so we can keep those separate? - if you have time to do the refactor and MSBuild changes then I'll follow up with an autotools commit for it.

I'll see what I can do ;)

arfbtwn commented 6 years ago

next time you rebase over this if you make 35d6cd9 a fixup for 89787b9 then I think it'll remove it from the history - looks like that's when the build script appeared :)

Carbenium commented 6 years ago

I'm going to take a final look (at least resolve the merge conflict :wink: ) this evening and get back to you on this.

Carbenium commented 6 years ago

@arfbtwn Alright, we have a green build again. This one is ready from my side.