Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 927991 - net-dns/pdns-recursor-5.0.2 requires recursor.conf for init script and did not allow migration to yaml configuration
Summary: net-dns/pdns-recursor-5.0.2 requires recursor.conf for init script and did no...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Sven Wegener
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-03-27 21:25 UTC by Marcel Pennewiß
Modified: 2024-08-24 18:37 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marcel Pennewiß 2024-03-27 21:25:48 UTC
PowerDNS Recursor introduces a yaml based configuration in 5.x. Migrating to a yaml config file and remove recursor.conf leads to errors in init script.

Reproducible: Always

Steps to Reproduce:
1. Install/Upgrade PowerDNS Recursor to 5.0.2
2. Migrate Configuration (rec_control show-yaml >> /etc/powerdns/recursor.yml)
3. Remove old recursor.conf (rm /etc/powerdns/recursor.conf)
4. (Re)Start pdns-recursor
Actual Results:  
Error on Start:
awk: Fatal: Die Datei »/etc/powerdns/recursor.conf« kann nicht zum Lesen geöffnet werden: Datei oder Verzeichnis nicht gefunden
awk: Fatal: Die Datei »/etc/powerdns/recursor.conf« kann nicht zum Lesen geöffnet werden: Datei oder Verzeichnis nicht gefunden
awk: Fatal: Die Datei »/etc/powerdns/recursor.conf« kann nicht zum Lesen geöffnet werden: Datei oder Verzeichnis nicht gefunden
awk: Fatal: Die Datei »/etc/powerdns/recursor.conf« kann nicht zum Lesen geöffnet werden: Datei oder Verzeichnis nicht gefunden
 * Stopping PowerDNS Recursor ...                                                                                                                                                                                                      [ ok ]
awk: Fatal: Die Datei »/etc/powerdns/recursor.conf« kann nicht zum Lesen geöffnet werden: Datei oder Verzeichnis nicht gefunden
awk: Fatal: Die Datei »/etc/powerdns/recursor.conf« kann nicht zum Lesen geöffnet werden: Datei oder Verzeichnis nicht gefunden
awk: Fatal: Die Datei »/etc/powerdns/recursor.conf« kann nicht zum Lesen geöffnet werden: Datei oder Verzeichnis nicht gefunden
awk: Fatal: Die Datei »/etc/powerdns/recursor.conf« kann nicht zum Lesen geöffnet werden: Datei oder Verzeichnis nicht gefunden
 * /var/run/pdns-recursor: creating directory
 * Starting PowerDNS Recursor ...  

Expected Results:  
The init script get chroot-/socket-dir and uid/gid from recursor.yml instead of recursor.conf, if file exists.
Starting without errors.

The init script gets chroot-/socket-dir and uid/gid from recursor.conf.
Comment 1 Sven Wegener gentoo-dev 2024-05-16 21:33:13 UTC
Hm, I've been using awk to get the chroot, socket-dir, setuid and setgid parameters from recursor.conf to know where the pidfile is going to end up, create directories and adjust permissions.
I tried several things to get the settings independent of the configuration format used, 1) `rec_control get-parameter` (only requests parameters from a running instance) 2) `pdns_recursor --config` (outputs .conf or .yml format depending on configuration used)
I'm not keen on supporting both formats in the init script by using something like app-misc/yq to extract the parameters.

I'll likely rewrite the init script to get rid of this requirement.
Comment 2 Larry the Git Cow gentoo-dev 2024-08-11 20:30:15 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a810d43b4f65c1159e25636f393634eac81ec810

commit a810d43b4f65c1159e25636f393634eac81ec810
Author:     Sven Wegener <swegener@gentoo.org>
AuthorDate: 2024-08-11 20:17:04 +0000
Commit:     Sven Wegener <swegener@gentoo.org>
CommitDate: 2024-08-11 20:30:01 +0000

    net-dns/pdns-recursor: add 5.1.1
    
    This version uses the new yaml configuration format. The old configuration file
    format is still supported for now, but existing configurations should be updated.
    
    Bug: https://bugs.gentoo.org/927991
    Signed-off-by: Sven Wegener <swegener@gentoo.org>

 net-dns/pdns-recursor/Manifest                   |  32 ++++++
 net-dns/pdns-recursor/files/pdns-recursor-r3     |  31 ++++++
 net-dns/pdns-recursor/pdns-recursor-5.1.1.ebuild | 134 +++++++++++++++++++++++
 3 files changed, 197 insertions(+)
Comment 3 Larry the Git Cow gentoo-dev 2024-08-24 18:37:21 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=96a31f50bb060343ea336feabcaa097a13fdfe13

commit 96a31f50bb060343ea336feabcaa097a13fdfe13
Author:     Sven Wegener <swegener@gentoo.org>
AuthorDate: 2024-08-24 17:26:55 +0000
Commit:     Sven Wegener <swegener@gentoo.org>
CommitDate: 2024-08-24 18:35:54 +0000

    net-dns/pdns-recursor: keyword 5.1.1 for ~amd64, ~arm, ~x86
    
    Bug: https://bugs.gentoo.org/927991
    Signed-off-by: Sven Wegener <swegener@gentoo.org>

 net-dns/pdns-recursor/pdns-recursor-5.1.1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)