-
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
Changing hashes in CI builds #8
Comments
One thing I noticed in the Docker files is that the installation of packages for the base image is done like this:
This is non-reproducible, as one is updating the apt repos every time one builds the image. This only affects the base image though. |
It's always possible to pin the versions to install. The other option is not to update the repos. I think the former is preferable, as it's more flexible. |
Agreed. However if NixOS is basically built for this functionality it may be easier to implement and maintain. I thought it was worth exploring as an option. |
You still need to pin the versions somehow and, more importantly, those versions need to be written explicitly in the docker file. Otherwise docker doesn't know when it is necessary to rebuild the corresponding layer. |
Just FYI, I did run the build a third time and it completed all three builds in about 13m finding all the packages in the cache as we would expect. https://github.com/ACCESS-NRI/build-ci/actions/runs/4975175610 This doesn't mean it is fixed, simply that if there are no underlying changes that force rebuilds it does work as expected. |
It seems we're not always hitting the cache.
This build took just over 2 hours:
https://github.com/ACCESS-NRI/build-ci/actions/runs/4946837403
and the previous build took under an hour:
https://github.com/ACCESS-NRI/build-ci/actions/runs/4944385277
Now the latter should have taken some time, it was building the new
access-om3
CI container, but the other run (4946837403) which ran afterwards, took even longer: theaccess-om3
build still took 44m, but it was theoasis3-mct
build that took over 2 hours.When
oasis3-mct
was fast it had 40 cache hits, the slow one none. It seems the hashes are changing, e.g.fast run:
https://github.com/ACCESS-NRI/build-ci/actions/runs/4944385277/jobs/8839800831#step:6:536
slow run:
https://github.com/ACCESS-NRI/build-ci/actions/runs/4946837403/jobs/8845431878#step:6:535
The
intel-oneapi-compilers-2021.1.2
package changed hash fromem65am6zce4ri47ysv7rsq6shv7fegps
to4kvg6tbzep2mwgiuwt64mmnaslqxhmme
. I don't know if that is the reason thepatchelf
hash changed, but given that every package was re-built that is a reasonable place to start.The text was updated successfully, but these errors were encountered: