-
Notifications
You must be signed in to change notification settings - Fork 594
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
Update the GATK base image to a newer LTS ubuntu release #8610
Conversation
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 ok, I have a question, but the tests are the real validation
scripts/docker/gatkbase/Dockerfile
Outdated
ENV CONDA_PATH /opt/miniconda | ||
# Following the instructions from https://docs.conda.io/projects/conda/en/latest/user-guide/install/rpm-debian.html | ||
# Note that this *does* install just miniconda, despite the package being named "conda" | ||
RUN curl https://repo.anaconda.com/pkgs/misc/gpgkeys/anaconda.asc | gpg --dearmor > /tmp/conda.gpg && \ |
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.
I hate conda.
scripts/docker/gatkbase/Dockerfile
Outdated
apt -y autoclean && \ | ||
apt -y autoremove && \ | ||
. /opt/conda/etc/profile.d/conda.sh && \ | ||
conda -V |
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.
Do you need to delete the conda trash that we were removing before?
all the .a and .pyc files it makes when it builds stuff. (including itself)
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.
I've reverted all these changes
34f373a
to
d8fe231
Compare
Github actions tests reported job failures from actions build 7147397849
|
This h5diff error is the same thing I saw when I tried to just bump the version. We must be either getting a new version of it? |
Oh, it's a python problem.
Of course it is. |
|
027a2a9
to
50cfd0b
Compare
Github actions tests reported job failures from actions build 7153514898
|
@lbergelson So, the test failures are in I think our only option is to capture the outputs of these tests, and ask @samuelklee to confirm that the differences do not indicate an actual regression. |
Github actions tests reported job failures from actions build 7153790937
|
@droazen I hacked one of the TrainVariantAnnotationsModelIntegrationTest cases to run in your Docker (only necessary because it seems like
Looks pretty negligible to me! 😝 Probably a result of the native code being called by the python/ML packages used in these tools; even minor changes in the compilers across Ubuntu versions might introduce differences like these. A quick fix might be to replace all system calls to Sorry for the inconvenience! I think the exact-match test worked as intended here, but I probably could've put in better messaging originally. Unfortunately, it's a bit awkward to grab the output of system commands. And thanks for dealing with conda again (a necessary evil, unless we want to reimplement the entire field of machine learning in Java)! I'll experiment to see if I can't get the more recent version used in #8561 (23.10) working with the current environment---probably just some minor tweak to the pip version is needed to get around the error you're seeing. You could try unpinning it to see what gets pulled in. It would be great if we could get off the old version of conda, since more recent versions using the libmamba solver are MUCH faster and would cut down all of our Docker build times substantially. |
Thanks @samuelklee for the Saturday night reply -- you rock! I will try running the tests with an epsilon and see if that does the trick. If it does, I might make another attempt at the new conda version to get the fast solver, since the current one is definitely annoyingly slow. |
…ationsIntegrationTest and TrainVariantAnnotationsModelIntegrationTest
Github actions tests reported job failures from actions build 7160404020
|
Github actions tests reported job failures from actions build 7165443572
|
f705704
to
5934691
Compare
@droazen see how to update to conda 23.10.0 with the correct pip over at #8614. This shaves a couple of minutes off the Docker build, but more importantly, the faster solver should make life much easier for devs doing any updates to the conda environment in the future. (For example, trying to experiment with the environment updates made in #8561 was very painful with conda 23.1.0 currently in the base image---lots of hanging/failed solves.) 23.11.0 was just released, but it seems that there were some hiccups in the associated libmamba release, so let's stick with the last version for now. |
Thanks @samuelklee , I will incorporate your conda update into this branch, now that we've dealt with the test failures! I patched the VETS test code to include the h5diff (and diff) output in the exception messages when one of these commands fails, and switched to the existing As you suspected/hoped, all the differences were tiny. When you have a chance, could you please review these changes to the VETS tests and let me know if you spot any issues? |
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.
Tests and results LGTM, just a few extra comments/questions. Thanks for cleaning up the system-command stuff too!
python3 \ | ||
python3-pip \ |
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.
Is this system pip required for anything?
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.
I thought it might be useful to have a pip in the base environment, but I can remove it if you think it might cause problems?
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.
Should be fine, just curious!
exit 1 | ||
fi | ||
|
||
IMAGE_VERSION=$1 |
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.
The build_docker_base.sh
script currently has an (outdated) image version hardcoded in---maybe parametrize it there as well?
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.
Yes, I am definitely going to update the old build script before merging this, and also add a separate script to release a pre-staged base image to the official location
Github actions tests reported job failures from actions build 7173178607
|
No description provided.