[gnome-continuous-yocto/gnomeostree-3.28-rocko: 995/8267] useradd-staticids.bbclass: Allow missing UIDs/GIDs to generate warnings



commit 3037e0df9b1a0e1cb5332ab8026245b61515fc33
Author: Peter Kjellerstedt <peter kjellerstedt axis com>
Date:   Fri Jun 17 16:59:02 2016 +0200

    useradd-staticids.bbclass: Allow missing UIDs/GIDs to generate warnings
    
    Previously when USERADD_ERROR_DYNAMIC was set to "1", an exception was
    raised if no numeric UID/GID could be determined for a user/group. Now
    it is possible to set it to either "error", which results in the old
    behavior, or "warn" in which case a warning is issued instead.
    
    For backwards compatibility reasons, it is still possible to set
    USERADD_ERROR_DYNAMIC to "1" and get an exception in case of failure.
    
    (From OE-Core rev: 58c82f79efee8e68fa63b96a32f54660afb15769)
    
    Signed-off-by: Peter Kjellerstedt <peter kjellerstedt axis com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 meta/classes/useradd-staticids.bbclass |    5 ++++-
 meta/conf/documentation.conf           |    2 +-
 2 files changed, 5 insertions(+), 2 deletions(-)
---
diff --git a/meta/classes/useradd-staticids.bbclass b/meta/classes/useradd-staticids.bbclass
index 90835cf..b6e498c 100644
--- a/meta/classes/useradd-staticids.bbclass
+++ b/meta/classes/useradd-staticids.bbclass
@@ -51,9 +51,12 @@ def update_useradd_static_config(d):
         return id_table
 
     def handle_missing_id(id, type, pkg):
-        if d.getVar('USERADD_ERROR_DYNAMIC', True) == '1':
+        # For backwards compatibility we accept "1" in addition to "error"
+        if d.getVar('USERADD_ERROR_DYNAMIC', True) == 'error' or d.getVar('USERADD_ERROR_DYNAMIC', True) == 
'1':
             #bb.error("Skipping recipe %s, package %s which adds %sname %s does not have a static ID 
defined." % (d.getVar('PN', True),  pkg, type, id))
             raise bb.build.FuncFailed("%s - %s: %sname %s does not have a static ID defined." % 
(d.getVar('PN', True), pkg, type, id))
+        elif d.getVar('USERADD_ERROR_DYNAMIC', True) == 'warn':
+            bb.warn("%s - %s: %sname %s does not have a static ID defined." % (d.getVar('PN', True), pkg, 
type, id))
 
     # We parse and rewrite the useradd components
     def rewrite_useradd(params):
diff --git a/meta/conf/documentation.conf b/meta/conf/documentation.conf
index 010585a..51c4116 100644
--- a/meta/conf/documentation.conf
+++ b/meta/conf/documentation.conf
@@ -452,7 +452,7 @@ UBOOT_SUFFIX[doc] = "Points to the generated U-Boot extension."
 UBOOT_TARGET[doc] = "Specifies the target used for building U-Boot."
 USE_DEVFS[doc] = "When building images, specifies to populate or not /dev. This variable defaults to '1' 
(leave directory empty, surely because devtmpfs do the job). Set it to '0' to use makedevs (or consider using 
a custom file with IMAGE_DEVICE_TABLES)."
 USER_CLASSES[doc] = "List of additional classes to use when building images that enable extra features."
-USERADD_ERROR_DYNAMIC[doc] = "Forces the OpenEmbedded build system to produce an error if the user 
identification (uid) and group identification (gid) values are not defined in any of the files listed in 
USERADD_UID_TABLES and USERADD_GID_TABLES."
+USERADD_ERROR_DYNAMIC[doc] = "If set to 'error', forces the OpenEmbedded build system to produce an error if 
the user identification (uid) and group identification (gid) values are not defined in any of the files 
listed in USERADD_UID_TABLES and USERADD_GID_TABLES. If set to 'warn', a warning will be issued instead."
 USERADD_GID_TABLES[doc] = "Specifies a password file to use for obtaining static group identification (gid) 
values when the OpenEmbedded build system adds a group to the system during package installation."
 USERADD_PACKAGES[doc] = "When a recipe inherits the useradd class, this variable specifies the individual 
packages within the recipe that require users and/or groups to be added."
 USERADD_PARAM[doc] = "When a recipe inherits the useradd class, this variable specifies for a package what 
parameters should be passed to the useradd command if you wish to add a user to the system when the package 
is installed."


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]