1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-02-13 19:52:06 +00:00
iiab/roles/gitea/tasks/install.yml
A Holt 6f6bad7f2c
Update roles/gitea/tasks/install.yml
Co-Authored-By: aidan-fitz <acf67@cornell.edu>
2018-10-25 23:04:21 -04:00

166 lines
3.6 KiB
YAML

# Prepare to install Gitea: create user and directory structure
- name: Create user gitea
user:
name: gitea
comment: Gitea daemon account
groups: gitea
home: "{{ gitea_root_directory }}"
tags:
- pre-install
- name: Create Gitea directory structure
file:
path: "{{ gitea_root_directory }}/{{item.item}}"
state: directory
owner: gitea
group: gitea
with_items: "{{ gitea_subdirectories }}"
tags:
- pre-install
- name: Make directories data, indexers, and log writable
file:
path: "{{ gitea_root_directory }}/{{item.item}}"
mode: 0750
with_items:
- data
- indexers
- log
tags:
- pre-install
# Download, verify, and link Gitea binary
- name: Fail if we detect unknown architecture
fail:
msg: "Could not find a binary for the CPU architecture \"{{ ansible_architecture }}\""
when: gitea_iset_suffix == "unknown"
- name: Download Gitea binary
get_url:
url: "{{ gitea_download_url }}"
dest: "{{ gitea_install_path }}"
mode: 0775
tags:
- install
when: internet_available
- name: Download Gitea GPG signature
get_url:
url: "{{ gitea_integrity_url }}"
dest: "{{ gitea_checksum_path }}"
tags:
- install
when: internet_available
- name: Verify Gitea binary with GPG signature
shell: |
gpg --keyserver pgp.mit.edu --recv 7C9E68152594688862D62AF62D9AE806EC1592E2
gpg --verify {{ gitea_checksum_path }} {{ gitea_install_path }}
tags:
- install
- verify
- name: Link Gitea
file:
src: "{{ gitea_install_path }}"
dest: "{{ gitea_link_path }}"
owner: gitea
group: gitea
state: link
tags:
- install
# Configure Gitea
- name: Create Gitea config directory
file:
path: /etc/gitea
state: directory
owner: root
group: gitea
mode: 0750
tags:
- config
- name: Create app.ini
template:
src: app.ini.j2
dest: /etc/gitea/app.ini
owner: root
group: gitea
mode: 0644
tags:
- config
# Create systemd service
- name: Create 'gitea' service
template:
src: gitea.service.j2
dest: "/etc/systemd/system/gitea.service"
tags:
- systemd
- name: Enable 'gitea' service
systemd:
daemon_reload: yes
name: gitea
enabled: yes
state: restarted
when: gitea_enabled
- name: Disable 'gitea' service
systemd:
name: gitea
enabled: no
state: stopped
when: not gitea_enabled
# Configure HTTPD
- name: Copy gitea httpd conf file
template:
src: gitea.conf.j2
dest: "/etc/{{ apache_config_dir }}/gitea.conf"
- name: Enable httpd conf file if we are disabled (debuntu)
file:
src: /etc/{{ apache_config_dir }}/gitea.conf
dest: /etc/apache2/sites-enabled/gitea.conf
state: link
when: gitea_enabled and is_debuntu
- name: Remove httpd conf file if we are disabled (OS's other than debuntu)
file:
path: /etc/apache2/sites-enabled/gitea.conf
state: absent
when: not gitea_enabled and is_debuntu
- name: Restart Apache, so it picks up the new aliases
service:
name: "{{ apache_service }}"
state: restarted
# Add Gitea to registry
- name: Add 'gitea' to list of services at {{ iiab_ini_file }}
ini_file:
dest: "{{ iiab_ini_file }}"
section: gitea
option: "{{ item.option }}"
value: "{{ item.value }}"
with_items:
- option: name
value: gitea
- option: description
value: '"Gitea: Git with a cup of tea"'
- option: gitea_run_directory
value: "{{ gitea_run_directory }}"
- option: gitea_url
value: "{{ gitea_url }}"
- option: gitea_full_url
value: "{{ gitea_full_url }}"
- option: gitea_enabled
value: "{{ gitea_enabled }}"