diff --git a/.build.sh b/.build.sh
new file mode 100755
index 0000000000000000000000000000000000000000..804b1bac21b18f79cf70b048167c1fe0ff597935
--- /dev/null
+++ b/.build.sh
@@ -0,0 +1,16 @@
+#!/usr/bin/bash
+apt-get update && apt-get install -y devscripts
+CHANGELOG="package/debian/changelog"
+LINE=$(head -n 1 $CHANGELOG)
+PACKAGE=$(echo $LINE | cut -d' ' -f1)
+VERSION=$(echo $LINE | cut -d' ' -f2 | grep -o -E '[0-9]*\.[0-9]*\.[0-9]*')
+if [ $CI_JOB_NAME = "build_for_stable" ]; then
+  sed 's/testing; urgen/stable; urgen/' $CHANGELOG > $CHANGELOG
+fi
+tar --exclude=debian -czf ${PACKAGE}_${VERSION}.orig.tar.gz package/*
+cd package
+debuild -us -uc
+cd ../
+mkdir build/
+mv ${PACKAGE}* build/
+
diff --git a/.deploy.sh b/.deploy.sh
new file mode 100755
index 0000000000000000000000000000000000000000..693961272e23787e378974b30a0e2c41f9607fdb
--- /dev/null
+++ b/.deploy.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/bash
+
+apt-get update && apt-get install -y dput ssh
+eval $(ssh-agent -s)
+ssh-add <(echo "$PRIV_KEY")
+dput -u -f --config=dput.cf repo build/*.changes
+    
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index baff4ee417f88d3b07dde5207be628ad0942830d..4df628a6672b954b86b742c76b97d6654d655866 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,7 +4,7 @@ stages:
     - test
     - deploy
 
-build:
+build_for_testing:
   stage: build
   artifacts:
     paths:
@@ -12,17 +12,17 @@ build:
   tags:
     - debian-packaging
   script:
-    - apt-get update && apt-get install -y devscripts 
-    - LINE=$(head -n 1 package/debian/changelog)
-    - PACKAGE=$(echo $LINE | cut -d' ' -f1)
-    - VERSION=$(echo $LINE | cut -d' ' -f2 | grep -o -E '[0-9]*\.[0-9]*\.[0-9]*')
-    - tar --exclude=debian -czf ${PACKAGE}_${VERSION}.orig.tar.gz package/*
-    - cd package 
-    - debuild -us -uc --lintian-opts --suppress-tags package-installs-apt-preferences
-    - cd ../
-    - mkdir build/
-    - mv ${PACKAGE}* build/
-    - echo "Estágio de Build finalizado."
+    - ./.build.sh
+
+build_for_stable:
+  stage: build
+  artifacts:
+    paths:
+      - build/
+  tags:
+    - debian-packaging
+  script:
+    - ./.build.sh
 
 test:
   stage: test
@@ -32,11 +32,10 @@ test:
   script:
     - apt-get update && apt-get install -y unattended-upgrades
     - dpkg -i build/*.deb
-    - echo "Estágio de Teste finalizado"
   dependencies:
-    - build
+    - build_for_testing
 
-deploy:
+deploy_for_testing:
   stage: deploy
   only:
     - master
@@ -44,11 +43,20 @@ deploy:
     - ubuntu
     - regular
   script:
-    - echo "Estágio de Deploy"
-    - apt-get update && apt-get install -y dput ssh
-    - eval $(ssh-agent -s)
-    - ssh-add <(echo "$PRIV_KEY")
-    - dput -u -f --config=dput.cf repo build/*.changes
-    - echo "Estágio de Deploy finalizado"
+    - ./.deploy.sh
   dependencies:
-    - build
+    - build_for_testing
+
+deploy_for_stable:
+  stage: deploy
+  when: manual
+  only:
+    - master
+  tags:
+    - ubuntu
+    - regular
+  script:
+    - ./.deploy.sh
+  dependencies:
+    - build_for_stable
+