Files
tco.koha/tasks/main.yml

163 lines
3.8 KiB
YAML

---
# tasks file for tco.koha
#- name: exit if install dir exists
# block:
# - stat:
# path: "{{ koha_install_dir }}"
# register: result
# ignore_errors: true
#
# - assert:
# that: result.stat.exists is false
- name: install prerequisites
tags: always
import_tasks: req.yml
- name: install memcached
import_tasks: memcached.yml
- name: configure koha repo for dependencies
block:
- apt_key:
url: https://debian.koha-community.org/koha/gpg.asc
state: present
- apt_repository:
filename: koha
repo: "deb http://debian.koha-community.org/koha {{ koha_debian_version }} main"
state: present
- name: create koha group
ansible.builtin.group:
name: "{{ koha_group }}"
state: present
- name: create koha user
vars:
- kohapassword: $ANSIBLE_VAULT;1.1;AES256
32343335656665373331343735333266383165643665373336363830613466623734636466623139
6434316465653862346136333665636434373036643131620a646436626537666438313837383436
61306561346334333661373664353235343562323636316562363934343739626634626161356433
6333363164313030340a336430326334613435333161656435373962316266333765326462393238
6237
user:
name: "{{ koha_user }}"
group: "{{ koha_group }}"
home: "{{ koha_home_dir }}"
shell: /bin/bash
create_home: yes
password: "{{ kohapassword | password_hash('sha512',123456 | random( seed=ansible_hostname )|string)}}"
- name: get and extract archive
block:
- get_url:
url: "https://gitlab.com/koha-community/Koha/-/archive/v{{ koha_version }}/Koha-v{{ koha_version }}.tar.gz"
dest: /tmp/
- unarchive:
src: /tmp/Koha-v{{ koha_version }}.tar.gz
remote_src: yes
dest: "{{ koha_home_dir }}"
# - file:
# state: link
# dest: "{{ koha_install_dir }}"
# src: "{{ koha_home_dir }}/Koha-{{ koha_version }}"
- name: install required packages
apt:
state: present
name: "{{ koha_packages }}"
- name: deploy Makefile
template:
src: "{{ item }}_{{ koha_version }}"
dest: "{{ koha_src_dir }}/{{ item }}"
loop:
- Makefile
- MYMETA.json
- MYMETA.yml
register: result
- name: make && & make install
command: "{{ item }}"
loop:
- make
- make install
args:
chdir: "{{ koha_src_dir }}"
when: result.changed
- name: configure environment
template:
src: koha.env.sh
dest: /etc/profile.d/
- name: create etc symlink
file:
src: "{{ koha_install_dir }}/etc"
dest: /etc/koha
state: link
- name: create var/log symlink
file:
src: "{{ koha_install_dir }}/var/log"
dest: /var/log/koha
state: link
- name: configure log rotation
template:
src: logrotate.koha
dest: /etc/logrotate.d/koha
- name: configure apache
import_tasks: apache.yml
tags: apache
- name: configure plack
import_tasks: plack.yml
tags: plack
- name: fix permissions
file:
path: "{{ koha_install_dir }}"
owner: koha
group: koha
recurse: yes
- name: fix permissions on logs
file:
path: "{{ item }}"
owner: koha
group: www-data
recurse: yes
mode: 01775
loop:
- "{{ koha_install_dir }}/var/log"
- "{{ koha_install_dir }}/var/run"
- name: set systempreference url
community.mysql.mysql_query:
login_db: "{{ koha_mariadb_db }}"
login_password: "{{ koha_mariadb_password }}"
login_user: "{{ koha_mariadb_user }}"
login_host: "{{ koha_mariadb_server }}"
query: UPDATE systempreferences set value = %(value)s WHERE variable=%(variable)s
named_args:
value: "{{ item.value }}"
variable: "{{ item.variable }}"
loop:
- { variable: "OPACBaseURL", value: "https://{{ koha_opac_hostname }}" }
- { variable: "staffClientBaseURL", value: "https://{{ koha_intranet_hostname }}" }
# cronjob
# # zebra
# traduction
# cronjob
# # zebra
# traduction