From: Maximiliano Sandoval <m.sandoval@proxmox.com>
To: Stoiko Ivanov <s.ivanov@proxmox.com>
Cc: pmg-devel@lists.proxmox.com
Subject: Re: [pmg-devel] [PATCH pmg-api v5 01/11] pmgpolicy: move pid file into /run/pmgpolicy
Date: Mon, 25 Aug 2025 14:01:51 +0200 [thread overview]
Message-ID: <s8o5xebpq34.fsf@proxmox.com> (raw)
In-Reply-To: <20250814020926.3266d3b1@rosa.proxmox.com> (Stoiko Ivanov's message of "Thu, 14 Aug 2025 02:09:26 +0200")
Stoiko Ivanov <s.ivanov@proxmox.com> writes:
> Hi,
>
> writing the general feedback for the series here - as there's no
> cover-letter - hope that's ok!
>
> Thanks big time for tackling this and sending updates so often!
>
> The series looks quite nice already in general!
> A few nits (I'll send replies to the individual patches for those)
> Most of them are related to the commit-messages being a bit to terse, and
> lacking a few explanation, which might help reviewers - or people looking
> for bugs in the future.
>
> else - I rebased it (after the tree-wide run of proxmox-perltidy on
> pmg-api) - so if you want to spare yourself the hassle - it's on my staff
> repo
>
> comments inline:
> On Fri, 4 Apr 2025 15:14:28 +0200
> Maximiliano Sandoval <m.sandoval@proxmox.com> wrote:
>
>> We use systemd's RuntimeDirectory to ensure the directory exists when needed.
>>
>> We also set $opt_pidfile using PIDFILE, see
>> https://www.freedesktop.org/software/systemd/man/latest/systemd.exec.html#%24PIDFILE.
>>
>> Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
>> ---
>>
>> Differences from v4:
>> - Run pmg-smtp-filter migration if coming from a version older than 9.0.0.
>> - Instead of adding the pmgpolicy user to the pmg group, pmgproxy.service is
>> started with SupplementaryGroups=systemd-journal
> is that a typo? (pmgpolicy is not added to the pmg-group therefore
> pmgproxy is started with an another group?)
> (in both cases - a short line as to why would help)
The pmgpolicy user is added to the pmg group later on however this
should read "Instead of adding the pmgpolicy user to the systemd-journal
group, pmgproxy.service is started with
SupplementaryGroups=systemd-journal"
>
>> - Use $ENV{'PIDFILE'} instead of hardcoding PID path on binaries backed up
>> with a systemd service
> Not 100% sure - is using the PIDFILE env-var here to address Fiona's
> feedback from
> https://lore.proxmox.com/all/38c4a43b-5f49-41a0-98ca-3911676a0232@proxmox.com/
> ? - If so - I'm not sure that this would be enough - as the pid-file is
> read by other services (pmgdaemon upon config-changes) - so I still see a
> theoretical potential for a race (but would assume that all services
> should be restarted one after the other while pmg-api (which ships
> all of the services) is upgraded - so I think it should be ok.
>
This is only done so that the pid file is hardcoded in only 2 (one for
the shared uses) places instead of 3.
>>
>> Differences from v3:
>> - Override rrdcached's systemd unit to add SOCKGROUP=pmg instead of
>> modifying /etc/default/rrdcached.conf
>>
>> Differences from v2:
>> - Use systemd-sysusers for creating users
>>
>> debian/pmgpolicy.service | 3 ++-
>> src/bin/pmgpolicy | 2 +-
>> 2 files changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/debian/pmgpolicy.service b/debian/pmgpolicy.service
>> index 517a5d61..21a403f0 100644
>> --- a/debian/pmgpolicy.service
>> +++ b/debian/pmgpolicy.service
>> @@ -10,8 +10,9 @@ ExecStart=/usr/bin/pmgpolicy
>> KillMode=mixed
>> TimeoutStopSec=40
>> ExecReload=/bin/kill -HUP $MAINPID
>> -PIDFile=/run/pmgpolicy.pid
>> +PIDFile=/run/pmgpolicy/pmgpolicy.pid
>> Type=forking
>> +RuntimeDirectory=pmgpolicy
>>
>> [Install]
>> WantedBy=multi-user.target
>> diff --git a/src/bin/pmgpolicy b/src/bin/pmgpolicy
>> index df2e66f4..3f976ff7 100755
>> --- a/src/bin/pmgpolicy
>> +++ b/src/bin/pmgpolicy
>> @@ -56,7 +56,7 @@ if (!GetOptions(%_opts)) {
>> exit (-1);
>> }
>>
>> -$opt_pidfile = "/run/pmgpolicy.pid" if !$opt_pidfile;
>> +$opt_pidfile = $ENV{'PIDFILE'} if !$opt_pidfile;
>> $opt_max_dequeue = 0 if $opt_testmode;
>>
>> initlog('pmgpolicy', 'mail');
--
Maximiliano
_______________________________________________
pmg-devel mailing list
pmg-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pmg-devel
prev parent reply other threads:[~2025-08-25 12:02 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-04 13:14 Maximiliano Sandoval
2025-04-04 13:14 ` [pmg-devel] [PATCH pmg-api v5 02/11] pmg-smtp-filter: move pid file into /run/pmg-smtp-filter Maximiliano Sandoval
2025-08-14 0:10 ` Stoiko Ivanov
2025-04-04 13:14 ` [pmg-devel] [PATCH pmg-api v5 03/11] config: store config lock in smtp-filter runtime dir Maximiliano Sandoval
2025-08-14 0:10 ` Stoiko Ivanov
2025-04-04 13:14 ` [pmg-devel] [PATCH pmg-api v5 04/11] create new users for the rule db Maximiliano Sandoval
2025-08-14 0:12 ` Stoiko Ivanov
2025-04-04 13:14 ` [pmg-devel] [PATCH pmg-api v5 05/11] postinstall: add new group for shared functionality Maximiliano Sandoval
2025-08-14 0:13 ` Stoiko Ivanov
2025-08-25 14:13 ` Maximiliano Sandoval
2025-04-04 13:14 ` [pmg-devel] [PATCH pmg-api v5 06/11] postinstall: make rrdcached be readable by the pmg group Maximiliano Sandoval
2025-04-04 13:14 ` [pmg-devel] [PATCH pmg-api v5 07/11] spamasassin: store files in dir managed by pmg Maximiliano Sandoval
2025-08-14 0:13 ` Stoiko Ivanov
2025-04-04 13:14 ` [pmg-devel] [PATCH pmg-api v5 08/11] mailqueue: make mail queue writable by pmg group Maximiliano Sandoval
2025-08-14 0:13 ` Stoiko Ivanov
2025-08-25 13:21 ` Maximiliano Sandoval
2025-04-04 13:14 ` [pmg-devel] [PATCH pmg-api v5 09/11] d/sysusers: add users for pmgpolicy and smtp-filter Maximiliano Sandoval
2025-04-04 13:14 ` [pmg-devel] [PATCH pmg-api v5 10/11] pmgpolicy: set SumplementaryGroups=systemd-journal Maximiliano Sandoval
2025-04-04 13:14 ` [pmg-devel] [PATCH pmg-api v5 11/11] fix #4926: run pmg-smtp-filter and pmgpolicy without root rights Maximiliano Sandoval
2025-08-14 0:09 ` [pmg-devel] [PATCH pmg-api v5 01/11] pmgpolicy: move pid file into /run/pmgpolicy Stoiko Ivanov
2025-08-25 12:01 ` Maximiliano Sandoval [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=s8o5xebpq34.fsf@proxmox.com \
--to=m.sandoval@proxmox.com \
--cc=pmg-devel@lists.proxmox.com \
--cc=s.ivanov@proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.