From c2e93c2370de9a0948b07e5768c7ac572d299c63 Mon Sep 17 00:00:00 2001 From: Tharre Date: Tue, 24 Apr 2018 20:44:16 +0200 Subject: Initial commit --- roles/gitolite/tasks/init.yml | 18 ++++++++++++++++++ roles/gitolite/tasks/main.yml | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 roles/gitolite/tasks/init.yml create mode 100644 roles/gitolite/tasks/main.yml (limited to 'roles/gitolite/tasks') diff --git a/roles/gitolite/tasks/init.yml b/roles/gitolite/tasks/init.yml new file mode 100644 index 0000000..f745a85 --- /dev/null +++ b/roles/gitolite/tasks/init.yml @@ -0,0 +1,18 @@ +--- +- name: Copy admin key + copy: + src: "{{ git_admin_key }}" + dest: "{{ git_dir }}/admin.pub" + mode: 0600 + owner: "{{ git_user }}" + group: "{{ git_group }}" + +- name: Ensure sudo is available for become_user + package: + name: sudo + state: present + +- name: Configure gitolite + command: gitolite setup -pk "{{ git_dir }}/admin.pub" + become: yes + become_user: "{{ git_user }}" diff --git a/roles/gitolite/tasks/main.yml b/roles/gitolite/tasks/main.yml new file mode 100644 index 0000000..fc05006 --- /dev/null +++ b/roles/gitolite/tasks/main.yml @@ -0,0 +1,40 @@ +--- +- name: Add git user + user: + name: "{{ git_user }}" + home: "{{ git_dir }}" + system: yes + generate_ssh_key: yes + state: present + +- name: Install gitolite (and git) + package: + name: "{{ item }}" + state: present + with_items: + - git-core + - gitolite3 + +- name: Check if this is a new installation + stat: + path: "{{ git_dir }}/.gitolite" + register: gitolite_dir + +- include: "init.yml" + when: not gitolite_dir.stat.exists + +- name: Copy configuration from template + template: + src: gitolite.rc.j2 + dest: "{{ git_dir }}/.gitolite.rc" + mode: 0644 + owner: "{{ git_user }}" + group: "{{ git_group }}" + backup: yes + +- name: Set permissions on {{ git_dir }} + file: + path: "{{ git_dir }}" + recurse: yes + owner: "{{ git_user }}" + group: "{{ git_group }}" -- cgit v1.2.3-70-g09d2