version: 2
jobs:
  build:
    working_directory: ~/rabbithole
    docker:
      - image: python:3.6.0
    steps:
      - checkout
      - restore_cache:
          keys:
            - rabbithole-{{ .Branch }}-{{ checksum "requirements/common.txt" }}
            - rabbithole-{{ .Branch }}-
      - run: apt update
      - run: apt install -y gcc python-dev
      - run: pip install tox
      - run: tox
      - save_cache:
          key: rabbithole-{{ .Branch }}-{{ checksum "requirements/common.txt" }}
          paths:
            - ~/rabbithole/.tox

version: 2
jobs:
  build:
    working_directory: ~/rabbithole
    docker:
      - image: python:3.6.0
    steps:
      - checkout
      - restore_cache:
          key: rabbithole-{{ .Branch }}-
      - run: apt update
      - run: apt install -y gcc python-dev
      - run: pip install tox
      - run: tox
      - save_cache:
          key: rabbithole-{{ .Branch }}-{{ checksum "requirements/common.txt" }}
          paths:
            - ~/rabbithole/.tox

Use just a key to restore the cache
Use just a key to restore the cache

This should get the most recent cache for a given branch
