diff --git a/roles/mirror-workspace-git-repos/README.rst b/roles/mirror-workspace-git-repos/README.rst index b6e4ed940..e2a1fdac7 100644 --- a/roles/mirror-workspace-git-repos/README.rst +++ b/roles/mirror-workspace-git-repos/README.rst @@ -4,3 +4,11 @@ This role uses git operations (unlike :zuul:role:`prepare-workspace` which uses rsync) to mirror the local prepared git repos to the remote nodes. This may be useful if the remote node already has a copy of some or all of the git repos. + +**Role Variables** + +.. zuul:rolevar:: mirror_workspace_quiet + :default: false + + If `true` git operations will be silenced and won't print every + changed reference. diff --git a/roles/mirror-workspace-git-repos/defaults/main.yaml b/roles/mirror-workspace-git-repos/defaults/main.yaml new file mode 100644 index 000000000..b59b6d6b5 --- /dev/null +++ b/roles/mirror-workspace-git-repos/defaults/main.yaml @@ -0,0 +1 @@ +mirror_workspace_quiet: false diff --git a/roles/mirror-workspace-git-repos/tasks/main.yaml b/roles/mirror-workspace-git-repos/tasks/main.yaml index 3cd81bf6f..82212d952 100644 --- a/roles/mirror-workspace-git-repos/tasks/main.yaml +++ b/roles/mirror-workspace-git-repos/tasks/main.yaml @@ -7,7 +7,7 @@ with_dict: "{{ zuul.projects }}" - name: Synchronize src repos to workspace directory - command: "git push --mirror git+ssh://{{ ansible_user }}@{{ ansible_host | ipwrap }}:{{ ansible_port }}/{{ ansible_user_dir }}/{{ item.value.src_dir}}" + command: "git push {% if mirror_workspace_quiet %}--quiet{% endif %} --mirror git+ssh://{{ ansible_user }}@{{ ansible_host | ipwrap }}:{{ ansible_port }}/{{ ansible_user_dir }}/{{ item.value.src_dir}}" args: chdir: "{{ zuul.executor.work_root }}/{{ item.value.src_dir }}" with_dict: "{{ zuul.projects }}" @@ -32,7 +32,7 @@ # Undo the config setting we did above git config --local --unset receive.denyCurrentBranch # checkout the branch matching the branch set up by the executor - git checkout {{ item.value.checkout }} + git checkout {% if mirror_workspace_quiet %}--quiet{% endif %} {{ item.value.checkout }} # put out a status line with the current HEAD echo "{{ item.value.canonical_name }} checked out to:" git log --pretty=oneline -1