Browse Source

check for installation on gitweb container

master
cinnaboot 5 years ago
parent
commit
fc94a820a3
  1. 104
      roles/gitweb/tasks/main.yml

104
roles/gitweb/tasks/main.yml

@ -17,58 +17,70 @@
gitweb_root: /home/gitweb/projects gitweb_root: /home/gitweb/projects
gitweb_stylesheet: custom_highlighting.css gitweb_stylesheet: custom_highlighting.css
block: block:
- name: make hash of a random password - name: test if gitweb is already installed
set_fact: find:
gitweb_pass: "{{ lookup('password', paths: /etc
'/dev/null length=15 chars=ascii_letters') pattern: gitweb.conf
| password_hash('sha512') }}" register: check_installed
- name: add gitweb user - set_fact:
user: install_gitweb: "{{ check_installed.matched == 0 }}"
name: "{{ gitweb_user }}"
password: "{{ gitweb_pass }}"
shell: /usr/bin/git-shell
- name: create ssh directory - name: install block
file: when: install_gitweb
state: directory block:
mode: 0700 - name: make hash of a random password
owner: "{{ gitweb_user }}" set_fact:
path: "/home/{{ gitweb_user }}/.ssh" gitweb_pass: "{{ lookup('password',
'/dev/null length=15 chars=ascii_letters')
| password_hash('sha512') }}"
- name: copy ssh_pubkey for gitweb user - name: add gitweb user
copy: user:
remote_src: yes name: "{{ gitweb_user }}"
src: /root/.ssh/authorized_keys password: "{{ gitweb_pass }}"
dest: "/home/{{ gitweb_user }}/.ssh/authorized_keys" shell: /usr/bin/git-shell
owner: "{{ gitweb_user }}"
group: "{{ gitweb_user }}"
mode: 0600
- name: create project directory - name: create ssh directory
file: file:
path: "{{ gitweb_root }}" state: directory
state: directory mode: 0700
owner: "{{ gitweb_user }}" owner: "{{ gitweb_user }}"
path: "/home/{{ gitweb_user }}/.ssh"
- name: install lighttpd template - name: copy ssh_pubkey for gitweb user
template: copy:
src: lighttpd.conf.j2 remote_src: yes
dest: /etc/lighttpd/lighttpd.conf src: /root/.ssh/authorized_keys
dest: "/home/{{ gitweb_user }}/.ssh/authorized_keys"
owner: "{{ gitweb_user }}"
group: "{{ gitweb_user }}"
mode: 0600
- name: install gitweb template - name: create project directory
template: file:
src: gitweb.conf.j2 path: "{{ gitweb_root }}"
dest: /etc/gitweb.conf state: directory
owner: "{{ gitweb_user }}"
- name: install gitweb stylesheet - name: install lighttpd template
template: template:
src: "{{ gitweb_stylesheet }}.j2" src: lighttpd.conf.j2
dest: "/usr/share/gitweb/static/{{ gitweb_stylesheet }}" dest: /etc/lighttpd/lighttpd.conf
- name: enable and (re)start lighttpd - name: install gitweb template
service: template:
name: lighttpd src: gitweb.conf.j2
enabled: yes dest: /etc/gitweb.conf
state: restarted
- name: install gitweb stylesheet
template:
src: "{{ gitweb_stylesheet }}.j2"
dest: "/usr/share/gitweb/static/{{ gitweb_stylesheet }}"
- name: enable and (re)start lighttpd
service:
name: lighttpd
enabled: yes
state: restarted

Loading…
Cancel
Save