build: Cache images in unit tests (#36110)

Another attempt to stop Dockerhub from rate limiting us in CI. If this
works here, we'll try to add this caching to other relevant workflows.

https://github.com/openedx/axim-engineering/issues/1350#issuecomment-2591237325
This commit is contained in:
Brian Mesick
2025-01-15 10:05:07 -05:00
committed by GitHub
parent fd3cfacd32
commit 749b3ebc82

View File

@@ -73,15 +73,13 @@ jobs:
run: |
sudo apt-get update && sudo apt-get install libmysqlclient-dev libxmlsec1-dev lynx
# Try to log into DockerHub so that we're less likely to be rate-limited when pulling certain images.
# This will fail on any edx-platform fork which doesn't explicitly define its own DockerHub creds.
# That's OK--if we fail to log in, we'll proceed anonymously, and hope we don't get rate-limited.
- name: Try to log into Docker Hub
uses: docker/login-action@v3.3.0
continue-on-error: true
# We pull this image a lot, and Dockerhub will rate limit us if we pull too often.
# This is an attempt to cache the image for better performance and to work around that.
# It will cache all pulled images, so if we add new images to this we'll need to update the key.
- name: Cache Docker images
uses: ScribeMD/docker-cache@0.5.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
key: docker-${{ runner.os }}-mongo-${{ matrix.mongo-version }}
- name: Start MongoDB
uses: supercharge/mongodb-github-action@1.11.0