diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index acbc2bf72b0aea84c5defbb57f1b7fe64edf48af..b19518b379b7eb238a4f413371e714dd52b45bdd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,9 +1,19 @@
+variables:
+  APP_HELM_NAME: cache
+  DOCKER_FILE: deployment/ci/Dockerfile
+  GOOGLE_IMAGE: ${GOOGLE_LIGHT_REGISTRY_URL}/gaiax/$CI_PROJECT_NAME:$CI_COMMIT_REF_NAME
+
 stages:
+  - compile
   - test
+  - build
+  - manifest
+  - deploy
 
-before_script:
-  - ln -s /builds /go/src/code.vereign.com
-  - cd /go/src/code.vereign.com/${CI_PROJECT_PATH}
+include:
+  - project: 'gaiax/tsa/ci-helpers'
+    file: 'docker-build.yml'
+  - template: 'Workflows/Branch-Pipelines.gitlab-ci.yml'
 
 lint:
   image: golangci/golangci-lint:v1.44.2
@@ -13,13 +23,32 @@ lint:
   script:
     - golangci-lint --version
     - golangci-lint run
+  before_script:
+    - ln -s /builds /go/src/code.vereign.com
+    - cd /go/src/code.vereign.com/${CI_PROJECT_PATH}
 
 unit tests:
   image: golang:1.17.7
+  extends: .gotest
   stage: test
   tags:
     - amd64-docker
-  script:
-    - go version
-    - go test -race ./... -coverprofile=coverage.out
-    - go tool cover -func=coverage.out
+  before_script: []
+
+amd64:
+  extends: .docker-build
+  stage: build
+  tags:
+    - amd64-docker
+
+manifest:
+  extends: .manifest-amd64
+  stage: manifest
+
+cloud:
+  extends: .manifest-cloud
+  stage: manifest
+
+release:
+  extends: .manifest-release
+  stage: manifest