diff --git a/installers/mgmt-cluster/gitea/admin/api.sh b/installers/mgmt-cluster/gitea/admin/api.sh
index 753e6b2..2c635cc 100755
--- a/installers/mgmt-cluster/gitea/admin/api.sh
+++ b/installers/mgmt-cluster/gitea/admin/api.sh
@@ -23,6 +23,7 @@
 HERE=$(dirname "$(readlink --canonicalize "$BASH_SOURCE")")
 . "$HERE/../library/functions.sh"
 . "$HERE/../library/trap.sh"
+. "$HERE/../library/helpers.sh"
 
 SERVER_URL=$1
 TOKEN=$2
@@ -30,20 +31,30 @@
 URI=$4
 DATA=$5
 
-if [ -z "$DATA" ]; then
-    kubectl exec statefulset/gitea --container=gitea --namespace=gitea --quiet -- \
-    curl --silent --fail \
-        "${SERVER_URL}/api/v1/${URI}" \
-        --request "${VERB}" \
-        --header "Authorization: token ${TOKEN}" \
-        --header 'Accept: application/json'
-else
-    kubectl exec statefulset/gitea --container=gitea --namespace=gitea --quiet -- \
-    curl --silent --fail \
-        --request "$VERB" \
-        "${SERVER_URL}/api/v1/${URI}" \
-        --header "Authorization: token ${TOKEN}" \
-        --header 'Accept: application/json' \
-        --header 'Content-Type: application/json' \
-        --data "${DATA}"
+function gitea_api_operation() {
+    if [ -z "$DATA" ]; then
+        kubectl exec statefulset/gitea --container=gitea --namespace=gitea --quiet -- \
+        curl --silent --fail \
+            "${SERVER_URL}/api/v1/${URI}" \
+            --request "${VERB}" \
+            --header "Authorization: token ${TOKEN}" \
+            --header 'Accept: application/json'
+    else
+        kubectl exec statefulset/gitea --container=gitea --namespace=gitea --quiet -- \
+        curl --silent --fail \
+            --request "$VERB" \
+            "${SERVER_URL}/api/v1/${URI}" \
+            --header "Authorization: token ${TOKEN}" \
+            --header 'Accept: application/json' \
+            --header 'Content-Type: application/json' \
+            --data "${DATA}"
+    fi
+}
+
+monitor_condition gitea_api_operation "Gitea API operation did not succeed yet...\n" 120 5
+RET=$?
+if [[ $RET -ne 0 ]]
+then
+    echo -e "\nFATAL: Gitea API operation did not succeed after several retries. ABORTED.\n"
+    exit $RET
 fi
diff --git a/installers/mgmt-cluster/gitea/library/helpers.sh b/installers/mgmt-cluster/gitea/library/helpers.sh
new file mode 100755
index 0000000..b61ec65
--- /dev/null
+++ b/installers/mgmt-cluster/gitea/library/helpers.sh
@@ -0,0 +1,40 @@
+#######################################################################################
+# Copyright ETSI Contributors and Others.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#######################################################################################
+
+
+# Helper function to monitor progress of a condition
+function monitor_condition() {
+    local CONDITION="$1"        # Function with the condition
+    local MESSAGE="${2:-}"      # Message during each check
+    local TIMEOUT="${3:-300}"   # Timeout, in seconds (default: 5 minutes)
+    local STEP="${4:-2}"        # Polling period (default: 2 seconds)
+
+    "${CONDITION}"
+    RET=$?
+    until [ ${RET} -eq 0 ] || [ ${TIMEOUT} -le 0 ]
+    do
+        echo -en "${MESSAGE}"
+
+        ((TIMEOUT-=${STEP}))
+        sleep "${STEP}"
+
+        "${CONDITION}"
+        RET=$?
+    done
+
+    return ${RET}
+}
