-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathplaybook.znuny-pd.yml
137 lines (119 loc) · 3.1 KB
/
playbook.znuny-pd.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
---
- name: configure local machine for me
hosts: all
become: yes
tasks:
- name: disable ubuntu apparmor
service:
name: apparmor
enabled: no
state: stopped
- name: install apache web server
apt:
name:
- apache2
- libapache2-mod-perl2
state: present
# - name: download, unpack and install otobo
# unarchive:
# src: https://ftp.otobo.org/pub/otobo/otobo-latest-10.0.tar.gz
# dest: /opt/otobo
# group: www-data
# owner: otobo
# remote_src: yes
# extra_opts:
# - --strip-components=1
# creates: /opt/otobo/Kernel
#
- name: checkout git repository
git:
repo: https://github.com/znuny/Znuny.git
force: yes
dest: /opt/otrs
- name: configure otrs user
user:
append: yes
comment: OTRS user
groups:
- www-data
home: /opt/otrs
name: otrs
shell: /bin/bash
state: present
system: yes
- name: allow su - otrs without password
lineinfile:
path: "/etc/sudoers"
line: '%sudo ALL=(ALL) NOPASSWD: ALL'
state: present
validate: /usr/sbin/visudo -cf %s
- name: install perl modules
apt:
name:
- libarchive-zip-perl
- libdatetime-perl
- libdbi-perl
- libmoo-perl
- libnet-dns-perl
- libtemplate-perl
- libtemplate-perl
- libxml-libxml-perl
- libyaml-libyaml-perl
- libdbd-mysql-perl
state: present
- name: activate the default configuration file
copy:
src: /opt/otrs/Kernel/Config.pm.dist
dest: /opt/otrs/Kernel/Config.pm
remote_src: yes
- name: change otrs directory permissions
file:
path: /opt/otrs
state: directory
owner: otrs
group: www-data
recurse: yes
- name: install perl tidy all module
apt:
name: libcode-tidyall-perl
- name: activate apache modules
shell: a2enmod perl && a2enmod deflate && a2enmod filter && a2enmod headers
- name: configure apache for otrs
file:
src: /opt/otrs/scripts/apache2-httpd.include.conf
path: /etc/apache2/sites-enabled/zzz_otrs.conf
state: link
remote_src: yes
- name: whitelist otrs directory in apache configuration
blockinfile:
path: /etc/apache2/apache2.conf
marker: "# {mark} OTRS APACHE WHITELIST"
insertafter: EOF
block: |
<Directory /opt/otrs/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
- name: restart apache
service:
name: apache2
enabled: yes
state: restarted
- name: make tmp directory that Cron.sh expects
file:
path: /opt/otrs/var/tmp
state: directory
owner: otrs
group: www-data
- name: configure cron jobs for the otrs user
shell: |
cd /opt/otrs/var/cron/
for foo in *.dist; do cp $foo `basename $foo .dist`; done
cd /opt/otrs
bin/Cron.sh start otrs
- name: install bash auto-completion
apt:
name: bash-completion
- name: fix permissions
shell: /opt/otrs/bin/otrs.SetPermissions.pl