--- # tasks file for ansible-cgit - name: apt install apt: name: '{{ item }}' state: present update_cache: yes cache_valid_time: 3600 with_items: - cgit - git - apache2 - python-docutils - cron - name: Enable Apache modules apache2_module: name: '{{ item }}' state: present notify: - Restart Apache with_items: - cgi - ssl - name: Disable default Apache site file: path: /etc/apache2/sites-enabled/000-default.conf state: absent notify: - Restart Apache - name: Add cgit Apache site template: src: cgit.conf.j2 dest: /etc/apache2/sites-enabled/cgit.conf owner: root group: root mode: '0644' notify: - Restart Apache - name: Create git repostories directory file: path: '{{ cgit_directory }}' owner: root group: root mode: '0777' state: directory - name: Add symlink for rst2html (hack, fixed in Stretch) when: ansible_distribution_major_version < 9 file: src: /usr/share/docutils/scripts/python2/rst2html dest: /usr/local/bin/rst2html.py owner: root group: root state: link - name: Configure cgit lineinfile: dest: /etc/cgitrc line: '{{ item.line }}' regexp: '{{ item.regexp|default(omit) }}' insertbefore: '{{ item.insertbefore|default(omit) }}' with_items: - line: 'scan-path={{ cgit_directory }}' regexp: 'scan-path=' - line: 'css=/cgit/css/cgit.css' regexp: '^css=' - line: 'logo=/cgit/css/cgit.png' regexp: '^logo=' - line: 'favicon=/cgit/css/favicon.ico' regexp: '^favicon=' - line: 'about-filter=/usr/lib/cgit/filters/about-formatting.sh' regexp: '^about-filter=' insertbefore: 'scan-path=' - line: 'enable-git-config=1' regexp: '^enable-git-config=' - line: 'readme=:README.md' - line: 'readme=:readme.md' - line: 'readme=:README.mkd' - line: 'readme=:readme.mkd' - line: 'readme=:README.rst' - line: 'readme=:readme.rst' - line: 'readme=:README.html' - line: 'readme=:readme.html' - line: 'readme=:README.htm' - line: 'readme=:readme.htm' - line: 'readme=:README.txt' - line: 'readme=:readme.txt' - line: 'readme=:README' - line: 'readme=:readme' - line: 'readme=:INSTALL.md' - line: 'readme=:install.md' - line: 'readme=:INSTALL.mkd' - line: 'readme=:install.mkd' - line: 'readme=:INSTALL.rst' - line: 'readme=:install.rst' - line: 'readme=:INSTALL.html' - line: 'readme=:install.html' - line: 'readme=:INSTALL.htm' - line: 'readme=:install.htm' - line: 'readme=:INSTALL.txt' - line: 'readme=:install.txt' - line: 'readme=:INSTALL' - line: 'readme=:install' - name: Configure firewall ufw: rule: allow port: 443 proto: tcp - name: Add daily backup job template: src: cgit.j2 dest: /etc/cron.daily/cgit owner: root group: root mode: '0755'