diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 611f34f38bc08d0b413102a62ad96cf43d819b77..ade6ccef78d43c708592e8804654aefe384dec1a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,13 +1,11 @@
-variables:
-  HEROKU_APP_NAME: secfit-group15
-  HEROKU_REGISTRY_IMAGE: registry.heroku.com/${HEROKU_APP_NAME}/web
+image: python:3
 
 stages:
   - test
+  - build
   - deploy
 
 test:
-  image: python:3
   stage: test
   script:
     - cd backend/secfit
@@ -15,10 +13,25 @@ test:
     - pip install -r requirements.txt
     - python manage.py test
 
+build:
+  image: docker:19.03.12
+  stage: build
+  variables:
+    DOCKER_TLS_CERTDIR: "/certs"
+  services:
+    - docker:19.03.12-dind
+  before_script:
+    - docker info
+  script:
+    - docker build -t secfit-group15 .
+    - docker run secfit-group15 /script/to/run/tests
+
 deploy:
   stage: deploy
   script:
-    - apt-get update -qy
+    - apt-get update -yq
     - apt-get install -y ruby-dev
     - gem install dpl
-    - dpl --provider=heroku --app=$secfit-group15 --api-key=$HEROKU_API_KEY
\ No newline at end of file
+    - dpl --provider=heroku --app=secfit-group15 --api_key=$HEROKU_API_KEY
+  only:
+    - master