diff --git a/templates/gitlab-ci-python.yml b/templates/gitlab-ci-python.yml
index 28cbaabbabdf077e4ecd4471db51838dc0be6435..5267b6a36092d767c064510640fd2ed29b72ab95 100644
--- a/templates/gitlab-ci-python.yml
+++ b/templates/gitlab-ci-python.yml
@@ -511,8 +511,11 @@ variables:
     then
       maybe_install_poetry
  
-      log_info "--- build packages (poetry)..."
-      poetry build ${TRACE+--verbose}
+      if [[ "$PYTHON_PACKAGE_ENABLED" != "true" ]]
+      then
+        log_info "--- build packages (poetry)..."
+        poetry build ${TRACE+--verbose}
+      fi
 
       log_info "--- publish packages (poetry)..."
       poetry config repositories.user_defined "$PYTHON_REPOSITORY_URL"
@@ -521,9 +524,12 @@ variables:
       # shellcheck disable=SC2086
       pip install ${PIP_OPTS} build twine
  
-      log_info "--- build packages (build)..."
-      rm -rf dist
-      python -m build
+      if [[ "$PYTHON_PACKAGE_ENABLED" != "true" ]]
+      then
+        log_info "--- build packages (build)..."
+        rm -rf dist
+        python -m build
+      fi
 
       log_info "--- publish packages (twine)..."
       twine upload ${TRACE+--verbose} --username "$PYTHON_REPOSITORY_USERNAME" --password "$PYTHON_REPOSITORY_PASSWORD" --repository-url "$PYTHON_REPOSITORY_URL" dist/*