Some checks failed
Code scanning / CodeQL (push) Failing after 15s
Zulip production suite / Ubuntu 22.04 production build (push) Failing after 26s
Zulip production suite / Debian 12 production install with custom db name and user (push) Has been skipped
Zulip production suite / Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga (push) Has been skipped
Zulip production suite / Ubuntu 24.04 production install (push) Has been skipped
Zulip production suite / Ubuntu 26.04 production install (push) Has been skipped
Zulip production suite / Debian 13 production install (push) Has been skipped
Zulip production suite / 7.0 Version Upgrade (push) Has been skipped
Zulip production suite / 8.0 Version Upgrade (push) Has been skipped
Zulip production suite / 6.0 Version Upgrade (push) Has been skipped
Zulip production suite / 10.0 Version Upgrade (push) Has been skipped
Zulip production suite / 9.0 Version Upgrade (push) Has been skipped
Zulip production suite / 12.0 Version Upgrade (push) Has been skipped
Zulip production suite / 11.0 Version Upgrade (push) Has been skipped
GitHub Actions Security Analysis with zizmor / zizmor (push) Failing after 3s
Zulip CI / Debian 12 (Python 3.11, backend + documentation) (push) Failing after 26s
Zulip CI / Ubuntu 22.04 (Python 3.10, backend + frontend) (push) Failing after 3s
Zulip CI / Ubuntu 24.04 (Python 3.12, backend) (push) Failing after 25s
Zulip CI / Ubuntu 26.04 (Python 3.14, backend) (push) Failing after 25s
Zulip CI / Debian 13 (Python 3.13, backend) (push) Failing after 28s
Zulip production suite / Required jobs (push) Has been cancelled
Zulip CI / Required jobs (push) Has been cancelled
API Documentation Update Check / check-feature-level-updated (push) Has been cancelled
API Documentation Update Check / notify-if-api-docs-changed (push) Has been cancelled
66 lines
2.1 KiB
Puppet
66 lines
2.1 KiB
Puppet
# Default configuration for a Zulip app frontend
|
|
class zulip::profile::app_frontend {
|
|
include zulip::profile::base
|
|
include zulip::app_frontend_base
|
|
include zulip::app_frontend_once
|
|
|
|
$nginx_http_only = zulipconf('application_server', 'http_only', false)
|
|
if $nginx_http_only {
|
|
$nginx_listen_port = zulipconf('application_server', 'nginx_listen_port', 80)
|
|
} else {
|
|
$nginx_listen_port = zulipconf('application_server', 'nginx_listen_port', 443)
|
|
}
|
|
$nginx_server_name = zulipconf('application_server', 'nginx_server_name', '')
|
|
$ssl_dir = $facts['os']['family'] ? {
|
|
'Debian' => '/etc/ssl',
|
|
'RedHat' => '/etc/pki/tls',
|
|
}
|
|
file { '/etc/nginx/sites-available/zulip-enterprise':
|
|
ensure => file,
|
|
require => Package[$zulip::common::nginx],
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0644',
|
|
content => template('zulip/nginx/zulip-enterprise.template.erb'),
|
|
notify => Service['nginx'],
|
|
}
|
|
file { '/etc/nginx/sites-enabled/zulip-enterprise':
|
|
ensure => link,
|
|
require => Package[$zulip::common::nginx],
|
|
target => '/etc/nginx/sites-available/zulip-enterprise',
|
|
notify => Service['nginx'],
|
|
}
|
|
|
|
# Reload nginx after deploying a new cert.
|
|
file { '/etc/letsencrypt/renewal-hooks/deploy/001-nginx.sh':
|
|
# This was renumbered
|
|
ensure => absent,
|
|
}
|
|
file { '/etc/letsencrypt/renewal-hooks/deploy/020-symlink.sh':
|
|
ensure => file,
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0755',
|
|
source => 'puppet:///modules/zulip/letsencrypt/020-symlink.sh',
|
|
require => [
|
|
Package[certbot],
|
|
File['/etc/letsencrypt/renewal-hooks/deploy'],
|
|
]
|
|
}
|
|
file { '/etc/letsencrypt/renewal-hooks/deploy/050-nginx.sh':
|
|
ensure => file,
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0755',
|
|
source => 'puppet:///modules/zulip/letsencrypt/050-nginx.sh',
|
|
}
|
|
|
|
# Restart the server regularly to avoid potential memory leak problems.
|
|
zulip::cron { 'restart-zulip':
|
|
hour => '6',
|
|
minute => '0',
|
|
dow => '0',
|
|
command => '/home/zulip/deployments/current/scripts/restart-server --fill-cache --skip-client-reloads',
|
|
}
|
|
}
|