diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 948012bb8a8701b91726f1d07a6a3a38865ddf10..a7921ffdfb2056f3a681ba70db6c7224868a4f4c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -116,12 +116,12 @@ test-editmode-with-junit-reports:
     - job: get-unity-version
       artifacts: true
   rules:
-    - if: '$CI_COMMIT_REF_NAME == "main"'
+    - if: '$CI_COMMIT_REF_NAME == "main" || $CI_COMMIT_TAG'
 
-#build-StandaloneLinux64:
-#  <<: *build
-#  variables:
-#    BUILD_TARGET: StandaloneLinux64
+build-StandaloneLinux64:
+  <<: *build
+  variables:
+    BUILD_TARGET: StandaloneLinux64
 
 build-StandaloneWindows64:
   <<: *build
@@ -151,10 +151,35 @@ pages:
   only:
     - main
 
+package_registry:
+  stage: deploy
+  image: ubuntu:20.04
+  needs:
+    - job: build-StandaloneLinux64
+    - job: build-StandaloneWindows64
+    - job: build-WebGL
+    - job: get-unity-version
+      artifacts: true
+  rules:
+    - if: '$CI_COMMIT_TAG && $CI_COMMIT_TAG =~ /^v.*$/'
+  variables:
+    PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/builds/$CI_COMMIT_TAG"
+  before_script:
+    - apt-get update -y
+    - apt-get install -y zip curl
+  script:
+    - zip -r build-StandaloneLinux64.zip ./Builds/StandaloneLinux64/
+    - zip -r build-StandaloneWindows64.zip ./Builds/StandaloneWindows64/
+    - zip -r build-WebGL.zip ./Builds/WebGL/${BUILD_NAME}/
+    - |
+      curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file build-StandaloneLinux64.zip "${PACKAGE_REGISTRY_URL}/StandaloneLinux64-$CI_COMMIT_TAG.zip"
+    - |
+      curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file build-StandaloneWindows64.zip "${PACKAGE_REGISTRY_URL}/StandaloneWindows64-$CI_COMMIT_TAG.zip"
+    - |
+      curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file build-WebGL.zip "${PACKAGE_REGISTRY_URL}/WebGL-$CI_COMMIT_TAG.zip"
+
 workflow:
   rules:
     - if: $CI_MERGE_REQUEST_ID
       when: never
-    - if: $CI_COMMIT_TAG
-      when: never
     - when: always