CircleCI Ideas

Go Module Proxy

We spend a lot of time in our builds fetching remote go modules and moving them around. Having a pull-through proxy in the circle network would give a huge benefit to our build speed.

  • Avatar32.5fb70cce7410889e661286fd7f1897de Guest
  • Jul 2 2019
  • New
  • Attach files
  • Avatar40.8f183f721a2c86cd98fddbbe6dc46ec9
    Guest commented
    02 Jul 19:00

    This hurts a _lot_ for go builds inside docker containers. There's a ton of custom code in the build jobs I work on to try and copy around go module cache into the container which is quite slow to try and cache as much as possible as re-cloning all the dependencies is very expensive. It does look like there are some solid open source implementations of the go module cache server nowadays (ex. https://docs.gomods.io/). don't see an easy way to run that myself though in parallel to running docker container builds + non-docker container builds so that things can be fast as much as possible.