diff options
Diffstat (limited to 'roles/gitolite')
| -rw-r--r-- | roles/gitolite/tasks/main.yml | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/roles/gitolite/tasks/main.yml b/roles/gitolite/tasks/main.yml new file mode 100644 index 0000000..23fca84 --- /dev/null +++ b/roles/gitolite/tasks/main.yml @@ -0,0 +1,43 @@ +--- +- name: Install gitolite + become: yes + pacman: name={{ item }} state=present update_cache=yes + with_items: + - gitolite + +- name: copy admin.pub to server + become: yes + become_user: "{{ gitolite_user }}" + copy: src={{ gitolite_admin_key }} dest={{ gitolite_home }}/{{ gitolite_admin_key }} + +- name: setup gitolite + become: yes + become_user: "{{ gitolite_user }}" + command: gitolite setup -pk {{ gitolite_admin_key }} + args: + chdir: "{{ gitolite_home }}" + +- name: transfer repositories + become: yes + become_user: "{{ gitolite_user}}" + unarchive: src={{ item }}.tar.xz dest={{ gitolite_home }}/repositories/ creates={{ gitolite_home }}/repositories/{{ item }}.git + with_items: + "{{ gitolite_repositories }}" + when: + "{{ gitolite_repositories|length > 0 }}" + +- name: force push old administration + local_action: command git push -f gitolite@{{ ansible_default_ipv4.address }}:gitolite-admin master + args: + chdir: "{{ gitolite_admin_repo }}" + when: + "{{ gitolite_repositories|length > 0 }}" + +- name: reconfigure gitolite + become: yes + become_user: "{{ gitolite_user }}" + command: gitolite setup + args: + chdir: "{{ gitolite_home }}" + when: + "{{ gitolite_repositories|length > 0 }}" |
