diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e2e2faa18bfcaa9c73414955407583119a605ed1..73747aaecd9f53266dc913237276cb514e44aa98 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -281,10 +281,40 @@ deploy_ood_proxy_node:
       when: always
     - if: $CI_PIPELINE_SOURCE == "manual"
       when: manual
+
+deploy_ssh_proxy_node:
+  stage: deploy
+  environment:
+    name: knightly
+  tags:
+    - build
+  script:
+    - openstack image set --accept $PROXY_SSH_IMAGE_ID
+    - FAILED=false
+    - |
+      cat > user_data.txt << 
+      echo "$DEV_KEY" >> /root/.ssh/authorized_keys
+    - |
+      export NEW_INSTANCE_ID=$(openstack server create
+      -c id -f value --image $PROXY_SSH_IMAGE_ID
+      --network $OOD_PROXY_NETWORK
+      --security-group ood-https-ports
+      --security-group node-exporter
+      --security-group allow-ssh
+      --user-data user_data.txt
+      --flavor $INSTANCE_FLAVOR
+      --wait
+      $SSH_PROXY_INSTANCE_NAME)
+    - openstack server add floating ip $SSH_PROXY_INSTANCE_NAME $FLOATING_IP
+  artifacts:
+    reports:
+      dotenv: instance.env
   rules:
-    - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
-    - if: $CI_PIPELINE_SOURCE == 'schedule'
-    - when: manual
+    - if: $CI_PIPELINE_SOURCE == "schedule"
+      when: always
+    - if: $CI_PIPELINE_SOURCE == "manual"
+      when: manual
+
 
 
 test_ood_image: