diff --git a/deployment/ansible/playbooks/deploy-application-code.yml b/deployment/ansible/playbooks/deploy-application-code.yml index a5d40a82..db9d4c01 100644 --- a/deployment/ansible/playbooks/deploy-application-code.yml +++ b/deployment/ansible/playbooks/deploy-application-code.yml @@ -68,6 +68,18 @@ GIT_TERMINAL_PROMPT: "0" vars: ansible_become: no + register: git_clone_result + retries: 5 + delay: 10 + until: git_clone_result is succeeded + ignore_errors: yes + + - name: Fail if git clone failed after retries + fail: + msg: "Failed to clone repository after 5 retries. Gitea may be unreachable or overloaded. Last error: {{ git_clone_result.msg | default('Unknown error') }}" + when: + - not git_repo_exists.stat.exists + - git_clone_result is failed - name: Update repository (if exists) ansible.builtin.git: @@ -81,6 +93,18 @@ GIT_TERMINAL_PROMPT: "0" vars: ansible_become: no + register: git_update_result + retries: 5 + delay: 10 + until: git_update_result is succeeded + ignore_errors: yes + + - name: Fail if git update failed after retries + fail: + msg: "Failed to update repository after 5 retries. Gitea may be unreachable or overloaded. Last error: {{ git_update_result.msg | default('Unknown error') }}" + when: + - git_repo_exists.stat.exists + - git_update_result is failed - name: Set ownership of repository files file: