mskcc / facets

Algorithm to implement Fraction and Copy number Estimate from Tumor/normal Sequencing.
137 stars 65 forks source link

CI: Enable Travis CI, AppVeyor CI and codecov.io #20

Open HenrikBengtsson opened 7 years ago

HenrikBengtsson commented 7 years ago

If you enable / active the following (at their individual sites):

for the mskcc GitHub organization, then it'll be possible to run continuous integration (and free) for this package. This way you can automatically test on Linux, macOS and Windows and get test code coverate reports. It's really handy and quite simple to get going, but you need to enable the above. I can PR the config files after this.

Click on the badges at https://github.com/HenrikBengtsson/globals for example what these services provide / reports on.

veseshan commented 7 years ago

I need to talk to the powers that be for this.

HenrikBengtsson commented 7 years ago

Just a FYI; it is of course possible to fork this repository and enable these CI services for the fork, but I think it would add lots of value if these were running for mskcc/facets itself. It's all free.

HenrikBengtsson commented 7 years ago

Bumping this one, because it's helpful and adds lots of trust for the end user. Please.

HenrikBengtsson commented 7 years ago

Sure. It's much easier than what it appears at first. As a start, go to https://travis-ci.org/ and sign up / in via GitHub AUTH2. Then, on Travis, enable the mskcc/facets repos for checking (it needs to be done from an account that has management/ownership of the mskcc/facets repos.

When this is done, I can try to PR the .travis.yml file for doing the actual R CMD check checking etc.

veseshan commented 7 years ago

Henrik -

I had setup the travis build (https://travis-ci.org/veseshan/facets). But haven't set the badge stuff. This is where I would need the .travis.yml I presume.

Thanks, Venkat

HenrikBengtsson commented 7 years ago

mmkay. So, is https://github.com/mskcc/facets (this one) the main repository for facets or https://github.com/veseshan/facets? It looks like it's mskcc/facets (because your's is a fork). If so, then you should enable ditto on Travis, i.e. https://travis-ci.org/mskcc/facets - and that's what everyone should look to.

HenrikBengtsson commented 7 years ago

Also, if you don't have management / ownership of the GitHub mskcc organization, I would personally make veseshan/facets the main repos (and have mskcc/facets fork yours). Not having enough ownership rights of the main repos (of which you're the main developer) is quite painful when it comes to connecting to external services such as Travis CI, AppVeyor CI, codecov. It's doable, but adds unnecessary overhead.

veseshan commented 7 years ago

I have the Travis CI badge on now. Seems like I have the required privileges to set it up.

HenrikBengtsson commented 7 years ago

Great.

I see you're using my .travis.yml template which means you're already running code coverage on the package. You can see this running at the end of the Travis job labelled /w covr. Although it reports 0% now, I would still add the badge:

[![codecov.io](https://codecov.io/github/mskcc/facets/coverage.svg?branch=master)](https://codecov.io/github/mskcc/facets?branch=master)

to the README to share. You should be able to run small quick unit tests/*.R tests that quickly bring up the coverage. See Issue #35.

HenrikBengtsson commented 7 years ago

Also, enable ditto for AppVeyor CI to check your package on Windows. Add appveyor.yml to the repos root and modify it so it installs the packages facets needs in order to build and check. Copy

https://github.com/HenrikBengtsson/doFuture/blob/master/appveyor.yml

and adjust the package installations needed.