CircleCI-Public / circleci-cli

Use CircleCI from the command line
https://circleci-public.github.io/circleci-cli/
MIT License
409 stars 232 forks source link

Cache circleci/circleci-cli Docker image #513

Open daniel-shuy opened 3 years ago

daniel-shuy commented 3 years ago

Current behavior:

The circleci/circleci-cli Docker image is not cached on the CircleCI hosts, which requires Orb builds to pull the image from Docker Hub each time (unless it so happens to run on a host that already has the image cached).

Expected behavior:

One would expect the circleci/circleci-cli Docker image to be cached on CircleCI hosts

gmemstr commented 3 years ago

Unrelated to the orb development kit, and the CLI as a whole.

Generally speaking, we do cache images on hosts once they've been pulled, but the likelyhood of landing on the same machine for subsequent builds is relatively low. I think ideally we switch the Docker image to use the new cimg/base image, which should allow it to share more cached layers with other images.

daniel-shuy commented 3 years ago

It would ease orb development as it would reduce Orb build times.

I see, I misunderstood how the cimg Docker images work, I thought that the cimg/* Docker images were cached on CircleCI hosts, but now I understand that they are all based on the cimg/base image, and therefore it is not the images that are cached but the layers. In that case, switching the base image from circleci/golang to cimg/go should help.