Downgrade a couple of warnings to debug
authorMichael Biebl <biebl@debian.org>
Mon, 15 Feb 2021 23:18:50 +0000 (00:18 +0100)
committerLuca Boccassi <bluca@debian.org>
Wed, 24 Jan 2024 20:03:15 +0000 (20:03 +0000)
If a package still ships only a SysV init script or if a service file or
tmpfile uses /var/run, downgrade those messages to debug. We can use
lintian to detect those issues.
For service files and tmpfiles in /etc, keep the warning, as those files
are typically added locally and aren't checked by lintian.

Closes: #981407
Gbp-Pq: Topic debian
Gbp-Pq: Name Downgrade-a-couple-of-warnings-to-debug.patch

src/core/load-fragment.c
src/sysv-generator/sysv-generator.c
src/tmpfiles/tmpfiles.c

index f442bd82036c29d7994e1bfd21c6fd8cf5de237e..a92f683a3f7d8c37eb071d76f47b3623188a7c2f 100644 (file)
@@ -544,6 +544,7 @@ static int patch_var_run(
 
         const char *e;
         char *z;
+        int log_level;
 
         e = path_startswith(*path, "/var/run/");
         if (!e)
@@ -553,7 +554,8 @@ static int patch_var_run(
         if (!z)
                 return log_oom();
 
-        log_syntax(unit, LOG_NOTICE, filename, line, 0,
+        log_level = path_startswith(filename, "/etc") ? LOG_NOTICE : LOG_DEBUG;
+        log_syntax(unit, log_level, filename, line, 0,
                    "%s= references a path below legacy directory /var/run/, updating %s → %s; "
                    "please update the unit file accordingly.", lvalue, *path, z);
 
index 4485e2e3680ec9cc1eda27ec20576209b7f07bb6..d0e8ed84bc58124655974c48c778d92bc63d98d9 100644 (file)
@@ -762,7 +762,7 @@ static int enumerate_sysv(const LookupPaths *lp, Hashmap *all_services) {
                         if (!fpath)
                                 return log_oom();
 
-                        log_struct(LOG_WARNING,
+                        log_struct(LOG_DEBUG,
                                    LOG_MESSAGE("SysV service '%s' lacks a native systemd unit file. "
                                                "%s Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it safe, robust and future-proof. "
                                                "%s This compatibility logic is deprecated, expect removal soon. %s",
index 230ec09b97904b485c056fc791b345ca79a914c8..d513d402408cb8a457d802ff713df4466b3962c7 100644 (file)
@@ -3266,6 +3266,7 @@ static int specifier_expansion_from_arg(const Specifier *specifier_table, Item *
 static int patch_var_run(const char *fname, unsigned line, char **path) {
         const char *k;
         char *n;
+        int log_level;
 
         assert(path);
         assert(*path);
@@ -3291,7 +3292,8 @@ static int patch_var_run(const char *fname, unsigned line, char **path) {
         /* Also log about this briefly. We do so at LOG_NOTICE level, as we fixed up the situation automatically, hence
          * there's no immediate need for action by the user. However, in the interest of making things less confusing
          * to the user, let's still inform the user that these snippets should really be updated. */
-        log_syntax(NULL, LOG_NOTICE, fname, line, 0,
+        log_level = path_startswith(fname, "/etc") ? LOG_NOTICE : LOG_DEBUG;
+        log_syntax(NULL, log_level, fname, line, 0,
                    "Line references path below legacy directory /var/run/, updating %s → %s; please update the tmpfiles.d/ drop-in file accordingly.",
                    *path, n);