diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 26f3eea7a28b32823f4add9ba227af49f097efa2..d7150e0f8588d2ba5c8e608eccaded051f9c9ed0 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,50 +1,52 @@
   image: docker.io/labrobotica/labrobotica:latest
 
+  variables:
+    GIT_SUBMODULE_STRATEGY: recursive
+    FROM_RDEPENDS_CI: "false"
+    TAG_VERSION: $CI_COMMIT_TAG
+
   stages:
-    - rdepends
+    - build
+    - update_package
+    - update_reverse_dependencies
+
+####### template definitions #######
+
+  .build_package: &build_package
+    script:
+      - echo "build package with tag $TAG_VERSION"
 
-  iri-dummyutils-dev:
-    stage: rdepends
+
+  .update_repo: &update_repo
     script:
-      - echo "Done."
-
-  iri-dummyasterx-dev:
-    stage: rdepends
-    variables:
-      FROM_RDEPENDS_CI: "true"
-    trigger:
-      strategy: depend
-      project: alopez/dummyasterx
-      branch: "1.0.1"
-    needs: [iri-dummyutils-dev, iri-dummycomm-dev]
-
-  iri-dummytrajectory-dev:
-    stage: rdepends
-    variables:
-      FROM_RDEPENDS_CI: "true"
-    trigger:
-      strategy: depend
-      project: alopez/dummytrajectory
-      branch: "1.0.0"
-    needs: [iri-dummyutils-dev]
-
-  iri-dummydynamixel-dev:
-    stage: rdepends
-    variables:
-      FROM_RDEPENDS_CI: "true"
-    trigger:
-      strategy: depend
-      project: alopez/dummydynamixel
-      branch: "1.0.0"
-    needs: [iri-dummyutils-dev, iri-dummycomm-dev]
-
-  iri-dummycomm-dev:
-    stage: rdepends
-    variables:
-      FROM_RDEPENDS_CI: "true"
-    trigger:
-      strategy: depend
-      project: alopez/dummycomm
-      branch: "1.0.0"
-    needs: [iri-dummyutils-dev]
+      - echo "update repo"
+
+
+#############################
+
+  build_package_tag:
+    stage: build
+    <<: *build_package
+
+
+  update_repo_tag:
+    stage: update_package
+    <<: *update_repo
+
+
+  generate_new_tag:
+    stage: update_reverse_dependencies
+    script:
+      - TAG_VERSION = "9.9.9"
+      - echo "Modified to $TAG_VERSION"
+
+  build_package_rdep:
+    stage: update_reverse_dependencies
+    needs: [generate_new_tag]
+    <<: *build_package
+
 
+  update_repo_rdep:
+    stage: update_reverse_dependencies
+    needs: [build_package_rdep]
+    <<: *update_repo