Continuous integration support

Issue #226 resolved
Simon Ye
created an issue

It would be useful to add CI for this project since there are decent tests and we want to avoid breakage. One option among others is codeship.com, another popular site that supports bitbucket is drone.io. I played around with codeship.com and it seems fine. Notably - it doesn't require placing a file in your repo like .travis.yml which I think is a horrible practice.

Unfortunately it doesn't have automatic pull request testing but I don't think any provider has it for bitbucket, but it looks like somebody did try making an easily deployable one on heroku https://blog.codeship.com/build-status-bitbucket/.

Comments (10)

  1. Johannes Köster

    Indeed, I am a big fan of CI and use it for my Rust projects on Github. According to this issue: https://bitbucket.org/site/master/issues/8548 pull request support should come natively in less than 8 weeks, so no need to deal with workarounds.

    Apart from that, codeship looks better for me (e.g. also private builds in the free version).

    So, if you agree, I will set up codeship and we wait the 8 weeks to have CI in the pull requests natively?

  2. Johannes Köster

    Snakemake uses the new bitbucket pipelines for CI. Currently, it seems to be invisible to non-team members (although I am in contact with the team and try to convince them to change that). However, if you have a fork, you should be able to enable bitbucket pipelines for the fork. There is already a config file in the snakemake repo, so it should be only a matter of activating it in the settings.

  3. endrebak

    You were correct: to get the CI running all I needed to do was

    1) clone the repo, 2) push a change to trigger the CI pipeline, 3) click the pipelines logo in the repo

    It seems like using pipelines will start costing something from Jan 2017, which is bad if you hope to get others to contribute.

  4. Log in to comment