diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 288d9bd68ea5ba84008450a6f1e5668ae847dbd8..7ad2a86eaa75e8034a74f92566c1d76da9f08d8b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,27 +1,82 @@
 stages:
-  - core
-  - extras
+  - core-build
+  - core-wheels
+  - extra-build
+  - extra-wheels
 
-core_linux_27:
-  stage: core
+
+# ---------
+# Templates
+# ---------
+
+.core_build_template: &core_build_job
+  stage: core-build
   before_script:
     - git clean -ffdx
   script:
-    - ./build.sh core.txt 2.7
-  after_script:
-    - git clean -ffdx src
+    - ./build.sh core.txt ${PYTHON_VERSION}
+  artifacts:
+    expire_in: 1 week
+    paths:
+      - _ci/
+      - dist/
+
+.core_wheels_template: &core_wheels_job
+  stage: core-wheels
+  only:
+    - master
+  script:
+    - ./_ci/wheels.sh
+
+.extra_build_template: &extra_build_job
+  stage: extra-build
+  script:
+    - ./build.sh extra.txt ${PYTHON_VERSION}
+  artifacts:
+    expire_in: 1 week
+    paths:
+      - _ci/
+      - dist/
+
+.extra_wheels_template: &extra_wheels_job
+  stage: extra-wheels
+  only:
+    - master
+  script:
+    - ./_ci/wheels.sh
+
+
+# -------------
+# Build Targets
+# -------------
+
+
+# Python 2.7 on Linux
+core_build_linux_27:
+  <<: *core_build_job
+  variables: &core_build_linux_27_variables
+    PYTHON_VERSION: "2.7"
   tags:
     - conda-linux
 
-extras_linux_27:
-  stage: extras
+core_wheels_linux_27:
+  <<: *core_wheels_job
   dependencies:
-    - core_linux_27
-  before_script:
-    - git clean -ffdx
-  script:
-    - ./build.sh extras.txt 2.7
-  after_script:
-    - git clean -ffdx
+    - core_build_linux_27
+  tags:
+    - conda-linux
+
+extra_build_linux_27:
+  <<: *extra_build_job
+  variables: *core_build_linux_27_variables
+  dependencies:
+    - core_build_linux_27
+  tags:
+    - conda-linux
+
+extra_wheels_linux_27:
+  <<: *extra_wheels_job
+  dependencies:
+    - extra_build_linux_27
   tags:
     - conda-linux
diff --git a/extras.txt b/extras.txt
deleted file mode 100644
index ad66dd5abfa5317b4cc10bdf015377c9d82289b4..0000000000000000000000000000000000000000
--- a/extras.txt
+++ /dev/null
@@ -1,33 +0,0 @@
-bob.db.bio_filelist
-bob.db.banca
-bob.db.biosecure
-bob.db.caspeal
-bob.db.frgc
-bob.db.gbu
-bob.db.lfw
-bob.db.mobio
-bob.db.multipie
-bob.db.scface
-bob.db.xm2vts
-bob.db.youtube
-bob.db.voxforge
-bob.db.utfvp
-bob.db.livdet2013
-bob.db.atvskeystroke
-bob.db.biosecurid.face
-bob.db.casme2
-bob.db.replay
-bob.db.biowave_test
-bob.db.verafinger
-bob.bio.base
-bob.bio.gmm
-bob.bio.spear
-bob.bio.face
-bob.bio.video
-bob.db.msu_mfsd_mod
-bob.db.avspoof
-bob.db.asvspoof
-bob.db.kboc16
-bob.db.putvein
-bob.db.cuhk_cufs
-gridtk