From 4f1471458d828ab65493aa12573a79a609501166 Mon Sep 17 00:00:00 2001
From: Jean-Paul Calderone <exarkun@twistedmatrix.com>
Date: Tue, 9 Jul 2019 10:04:55 -0400
Subject: [PATCH] Do a better job of yaml and also refactor pip-sync usage

---
 .circleci/config.yml | 28 ++++++++++++++++++----------
 1 file changed, 18 insertions(+), 10 deletions(-)

diff --git a/.circleci/config.yml b/.circleci/config.yml
index dd18a99..bd3603b 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -14,18 +14,24 @@
 
 version: 2
 
-jobs:
-  sharing:
-    - run: &PREPARE_VIRTUALENV
-        name: "Prepare virtualenv"
-        command: |
-            virtualenv venv
-            . venv/bin/activate
-            pip install --upgrade certifi pip pip-tools
+aliases:
+  - &PREPARE_VIRTUALENV
+    run:
+      name: "Prepare virtualenv"
+      command: |
+        virtualenv venv
+        . venv/bin/activate
+        pip install --upgrade certifi pip pip-tools
+        pip-sync ${PIP_SYNC_REQUIREMENTS}
 
+jobs:
   documentation:
     docker:
       - image: "circleci/python:3.7"
+
+    environment:
+      PIP_SYNC_REQUIREMENTS: "docs/requirements.txt"
+
     steps:
       - "checkout"
 
@@ -35,7 +41,6 @@ jobs:
           name: "Sphinx Documentation Build"
           command: |
             . venv/bin/activate
-            pip-sync docs/requirements.txt
             sphinx-build docs/source docs/build
 
       - store_artifacts:
@@ -45,6 +50,10 @@ jobs:
   tests:
     docker:
       - image: "circleci/python:3.7"
+
+    environment:
+      PIP_SYNC_REQUIREMENTS: "requirements.txt requirements-tests.txt"
+
     steps:
       - "checkout"
 
@@ -54,7 +63,6 @@ jobs:
           name: "Run Test Suite"
           command: |
             . venv/bin/activate
-            pip-sync requirements.txt requirements-tests.txt
             pip install .
             coverage run -m twisted.trial _secureaccesstokenauthorizer
 
-- 
GitLab