diff --git a/industrial-ci-templates.yml b/industrial-ci-templates.yml
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..177f3fb33c973c501b1c84ebcabc4ee73f7d4db7 100644
--- a/industrial-ci-templates.yml
+++ b/industrial-ci-templates.yml
@@ -0,0 +1,40 @@
+
+.industrial_ci:
+  stage: build
+  before_script:
+    - apk add --update bash coreutils tar
+    - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config
+    - docker login ${ARTIFACT_DOCKER_URL} -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN}
+    - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN}
+  script: .ci_config/gitlab.sh
+  variables:
+    ADDITIONAL_DEBS: curl
+    PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM
+    AFTER_SETUP_TARGET_WORKSPACE: rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws
+    AFTER_SETUP_UPSTREAM_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws"
+    CMAKE_ARGS: -DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context
+  tags:
+    - docker
+
+
+.industrial_ci_deploy:
+  extends: .industrial_ci
+  variables:
+    AFTER_SCRIPT: "wget -q -O - https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/pre-deploy-cleanup.bash | bash"
+    DOCKER_COMMIT: industrial_ci_image
+  script:
+    - .ci_config/gitlab.sh
+    - cd $(mktemp -d)
+    - wget https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/archive/master/gitlab_templates-master.zip
+    - unzip gitlab_templates-master.zip && cd gitlab_templates-master/deploy
+    - cd base
+    - chmod a+x ros_entrypoint.bash
+    - docker build -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} .
+    - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}
+    - cd ..
+    - cd dev
+    - docker build --build-arg APPLICATION_IMAGE=${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev .
+    - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev
+    - cd ..
+  rules:
+    - if: $DEPLOY