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
|
class nextcloud(
$database_name,
$database_user,
$database_host,
) {
file {'/etc/yum.repos.d/koalillo-nextcloud-epel-9.repo':
content => @("EOT"/$)
[copr:copr.fedorainfracloud.org:koalillo:nextcloud]
name=Copr repo for nextcloud owned by koalillo
baseurl=https://download.copr.fedorainfracloud.org/results/koalillo/nextcloud/epel-9-\$basearch/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://download.copr.fedorainfracloud.org/results/koalillo/nextcloud/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1
| EOT
,
}
package {'remi-release':
source => 'https://rpms.remirepo.net/enterprise/remi-release-9.rpm',
}
->
exec {'/usr/bin/dnf module enable -y php:remi-8.2':
unless => '/usr/bin/dnf module list --enabled php | grep remi-8.2',
}
package {['nextcloud-httpd', 'nextcloud-postgresql', 'php82-php-pecl-apcu', 'php-sodium', 'php-opcache',]:
require => [
Exec['/usr/bin/dnf module enable -y php:remi-8.2'],
File['/etc/yum.repos.d/koalillo-nextcloud-epel-9.repo'],
],
}
service {'httpd':
enable => true,
ensure => running,
subscribe => Package['nextcloud-httpd'],
}
service {'nextcloud-cron.timer':
ensure => running,
enable => true,
require => Package['nextcloud-httpd'],
}
file {'/etc/php-fpm.d/www.conf':
content => epp("nextcloud/www.conf", {}),
}
~>
service {'php-fpm':
enable => true,
ensure => running,
subscribe => Package['nextcloud-httpd'],
}
file {'/etc/httpd/conf.d/z-nextcloud-access.conf':
ensure => '/etc/httpd/conf.d/nextcloud-access.conf.avail',
require => Package['nextcloud-httpd'],
notify => Service['httpd'],
}
package {['php-intl', 'php-bcmath']:}
file {'/etc/php.d/99-apcu-cli.ini':
content => @("EOT")
apc.enable_cli=1
| EOT
,
}
cron {"nextcloud-previews":
command => "cd /tmp/ ; sudo -u apache php -d memory_limit=512M /usr/share/nextcloud/occ preview:generate-all -q",
minute => "41",
}
}
|