diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d3bf4915529ae2de72dd1cb7a29321445c5103f2..21ea9e7cc7232d875393afbc22134aa2cfa52f3c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -11,13 +11,13 @@ before_script:
     - python -m venv venv
     - . venv/bin/activate 
     - pip install -e .
-    - pip install build twine
 
 build:
     stage: build
     tags:
         - vips-runner
     script: 
+        - pip install build
         - python -m build
     artifacts:
         paths:
@@ -29,6 +29,7 @@ test:
     tags:
         - vips-runner
     script:
+        - pip install pytest
         - pytest
 
 deploy:
@@ -36,4 +37,5 @@ deploy:
     tags:
         - vips-runner
     script:
+        - pip install twine
         - TWINE_PASSWORD=${CI_JOB_TOKEN} TWINE_USERNAME=gitlab-ci-token python -m twine upload --repository-url https://gitlab.nibio.no/api/v4/projects/401/packages/pypi dist/* --verbose