Optionally silence git in mirror-workspace-git-repos
Especially when using Github branch and push workflows repos can easily have hundreds of branches. The role mirror-workspace-git-repos which pushes them onto the node prints all of them in every build. This can get quite messy. Thus we need to optionally be able to silence the git push operation. This is done on purpose by the --quiet parameter instead of using no_log because this way errors are still logged normally and normal operation produces no log output for this task. Change-Id: Id77cc00972df9139e4544dd79954d91f4ab6b60b
This commit is contained in:
parent
dd8c88354e
commit
4ea777ae66
@ -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.
|
||||
|
1
roles/mirror-workspace-git-repos/defaults/main.yaml
Normal file
1
roles/mirror-workspace-git-repos/defaults/main.yaml
Normal file
@ -0,0 +1 @@
|
||||
mirror_workspace_quiet: false
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user