disable randomly failing testInvoiceRecreation
[tine20] / scripts / packaging / Univention / 70tine20-ucs-udm.inst
1 #!/bin/sh
2 #
3 # Tine 2.0 for UCS
4 #
5 # Copyright 2012-2012 by Metaways Infosystems GmbH
6 #
7 # http://www.metaways.de/
8 #
9 # All rights reserved.
10 #
11 # The source code of this program is made available
12 # under the terms of the GNU Affero General Public License version 3
13 # (GNU AGPL V3) as published by the Free Software Foundation.
14 #
15 # Binary versions of this program provided by Univention to you as
16 # well as other copyrighted, protected or trademarked materials like
17 # Logos, graphics, fonts, specific documentations and configurations,
18 # cryptographic keys etc. are subject to a license agreement between
19 # you and Univention and not subject to the GNU AGPL V3.
20 #
21 # In the case you use this program under the terms of the GNU AGPL V3,
22 # the program is provided in the hope that it will be useful,
23 # but WITHOUT ANY WARRANTY; without even the implied warranty of
24 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 # GNU Affero General Public License for more details.
26 #
27 # You should have received a copy of the GNU Affero General Public
28 # License with the Debian GNU/Linux or Univention distribution in file
29 # /usr/share/common-licenses/AGPL-3; if not, see
30 # <http://www.gnu.org/licenses/>.
31
32 VERSION="1"
33
34 . /usr/share/univention-lib/all.sh
35 . /usr/share/univention-join/joinscripthelper.lib
36
37 joinscript_init
38
39 eval "$(univention-config-registry shell)"
40
41 ucs_addServiceToLocalhost "Tine20" "$@"
42
43 if [ ! -e /etc/tine20/ldapuser.secret ]; then
44     #create a user to use for ldap searches
45     LDAPPASSWORD=$(makepasswd --minchars=15 --maxchars=20)
46     echo "$LDAPPASSWORD" > /etc/tine20/ldapuser.secret
47     chmod 640 /etc/tine20/ldapuser.secret
48     chown root:www-data /etc/tine20/ldapuser.secret
49 else
50     LDAPPASSWORD="$(cat /etc/tine20/ldapuser.secret)"
51 fi
52
53 udm container/cn create "$@" --ignore_exists \
54     --position "$ldap_base" \
55     --set name=tine20
56
57 udm users/user create "$@" --ignore_exists \
58     --position "cn=tine20,$ldap_base" \
59     --set username="tine20" --set password="$LDAPPASSWORD" \
60     --set firstname="Tine 2.0 " --set lastname="LDAP account" \
61     --set description="Account used by Tine 2.0 to authenticate against LDAP directory" \
62     --option ldap_pwd
63
64 # initial setup of Tine 2.0
65
66 LDAPHOST="$ldap_server_name\\:$ldap_server_port"
67 LDAPBASE=${ldap_base//,/\\\,}
68
69 php /usr/share/tine20/setup.php --config=/etc/tine20/config.inc.php --install -- \
70         adminLoginName="administrator" \
71         adminPassword="***" \
72         acceptedTermsVersion=1000 \
73         authentication="backend:ldap,host:$LDAPHOST,username:uid=tine20\,cn=tine20\,$LDAPBASE,password:$LDAPPASSWORD,baseDn:cn=users\,$LDAPBASE,accountFilterFormat:(&(objectClass=posixAccount)(uid=%s))" \
74         accounts="backend:ldap,host:$LDAPHOST,username:uid=tine20\,cn=tine20\,$LDAPBASE,password:$LDAPPASSWORD,userDn:cn=users\,$LDAPBASE,groupsDn:cn=groups\,$LDAPBASE,defaultUserGroupName:Domain Users,defaultAdminGroupName:Domain Admins,readonly:1"
75
76
77 joinscript_save_current_version
78
79 exit 0