From 6e8a9dc96392366641101c3c3cbf0f70f0b297de Mon Sep 17 00:00:00 2001 From: Andriy Oblivantsev Date: Wed, 23 Sep 2026 19:37:56 +0100 Subject: [PATCH] feat(mail): share oleksandra.svitelska mailbox with info@ (read-only) Add oleksandra.svitelska@produktor.io to PRODUCTION_OWNERS so info@ sees it under Shared/ (lookup read), same class as the other production mailboxes. Applied live via user-patches.sh (idempotent); no container recreation needed. --- README.md | 5 +++-- config/user-patches.sh | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index be4b9d6..6cc5a8c 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,7 @@ mailboxes: - `info@produktor.io` — human reader (Roundcube login for the whole list) - `andriy.oblivantsev@produktor.io` +- `oleksandra.svitelska@produktor.io` - `ano@produktor.io` - `postmaster@produktor.io` - `postman@produktor.io` @@ -115,8 +116,8 @@ Roundcube covers the whole account list. Delivery is unchanged (no aliases, no redirects); other accounts keep their own passwords. Two owner classes, two right sets for `info@`: -- **production owners** (`ano@`, `andriy.oblivantsev@`, `postmaster@`): - read-only — `lookup read` (issue #79); +- **production owners** (`ano@`, `andriy.oblivantsev@`, `oleksandra.svitelska@`, + `postmaster@`): read-only — `lookup read` (issue #79); - **incubator owners** (one account per historical address of the owner: `andriy.oblivantsev@wheregroup.com` for the гдеgroup period; later `eslider@gmail.com`, `...@viscreation.de`, ...): read **and delete** — diff --git a/config/user-patches.sh b/config/user-patches.sh index 31d8c0d..94f02e8 100755 --- a/config/user-patches.sh +++ b/config/user-patches.sh @@ -1,7 +1,8 @@ #!/bin/bash # Dovecot shared mailboxes. info@produktor.io gets access to the mailboxes of # two owner classes (issue #79, issue #251 / epic #250): -# - production owners (ano@, andriy.oblivantsev@, postmaster@): read-only +# - production owners (ano@, andriy.oblivantsev@, oleksandra.svitelska@, +# postmaster@): read-only # (`lookup read`) — one login in Roundcube covers the whole account list; # - incubator owners: read + delete (`lookup read delete expunge # write-deleted`) — the mailbox owner never logs in, mail is imported via @@ -37,7 +38,7 @@ chmod 0770 "${SHARED_DB_DIR}" # NOT required; `expunge` is also what Dovecot MOVE needs on the source side # when Roundcube moves a deleted message to Trash. READER='info@produktor.io' -PRODUCTION_OWNERS='ano@produktor.io andriy.oblivantsev@produktor.io postmaster@produktor.io' +PRODUCTION_OWNERS='ano@produktor.io andriy.oblivantsev@produktor.io postmaster@produktor.io oleksandra.svitelska@produktor.io' INCUBATOR_OWNERS='andriy.oblivantsev@wheregroup.com eslider@gmail.com viscreation@gmail.com viscreation@gmx.de andriy.oblivantsev@gridfactor.de ao@rpf.de andriy.oblivantsev@gmail.com viscreation@viscreation.de' grant_share() { # $1=owner, remaining=right names