diff options
Diffstat (limited to 'meta/classes/useradd-staticids.bbclass')
-rw-r--r-- | meta/classes/useradd-staticids.bbclass | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/meta/classes/useradd-staticids.bbclass b/meta/classes/useradd-staticids.bbclass index 3a1b5f1320..1dbcba2bf1 100644 --- a/meta/classes/useradd-staticids.bbclass +++ b/meta/classes/useradd-staticids.bbclass | |||
@@ -1,3 +1,9 @@ | |||
1 | # | ||
2 | # Copyright OpenEmbedded Contributors | ||
3 | # | ||
4 | # SPDX-License-Identifier: MIT | ||
5 | # | ||
6 | |||
1 | # In order to support a deterministic set of 'dynamic' users/groups, | 7 | # In order to support a deterministic set of 'dynamic' users/groups, |
2 | # we need a function to reformat the params based on a static file | 8 | # we need a function to reformat the params based on a static file |
3 | def update_useradd_static_config(d): | 9 | def update_useradd_static_config(d): |
@@ -41,7 +47,7 @@ def update_useradd_static_config(d): | |||
41 | def handle_missing_id(id, type, pkg, files, var, value): | 47 | def handle_missing_id(id, type, pkg, files, var, value): |
42 | # For backwards compatibility we accept "1" in addition to "error" | 48 | # For backwards compatibility we accept "1" in addition to "error" |
43 | error_dynamic = d.getVar('USERADD_ERROR_DYNAMIC') | 49 | error_dynamic = d.getVar('USERADD_ERROR_DYNAMIC') |
44 | msg = "%s - %s: %sname %s does not have a static ID defined." % (d.getVar('PN'), pkg, type, id) | 50 | msg = 'Recipe %s, package %s: %sname "%s" does not have a static ID defined.' % (d.getVar('PN'), pkg, type, id) |
45 | if files: | 51 | if files: |
46 | msg += " Add %s to one of these files: %s" % (id, files) | 52 | msg += " Add %s to one of these files: %s" % (id, files) |
47 | else: | 53 | else: |
@@ -77,7 +83,7 @@ def update_useradd_static_config(d): | |||
77 | try: | 83 | try: |
78 | uaargs = parser.parse_args(oe.useradd.split_args(param)) | 84 | uaargs = parser.parse_args(oe.useradd.split_args(param)) |
79 | except Exception as e: | 85 | except Exception as e: |
80 | bb.fatal("%s: Unable to parse arguments for USERADD_PARAM_%s '%s': %s" % (d.getVar('PN'), pkg, param, e)) | 86 | bb.fatal("%s: Unable to parse arguments for USERADD_PARAM:%s '%s': %s" % (d.getVar('PN'), pkg, param, e)) |
81 | 87 | ||
82 | # Read all passwd files specified in USERADD_UID_TABLES or files/passwd | 88 | # Read all passwd files specified in USERADD_UID_TABLES or files/passwd |
83 | # Use the standard passwd layout: | 89 | # Use the standard passwd layout: |
@@ -140,13 +146,13 @@ def update_useradd_static_config(d): | |||
140 | uaargs.gid = uaargs.groupid | 146 | uaargs.gid = uaargs.groupid |
141 | uaargs.user_group = None | 147 | uaargs.user_group = None |
142 | if newgroup and is_pkg: | 148 | if newgroup and is_pkg: |
143 | groupadd = d.getVar("GROUPADD_PARAM_%s" % pkg) | 149 | groupadd = d.getVar("GROUPADD_PARAM:%s" % pkg) |
144 | if groupadd: | 150 | if groupadd: |
145 | # Only add the group if not already specified | 151 | # Only add the group if not already specified |
146 | if not uaargs.groupname in groupadd: | 152 | if not uaargs.groupname in groupadd: |
147 | d.setVar("GROUPADD_PARAM_%s" % pkg, "%s; %s" % (groupadd, newgroup)) | 153 | d.setVar("GROUPADD_PARAM:%s" % pkg, "%s; %s" % (groupadd, newgroup)) |
148 | else: | 154 | else: |
149 | d.setVar("GROUPADD_PARAM_%s" % pkg, newgroup) | 155 | d.setVar("GROUPADD_PARAM:%s" % pkg, newgroup) |
150 | 156 | ||
151 | uaargs.comment = "'%s'" % field[4] if field[4] else uaargs.comment | 157 | uaargs.comment = "'%s'" % field[4] if field[4] else uaargs.comment |
152 | uaargs.home_dir = field[5] or uaargs.home_dir | 158 | uaargs.home_dir = field[5] or uaargs.home_dir |
@@ -174,8 +180,6 @@ def update_useradd_static_config(d): | |||
174 | newparam += ['', ' --non-unique'][uaargs.non_unique] | 180 | newparam += ['', ' --non-unique'][uaargs.non_unique] |
175 | if uaargs.password != None: | 181 | if uaargs.password != None: |
176 | newparam += ['', ' --password %s' % uaargs.password][uaargs.password != None] | 182 | newparam += ['', ' --password %s' % uaargs.password][uaargs.password != None] |
177 | elif uaargs.clear_password: | ||
178 | newparam += ['', ' --clear-password %s' % uaargs.clear_password][uaargs.clear_password != None] | ||
179 | newparam += ['', ' --root %s' % uaargs.root][uaargs.root != None] | 183 | newparam += ['', ' --root %s' % uaargs.root][uaargs.root != None] |
180 | newparam += ['', ' --system'][uaargs.system] | 184 | newparam += ['', ' --system'][uaargs.system] |
181 | newparam += ['', ' --shell %s' % uaargs.shell][uaargs.shell != None] | 185 | newparam += ['', ' --shell %s' % uaargs.shell][uaargs.shell != None] |
@@ -198,7 +202,7 @@ def update_useradd_static_config(d): | |||
198 | # If we're processing multiple lines, we could have left over values here... | 202 | # If we're processing multiple lines, we could have left over values here... |
199 | gaargs = parser.parse_args(oe.useradd.split_args(param)) | 203 | gaargs = parser.parse_args(oe.useradd.split_args(param)) |
200 | except Exception as e: | 204 | except Exception as e: |
201 | bb.fatal("%s: Unable to parse arguments for GROUPADD_PARAM_%s '%s': %s" % (d.getVar('PN'), pkg, param, e)) | 205 | bb.fatal("%s: Unable to parse arguments for GROUPADD_PARAM:%s '%s': %s" % (d.getVar('PN'), pkg, param, e)) |
202 | 206 | ||
203 | # Read all group files specified in USERADD_GID_TABLES or files/group | 207 | # Read all group files specified in USERADD_GID_TABLES or files/group |
204 | # Use the standard group layout: | 208 | # Use the standard group layout: |
@@ -236,8 +240,6 @@ def update_useradd_static_config(d): | |||
236 | newparam += ['', ' --non-unique'][gaargs.non_unique] | 240 | newparam += ['', ' --non-unique'][gaargs.non_unique] |
237 | if gaargs.password != None: | 241 | if gaargs.password != None: |
238 | newparam += ['', ' --password %s' % gaargs.password][gaargs.password != None] | 242 | newparam += ['', ' --password %s' % gaargs.password][gaargs.password != None] |
239 | elif gaargs.clear_password: | ||
240 | newparam += ['', ' --clear-password %s' % gaargs.clear_password][gaargs.clear_password != None] | ||
241 | newparam += ['', ' --root %s' % gaargs.root][gaargs.root != None] | 243 | newparam += ['', ' --root %s' % gaargs.root][gaargs.root != None] |
242 | newparam += ['', ' --system'][gaargs.system] | 244 | newparam += ['', ' --system'][gaargs.system] |
243 | newparam += ' %s' % gaargs.GROUP | 245 | newparam += ' %s' % gaargs.GROUP |
@@ -265,17 +267,17 @@ def update_useradd_static_config(d): | |||
265 | for pkg in useradd_packages.split(): | 267 | for pkg in useradd_packages.split(): |
266 | # Groupmems doesn't have anything we might want to change, so simply validating | 268 | # Groupmems doesn't have anything we might want to change, so simply validating |
267 | # is a bit of a waste -- only process useradd/groupadd | 269 | # is a bit of a waste -- only process useradd/groupadd |
268 | useradd_param = d.getVar('USERADD_PARAM_%s' % pkg) | 270 | useradd_param = d.getVar('USERADD_PARAM:%s' % pkg) |
269 | if useradd_param: | 271 | if useradd_param: |
270 | #bb.warn("Before: 'USERADD_PARAM_%s' - '%s'" % (pkg, useradd_param)) | 272 | #bb.warn("Before: 'USERADD_PARAM:%s' - '%s'" % (pkg, useradd_param)) |
271 | d.setVar('USERADD_PARAM_%s' % pkg, rewrite_useradd(useradd_param, True)) | 273 | d.setVar('USERADD_PARAM:%s' % pkg, rewrite_useradd(useradd_param, True)) |
272 | #bb.warn("After: 'USERADD_PARAM_%s' - '%s'" % (pkg, d.getVar('USERADD_PARAM_%s' % pkg))) | 274 | #bb.warn("After: 'USERADD_PARAM:%s' - '%s'" % (pkg, d.getVar('USERADD_PARAM:%s' % pkg))) |
273 | 275 | ||
274 | groupadd_param = d.getVar('GROUPADD_PARAM_%s' % pkg) | 276 | groupadd_param = d.getVar('GROUPADD_PARAM:%s' % pkg) |
275 | if groupadd_param: | 277 | if groupadd_param: |
276 | #bb.warn("Before: 'GROUPADD_PARAM_%s' - '%s'" % (pkg, groupadd_param)) | 278 | #bb.warn("Before: 'GROUPADD_PARAM:%s' - '%s'" % (pkg, groupadd_param)) |
277 | d.setVar('GROUPADD_PARAM_%s' % pkg, rewrite_groupadd(groupadd_param, True)) | 279 | d.setVar('GROUPADD_PARAM:%s' % pkg, rewrite_groupadd(groupadd_param, True)) |
278 | #bb.warn("After: 'GROUPADD_PARAM_%s' - '%s'" % (pkg, d.getVar('GROUPADD_PARAM_%s' % pkg))) | 280 | #bb.warn("After: 'GROUPADD_PARAM:%s' - '%s'" % (pkg, d.getVar('GROUPADD_PARAM:%s' % pkg))) |
279 | 281 | ||
280 | # Load and process extra users and groups, rewriting only adduser/addgroup params | 282 | # Load and process extra users and groups, rewriting only adduser/addgroup params |
281 | pkg = d.getVar('PN') | 283 | pkg = d.getVar('PN') |