-
Notifications
You must be signed in to change notification settings - Fork 3k
[WIP] - Proof of concept - optimising CI build #1631
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
[WIP] - Proof of concept - optimising CI build #1631
Conversation
@trallard I merged the PR where tests are run for all dependent images. |
def task_docker_load_images() -> dict[str, Any]:
"""
Load docker images from previously downloaded artifacts 📥
Since we are running in a CI environment and within a separate job than
the one where the images are built, we need to load the images from the
`CI_IMAGE_TAR`
"""
def check_image():
assert Utils.IS_CI
assert (
Utils.CI_IMAGE_TAR.exists()
), f"not found images archive in: {Utils.CI_IMAGE_TAR}"
return dict(
name="load_images",
doc="Load and inspect Docker images",
actions=[
check_image,
Utils.do("docker", "load", "--input", Utils.CI_IMAGE_TAR),
# TODO: @trallard to add a more robust inspect
(Utils.inspect_image, [Utils.get_images()[-1]]),
Utils.do("docker", "images"),
],
) |
Fail of |
@trallard I merged some simple parts of this PR to master, to make this PR a bit more focused. No pressure here, I would like to know to better understand the current situation ❤️ |
Hey @mathbunnyru I have had some deadlines and stuff at work so had not had a chance to finish this off. I do plan to finish this soon Something I have been thinking of is actually deferring deleting stuff in the Makefile since we have some bits that are reused on other workflows and I do not want to break things unintentionally |
Follow up
|
No, this PR only has the necessary parts. |
I'm closing this PR, because approach with self-hosted runners and many jobs seems to work fine. |
Related to #1407
Notes:
Make
to using doit some of the advantages of this are:Done:
dodo.py
fileQuestions
TODO:
Updated by Ayaz:
Moved
Add types to the
dodo.pyfile
toDone
section.