diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f09a090af1eaa24057d025a7df6da6683dd3de2f..2bd4eb0e0ed3cec81b274735ef25ce3facb5e66f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -11,3 +11,26 @@ include:
       file: /ci/build/dist.yml
     - project: "AlekSIS/official/AlekSIS"
       file: /ci/docker/dist.yml
+
+variables:
+  GIT_SUBMODULE_STRATEGY: recursive
+  PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
+  FF_NETWORK_PER_BUILD: "true"
+  POETRY_REPOSITORIES_GITLAB_URL: "$CI_API_V4_URL/projects/${CI_PROJECT_ID}/packages/pypi"
+  POETRY_HTTP_BASIC_GITLAB_USERNAME: gitlab-ci-token
+  POETRY_HTTP_BASIC_GITLAB_PASSWORD: "$CI_JOB_TOKEN"
+  POETRY_PYPI_TOKEN_PYPI: "$TICDESK_PUBLISH_TOKEN"
+
+deploy_gitlab:
+  interruptible: true
+  stage: publish
+  script:
+    - if [ x$CI_COMMIT_REF_NAME = x$CI_COMMIT_TAG ]; then
+       if ! [ "$(poetry version | cut -d" " -f2)" = $CI_COMMIT_REF_NAME ]; then
+        echo "Package version does not match tag. Aborting build of tag!" >/dev/fd/2 ;
+        exit 1 ;
+       fi ;
+      else
+       poetry version $(poetry version | cut -d" " -f2)+$(date --date=${CI_COMMIT_TIMESTAMP} +%Y%m%d%H%M%S).${CI_COMMIT_SHORT_SHA} ;
+      fi
+    - poetry publish -r gitlab