Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-kiwi for openSUSE:Factory 
checked in at 2022-06-18 22:05:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-kiwi (Old)
 and      /work/SRC/openSUSE:Factory/.python-kiwi.new.1548 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-kiwi"

Sat Jun 18 22:05:20 2022 rev:98 rq:982951 version:9.24.41

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-kiwi/python-kiwi.changes  2022-05-24 
20:31:24.366921505 +0200
+++ /work/SRC/openSUSE:Factory/.python-kiwi.new.1548/python-kiwi.changes        
2022-06-18 22:05:24.343589269 +0200
@@ -1,0 +2,123 @@
+Thu Jun 09 10:29:53 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Bump version: 9.24.40 ??? 9.24.41
+
+-------------------------------------------------------------------
+Wed Jun 08 23:06:16 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Fix helper method to detect dracut outfile format
+
+  The method _get_boot_image_output_file_format_from_dracut_code
+  is used in kiwi to match parts of the dracut code for the used
+  output file format. Beginning with dracut-056 the code part
+  checked has changed syntactically such that the match did
+  no longer work. This commit increases the scope of the match
+  and replace pattern and Fixes #2149
+
+-------------------------------------------------------------------
+Wed Jun 08 18:29:42 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Fixed handling of signing_keys in cmdline options
+
+  When passing signing_keys with the --add-repo|--set-repo
+  commandline options the delimiter to separate the single
+  key information is a colon(:). However, this is stupid when
+  kiwi expects the signing key to be references as an URI
+  format like file://... Therefore this patch changes the
+  delimiter from colon(:) to semicolon(;)
+
+-------------------------------------------------------------------
+Wed Jun 01 11:31:29 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Bump version: 9.24.39 ??? 9.24.40
+
+-------------------------------------------------------------------
+Wed Jun 01 11:31:00 CEST 2022 - Carlos Bederi??n <zzz...@gmail.com>
+
+- Setup SELinux on every system prepare / build (#2148)
+
+  Setup SELinux on every system prepare / build such that all image types 
benefit from it not only the disk (oem) type
+
+-------------------------------------------------------------------
+Sun May 29 21:26:15 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Install all of QEMU to Ubuntu arm integration test
+
+-------------------------------------------------------------------
+Sun May 29 20:51:24 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- rename user to ubuntu for Ubuntu integration test
+
+-------------------------------------------------------------------
+Sun May 29 20:33:16 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Bump version: 9.24.38 ??? 9.24.39
+
+-------------------------------------------------------------------
+Sun May 29 20:31:42 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Move to sphinx>=5.0.0
+
+-------------------------------------------------------------------
+Sun May 29 20:17:55 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Bump version: 9.24.37 ??? 9.24.38
+
+-------------------------------------------------------------------
+Sun May 29 20:16:20 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Fixed sphinx extlinks rendering
+
+  In Sphinx v5 warning will be treated as errors. This results in the following
+  warning to be an error: extlinks: Sphinx-6.0 will require a caption string to
+  contain exactly one '%s' and all other '%' need to be escaped as '%%'.
+  This commit applies the required quoting
+
+-------------------------------------------------------------------
+Sun May 29 20:06:52 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Bump version: 9.24.36 ??? 9.24.37
+
+-------------------------------------------------------------------
+Sat May 28 16:47:35 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Added example aarch64 integration test for Ubuntu
+
+  Created a RaspberryPI image description for Ubuntu(jammy)
+  as integration test for building aarch64 images and added
+  it to the integration test matrix
+
+-------------------------------------------------------------------
+Mon May 23 16:53:04 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Added --target-arch for image info
+
+  Allow cross arch dependency solving
+
+-------------------------------------------------------------------
+Fri May 20 22:09:33 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- update docs
+
+-------------------------------------------------------------------
+Fri May 20 19:23:22 CEST 2022 - Marcus Sch??fer <marcus.schae...@gmail.com>
+
+- Add support for group id in users setting
+
+  Allow to specify the group id in the groups list a user
+  should belong to. The group id can be placed as part of
+  the group name separated by a colon like in the following
+  example:
+
+  <users>
+  <user groups="kiwi,admin:42,users" password="..." name="kiwi"/>
+  </users>
+
+  Please note kiwi checks if the provided group already
+  exists and only creates a group if it is not already present in
+  the system. As default groups are usually provided by the OS
+  itself including its preferred group id, you will intentionally
+  not be able to overwrite group id for existing groups.
+  This Fixes #2064
+
+-------------------------------------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-kiwi.spec ++++++
--- /var/tmp/diff_new_pack.1OHFzJ/_old  2022-06-18 22:05:25.467590866 +0200
+++ /var/tmp/diff_new_pack.1OHFzJ/_new  2022-06-18 22:05:25.471590871 +0200
@@ -43,7 +43,7 @@
 %endif
 
 Name:           python-kiwi
-Version:        9.24.36
+Version:        9.24.41
 Provides:       kiwi-schema = 7.5
 Release:        0
 Url:            https://github.com/OSInside/kiwi

++++++ PKGBUILD ++++++
--- /var/tmp/diff_new_pack.1OHFzJ/_old  2022-06-18 22:05:25.503590917 +0200
+++ /var/tmp/diff_new_pack.1OHFzJ/_new  2022-06-18 22:05:25.507590922 +0200
@@ -3,7 +3,7 @@
 
 pkgname=('python-kiwi' 'kiwi-man-pages' 'dracut-kiwi-lib' 
'dracut-kiwi-oem-repart' 'dracut-kiwi-oem-dump' 'dracut-kiwi-live' 
'dracut-kiwi-overlay')
 arch=(x86_64)
-pkgver=9.24.36
+pkgver=9.24.41
 pkgrel=0
 pkgdesc="KIWI - Appliance Builder Next Generation"
 url="https://github.com/SUSE/kiwi/tarball/master";
@@ -12,7 +12,7 @@
 provides=(kiwi-ng kiwi)
 source=("${pkgname}.tar.gz")
 changelog="${pkgname}.changes"
-md5sums=('7eefd0af367564845b071d5664003f83')
+md5sums=('a896d30f03172d8fdca0ec3f218aa0f8')
 
 
 build() {

++++++ python-kiwi.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/.bumpversion.cfg 
new/kiwi-9.24.41/.bumpversion.cfg
--- old/kiwi-9.24.36/.bumpversion.cfg   2022-05-19 15:21:54.000000000 +0200
+++ new/kiwi-9.24.41/.bumpversion.cfg   2022-06-09 10:29:53.000000000 +0200
@@ -1,5 +1,5 @@
 [bumpversion]
-current_version = 9.24.36
+current_version = 9.24.41
 commit = True
 tag = True
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/.virtualenv.dev-requirements.txt 
new/kiwi-9.24.41/.virtualenv.dev-requirements.txt
--- old/kiwi-9.24.36/.virtualenv.dev-requirements.txt   2022-02-25 
15:34:33.000000000 +0100
+++ new/kiwi-9.24.41/.virtualenv.dev-requirements.txt   2022-05-30 
08:16:30.000000000 +0200
@@ -38,7 +38,7 @@
 generateDS==2.29.24
 
 # for building documentation
-sphinx>=4.0.2
+sphinx>=5.0.0
 
 git+https://github.com/openSUSE/rstxml2docbook.git@feature/kiwi
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/PKG-INFO new/kiwi-9.24.41/PKG-INFO
--- old/kiwi-9.24.36/PKG-INFO   2022-05-19 15:25:18.000000000 +0200
+++ new/kiwi-9.24.41/PKG-INFO   2022-06-09 10:33:09.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: kiwi
-Version: 9.24.36
+Version: 9.24.41
 Summary: KIWI - Appliance Builder (next generation)
 Home-page: https://osinside.github.io/kiwi
 Author: Marcus Schaefer
Binary files old/kiwi-9.24.36/doc/build/latex/kiwi.pdf and 
new/kiwi-9.24.41/doc/build/latex/kiwi.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/build/man/kiwi.8 
new/kiwi-9.24.41/doc/build/man/kiwi.8
--- old/kiwi-9.24.36/doc/build/man/kiwi.8       2022-05-19 15:25:16.000000000 
+0200
+++ new/kiwi-9.24.41/doc/build/man/kiwi.8       2022-06-09 10:33:07.000000000 
+0200
@@ -27,7 +27,7 @@
 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
 .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
 ..
-.TH "KIWI" "8" "May 19, 2022" "9.24.36" "KIWI NG"
+.TH "KIWI" "8" "Jun 09, 2022" "9.24.41" "KIWI NG"
 .SH NAME
 kiwi \- Creating Operating System Images
 .SH SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/build/man/kiwi::image::info.8 
new/kiwi-9.24.41/doc/build/man/kiwi::image::info.8
--- old/kiwi-9.24.36/doc/build/man/kiwi::image::info.8  2022-05-19 
15:25:16.000000000 +0200
+++ new/kiwi-9.24.41/doc/build/man/kiwi::image::info.8  2022-06-09 
10:33:07.000000000 +0200
@@ -27,7 +27,7 @@
 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
 .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
 ..
-.TH "KIWI::IMAGE::INFO" "8" "May 19, 2022" "9.24.36" "KIWI NG"
+.TH "KIWI::IMAGE::INFO" "8" "Jun 09, 2022" "9.24.41" "KIWI NG"
 .SH NAME
 kiwi::image::info \- Provide detailed information about an image description
 .SH SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/build/man/kiwi::image::resize.8 
new/kiwi-9.24.41/doc/build/man/kiwi::image::resize.8
--- old/kiwi-9.24.36/doc/build/man/kiwi::image::resize.8        2022-05-19 
15:25:16.000000000 +0200
+++ new/kiwi-9.24.41/doc/build/man/kiwi::image::resize.8        2022-06-09 
10:33:07.000000000 +0200
@@ -27,7 +27,7 @@
 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
 .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
 ..
-.TH "KIWI::IMAGE::RESIZE" "8" "May 19, 2022" "9.24.36" "KIWI NG"
+.TH "KIWI::IMAGE::RESIZE" "8" "Jun 09, 2022" "9.24.41" "KIWI NG"
 .SH NAME
 kiwi::image::resize \- Resize disk images to new geometry
 .SH SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/build/man/kiwi::result::bundle.8 
new/kiwi-9.24.41/doc/build/man/kiwi::result::bundle.8
--- old/kiwi-9.24.36/doc/build/man/kiwi::result::bundle.8       2022-05-19 
15:25:16.000000000 +0200
+++ new/kiwi-9.24.41/doc/build/man/kiwi::result::bundle.8       2022-06-09 
10:33:07.000000000 +0200
@@ -27,7 +27,7 @@
 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
 .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
 ..
-.TH "KIWI::RESULT::BUNDLE" "8" "May 19, 2022" "9.24.36" "KIWI NG"
+.TH "KIWI::RESULT::BUNDLE" "8" "Jun 09, 2022" "9.24.41" "KIWI NG"
 .SH NAME
 kiwi::result::bundle \- Bundle build results
 .SH SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/build/man/kiwi::result::list.8 
new/kiwi-9.24.41/doc/build/man/kiwi::result::list.8
--- old/kiwi-9.24.36/doc/build/man/kiwi::result::list.8 2022-05-19 
15:25:16.000000000 +0200
+++ new/kiwi-9.24.41/doc/build/man/kiwi::result::list.8 2022-06-09 
10:33:07.000000000 +0200
@@ -27,7 +27,7 @@
 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
 .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
 ..
-.TH "KIWI::RESULT::LIST" "8" "May 19, 2022" "9.24.36" "KIWI NG"
+.TH "KIWI::RESULT::LIST" "8" "Jun 09, 2022" "9.24.41" "KIWI NG"
 .SH NAME
 kiwi::result::list \- List build results
 .SH SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/build/man/kiwi::system::build.8 
new/kiwi-9.24.41/doc/build/man/kiwi::system::build.8
--- old/kiwi-9.24.36/doc/build/man/kiwi::system::build.8        2022-05-19 
15:25:16.000000000 +0200
+++ new/kiwi-9.24.41/doc/build/man/kiwi::system::build.8        2022-06-09 
10:33:07.000000000 +0200
@@ -27,7 +27,7 @@
 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
 .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
 ..
-.TH "KIWI::SYSTEM::BUILD" "8" "May 19, 2022" "9.24.36" "KIWI NG"
+.TH "KIWI::SYSTEM::BUILD" "8" "Jun 09, 2022" "9.24.41" "KIWI NG"
 .SH NAME
 kiwi::system::build \- Build image in combined prepare and create step
 .SH SYNOPSIS
@@ -164,7 +164,9 @@
 .IP \(bu 2
 \fB{signing_keys}\fP
 .sp
-List of signing_keys enclosed in curly brackets and delimited by a colon
+List of signing_keys enclosed in curly brackets and delimited by
+semicolon. The reference to a signing key must be provided as URI
+format
 .IP \(bu 2
 \fBcomponents\fP
 .sp
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/build/man/kiwi::system::create.8 
new/kiwi-9.24.41/doc/build/man/kiwi::system::create.8
--- old/kiwi-9.24.36/doc/build/man/kiwi::system::create.8       2022-05-19 
15:25:16.000000000 +0200
+++ new/kiwi-9.24.41/doc/build/man/kiwi::system::create.8       2022-06-09 
10:33:07.000000000 +0200
@@ -27,7 +27,7 @@
 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
 .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
 ..
-.TH "KIWI::SYSTEM::CREATE" "8" "May 19, 2022" "9.24.36" "KIWI NG"
+.TH "KIWI::SYSTEM::CREATE" "8" "Jun 09, 2022" "9.24.41" "KIWI NG"
 .SH NAME
 kiwi::system::create \- Create image from prepared root system
 .SH SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/build/man/kiwi::system::prepare.8 
new/kiwi-9.24.41/doc/build/man/kiwi::system::prepare.8
--- old/kiwi-9.24.36/doc/build/man/kiwi::system::prepare.8      2022-05-19 
15:25:16.000000000 +0200
+++ new/kiwi-9.24.41/doc/build/man/kiwi::system::prepare.8      2022-06-09 
10:33:07.000000000 +0200
@@ -27,7 +27,7 @@
 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
 .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
 ..
-.TH "KIWI::SYSTEM::PREPARE" "8" "May 19, 2022" "9.24.36" "KIWI NG"
+.TH "KIWI::SYSTEM::PREPARE" "8" "Jun 09, 2022" "9.24.41" "KIWI NG"
 .SH NAME
 kiwi::system::prepare \- Prepare image root system
 .SH SYNOPSIS
@@ -174,7 +174,9 @@
 \fB{signing_keys}\fP
 .UNINDENT
 .sp
-List of signing_keys enclosed in curly brackets and delimited by a colon
+List of signing_keys enclosed in curly brackets and delimited by
+semicolon. The reference to a signing key must be provided as URI
+format
 .IP \(bu 2
 \fBcomponents\fP
 .sp
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/build/man/kiwi::system::update.8 
new/kiwi-9.24.41/doc/build/man/kiwi::system::update.8
--- old/kiwi-9.24.36/doc/build/man/kiwi::system::update.8       2022-05-19 
15:25:16.000000000 +0200
+++ new/kiwi-9.24.41/doc/build/man/kiwi::system::update.8       2022-06-09 
10:33:07.000000000 +0200
@@ -27,7 +27,7 @@
 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
 .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
 ..
-.TH "KIWI::SYSTEM::UPDATE" "8" "May 19, 2022" "9.24.36" "KIWI NG"
+.TH "KIWI::SYSTEM::UPDATE" "8" "Jun 09, 2022" "9.24.41" "KIWI NG"
 .SH NAME
 kiwi::system::update \- Update/Upgrade image root system
 .SH SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/source/commands/system_build.rst 
new/kiwi-9.24.41/doc/source/commands/system_build.rst
--- old/kiwi-9.24.36/doc/source/commands/system_build.rst       2022-05-11 
13:21:54.000000000 +0200
+++ new/kiwi-9.24.41/doc/source/commands/system_build.rst       2022-06-09 
10:29:28.000000000 +0200
@@ -151,7 +151,9 @@
 
   - **{signing_keys}**
 
-    List of signing_keys enclosed in curly brackets and delimited by a colon
+    List of signing_keys enclosed in curly brackets and delimited by 
+    semicolon. The reference to a signing key must be provided as URI
+    format
 
   - **components**
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/source/commands/system_prepare.rst 
new/kiwi-9.24.41/doc/source/commands/system_prepare.rst
--- old/kiwi-9.24.36/doc/source/commands/system_prepare.rst     2022-05-11 
13:21:54.000000000 +0200
+++ new/kiwi-9.24.41/doc/source/commands/system_prepare.rst     2022-06-09 
10:29:28.000000000 +0200
@@ -152,7 +152,9 @@
 
     - **{signing_keys}**
 
-    List of signing_keys enclosed in curly brackets and delimited by a colon
+    List of signing_keys enclosed in curly brackets and delimited by
+    semicolon. The reference to a signing key must be provided as URI
+    format
 
   - **components**
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/source/conf.py 
new/kiwi-9.24.41/doc/source/conf.py
--- old/kiwi-9.24.36/doc/source/conf.py 2022-05-19 15:21:54.000000000 +0200
+++ new/kiwi-9.24.41/doc/source/conf.py 2022-06-09 10:29:53.000000000 +0200
@@ -139,7 +139,7 @@
 # built documents.
 #
 # The short X.Y version.
-version = '9.24.36'
+version = '9.24.41'
 # The full version, including alpha/beta/rc tags.
 release = version
 
@@ -177,13 +177,6 @@
 # If true, `todo` and `todoList` produce output, else they produce nothing.
 todo_include_todos = True
 
-extlinks = {
-    'issue': ('https://github.com/OSInside/kiwi/issues/%s', '#'),
-    'pr': ('https://github.com/OSInside/kiwi/pull/%s', 'PR #'),
-    'ghkiwi': ('https://github.com/OSInside/kiwi/blob/master/%s', '')
-}
-
-
 autosummary_generate = True
 
 # -- Options for HTML output ----------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kiwi-9.24.36/doc/source/image_description/elements.rst 
new/kiwi-9.24.41/doc/source/image_description/elements.rst
--- old/kiwi-9.24.36/doc/source/image_description/elements.rst  2022-05-19 
15:21:13.000000000 +0200
+++ new/kiwi-9.24.41/doc/source/image_description/elements.rst  2022-06-08 
18:16:08.000000000 +0200
@@ -1472,11 +1472,24 @@
 home="path":
   The path to the user's home directory
 
-groups="group_a,group_b":
+groups="group_a,group_b,group_c:id":
   A comma separated list of UNIX groups. The first element of the
   list is used as the user's primary group. The remaining elements are
   appended to the user's supplementary groups. When no groups are assigned
-  then the system's default primary group will be used.
+  then the system's default primary group will be used. If a group should
+  be of a specific group id, it can be appended to the name separated by
+  a colon.
+
+  .. note::
+
+     Group ID's can only be set for groups that does not yet exist at
+     the time when {kiwi} creates them. A check is made if the desired
+     group is already present and if it exists the user will become a
+     member of that group but any given group ID from the {kiwi}
+     configuration will **not** be taken into account. Usually all
+     standard system groups are affected by this behavior because they
+     are provided by the OS itself. Thus it's by intention not possible
+     to overwrite the group ID of an existing group. 
 
 id="number":
   The numeric user id of this account.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/doc/source/index.rst 
new/kiwi-9.24.41/doc/source/index.rst
--- old/kiwi-9.24.36/doc/source/index.rst       2022-01-21 13:05:28.000000000 
+0100
+++ new/kiwi-9.24.41/doc/source/index.rst       2022-05-30 08:16:30.000000000 
+0200
@@ -50,6 +50,7 @@
    * `Build Tests CentOS(x86) 
<https://build.opensuse.org/project/show/Virtualization:Appliances:Images:Testing_x86:centos>`__
 
    * `Build Tests Ubuntu(x86) 
<https://build.opensuse.org/project/show/Virtualization:Appliances:Images:Testing_x86:ubuntu>`__
+   * `Build Tests Ubuntu(arm) 
<https://build.opensuse.org/project/show/Virtualization:Appliances:Images:Testing_arm:ubuntu>`__
 
    * `Build Tests Debian(x86) 
<https://build.opensuse.org/project/show/Virtualization:Appliances:Images:Testing_x86:debian>`__
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/helper/build_status.sh 
new/kiwi-9.24.41/helper/build_status.sh
--- old/kiwi-9.24.36/helper/build_status.sh     2022-05-11 09:17:52.000000000 
+0200
+++ new/kiwi-9.24.41/helper/build_status.sh     2022-05-30 08:16:30.000000000 
+0200
@@ -12,6 +12,7 @@
     Virtualization:Appliances:Images:Testing_x86:centos \
     Virtualization:Appliances:Images:Testing_x86:fedora \
     Virtualization:Appliances:Images:Testing_x86:ubuntu \
+    Virtualization:Appliances:Images:Testing_arm:ubuntu \
     Virtualization:Appliances:Images:Testing_x86:debian \
     Virtualization:Appliances:Images:Testing_s390:tumbleweed \
     Virtualization:Appliances:Images:Testing_s390:sle15 \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/boot/image/base.py 
new/kiwi-9.24.41/kiwi/boot/image/base.py
--- old/kiwi-9.24.36/kiwi/boot/image/base.py    2022-01-21 13:05:28.000000000 
+0100
+++ new/kiwi-9.24.41/kiwi/boot/image/base.py    2022-06-09 10:29:28.000000000 
+0200
@@ -461,11 +461,15 @@
             'dracut', root_dir=self.boot_root_directory, access_mode=os.X_OK
         )
         if dracut_tool:
-            outfile_expression = r'outfile="/boot/(init.*\$kernel.*)"'
+            outfile_expression = r'outfile=".*/boot/(init.*kernel.*)"'
             with open(dracut_tool) as dracut:
                 matches = re.findall(outfile_expression, dracut.read())
                 if matches:
-                    return matches[0].replace('$kernel', '{kernel_version}')
+                    return matches[0].replace(
+                        '$kernel', '{kernel_version}'
+                    ).replace(
+                        '${kernel}', '{kernel_version}'
+                    )
         return None
 
     def _get_boot_image_output_file_format_from_existing_file(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/builder/disk.py 
new/kiwi-9.24.41/kiwi/builder/disk.py
--- old/kiwi-9.24.36/kiwi/builder/disk.py       2022-05-11 13:21:54.000000000 
+0200
+++ new/kiwi-9.24.41/kiwi/builder/disk.py       2022-06-01 11:31:20.000000000 
+0200
@@ -513,9 +513,6 @@
             disk.storage_provider
         )
 
-        # set SELinux file security contexts if context exists
-        self._setup_selinux_file_contexts()
-
         # run pre sync script hook
         if self.system_setup.script_exists(
             defaults.PRE_DISK_SYNC_SCRIPT
@@ -693,13 +690,6 @@
 
         return result_instance
 
-    def _setup_selinux_file_contexts(self) -> None:
-        security_context = '/etc/selinux/targeted/contexts/files/file_contexts'
-        if os.path.exists(self.root_dir + security_context):
-            self.system_setup.set_selinux_file_contexts(
-                security_context
-            )
-
     def _install_image_requested(self) -> bool:
         return bool(
             self.install_iso or self.install_stick or self.install_pxe
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/cli.py new/kiwi-9.24.41/kiwi/cli.py
--- old/kiwi-9.24.36/kiwi/cli.py        2022-01-21 13:05:28.000000000 +0100
+++ new/kiwi-9.24.41/kiwi/cli.py        2022-05-27 15:35:53.000000000 +0200
@@ -19,6 +19,7 @@
 usage: kiwi-ng -h | --help
        kiwi-ng [--profile=<name>...]
                [--temp-dir=<directory>]
+               [--target-arch=<name>]
                [--type=<build_type>]
                [--logfile=<filename>]
                [--debug]
@@ -92,7 +93,7 @@
         configuration elements. If not specified kiwi searches for
         a file named config.xml or a file matching *.kiwi
 
-global options for services: system
+global options for services: image, system
     --target-arch=<name>
         set the image architecture. By default the host architecture is
         used as the image architecture. If the specified architecture name
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/schema/kiwi.rnc 
new/kiwi-9.24.41/kiwi/schema/kiwi.rnc
--- old/kiwi-9.24.36/kiwi/schema/kiwi.rnc       2022-05-19 15:21:13.000000000 
+0200
+++ new/kiwi-9.24.41/kiwi/schema/kiwi.rnc       2022-06-08 18:16:08.000000000 
+0200
@@ -34,7 +34,7 @@
 volume-size-type = xsd:token {pattern = "(\d+|\d+M|\d+G|all)"}
 partition-size-type = xsd:token {pattern = "(\d+|\d+M|\d+G)"}
 vhd-tag-type = xsd:token {pattern = 
"[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}"}
-groups-list = xsd:token {pattern = "[a-zA-Z0-9_\-\.]+(,[a-zA-Z0-9_\-\.]+)*"}
+groups-list = xsd:token {pattern = "[a-zA-Z0-9_\-\.:]+(,[a-zA-Z0-9_\-\.:]+)*"}
 arch-name = xsd:token {pattern = 
"(x86_64|i586|i686|ix86|aarch64|arm64|armv5el|armv5tel|armv6hl|armv6l|armv7hl|armv7l|ppc|ppc64|ppc64le|s390|s390x)(,(x86_64|i586|i686|ix86|aarch64|arm64|armv5el|armv5tel|armv6hl|armv6l|armv7hl|armv7l|ppc|ppc64|ppc64le|s390|s390x))*"}
 portnum-type = xsd:token {pattern = "(\d+|\d+/(udp|tcp))"}
 grub_console = xsd:token {pattern = "(console|gfxterm|serial)( 
(console|gfxterm|serial))*"}
@@ -2190,8 +2190,8 @@
         ## The user ID for this user
         attribute id { xsd:nonNegativeInteger }
     k.user.groups.attribute =
-        ## The list of groups that he user belongs to. The
-        ## frist item in the list is used as the login group.
+        ## The list of groups that the user belongs to. The
+        ## first item in the list is used as the login group.
         ## If 'groups' is not present a default group is assigned
         ## to the user according to he specifing toolchain behaviour.
         attribute groups { groups-list }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/schema/kiwi.rng 
new/kiwi-9.24.41/kiwi/schema/kiwi.rng
--- old/kiwi-9.24.36/kiwi/schema/kiwi.rng       2022-05-19 15:21:13.000000000 
+0200
+++ new/kiwi-9.24.41/kiwi/schema/kiwi.rng       2022-06-08 18:16:08.000000000 
+0200
@@ -73,7 +73,7 @@
   </define>
   <define name="groups-list">
     <data type="token">
-      <param name="pattern">[a-zA-Z0-9_\-\.]+(,[a-zA-Z0-9_\-\.]+)*</param>
+      <param name="pattern">[a-zA-Z0-9_\-\.:]+(,[a-zA-Z0-9_\-\.:]+)*</param>
     </data>
   </define>
   <define name="arch-name">
@@ -3253,8 +3253,8 @@
     </define>
     <define name="k.user.groups.attribute">
       <attribute name="groups">
-        <a:documentation>The list of groups that he user belongs to. The
-frist item in the list is used as the login group.
+        <a:documentation>The list of groups that the user belongs to. The
+first item in the list is used as the login group.
 If 'groups' is not present a default group is assigned
 to the user according to he specifing toolchain behaviour.</a:documentation>
         <ref name="groups-list"/>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/solver/sat.py 
new/kiwi-9.24.41/kiwi/solver/sat.py
--- old/kiwi-9.24.36/kiwi/solver/sat.py 2021-07-14 18:09:36.000000000 +0200
+++ new/kiwi-9.24.41/kiwi/solver/sat.py 2022-05-27 15:35:53.000000000 +0200
@@ -65,6 +65,10 @@
             'deb-x86_64': {
                 'pool_dist': self.solv.Pool.DISTTYPE_DEB,
                 'arch': 'amd64'
+            },
+            'deb-aarch64': {
+                'pool_dist': self.solv.Pool.DISTTYPE_DEB,
+                'arch': 'arm64'
             }
         }
         dist_type = dist_types.get(f'{dist}-{arch}')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/system/setup.py 
new/kiwi-9.24.41/kiwi/system/setup.py
--- old/kiwi-9.24.36/kiwi/system/setup.py       2022-05-11 08:59:15.000000000 
+0200
+++ new/kiwi-9.24.41/kiwi/system/setup.py       2022-06-08 18:16:08.000000000 
+0200
@@ -22,7 +22,9 @@
 import pathlib
 from collections import OrderedDict
 from collections import namedtuple
-from typing import Any
+from typing import (
+    Any, List
+)
 
 # project
 import kiwi.defaults as defaults
@@ -381,10 +383,14 @@
         system_users = Users(self.root_dir)
 
         for user in self.xml_state.get_users():
-            for group in self.xml_state.get_user_groups(user.get_name()):
+            group_dict = 
self._get_group_names_and_ids_for_user(user.get_name())
+            for group, group_id in group_dict.items():
                 if not system_users.group_exists(group):
                     log.info('Adding group {0}'.format(group))
-                    system_users.group_add(group, [])
+                    options = self._process_user_options(
+                        group_id=group_id
+                    )
+                    system_users.group_add(group, options)
 
     def setup_users(self) -> None:
         """
@@ -401,13 +407,21 @@
             user_id = user.get_id()
             user_realname = user.get_realname()
             user_shell = user.get_shell()
-            user_groups = self.xml_state.get_user_groups(user.get_name())
+            user_groups = list(
+                self._get_group_names_and_ids_for_user(user.get_name()).keys()
+            )
 
             user_exists = system_users.user_exists(user_name)
 
             options = self._process_user_options(
-                password_format, password, user_shell, user_groups,
-                user_id, user_realname, user_exists, home_path
+                password_format=password_format,
+                password=password,
+                user_shell=user_shell,
+                user_groups=user_groups,
+                user_id=user_id,
+                user_realname=user_realname,
+                user_exists=user_exists,
+                home_path=home_path
             )
 
             group_msg = '--> Primary group for user {0}: {1}'.format(
@@ -484,6 +498,14 @@
             ]
         )
 
+    def setup_selinux_file_contexts(self) -> None:
+        """
+        Set SELinux file security contexts if the default context file is found
+        """
+        security_context = '/etc/selinux/targeted/contexts/files/file_contexts'
+        if os.path.exists(self.root_dir + security_context):
+            self.set_selinux_file_contexts(security_context)
+
     def export_modprobe_setup(self, target_root_dir: str) -> None:
         """
         Export etc/modprobe.d to given root_dir
@@ -828,8 +850,16 @@
             Path.wipe(metadata['archive_name'] + '.gz')
 
     def _process_user_options(
-        self, password_format, password, user_shell, user_groups,
-        user_id, user_realname, user_exists, home_path
+        self,
+        password_format: str = '',
+        password: str = '',
+        user_shell: str = '',
+        user_groups: List[str] = [],
+        user_id: str = '',
+        group_id: str = '',
+        user_realname: str = '',
+        user_exists: bool = True,
+        home_path: str = ''
     ):
         options = []
         if password_format == 'plain':
@@ -849,6 +879,9 @@
         if user_id:
             options.append('-u')
             options.append('{0}'.format(user_id))
+        if group_id:
+            options.append('-g')
+            options.append('{0}'.format(group_id))
         if user_realname:
             options.append('-c')
             options.append(user_realname)
@@ -1276,3 +1309,15 @@
         if script_path and not os.path.isabs(script_path):
             script_path = os.path.join(self.description_dir, script_path)
         return script_path
+
+    def _get_group_names_and_ids_for_user(self, user: str) -> OrderedDict:
+        group: OrderedDict = OrderedDict()
+        for group_match in self.xml_state.get_user_groups(user):
+            group_and_id = group_match.split(':')
+            group.update(
+                [(
+                    group_and_id[0],
+                    group_and_id[1] if len(group_and_id) > 1 else ''
+                )]
+            )
+        return group
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/tasks/base.py 
new/kiwi-9.24.41/kiwi/tasks/base.py
--- old/kiwi-9.24.36/kiwi/tasks/base.py 2022-05-11 13:21:54.000000000 +0200
+++ new/kiwi-9.24.41/kiwi/tasks/base.py 2022-06-09 10:29:28.000000000 +0200
@@ -242,7 +242,7 @@
         elif len(token) > 0 and token == 'false':
             return False
         elif len(token) > 0 and token.startswith('{'):
-            return token.replace('{', '').replace('}', '').split(':')
+            return token.replace('{', '').replace('}', '').split(';')
         else:
             return token
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/tasks/system_build.py 
new/kiwi-9.24.41/kiwi/tasks/system_build.py
--- old/kiwi-9.24.36/kiwi/tasks/system_build.py 2022-05-11 13:21:54.000000000 
+0200
+++ new/kiwi-9.24.41/kiwi/tasks/system_build.py 2022-06-01 11:31:20.000000000 
+0200
@@ -250,6 +250,7 @@
         setup.setup_plymouth_splash()
         setup.setup_timezone()
         setup.setup_permissions()
+        setup.setup_selinux_file_contexts()
 
         # make sure manager instance is cleaned up now
         del manager
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/tasks/system_prepare.py 
new/kiwi-9.24.41/kiwi/tasks/system_prepare.py
--- old/kiwi-9.24.36/kiwi/tasks/system_prepare.py       2022-05-11 
13:21:54.000000000 +0200
+++ new/kiwi-9.24.41/kiwi/tasks/system_prepare.py       2022-06-01 
11:31:20.000000000 +0200
@@ -255,6 +255,7 @@
         setup.setup_plymouth_splash()
         setup.setup_timezone()
         setup.setup_permissions()
+        setup.setup_selinux_file_contexts()
 
         # make sure manager instance is cleaned up now
         del manager
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/version.py 
new/kiwi-9.24.41/kiwi/version.py
--- old/kiwi-9.24.36/kiwi/version.py    2022-05-19 15:21:54.000000000 +0200
+++ new/kiwi-9.24.41/kiwi/version.py    2022-06-09 10:29:53.000000000 +0200
@@ -18,5 +18,5 @@
 """
 Global version information used in kiwi and the package
 """
-__version__ = '9.24.36'
-__githash__ = 'b43fa3fd28041fa03a03f944b5ffdcdb28d901cc'
+__version__ = '9.24.41'
+__githash__ = '28f79e509fd324eaab9007115d5d953a6e2af591'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/xml_parse.py 
new/kiwi-9.24.41/kiwi/xml_parse.py
--- old/kiwi-9.24.36/kiwi/xml_parse.py  2022-05-19 15:21:13.000000000 +0200
+++ new/kiwi-9.24.41/kiwi/xml_parse.py  2022-06-08 18:16:08.000000000 +0200
@@ -4053,7 +4053,7 @@
             if not self.gds_validate_simple_patterns(
                     self.validate_groups_list_patterns_, value):
                 warnings_.warn('Value "%s" does not match xsd pattern 
restrictions: %s' % (value.encode('utf-8'), 
self.validate_groups_list_patterns_, ))
-    validate_groups_list_patterns_ = 
[['^[a-zA-Z0-9_\\-\\.]+(,[a-zA-Z0-9_\\-\\.]+)*$']]
+    validate_groups_list_patterns_ = 
[['^[a-zA-Z0-9_\\-\\.:]+(,[a-zA-Z0-9_\\-\\.:]+)*$']]
     def hasContent_(self):
         if (
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi/xml_state.py 
new/kiwi-9.24.41/kiwi/xml_state.py
--- old/kiwi-9.24.36/kiwi/xml_state.py  2022-05-19 15:21:13.000000000 +0200
+++ new/kiwi-9.24.41/kiwi/xml_state.py  2022-05-27 15:35:53.000000000 +0200
@@ -1284,13 +1284,14 @@
 
         return users_list
 
-    def get_user_groups(self, user_name) -> List:
+    def get_user_groups(self, user_name) -> List[str]:
         """
         List of group names matching specified user
 
-        Each entry in the list is the name of a group that the specified
-        user belongs to. The first item in the list is the login or primary
-        group. The list will be empty if no groups are specified in the
+        Each entry in the list is the name of a group and optionally its
+        group ID separated by a colon, that the specified user belongs to.
+        The first item in the list is the login or primary group. The
+        list will be empty if no groups are specified in the
         description file.
 
         :return: groups data for the given user
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/kiwi.egg-info/PKG-INFO 
new/kiwi-9.24.41/kiwi.egg-info/PKG-INFO
--- old/kiwi-9.24.36/kiwi.egg-info/PKG-INFO     2022-05-19 15:25:17.000000000 
+0200
+++ new/kiwi-9.24.41/kiwi.egg-info/PKG-INFO     2022-06-09 10:33:08.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: kiwi
-Version: 9.24.36
+Version: 9.24.41
 Summary: KIWI - Appliance Builder (next generation)
 Home-page: https://osinside.github.io/kiwi
 Author: Marcus Schaefer
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/test/data/description/config.xml 
new/kiwi-9.24.41/test/data/description/config.xml
--- old/kiwi-9.24.36/test/data/description/config.xml   2022-05-11 
09:17:52.000000000 +0200
+++ new/kiwi-9.24.41/test/data/description/config.xml   2022-05-27 
15:35:53.000000000 +0200
@@ -169,7 +169,7 @@
     <users>
         <user pwdformat="plain" password="mypwd" shell="/bin/bash" id="815" 
realname="Bob" home="/root" name="root"/>
         <user groups="users" pwdformat="plain" password="mypwd" 
home="/home/tux" name="tux"/>
-        <user groups="kiwi,admin,users" pwdformat="plain" password="mypwd" 
name="kiwi"/>
+        <user groups="kiwi,admin:42,users" pwdformat="plain" password="mypwd" 
name="kiwi"/>
     </users>
     <repository priority="42" sourcetype="baseurl">
         <source path="iso:///image/CDs/dvd.iso">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kiwi-9.24.36/test/data/description.buildservice/appliance.kiwi 
new/kiwi-9.24.41/test/data/description.buildservice/appliance.kiwi
--- old/kiwi-9.24.36/test/data/description.buildservice/appliance.kiwi  
2022-05-11 09:17:52.000000000 +0200
+++ new/kiwi-9.24.41/test/data/description.buildservice/appliance.kiwi  
2022-05-27 15:35:53.000000000 +0200
@@ -169,7 +169,7 @@
     <users>
         <user pwdformat="plain" password="mypwd" shell="/bin/bash" id="815" 
realname="Bob" home="/root" name="root"/>
         <user groups="users" pwdformat="plain" password="mypwd" 
home="/home/tux" name="tux"/>
-        <user groups="kiwi,admin,users" pwdformat="plain" password="mypwd" 
name="kiwi"/>
+        <user groups="kiwi,admin:42,users" pwdformat="plain" password="mypwd" 
name="kiwi"/>
     </users>
     <repository priority="42" sourcetype="baseurl">
         <source path="iso:///image/CDs/dvd.iso">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/test/data/example_config.xml 
new/kiwi-9.24.41/test/data/example_config.xml
--- old/kiwi-9.24.36/test/data/example_config.xml       2022-05-11 
09:17:52.000000000 +0200
+++ new/kiwi-9.24.41/test/data/example_config.xml       2022-05-27 
15:35:53.000000000 +0200
@@ -169,7 +169,7 @@
     <users>
         <user pwdformat="plain" password="mypwd" shell="/bin/bash" id="815" 
realname="Bob" home="/root" name="root"/>
         <user groups="users" pwdformat="plain" password="mypwd" 
home="/home/tux" name="tux"/>
-        <user groups="kiwi,admin,users" pwdformat="plain" password="mypwd" 
name="kiwi"/>
+        <user groups="kiwi,admin:42,users" pwdformat="plain" password="mypwd" 
name="kiwi"/>
     </users>
     <repository priority="42" sourcetype="baseurl">
         <source path="iso:///image/CDs/dvd.iso">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/test/data/root-dir/image/config.xml 
new/kiwi-9.24.41/test/data/root-dir/image/config.xml
--- old/kiwi-9.24.36/test/data/root-dir/image/config.xml        2022-05-11 
09:17:52.000000000 +0200
+++ new/kiwi-9.24.41/test/data/root-dir/image/config.xml        2022-05-27 
15:35:53.000000000 +0200
@@ -169,7 +169,7 @@
     <users>
         <user pwdformat="plain" password="mypwd" shell="/bin/bash" id="815" 
realname="Bob" home="/root" name="root"/>
         <user groups="users" pwdformat="plain" password="mypwd" 
home="/home/tux" name="tux"/>
-        <user groups="kiwi,admin,users" pwdformat="plain" password="mypwd" 
name="kiwi"/>
+        <user groups="kiwi,admin:42,users" pwdformat="plain" password="mypwd" 
name="kiwi"/>
     </users>
     <repository priority="42" sourcetype="baseurl">
         <source path="iso:///image/CDs/dvd.iso">
Binary files old/kiwi-9.24.36/test/unit/.coverage and 
new/kiwi-9.24.41/test/unit/.coverage differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/test/unit/boot/image/base_test.py 
new/kiwi-9.24.41/test/unit/boot/image/base_test.py
--- old/kiwi-9.24.36/test/unit/boot/image/base_test.py  2022-05-11 
08:59:15.000000000 +0200
+++ new/kiwi-9.24.41/test/unit/boot/image/base_test.py  2022-06-09 
10:29:28.000000000 +0200
@@ -178,6 +178,11 @@
                 kernel_name='kernel_name',
                 initrd_name='initrd-kernel_version'
             )
+            file_handle.read.return_value = 'outfile="/boot/initrd-${kernel}"'
+            assert self.boot_image.get_boot_names() == self.boot_names_type(
+                kernel_name='kernel_name',
+                initrd_name='initrd-kernel_version'
+            )
 
     def test_noop_methods(self):
         self.boot_image.include_module('module')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/test/unit/builder/disk_test.py 
new/kiwi-9.24.41/test/unit/builder/disk_test.py
--- old/kiwi-9.24.36/test/unit/builder/disk_test.py     2022-05-11 
13:21:54.000000000 +0200
+++ new/kiwi-9.24.41/test/unit/builder/disk_test.py     2022-06-01 
11:31:20.000000000 +0200
@@ -316,9 +316,6 @@
         assert self.setup.export_modprobe_setup.call_args_list[0] == \
             call('boot_dir')
 
-        self.setup.set_selinux_file_contexts.assert_called_once_with(
-            '/etc/selinux/targeted/contexts/files/file_contexts'
-        )
         self.disk_setup.get_disksize_mbytes.assert_called_once_with(
             root_clone=0, boot_clone=0
         )
@@ -608,9 +605,6 @@
             self.disk_builder.create_disk()
 
         self.setup.create_recovery_archive.assert_called_once_with()
-        self.setup.set_selinux_file_contexts.assert_called_once_with(
-            '/etc/selinux/targeted/contexts/files/file_contexts'
-        )
         self.disk_setup.get_disksize_mbytes.assert_called_once_with(
             root_clone=0, boot_clone=0
         )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/test/unit/system/setup_test.py 
new/kiwi-9.24.41/test/unit/system/setup_test.py
--- old/kiwi-9.24.36/test/unit/system/setup_test.py     2022-05-11 
08:59:15.000000000 +0200
+++ new/kiwi-9.24.41/test/unit/system/setup_test.py     2022-06-08 
18:16:08.000000000 +0200
@@ -507,7 +507,7 @@
         calls = [
             call('users', []),
             call('kiwi', []),
-            call('admin', [])
+            call('admin', ['-g', '42'])
         ]
         users.group_add.assert_has_calls(calls)
 
@@ -1387,6 +1387,17 @@
             ]
         )
 
+    @patch('os.path.exists')
+    @patch.object(SystemSetup, 'set_selinux_file_contexts')
+    def test_setup_selinux_file_contexts(
+        self, mock_os_path_exists, mock_set
+    ):
+        mock_os_path_exists.return_value = True
+        self.setup.setup_selinux_file_contexts()
+        mock_set.assert_called_once_with(
+            'root_dir/etc/selinux/targeted/contexts/files/file_contexts'
+        )
+
     @patch('kiwi.system.setup.Repository.new')
     @patch('kiwi.system.setup.Uri')
     def test_import_repositories_marked_as_imageinclude(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/test/unit/tasks/base_test.py 
new/kiwi-9.24.41/test/unit/tasks/base_test.py
--- old/kiwi-9.24.36/test/unit/tasks/base_test.py       2022-05-11 
13:21:54.000000000 +0200
+++ new/kiwi-9.24.41/test/unit/tasks/base_test.py       2022-06-09 
10:29:28.000000000 +0200
@@ -82,12 +82,12 @@
 
     def test_tentuple_token(self):
         assert self.task.tentuple_token(
-            'a,b,,d,e,f,{1:2:3},x y z,jammy,false'
+            'a,b,,d,e,f,{1;2;3},x y z,jammy,false'
         ) == [
             'a', 'b', '', 'd', 'e', 'f', ['1', '2', '3'], 'x y z',
             'jammy', False
         ]
-        assert self.task.tentuple_token('a,b,,d,e,f,{1:2:3}') == [
+        assert self.task.tentuple_token('a,b,,d,e,f,{1;2;3}') == [
             'a', 'b', '', 'd', 'e', 'f', ['1', '2', '3'],
             None, None, None
         ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/test/unit/tasks/system_build_test.py 
new/kiwi-9.24.41/test/unit/tasks/system_build_test.py
--- old/kiwi-9.24.36/test/unit/tasks/system_build_test.py       2022-05-11 
13:21:54.000000000 +0200
+++ new/kiwi-9.24.41/test/unit/tasks/system_build_test.py       2022-06-01 
11:31:20.000000000 +0200
@@ -189,6 +189,7 @@
         self.setup.setup_plymouth_splash.assert_called_once_with()
         self.setup.setup_timezone.assert_called_once_with()
         self.setup.setup_permissions.assert_called_once_with()
+        self.setup.setup_selinux_file_contexts.assert_called_once_with()
         self.system_prepare.pinch_system.assert_has_calls(
             [call(force=False), call(force=True)]
         )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi-9.24.36/test/unit/tasks/system_prepare_test.py 
new/kiwi-9.24.41/test/unit/tasks/system_prepare_test.py
--- old/kiwi-9.24.36/test/unit/tasks/system_prepare_test.py     2022-05-11 
13:21:54.000000000 +0200
+++ new/kiwi-9.24.41/test/unit/tasks/system_prepare_test.py     2022-06-01 
11:31:20.000000000 +0200
@@ -177,6 +177,7 @@
         self.setup.setup_plymouth_splash.assert_called_once_with()
         self.setup.setup_timezone.assert_called_once_with()
         self.setup.setup_permissions.assert_called_once_with()
+        self.setup.setup_selinux_file_contexts.assert_called_once_with()
 
         self.system_prepare.pinch_system.assert_has_calls(
             [call(force=False), call(force=True)]

Reply via email to