-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Try setting up CI #142
Try setting up CI #142
Conversation
One note as this starts to take shape: so far, this only runs the tests for slow-odgi. It should eventually also run the tests for the data generator and the new tests for the parser added in #136. |
By testing only on a smaller set of (not the largest) input GFAs.
I think this is ready to go (i.e., we can merge if @anshumanmohan & @susan-garry approve)! The point is to make sure our tests that are currently pass keep passing, and we don't accidentally break some tests without noticing (which has happened a few times!). It will also hopefully give us some confidence to do some refactoring, and even changing the test setup, because we'll get feedback if we do anything wrong. This CI setup tests only two things: The only tricky part of this CI setup was running odgi, without compiling it from source (which would be real slow). What I ended up doing was using a preexisting Docker container for odgi. So whenever our tests would invoke a real |
GFA_URL := https://raw.githubusercontent.com/pangenome/odgi/ebc493f2622f49f1e67c63c1935d68967cd16d85/test | ||
GFA_ZIP_URL := https://s3-us-west-2.amazonaws.com/human-pangenomics/pangenomes/scratch/2021_05_06_pggb/gfas/chr8.pan.gfa.gz | ||
|
||
# A smaller set of test inputs for faster runs. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤩
branches: | ||
- main | ||
|
||
jobs: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice, this feels a lot like our Dockerfile. Which is a good thing. In fact maybe in the future the Dockerfile should learn from your system of sourcing and running odgi.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, totally. I stole some of the stuff directly from the Dockerfile. Someday merging these things could be cool, but I have never really figured out the way to do this in general for other projects (i.e., to use a "base" Dockerfile twice, once for the "real" Dockerfile and once for the CI).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great, Adrian. Thank you once again for figuring this out!
Excellent; merging this now! |
A totally not ready, experimental approach to #53. Nothing to see here yet.