How we cut 10 minutes off our deploy time by using storage buckets

Using GAE
  1. A complete deploy time of 26 minutes

The results

The change itself was an update to our CircleCI config file and it resulted in the below flow:

Using the bucket
  1. Complete deploy time down from 26 minutes to 14 minutes. This allows developers to move on to the next task faster.
  2. It has cut ~$60/month off our bill.

Any issues?

We had a number of concerns which we had to settle before we could make the change with confidence, here are those concerns and our answer to them.

  • Automated fix; re-run CircleCI deploy job for a previous (and successful) commit, so the hash and index are updated. This would take a minimum of 8 minutes.
location / { 
rewrite ^ /<bucket-name>/index.html break;
proxy_pass <cdn-url>;
}

Overall

We are really pleased we made the decision to go ahead and use a storage bucket over GAE. As you can see it is a simpler architecture (with less moving parts) which makes it easier to manage, as well as more time efficient.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store