Commit Graph

19 Commits

Author SHA1 Message Date
952df3d324 Update service versions with Renovate
This adds basic configuration for Renovate, and sets up most services
for automated updates to package versions.
2023-12-20 23:00:19 +00:00
b123008850 dovecot: Update Grafana dashboard 2023-12-01 15:45:43 +00:00
5163fd4da0 Allow clients to choose own ciphers
This changes a previously updated default in Dovecot and Postfix, as it
resulted in too many issues in older clients.
2023-10-30 22:16:00 +00:00
9dfd940eab Auto-update Dovecot and Gitea on container build 2023-10-29 16:46:28 +00:00
f536787fb6 dovecot: Enable and start on health-check pass 2023-10-29 16:22:26 +00:00
50249ba987 Use BindsTo in Dovecot first boot process
This is to avoid starting requisite units (specifically, the MariaDB
migrations) if conditions fail.
2023-10-22 00:19:52 +01:00
a5ce4675d5 Improve TLS security for Dovecot and Postfix 2023-10-21 17:19:35 +01:00
0ff662b8c5 Auto-archive inbox messages after 1 week 2023-09-06 21:23:24 +01:00
5afcea8f05 dovecot: Auto-archive unflagged messages in inbox 2023-08-20 11:31:37 +01:00
ccf1852026 dovecot: Update to version 2.3.19, move to Quadlet 2023-08-13 16:30:55 +01:00
e7e90f0002 dovecot: Add chroot in container
Dovecot will, by default, have login processes run under a limited
`chroot` environment. However, this broke recently with the update to
Podman 4.4.1 and the removal of implicit `CAP_CHROOT` capabilities.
This commit re-adds these in place.
2023-03-13 11:15:38 +00:00
8051418e61 dovecot: Only LIST directories in user maildir
This option has Dovecot only return directories in LIST commands, which
is a necessary workaround because of how our home and maildir locations
are the same, which sometimes has extraneous files (such as Sieve
scripts) appear in IMAP directory listings.

We should eventually move away from this unified location, but doing so
requires careful planning and migration.
2022-12-03 14:11:03 +00:00
10deb13f76 Fix Grafana dashboard data-source names
These were prepared as import-able dashboards, which prepares common
options as variables to be provided by the user, and thus is not
compatible with automated provisioning.
2022-05-09 13:59:49 +01:00
ba9266110c Add Grafana dashboards for Dovecot, Prosody
This commit adds basic Grafana dashboards for Dovecot and Prosody, to be
automatically deployed alongside the relevant services (if Grafana
itself is enabled).
2022-04-28 23:07:51 +01:00
a6729b476c dovecot: Use group_by, not fields for metric labels
As the former does not do exactly what it says it does in documentation.
Also, we decrease the default scrape interval for Prometheus from 1m to
30s to improve granularity of data.
2022-04-27 20:34:58 +01:00
5d0f8b748c dovecot: Add basic metric definitions
This adds basic metric definitions across a number of different events,
to be expanded upon as needed in the future. Several metrics are given
additional vectors with low cardinality.
2022-04-26 23:30:17 +01:00
011650105b Implement metrics with Grafana and Prometheus
This commit adds two services, `grafana` and `prometheus`, and sets up
some existing services (`dovecot` and `prosody`) to expose metrics into
Grafana. In addition, systemd services have been added to facilitate
registering metrics for services into Prometheus, as well as
automatically provisioning Grafana dashboards based on static JSON
representations.

This work will continue to evolve as more services gain proper Grafana
dashboards, and Loki is also integrated for access to the systemd
journal.
2022-04-25 20:12:06 +01:00
0fbbc39e27 base: Only copy service directories if used
We no longer copy service directories into `/etc/coreos-home-server` if
these have not had their respective `spec.bu` files included; these
directories are not needed in these cases, and would be erroneously
considered as eligible in subsequent `coreos-home-server-update`
invocations.
2022-02-05 16:05:00 +00:00
f877a72e83 Flatten directory structures
This commit contains a fairly large diff for a fairly small change:
moving the `config/common` directory to `host/base` to better reflect
its intended use, and promoting `config/service` to the root directory.

These changes unlock some improvements in `coreos-home-server-update`
processes, which will (assuming `/etc/coreos-home-server/base` exists)
keep host-wide systemd services in sync in addition to service-specific
ones.

Changes have been make to the `Makefile` and a few other places where
`config/common` was referenced, but most of this work is renames that
are not intended to break compatibility with new or running servers.
2022-01-15 11:43:33 +00:00