Travis builds on pushes, PRs and also tags (which for us are the same as releases). It would be great if there could be a set of tests which are specific to releases.
Suggestions:
--release flag for nf-core lint--release flag, when git activity happens on the master branch (check env var TRAVIS_BRANCH)On --release set:
latestBonus points for challenging ones:
If we always develop in a develop branch, these tests could instead just run whenever a push goes to the master branch. Then we have a chance to catch failures before we push the release.
I'd be even happier with that kind of best practices: Branches are good to keep things like the master branch stable. Just imagine we'd have merged my commits this morning without further testing ;-)
What do you have in mind? A --release flag for lint, that additionally checks the points above? We could then use the TRAVIS_BRANCH env var in order to differentiate between master and develop.
I was just thinking of getting Python to look for the env var or the git branch name. But a --release command line flag is even better as then it's easy to soft-test it before pushing. Then we can just have a conditional test that runs with this flag if it's on master...
exactly what i was thinking :)
I just updated your first comment @ewels, hope that's ok :)
Opened an issue, so we modify the travis.yml accordingly in the template: https://github.com/nf-core/cookiecutter/issues/16
I think move the bioconda thing into a separate issue, then this is done 馃憤
Nice job @sven1103!