--- # --- # Default reposotories # --- - name: (git.yml) Install/Update default repositories ansible.builtin.git: repo: "{{ item.repo }}" dest: "{{ item.dest }}" version: >- {{ item.version | default(item.branch) | default( 'master' if (lookup('pipe', 'git ls-remote --heads ' ~ item.repo ~ ' master') | length > 0) else 'main' ) }} with_items: "{{ git_default_repositories }}" loop_control: label: "{{ item.name }}" tags: - git-default-repositories # --- # Group [file_server] reposotories # --- - name: (git.yml) Install/Update file_server repositories ansible.builtin.git: repo: "{{ item.repo }}" dest: "{{ item.dest }}" version: >- {{ item.version | default(item.branch) | default( 'master' if (lookup('pipe', 'git ls-remote --heads ' ~ item.repo ~ ' master') | length > 0) else 'main' ) }} with_items: "{{ git_oopen_server_repositories }}" loop_control: label: "{{ item.name }}" when: "groups['file_server']|string is search(inventory_hostname)" tags: - git-file-server-repositories # --- # Group [samba_server] reposotories # --- - name: (git.yml) Install/Update samba server repositories ansible.builtin.git: repo: "{{ item.repo }}" dest: "{{ item.dest }}" version: >- {{ item.version | default(item.branch) | default( 'master' if (lookup('pipe', 'git ls-remote --heads ' ~ item.repo ~ ' master') | length > 0) else 'main' ) }} with_items: "{{ git_samba_repositories }}" register: common_git_samba_result loop_control: label: "{{ item.name }}" when: "groups['samba_server']|string is search(inventory_hostname)" failed_when: >- (common_git_samba_result.failed | default(false)) and ( common_git_samba_result.msg is not defined or ( ('Could not resolve host' not in common_git_samba_result.msg) and ('Connection timed out' not in common_git_samba_result.msg) and ('Failed to connect to' not in common_git_samba_result.msg) and ('Connection reset by peer' not in common_git_samba_result.msg) and ('Operation timed out' not in common_git_samba_result.msg) ) ) tags: - git-samba-server-repositories # --- # Group [gateway_server] reposotories # --- - name: (git.yml) Install/Update gateway repositories ansible.builtin.git: repo: "{{ item.repo }}" dest: "{{ item.dest }}" version: >- {{ item.version | default(item.branch) | default( 'master' if (lookup('pipe', 'git ls-remote --heads ' ~ item.repo ~ ' master') | length > 0) else 'main' ) }} with_items: "{{ git_gateway_repositories }}" loop_control: label: "{{ item.name }}" when: "groups['gateway_server']|string is search(inventory_hostname)" tags: - git-gateway-server-repositories