Hello community,
here is the log from the commit of package python-kiwi for openSUSE:Factory checked in at 2019-09-02 13:17:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-kiwi (Old)
and /work/SRC/openSUSE:Factory/.python-kiwi.new.7948 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-kiwi"
Mon Sep 2 13:17:39 2019 rev:47 rq:726411 version:9.18.12
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-kiwi/python-kiwi.changes 2019-08-14 11:36:34.328705457 +0200
+++ /work/SRC/openSUSE:Factory/.python-kiwi.new.7948/python-kiwi.changes 2019-09-02 13:17:40.717390912 +0200
@@ -1,0 +2,111 @@
+Tue Aug 20 09:48:00 CEST 2019 - Marcus Schäfer
+
+- Bump version: 9.18.11 → 9.18.12
+
+-------------------------------------------------------------------
+Mon Aug 19 18:33:50 CEST 2019 - Marcus Schäfer
+
+- Added MicroOS integration test
+
+ The future technologies team is implementing a coreOS derivate
+ based on btrfs and some overlay technology. For supporting them
+ some changes were required in kiwi and thus we should add an
+ integration test build which makes use of this features.
+
+-------------------------------------------------------------------
+Mon Aug 19 18:28:46 CEST 2019 - Marcus Schäfer
+
+- Add required cryptomount coding for EFI boot
+
+ For non EFI boot grub2-install has code which gets activated
+ through the GRUB_ENABLE_CRYPTODISK setting. However for the
+ EFI boot case no installation of boot code is needed and
+ therefore the grub earlyboot script has to run cryptomount
+
+-------------------------------------------------------------------
+Mon Aug 19 14:34:08 CEST 2019 - Marcus Schäfer
+
+- Add /mnt to list of protected paths
+
+ On recursive removal make sure /mnt belong to the protected
+ elements. This Fixes #1170
+
+-------------------------------------------------------------------
+Mon Aug 19 11:17:35 CEST 2019 - Marcus Schäfer
+
+- Added full encrypted image build test
+
+-------------------------------------------------------------------
+Fri Aug 16 17:49:09 CEST 2019 - Marcus Schäfer
+
+- Extended LUKS encryption support
+
+ We supported luks encrypted images with the exception of the
+ boot partition because grub was not able to read from an
+ encrypted device at that time. Since some time grub is able
+ to read from an encrypted partition and this commit add
+ support for it. With this patch luks encrypted images will
+ no longer create an extra boot partition and the entire
+ system will be encrypted. The opening of the luks container
+ happens on the grub level only once. Customers can still
+ specify to use an unencrypted extra boot partition with the
+ bootpartition="true" flag. In this case the opening of the
+ luks containers happens on the systemd level as before.
+ This is related to Issue #1162
+
+-------------------------------------------------------------------
+Thu Aug 15 09:52:27 CEST 2019 - Stefan Seyfried
+
+- remove '-z' option from rsync local copy calls
+
+ rsync's "compress" option just does not make any sense when rsync is
+ used to copy files locally, it only increases CPU usage and slows down
+ the process ;-)
+
+-------------------------------------------------------------------
+Wed Aug 14 14:45:13 CEST 2019 - Marcus Schäfer
+
+- Delete SuSEfirewall2 from test builds
+
+ The package seems to be no longer present on suse
+
+-------------------------------------------------------------------
+Wed Aug 14 12:01:34 CEST 2019 - Marcus Schäfer
+
+- Bump version: 9.18.10 → 9.18.11
+
+-------------------------------------------------------------------
+Mon Aug 12 18:17:02 CEST 2019 - Marcus Schäfer
+
+- Allow dracut initrd to be used with pxe type
+
+ The pxe image type builds a simple filesystem image plus a
+ custom initrd. That initrd is usually build from the kiwi
+ netboot image descriptions which implements a workflow to
+ fetch the filesystem image and deploy it as rootfs for a
+ pxe client. User who wants to implement their own handling
+ of the rootfs image in e.g a custom dracut module were not
+ able to build this image type because we did not allow
+ the initrd_system attribute for the pxe type
+
+-------------------------------------------------------------------
+Mon Aug 12 10:53:08 CEST 2019 - Marcus Schäfer
+
+- Use message variable for long message text
+
+-------------------------------------------------------------------
+Mon Aug 12 10:42:11 CEST 2019 - Marcus Schäfer
+
+- Fixed handling of bool values in initrd code
+
+ Some values evaluated in the initrd code are created in
+ the kiwi builder and passed in as a profile file. bool
+ values created by kiwi for use in shell scripts takes
+ the string 'true' or 'false' or are not set at all if not
+ specified in the kiwi XML description. Some code paths
+ in the initrd code uses the '-n' switch to check for bool
+ values, however if the string 'false' is passed '-n' will
+ do the wrong thing. Therefore a method for the initrd
+ code has been introduced to clearly handle bool values
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-kiwi.spec ++++++
--- /var/tmp/diff_new_pack.WWmf73/_old 2019-09-02 13:17:42.289390671 +0200
+++ /var/tmp/diff_new_pack.WWmf73/_new 2019-09-02 13:17:42.289390671 +0200
@@ -43,7 +43,7 @@
%endif
Name: python-kiwi
-Version: 9.18.10
+Version: 9.18.12
Provides: kiwi-schema = 7.1
Release: 0
Url: https://github.com/SUSE/kiwi
++++++ python-kiwi.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/.bumpversion.cfg new/kiwi-9.18.12/.bumpversion.cfg
--- old/kiwi-9.18.10/.bumpversion.cfg 2019-08-05 09:55:02.000000000 +0200
+++ new/kiwi-9.18.12/.bumpversion.cfg 2019-08-20 09:48:00.000000000 +0200
@@ -1,5 +1,5 @@
[bumpversion]
-current_version = 9.18.10
+current_version = 9.18.12
commit = True
tag = True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/.coverage new/kiwi-9.18.12/.coverage
--- old/kiwi-9.18.10/.coverage 1970-01-01 01:00:00.000000000 +0100
+++ new/kiwi-9.18.12/.coverage 2016-03-14 11:05:59.000000000 +0100
@@ -0,0 +1 @@
+!coverage.py: This is a private format, don't read it directly!{"lines": {"/home/ms/Project/kiwi-horizon/kiwi/storage/disk.py": [18, 19, 20, 23, 24, 25, 26, 27, 30, 33, 34, 38, 40, 41, 42, 43, 45, 46, 49, 51, 56, 57, 58, 59, 61, 63, 69, 71, 72, 73, 74, 75, 76, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 91, 92, 93, 94, 96, 97, 98, 99, 101, 102, 103, 104, 106, 107, 108, 109, 111, 112, 113, 114, 115, 116, 117, 118, 120, 121, 123, 128, 129, 130, 131, 132, 133, 135, 136, 139, 140, 141, 143, 149, 151, 152, 154, 158, 159, 160, 161, 163, 165, 166, 169, 170, 171, 174, 175, 176, 177, 179, 180, 181, 182, 183, 184, 185, 188, 189, 190, 191, 194, 195, 197, 198, 199, 201, 202, 203, 204, 205, 206, 208, 209, 210, 211], "/home/ms/Project/kiwi-horizon/kiwi/package_manager/zypper.py": [18, 21, 22, 23, 29, 32, 33, 34, 35, 36, 38, 39, 40, 42, 43, 45, 46, 48, 49, 51, 55, 56, 57, 60, 61, 62, 64, 67, 68, 71, 72, 73, 74, 75, 76, 77, 79, 80, 81, 82, 84, 85, 86, 89, 90, 93, 94, 96, 99, 100, 103, 104, 105, 107, 110, 111, 114, 115, 116, 118, 123, 124, 127, 128, 129, 132, 133, 134, 135, 136, 137, 139, 140, 141, 142, 144, 145, 146, 148, 150, 151, 153, 154, 155, 156, 157, 159, 160, 161, 162, 164, 165, 166, 169, 171, 172, 173, 175, 177, 178, 179, 180], "/home/ms/Project/kiwi-horizon/kiwi/tasks/system_build.py": [129, 130, 131, 132, 134, 136, 137, 138, 139, 140, 141, 142, 143, 144, 146, 147, 150, 152, 155, 157, 158, 159, 160, 161, 163, 164, 165, 166, 169, 170, 171, 173, 174, 48, 49, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 64, 67, 68, 69, 70, 71, 73, 75, 76, 78, 79, 80, 83, 84, 87, 89, 90, 91, 94, 95, 97, 98, 99, 102, 104, 107, 109, 112, 114, 115, 116, 118, 119, 120, 121, 124, 126, 127], "/home/ms/Project/kiwi-horizon/kiwi/storage/luks_device.py": [128, 129, 130, 131, 132, 134, 135, 136, 137, 18, 21, 22, 23, 24, 26, 31, 34, 35, 39, 41, 42, 44, 46, 47, 48, 52, 56, 57, 58, 61, 67, 68, 69, 70, 71, 73, 74, 75, 77, 78, 80, 81, 82, 83, 84, 85, 86, 88, 89, 90, 93, 94, 95, 96, 97, 100, 101, 104, 106, 107, 110, 112, 113, 114, 115, 116, 117, 121, 125, 127], "/home/ms/Project/kiwi-horizon/kiwi/storage/subformat/qcow2.py": [32, 37, 20, 21, 24, 36, 27, 28, 29, 31], "/home/ms/Project/kiwi-horizon/kiwi/app.py": [], "/home/ms/Project/kiwi-horizon/kiwi/partitioner/msdos.py": [19, 20, 21, 23, 28, 31, 32, 33, 34, 37, 38, 39, 40, 41, 42, 43, 44, 47, 48, 50, 51, 52, 53, 54, 55, 56, 58, 59, 60, 63, 64, 65, 67, 68, 70, 71, 72, 74, 80, 82, 83, 84, 85, 87, 88, 89, 90, 92, 93, 94, 96, 97, 101, 103, 104, 108], "/home/ms/Project/kiwi-horizon/kiwi/cli.py": [50, 51, 52, 53, 54, 55, 56, 59, 65, 66, 67, 70, 73, 74, 75, 76, 77, 78, 80, 81, 83, 84, 85, 86, 87, 89, 90, 91, 92, 93, 94, 95, 97, 98, 101, 102, 103, 104, 105, 106, 107, 108, 109, 112, 113, 115, 116, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 132, 133, 134, 136, 137, 139, 140, 141, 142, 143, 144, 145, 146, 148, 150, 151, 152, 153, 154, 155, 156, 159, 160, 161, 162, 164, 165, 167, 168, 170, 171, 172, 173, 174, 175], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/config/isolinux.py": [18, 19, 22, 23, 24, 25, 26, 28, 34, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 50, 51, 52, 53, 54, 56, 57, 59, 60, 61, 62, 63, 64, 66, 67, 68, 70, 74, 75, 76, 77, 78, 79, 80, 82, 83, 84, 85, 88, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 108, 109, 110, 111, 112, 115, 116, 117, 119, 120, 121, 122, 123, 124, 125, 129, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 149, 150, 151, 152, 153, 156, 157, 158, 160, 161, 162, 163, 164, 165, 166, 169, 172, 174, 176, 178, 179, 180, 181, 182, 183, 184, 186, 187, 190, 191, 193, 194, 195, 196], "/home/ms/Project/kiwi-horizon/kiwi/system/kernel.py": [18, 19, 22, 25, 28, 29, 30, 38, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, 57, 58, 59, 60, 61, 63, 64, 65, 68, 69, 70, 71, 72, 73, 74, 76, 78, 79, 80, 81, 82, 83, 84, 86], "/home/ms/Project/kiwi-horizon/kiwi/builder/pxe.py": [18, 19, 22, 23, 24, 25, 26, 27, 28, 29, 31, 36, 42, 43, 44, 45, 46, 47, 48, 49, 51, 52, 54, 55, 57, 59, 60, 61, 62, 65, 66, 67, 69, 70, 71, 72, 73, 74, 75, 76, 77, 79, 80, 81, 82, 85, 86, 89, 90, 94, 95, 96, 97, 99, 100, 103, 104, 107, 108, 109, 113, 114, 115, 116, 117, 119, 120, 122, 123, 124, 125, 126, 127, 130, 131, 132, 136, 139, 140, 141, 142, 143, 144, 146, 147, 148, 149, 150, 151, 153, 154, 155, 156, 157, 158, 160, 161, 162, 163, 164, 165, 169, 170, 171, 172, 174, 175, 176, 178, 179, 180, 181, 183, 184, 185, 188, 189, 190, 193], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/__init__.py": [1], "/home/ms/Project/kiwi-horizon/kiwi/xml_description.py": [18, 19, 20, 23, 24, 25, 27, 35, 41, 42, 43, 44, 46, 47, 48, 49, 50, 52, 53, 54, 56, 57, 58, 59, 61, 62, 63, 65, 66, 67, 69, 71, 72, 73, 74, 76, 77, 78, 79, 80, 83, 84, 86, 87, 88], "/home/ms/Project/kiwi-horizon/kiwi/storage/mapped_device.py": [32, 33, 34, 36, 37, 39, 40, 42, 43, 18, 21, 22, 27, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/storage/subformat/vhd.py": [35, 19, 20, 23, 36, 26, 27, 28, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/xfs.py": [32, 33, 19, 20, 23, 26, 27, 28, 29, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/template/grub2.py": [256, 257, 260, 265, 266, 267, 268, 269, 271, 272, 273, 18, 19, 276, 278, 279, 280, 281, 282, 27, 285, 34, 291, 292, 293, 295, 296, 297, 298, 299, 300, 45, 304, 336, 52, 309, 310, 311, 312, 313, 58, 315, 316, 317, 318, 319, 320, 321, 323, 324, 325, 326, 329, 335, 80, 337, 339, 340, 341, 342, 343, 344, 345, 90, 102, 274, 112, 275, 122, 22, 134, 144, 25, 154, 26, 69, 166, 301, 176, 186, 198, 208, 215, 218, 223, 224, 225, 226, 227, 229, 230, 231, 232, 233, 234, 236, 237, 238, 239, 242, 248, 249, 250, 252, 253, 254, 255], "/home/ms/Project/kiwi-horizon/kiwi/repository/__init__.py": [32, 33, 34, 35, 37, 38, 39, 19, 20, 22, 27, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/kiwi.py": [], "/home/ms/Project/kiwi-horizon/kiwi/storage/__init__.py": [1], "/home/ms/Project/kiwi-horizon/kiwi/storage/subformat/__init__.py": [19, 20, 21, 22, 23, 25, 30, 33, 34, 35, 36, 37, 39, 40, 41, 43, 44, 45, 46, 47, 48, 50, 51, 53, 54, 55, 56, 57, 58, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 78, 79], "/home/ms/Project/kiwi-horizon/kiwi/tasks/result_bundle.py": [41, 42, 43, 46, 47, 48, 49, 50, 51, 52, 53, 55, 60, 63, 64, 65, 66, 67, 70, 71, 72, 73, 74, 77, 78, 80, 81, 83, 84, 87, 88, 89, 90, 91, 94, 95, 96, 98, 99, 100, 102, 103, 105, 107, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 124, 126, 127], "/home/ms/Project/kiwi-horizon/kiwi/builder/__init__.py": [64, 19, 20, 21, 22, 23, 24, 25, 27, 32, 35, 36, 37, 38, 39, 40, 42, 43, 44, 46, 47, 48, 50, 51, 52, 54, 55, 56, 58, 59, 60, 63], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/fat32.py": [32, 33, 19, 20, 23, 26, 27, 28, 29, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/tasks/system_create.py": [65, 66, 67, 69, 70, 71, 72, 74, 76, 77, 78, 79, 81, 82, 83, 84, 87, 88, 89, 91, 92, 37, 38, 41, 42, 43, 44, 45, 46, 47, 50, 53, 54, 55, 56, 57, 59, 61, 62], "/home/ms/Project/kiwi-horizon/kiwi/builder/container.py": [18, 21, 22, 23, 24, 25, 28, 31, 32, 33, 34, 35, 36, 37, 38, 40, 42, 43, 44, 45, 46, 49, 51, 52, 53, 54, 56, 57, 59, 60, 61, 63, 65, 66, 68, 69, 71, 72, 74, 75, 76, 77, 78, 79, 81, 82, 83, 84, 86, 87, 88, 90, 91, 92, 93, 95, 96, 97, 99], "/home/ms/Project/kiwi-horizon/kiwi/system/setup.py": [18, 19, 20, 21, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 35, 40, 47, 48, 49, 50, 51, 52, 53, 55, 59, 60, 61, 62, 63, 64, 65, 67, 68, 69, 71, 73, 75, 77, 78, 81, 83, 84, 85, 86, 87, 88, 89, 91, 93, 97, 98, 101, 102, 103, 104, 106, 107, 108, 109, 111, 112, 113, 114, 115, 116, 119, 124, 126, 131, 132, 133, 134, 135, 136, 137, 140, 148, 149, 150, 151, 153, 155, 156, 158, 159, 160, 161, 162, 163, 165, 166, 168, 169, 170, 171, 173, 174, 175, 176, 178, 179, 180, 183, 184, 185, 186, 187, 188, 190, 191, 192, 193, 197, 198, 201, 202, 203, 204, 205, 206, 208, 209, 210, 211, 215, 216, 219, 220, 221, 222, 224, 225, 226, 227, 230, 234, 236, 237, 238, 239, 240, 241, 242, 243, 244, 247, 251, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 264, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 292, 293, 294, 295, 297, 299, 300, 301, 303, 304, 305, 306, 308, 309, 312, 316, 317, 318, 319, 320, 321, 323, 327, 328, 329, 330, 331, 332, 334, 335, 338, 343, 344, 345, 347, 348, 349, 350, 351, 354, 356, 357, 359, 360, 365, 366, 367, 369, 374, 375, 376, 378, 379, 380, 381, 382, 385, 386, 387, 389, 390, 391, 393, 394, 396, 397, 399, 400, 401, 404, 405, 406, 409, 415, 416, 419, 428, 430, 431, 432, 434, 435, 437, 439, 441, 443, 445, 447, 448, 450, 451, 452, 454, 455, 456, 458, 459, 460, 463, 464, 467, 468, 469, 470, 471, 475, 477, 478, 480, 481, 482, 483, 484, 487, 488, 489, 490, 491, 492, 495, 496, 497, 499, 500, 502, 503, 504, 505, 506, 507, 508, 515, 516, 517, 519, 521, 522, 523, 524, 526, 527, 529, 530, 531, 532, 535, 536, 538, 539, 541, 542, 544, 545, 547, 548, 549, 550, 553, 554, 555, 557, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 575, 576, 577, 578, 580, 581, 583, 585, 587, 592, 593, 594, 595, 597], "/home/ms/Project/kiwi-horizon/kiwi/volume_manager/base.py": [18, 19, 20, 23, 24, 25, 26, 27, 28, 30, 35, 38, 39, 43, 48, 50, 51, 52, 53, 54, 56, 58, 59, 60, 63, 65, 70, 72, 76, 78, 83, 85, 89, 91, 95, 97, 101, 103, 109, 111, 116, 117, 118, 119, 121, 126, 128, 134, 135, 136, 139, 140, 141, 142, 143, 144, 145, 147, 148, 149, 150, 151, 155, 161, 167, 168, 170, 183, 184, 186, 187, 188, 189, 190, 192, 194, 198, 199, 200, 201, 202, 203, 204, 205, 207, 209, 214, 216, 222], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/config/grub2.py": [18, 19, 22, 23, 24, 25, 26, 27, 28, 29, 31, 40, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 68, 69, 70, 71, 72, 73, 74, 75, 77, 78, 79, 81, 82, 83, 84, 86, 90, 91, 92, 93, 94, 95, 96, 99, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 123, 124, 125, 126, 127, 130, 131, 132, 134, 135, 136, 137, 138, 142, 148, 149, 150, 151, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 166, 167, 168, 169, 170, 173, 174, 175, 176, 178, 179, 180, 181, 182, 186, 192, 193, 194, 195, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 210, 211, 212, 213, 214, 217, 218, 219, 220, 222, 223, 224, 225, 226, 229, 237, 238, 240, 241, 242, 244, 245, 247, 248, 251, 253, 254, 255, 258, 259, 260, 262, 264, 266, 268, 274, 276, 277, 279, 281, 282, 283, 284, 285, 286, 287, 290, 291, 293, 294, 295, 296, 298, 299, 301, 302, 304, 306, 307, 311, 315, 316, 317, 318, 321, 322, 324, 326, 327, 328, 329, 330, 331, 332, 335, 336, 337, 338, 340, 341, 342, 346, 347, 348, 349, 351, 352, 355, 356, 358, 359, 361, 362, 364, 365, 367, 368, 370, 371, 373, 374, 375, 376, 378, 379, 383, 384, 385, 386, 387, 388, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 401, 402, 403, 407, 408, 409, 411, 412, 413, 414, 416, 417, 420, 422, 423, 424, 427, 428, 429, 432, 434, 435, 436, 437, 439, 440, 442, 443, 444, 447, 453, 454, 455, 456, 458, 459], "/home/ms/Project/kiwi-horizon/kiwi/__init__.py": [1], "/home/ms/Project/kiwi-horizon/kiwi/boot/image/__init__.py": [32, 33, 34, 35, 36, 37, 38, 40, 41, 19, 20, 22, 27, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/template/zipl.py": [65, 67, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 18, 19, 22, 25, 26, 27, 44, 47, 49, 57], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/install/__init__.py": [32, 33, 34, 36, 37, 38, 41, 42, 19, 20, 22, 27, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/boot/image/kiwi.py": [129, 130, 131, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 32, 38, 39, 43, 44, 46, 48, 49, 50, 51, 52, 54, 55, 56, 58, 59, 62, 63, 65, 66, 68, 69, 70, 71, 73, 74, 75, 76, 78, 80, 81, 84, 85, 87, 88, 89, 97, 98, 99, 100, 102, 103, 105, 106, 107, 108, 109, 111, 112, 113, 115, 120, 122, 123, 124, 126, 127], "/home/ms/Project/kiwi-horizon/kiwi/builder/disk.py": [18, 19, 20, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 43, 49, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 74, 75, 76, 77, 78, 80, 81, 83, 84, 86, 87, 89, 91, 92, 93, 94, 95, 98, 99, 100, 105, 110, 114, 117, 119, 120, 121, 122, 123, 127, 130, 131, 134, 137, 138, 139, 141, 143, 144, 148, 149, 150, 154, 157, 158, 159, 160, 163, 164, 165, 166, 168, 171, 174, 175, 177, 179, 181, 183, 185, 186, 187, 188, 190, 191, 193, 194, 196, 197, 199, 200, 201, 203, 204, 205, 206, 208, 209, 211, 214, 215, 218, 220, 222, 224, 225, 229, 231, 234, 237, 239, 241, 242, 246, 247, 248, 249, 251, 252, 253, 254, 257, 258, 259, 263, 264, 266, 267, 268, 269, 270, 271, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 289, 290, 291, 292, 293, 294, 295, 296, 297, 301, 302, 303, 304, 305, 307, 308, 309, 310, 311, 313, 314, 315, 319, 320, 321, 322, 324, 325, 326, 328, 329, 330, 331, 333, 334, 335, 338, 340, 341, 342, 344, 346, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 359, 360, 362, 363, 364, 365, 366, 368, 369, 371, 372, 374, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 388, 389, 391, 392, 394, 396, 397, 398, 399, 400, 401, 404, 405, 406, 407, 410, 411, 412, 413, 416, 417, 418, 419, 422, 423, 424, 426, 427, 428, 431, 432, 434, 435, 436, 438, 439, 440, 442, 443, 445, 446, 447, 448, 449, 450, 451, 453, 454, 455, 456, 457, 460, 461, 462, 463, 464, 467, 468, 469, 470, 473, 474, 475, 476, 478, 479, 483, 484, 485, 486, 487, 488, 490, 491, 492, 493, 495, 496, 498, 499, 500, 501, 502, 504, 506, 507, 510, 511, 514, 515, 517, 518, 519, 520, 521, 523, 524, 525, 526, 529, 530, 531, 532, 535, 536, 537, 538, 541, 542, 543, 545, 546, 547, 549, 551, 552, 555, 556, 557, 558, 560, 561, 562, 565, 566, 567, 568, 569, 572, 573, 574, 577, 578, 580, 581, 585, 586, 587, 589, 590, 592, 593, 594, 595, 596, 598, 601, 602, 603, 606, 607, 608], "/home/ms/Project/kiwi-horizon/kiwi/repository/yum.py": [18, 19, 20, 23, 24, 27, 30, 31, 32, 33, 34, 36, 43, 45, 46, 47, 50, 51, 55, 56, 58, 61, 62, 64, 65, 67, 68, 70, 71, 73, 74, 76, 77, 79, 80, 82, 83, 85, 86, 88, 89, 91, 92, 94, 95, 98, 100, 101, 102, 103, 106, 107, 108, 109, 111, 112, 114, 115, 116, 117, 118, 119, 121, 122, 124, 125, 126, 128, 129, 131, 132, 133, 136, 137, 138, 140, 144, 145, 146, 147, 148, 149, 151, 152, 153, 154, 155, 158, 159, 160], "/home/ms/Project/kiwi-horizon/kiwi/tasks/system_prepare.py": [128, 130, 131, 132, 133, 134, 135, 136, 137, 138, 140, 141, 144, 145, 146, 148, 149, 52, 53, 56, 57, 58, 59, 60, 61, 62, 63, 66, 69, 70, 71, 72, 73, 75, 77, 78, 81, 83, 84, 85, 88, 89, 91, 92, 93, 96, 99, 101, 104, 106, 107, 108, 109, 110, 112, 113, 114, 115, 118, 120, 121, 123, 124, 125, 126], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/clicfs.py": [66, 67, 68, 69, 71, 72, 73, 74, 19, 22, 23, 24, 25, 26, 27, 28, 31, 34, 35, 36, 37, 39, 42, 43, 44, 45, 46, 48, 49, 50, 52, 53, 54, 55, 60, 62, 63], "/home/ms/Project/kiwi-horizon/kiwi/archive/tar.py": [18, 21, 24, 27, 28, 29, 30, 31, 33, 34, 35, 36, 41, 44, 45, 46, 47, 52, 55, 56, 58, 59, 60, 63, 64, 65, 68, 69, 70, 71, 74, 77, 79, 80, 81, 82, 84, 85, 86, 87, 88, 90, 92, 93, 94, 95, 96, 97], "/home/ms/Project/kiwi-horizon/kiwi/partitioner/__init__.py": [18, 21, 22, 23, 25, 30, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 53, 54, 55], "/home/ms/Project/kiwi-horizon/kiwi/package_manager/__init__.py": [32, 34, 35, 36, 37, 39, 40, 41, 44, 45, 47, 19, 20, 22, 27, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/system/shell.py": [54, 39, 40, 41, 42, 44, 50, 61, 18, 51, 52, 21, 22, 56, 25, 58, 59, 28, 29, 53], "/home/ms/Project/kiwi-horizon/kiwi/data/compress.py": [18, 19, 22, 24, 30, 33, 34, 35, 36, 37, 39, 40, 42, 44, 45, 47, 49, 50, 52, 53, 54, 55, 57, 59, 61, 63, 64, 65, 66, 68, 70, 71, 72, 73, 74, 75, 77, 78, 79, 81, 83, 84, 86, 87, 89, 90, 91, 92, 93, 94, 95], "/home/ms/Project/kiwi-horizon/kiwi/tasks/system_update.py": [65, 66, 67, 68, 69, 71, 72, 73, 74, 75, 77, 79, 80, 82, 83, 84, 86, 87, 88, 91, 92, 93, 95, 96, 40, 42, 43, 44, 45, 47, 50, 53, 54, 55, 56, 57, 59, 61, 62], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/template/__init__.py": [1], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/ext2.py": [32, 33, 19, 20, 23, 26, 27, 28, 29, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/storage/subformat/vmdk.py": [18, 19, 22, 23, 24, 26, 31, 34, 35, 36, 38, 39, 43, 44, 47, 49, 59, 60, 61, 62, 64, 65, 67, 68, 69, 70, 71, 72, 73, 75, 76, 78, 79, 81, 82, 83, 84, 86, 87, 89, 90, 91, 92, 94, 95, 96, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 113, 115, 118, 119, 121, 122], "/home/ms/Project/kiwi-horizon/kiwi/storage/subformat/vhdfixed.py": [128, 129, 132, 133, 134, 135, 18, 19, 20, 21, 24, 25, 27, 32, 35, 36, 38, 40, 41, 42, 43, 44, 45, 47, 48, 49, 51, 52, 56, 57, 60, 61, 63, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 85, 86, 87, 91, 92, 95, 96, 99, 100, 103, 105, 107, 108, 110, 122, 123, 125, 126, 127], "/home/ms/Project/kiwi-horizon/kiwi/command_process.py": [19, 20, 22, 27, 31, 32, 33, 34, 35, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 59, 60, 61, 62, 63, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 90, 95, 96, 97, 99, 100, 101, 104, 105, 106, 109, 112, 113, 114, 115, 116, 117, 118, 119, 122, 123, 124, 125, 127, 130, 131, 132, 133, 134, 135, 136, 138, 139, 140, 141, 142, 144, 145, 146, 147, 148, 149, 150, 152, 154, 155, 156, 157, 159, 161, 163, 164, 166, 167, 169, 170, 172, 173, 175, 176], "/home/ms/Project/kiwi-horizon/kiwi/firmware.py": [18, 21, 23, 28, 33, 34, 35, 36, 37, 39, 40, 41, 44, 45, 46, 47, 48, 49, 52, 53, 54, 55, 56, 57, 59, 60, 61, 62, 64, 65, 66, 68, 70, 71, 72, 74, 76, 77, 78, 80, 81, 82, 84, 85, 86, 88, 90, 91, 92, 94, 96, 97, 98, 100, 102, 103, 104, 106, 108, 109, 110, 112, 114, 115, 116, 118], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/config/zipl.py": [19, 20, 23, 24, 25, 26, 27, 28, 30, 38, 41, 42, 43, 44, 45, 46, 48, 49, 52, 53, 54, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 70, 71, 73, 77, 78, 79, 80, 81, 82, 83, 85, 86, 88, 89, 90, 91, 96, 97, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 119, 120, 121, 122, 123, 124, 125, 128, 130, 132, 133, 135, 136, 137, 138, 139, 140, 143, 144, 145, 146, 149, 150, 151, 153, 154, 156, 157, 159, 160, 161, 162, 163, 164, 166, 168, 169, 170, 172, 173, 174, 175, 176, 178, 179, 181, 182, 183, 185, 186, 187, 188, 190, 191, 192, 194, 195, 196, 197, 199, 200, 202, 203, 204, 205, 206, 208, 209, 210, 211, 212, 213], "/home/ms/Project/kiwi-horizon/kiwi/data/checksum.py": [18, 19, 20, 23, 24, 26, 31, 34, 35, 36, 37, 38, 40, 41, 43, 44, 45, 47, 48, 49, 51, 53, 54, 55, 57, 58, 59, 61, 63, 64, 65, 66, 67, 68, 70, 71, 72, 75, 76, 78, 79, 80, 81, 82, 83, 87, 88, 89, 93, 94, 95, 96, 97, 98, 100, 101, 102, 103, 104, 105, 106, 107, 108, 110, 111, 112, 115, 116, 117, 118], "/home/ms/Project/kiwi-horizon/kiwi/iso.py": [18, 19, 20, 21, 22, 23, 24, 27, 28, 29, 35, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 54, 56, 57, 58, 59, 60, 64, 66, 67, 68, 69, 70, 71, 73, 74, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 91, 92, 93, 94, 95, 96, 97, 99, 100, 102, 103, 105, 106, 107, 108, 111, 113, 114, 115, 116, 117, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 131, 132, 134, 135, 136, 137, 138, 140, 141, 142, 143, 144, 145, 146, 148, 149, 151, 152, 153, 154, 155, 157, 158, 159, 161, 163, 173, 174, 175, 176, 177, 178, 179, 180, 182, 183, 184, 185, 186, 187, 188, 189, 191, 192, 194, 196, 197, 200, 202, 203, 204, 205, 206, 207, 210, 211, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 233, 234, 235, 236, 237, 238, 239, 240, 242, 243, 245, 247, 248, 249, 251, 252, 254, 255, 256, 257, 259, 260, 261, 262, 263, 264, 265, 266, 267, 269, 270, 273, 275, 277, 278, 279, 280, 282, 283, 284, 285, 286, 287, 289, 290, 291, 293, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 307, 308, 309, 310, 312, 313, 314, 316, 321, 322, 324, 325, 330, 331, 333, 334, 335, 336, 338, 340, 342, 343, 344, 345, 346, 347, 348, 349, 350, 353, 355, 356, 357, 358, 360, 361, 362, 363, 365, 366, 367, 368, 370, 371, 372, 373, 375, 376, 377, 378, 381, 383, 384, 386, 388, 389, 391, 392, 393, 395, 397, 398, 399], "/home/ms/Project/kiwi-horizon/kiwi/system/root_bind.py": [18, 21, 22, 23, 24, 26, 33, 37, 38, 39, 40, 41, 42, 46, 47, 48, 52, 53, 54, 55, 58, 60, 61, 62, 63, 64, 65, 67, 68, 69, 70, 71, 72, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 92, 93, 94, 95, 96, 97, 98, 100, 101, 102, 104, 105, 106, 107, 110, 111, 112, 113, 114, 115, 117, 119, 120, 121, 122, 124, 126, 128, 129, 131, 136, 137, 138, 140, 141, 142, 143, 144, 147, 148, 149, 150, 151, 152, 153, 154, 155, 158, 160, 162, 163, 164, 165, 166, 167, 168, 170], "/home/ms/Project/kiwi-horizon/kiwi/tasks/base.py": [18, 19, 20, 23, 24, 25, 27, 32, 36, 37, 38, 40, 43, 46, 49, 52, 54, 56, 57, 59, 62, 63, 64, 67, 68, 70, 71, 72, 74, 75, 77, 78, 79, 80, 82, 83, 84, 87, 88, 90, 91, 92, 93, 94, 95, 98, 99, 100, 101, 102, 104, 105, 106, 107, 110, 111, 112], "/home/ms/Project/kiwi-horizon/kiwi/system/root_init.py": [128, 129, 18, 19, 20, 23, 24, 25, 27, 33, 38, 39, 40, 41, 42, 44, 46, 47, 49, 50, 51, 52, 54, 55, 56, 57, 58, 59, 61, 62, 63, 65, 66, 68, 69, 71, 72, 74, 75, 77, 78, 80, 81, 83, 84, 86, 87, 89, 90, 92, 93, 95, 96, 98, 99, 102, 103, 104, 105, 106, 108, 109, 110, 111, 113, 114, 115, 116, 117, 120, 121, 122, 123, 124, 125, 126, 127], "/home/ms/Project/kiwi-horizon/kiwi/defaults.py": [18, 19, 20, 21, 22, 25, 28, 29, 30, 32, 34, 36, 38, 40, 42, 44, 47, 48, 49, 50, 53, 55, 56, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 77, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 107, 109, 110, 111, 112, 113, 115, 117, 119, 120, 121, 122, 123, 124, 125, 126, 128, 130, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 156, 158, 160, 162, 164, 166, 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190, 192, 194, 196, 198, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 217, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 235, 236, 238, 240, 242, 244, 246, 248, 250, 252, 254, 256, 258, 260, 262, 265, 266, 269, 271, 272, 273, 276, 278, 279, 280, 283, 285, 287, 289, 291, 293, 295, 297, 299, 301, 303, 305, 307, 309, 311, 313, 315, 317, 319, 321, 323, 324, 325, 327, 328, 329, 331, 332, 333, 334], "/home/ms/Project/kiwi-horizon/kiwi/system/uri.py": [128, 129, 131, 137, 138, 141, 142, 143, 18, 19, 20, 21, 24, 26, 32, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 55, 56, 57, 58, 59, 62, 63, 64, 66, 67, 68, 70, 71, 72, 74, 75, 76, 77, 78, 79, 80, 82, 83, 85, 86, 89, 90, 92, 93, 94, 95, 96, 98, 99, 101, 102, 104, 105, 108, 109, 110, 112, 113, 114, 116, 117, 119, 120, 121, 123, 124, 125, 127], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/install/grub2.py": [18, 21, 22, 23, 24, 25, 27, 33, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 52, 53, 55, 56, 57, 59, 60, 61, 64, 65, 66, 67, 68, 69, 70, 71, 72, 74, 75, 76, 77, 79, 80, 83, 84, 86, 87, 88, 90, 92, 96, 98, 99, 100, 101, 102, 103, 105, 106, 107, 108, 109, 111, 112, 113, 114, 115, 116, 117, 121, 122, 123, 124, 126, 127, 128, 130, 131, 132, 134, 135, 136, 138, 139, 140, 141, 149, 151, 152, 153, 156, 158, 159, 160, 163, 165, 166, 167, 171, 173, 174, 175, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192], "/home/ms/Project/kiwi-horizon/kiwi/boot/image/dracut.py": [18, 21, 22, 23, 24, 25, 26, 29, 35, 36, 40, 41, 43, 44, 45, 46, 47, 49, 50, 51, 53, 54, 57, 58, 59, 60, 61, 62, 64, 65, 66, 67, 68, 69, 70, 73, 75, 76, 77, 79, 82, 83, 85, 86, 87], "/home/ms/Project/kiwi-horizon/kiwi/xml_state.py": [18, 19, 20, 21, 24, 25, 27, 35, 38, 39, 40, 41, 42, 43, 45, 46, 49, 53, 54, 57, 58, 59, 62, 66, 68, 72, 73, 74, 75, 77, 81, 82, 83, 84, 86, 90, 91, 92, 94, 95, 96, 97, 98, 100, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 117, 118, 120, 124, 125, 126, 128, 129, 131, 132, 133, 134, 136, 140, 142, 146, 147, 148, 149, 151, 152, 153, 154, 156, 160, 161, 162, 164, 165, 167, 168, 169, 170, 172, 176, 177, 178, 179, 180, 181, 182, 183, 184, 186, 190, 191, 192, 194, 195, 196, 197, 199, 205, 206, 208, 209, 210, 211, 212, 213, 214, 216, 217, 219, 220, 222, 226, 227, 228, 230, 231, 232, 233, 235, 239, 241, 245, 247, 251, 252, 253, 255, 256, 257, 258, 260, 264, 266, 270, 272, 276, 277, 278, 280, 284, 285, 286, 288, 292, 293, 294, 296, 300, 301, 302, 303, 304, 306, 310, 311, 312, 314, 319, 320, 321, 322, 323, 324, 325, 326, 327, 329, 330, 333, 337, 338, 339, 340, 341, 342, 343, 345, 346, 347, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 362, 364, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 396, 397, 398, 399, 401, 409, 410, 411, 412, 414, 422, 423, 424, 425, 427, 432, 433, 434, 437, 438, 439, 441, 442, 443, 446, 447, 450, 451, 452, 453, 455, 456, 457, 458, 459, 460, 461, 464, 467, 468, 469, 471, 473, 474, 475, 476, 477, 478, 479, 480, 481, 484, 486, 491, 492, 493, 494, 495, 497, 498, 500, 501, 503, 508, 509, 511, 515, 516, 518, 519, 520, 521, 522, 523, 525, 530, 531, 533, 534, 535, 536, 537, 538, 539, 541, 545, 547, 551, 553, 557, 559, 563, 564, 567, 573, 574, 575, 576, 577, 580, 586, 587, 588, 589, 590, 593, 597, 598, 599, 600, 601, 602, 603, 604, 605, 607, 611, 612, 613, 614, 615, 616, 620, 621, 622, 623, 625, 626, 627, 630, 631, 632, 634, 635, 636, 638, 639, 640, 641, 642, 645, 646, 647, 649, 650, 651, 653, 654, 655, 656, 657, 660, 661, 662, 663, 664, 667, 668, 669, 671, 672, 673, 674, 675, 678, 679, 681, 682, 683, 684, 685, 686, 687, 688, 690, 691, 692, 693, 695, 697, 698, 699, 700, 702, 703, 704, 705, 707, 709, 716, 717, 719, 720, 721, 722, 724, 725, 727, 728, 729, 730, 731, 732, 735, 736, 738, 739, 741, 742, 744, 745, 746, 747, 749, 755, 756, 758, 759, 760, 762, 763, 764, 765, 766, 767, 768, 769, 773, 778, 779, 781, 783, 784, 785, 787, 788, 790, 791, 792, 793, 794, 795, 799, 800, 801, 802, 803, 805, 806, 807, 809, 810, 811, 812, 814, 816, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 837, 838, 839, 840, 842, 844, 849, 850, 851, 854, 855, 856, 857, 858, 859, 863, 864, 865, 868, 869, 871, 878, 879, 880, 881, 882, 883, 884, 885, 887, 888, 890, 894, 895, 896, 897, 899, 900, 901, 902, 903, 904, 905, 907, 909], "/home/ms/Project/kiwi-horizon/kiwi/storage/loop_device.py": [64, 65, 66, 67, 68, 69, 70, 71, 18, 21, 22, 23, 25, 30, 33, 34, 35, 36, 37, 38, 40, 41, 42, 44, 45, 47, 48, 50, 51, 52, 53, 55, 56, 57, 58, 59, 60, 62], "/home/ms/Project/kiwi-horizon/kiwi/storage/subformat/base.py": [18, 19, 20, 22, 26, 27, 28, 31, 34, 35, 36, 37, 38, 39, 40, 41, 42, 44, 46, 48, 50, 51, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 64, 65, 66, 67, 68, 70, 72, 73, 74, 75, 76, 80, 81, 82, 83], "/home/ms/Project/kiwi-horizon/kiwi/boot/image/base.py": [18, 19, 20, 23, 24, 25, 26, 27, 29, 35, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 52, 53, 54, 57, 59, 60, 61, 62, 63, 67, 72, 74, 78, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 92, 93, 96, 97, 98, 99, 100, 101, 103, 104, 106, 107, 108, 109, 110, 112, 113, 114, 115, 118, 119, 120, 122, 123, 125, 126, 127, 129, 130, 132, 133, 135, 136, 137, 140, 141, 142, 143, 144, 145, 147, 148, 150, 151, 153, 154, 156, 157, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 179, 180, 182, 183, 185, 186, 188, 189, 192, 193, 194, 195, 197, 198, 199, 201, 202, 204, 205, 207, 208, 209, 210], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/squashfs.py": [19, 20, 23, 26, 27, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/tasks/result_list.py": [64, 65, 30, 31, 34, 35, 36, 37, 40, 43, 44, 45, 46, 47, 49, 50, 52, 53, 55, 56, 58, 60, 61, 62], "/home/ms/Project/kiwi-horizon/kiwi/logger.py": [18, 19, 22, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 47, 48, 49, 52, 62, 63, 64, 66, 73, 74, 75, 77, 80, 81, 83, 85, 86, 87, 88, 89, 92, 93, 97, 98, 100, 103, 104, 107, 108, 111, 112, 115, 116, 119, 120, 123, 124, 127, 128, 131, 132, 135, 138, 139, 140, 141, 143, 144, 145, 148, 149, 150, 153, 154, 155, 158, 159, 160, 161, 163, 165, 166, 168, 172, 173, 174, 176, 177, 178, 179, 180, 182, 183, 184, 185, 186, 189, 196, 197, 198, 202, 203, 204, 205, 206, 208, 209, 210, 213, 215, 216, 217, 219, 220, 221, 222, 225, 227, 228, 234], "/home/ms/Project/kiwi-horizon/kiwi/data/__init__.py": [1], "/home/ms/Project/kiwi-horizon/kiwi/archive/cpio.py": [19, 22, 25, 26, 27, 29, 30, 31, 33, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 51, 53, 54, 55, 57, 58], "/home/ms/Project/kiwi-horizon/kiwi/volume_manager/__init__.py": [32, 34, 35, 36, 38, 39, 40, 43, 44, 19, 20, 22, 27, 30], "/home/ms/Project/kiwi-horizon/kiwi/privileges.py": [32, 33, 18, 35, 20, 25, 28, 29, 31], "/home/ms/Project/kiwi-horizon/kiwi/container/setup/base.py": [129, 171, 150, 139, 140, 141, 142, 144, 145, 18, 19, 149, 22, 23, 152, 25, 154, 155, 157, 30, 160, 161, 162, 163, 36, 37, 38, 39, 40, 42, 43, 44, 46, 125, 48, 49, 51, 158, 55, 57, 146, 62, 63, 65, 118, 70, 71, 72, 73, 74, 75, 76, 80, 120, 87, 88, 164, 90, 91, 92, 165, 96, 166, 102, 103, 104, 105, 106, 167, 108, 109, 110, 111, 168, 114, 89, 119, 153, 121, 122, 123, 124, 170], "/home/ms/Project/kiwi-horizon/kiwi/volume_manager/lvm.py": [19, 20, 21, 22, 23, 24, 25, 27, 32, 35, 36, 37, 38, 40, 41, 42, 43, 44, 46, 48, 53, 54, 55, 59, 60, 61, 63, 65, 66, 67, 68, 69, 71, 72, 74, 75, 76, 78, 79, 80, 82, 83, 84, 86, 88, 89, 90, 91, 92, 93, 94, 95, 96, 98, 99, 101, 103, 104, 107, 108, 109, 111, 112, 115, 116, 117, 118, 120, 121, 124, 125, 126, 128, 129, 132, 133, 134, 135, 137, 138, 139, 140, 141, 142, 143, 145, 146, 147, 148, 149, 150, 151, 152, 154, 155, 158, 159, 160, 162, 163, 164, 165, 169, 170, 171, 172, 176, 177, 178, 181, 182, 183, 185, 186, 187, 188, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199], "/home/ms/Project/kiwi-horizon/kiwi/repository/zypper.py": [18, 19, 20, 23, 24, 25, 27, 32, 35, 36, 37, 38, 39, 41, 49, 51, 52, 53, 54, 55, 56, 59, 60, 62, 63, 67, 68, 69, 70, 71, 72, 73, 74, 76, 79, 80, 83, 84, 85, 86, 88, 89, 91, 92, 94, 95, 98, 100, 101, 102, 103, 106, 107, 108, 109, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 122, 124, 125, 126, 127, 128, 130, 133, 134, 135, 136, 138, 141, 142, 143, 145, 150, 151, 156, 157, 158, 159, 160, 161, 163, 164, 165, 166, 167, 168, 169, 172, 173, 174, 175, 176, 178, 183, 184, 185, 186, 188, 189, 190, 191, 192], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/config/__init__.py": [32, 33, 34, 35, 37, 38, 39, 41, 42, 43, 46, 47, 19, 20, 21, 23, 28, 31], "/home/ms/Project/kiwi-horizon/kiwi/path.py": [64, 67, 73, 74, 18, 21, 24, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 43, 44, 45, 46, 47, 49, 51, 52, 55, 57, 58, 61, 63], "/home/ms/Project/kiwi-horizon/kiwi/partitioner/gpt.py": [64, 65, 67, 68, 69, 70, 72, 73, 75, 76, 77, 81, 19, 20, 22, 27, 30, 31, 32, 33, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 53, 54, 56, 57, 58, 59, 62, 63], "/home/ms/Project/kiwi-horizon/kiwi/repository/base.py": [32, 34, 35, 37, 38, 40, 41, 43, 44, 46, 47, 20, 23, 24, 25, 26, 27, 29, 31], "/home/ms/Project/kiwi-horizon/kiwi/tasks/__init__.py": [1], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/template/isolinux.py": [128, 22, 135, 139, 140, 141, 143, 144, 145, 18, 19, 148, 150, 25, 26, 27, 156, 157, 133, 160, 48, 162, 155, 164, 38, 193, 171, 172, 174, 175, 176, 177, 178, 179, 181, 57, 186, 187, 188, 61, 190, 191, 192, 65, 194, 195, 70, 161, 76, 82, 163, 88, 159, 94, 100, 166, 106, 146, 112, 147, 118, 120, 170, 126], "/home/ms/Project/kiwi-horizon/kiwi/version.py": [20, 21, 22], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/isofs.py": [51, 34, 35, 36, 37, 40, 41, 44, 45, 56, 50, 19, 20, 21, 54, 55, 24, 27, 28, 29, 31], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/btrfs.py": [32, 33, 19, 20, 23, 26, 27, 28, 29, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/ext3.py": [32, 33, 19, 20, 23, 26, 27, 28, 29, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/install/base.py": [32, 33, 35, 20, 23, 24, 25, 26, 39, 28, 30], "/home/ms/Project/kiwi-horizon/kiwi/system/users.py": [18, 21, 24, 25, 26, 28, 29, 31, 32, 34, 35, 36, 39, 40, 41, 44, 45, 46, 49, 50, 51, 52, 55, 56, 57, 58, 59, 61, 62, 63], "/home/ms/Project/kiwi-horizon/kiwi/builder/archive.py": [18, 21, 22, 23, 24, 25, 26, 28, 33, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 49, 50, 51, 52, 53, 56, 57, 58, 59, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 86, 87, 88, 89, 91, 92, 93, 95, 97, 98, 100, 101, 102, 103, 104], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/config/base.py": [256, 257, 259, 260, 261, 19, 20, 21, 22, 24, 29, 32, 33, 34, 35, 37, 39, 40, 42, 47, 49, 57, 59, 68, 70, 79, 81, 88, 90, 95, 97, 102, 104, 105, 106, 107, 109, 110, 111, 112, 113, 114, 115, 117, 118, 119, 120, 121, 123, 124, 125, 126, 128, 129, 130, 131, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 152, 153, 154, 155, 157, 158, 159, 160, 161, 162, 166, 168, 169, 170, 171, 172, 174, 175, 176, 177, 178, 179, 184, 185, 187, 189, 191, 196, 197, 198, 199, 201, 202, 203, 204, 205, 206, 207, 208, 210, 211, 212, 213, 214, 216, 217, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 232, 233, 234, 235, 236, 237, 238, 240, 242, 243, 248, 250, 253, 255], "/home/ms/Project/kiwi-horizon/kiwi/container/__init__.py": [32, 35, 34, 19, 21, 26, 29, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/help.py": [18, 20, 23, 26, 27, 28, 29, 30], "/home/ms/Project/kiwi-horizon/kiwi/container/setup/docker.py": [20, 21, 24, 27, 28, 29, 30, 32, 33, 36, 37, 38, 39, 40, 43, 44, 45, 46, 47, 48, 49, 51, 52, 54, 55, 56, 57, 58, 60, 61, 62, 65, 66, 69, 71, 72, 73, 74, 75, 76, 80, 82, 83, 85, 86, 87, 88, 90, 91, 92, 93, 95, 97, 98, 100, 101, 103, 104, 105, 106, 108, 109, 110, 111, 113], "/home/ms/Project/kiwi-horizon/kiwi/command.py": [18, 19, 20, 21, 24, 27, 30, 31, 32, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, 56, 57, 58, 59, 60, 61, 62, 63, 64, 66, 67, 68, 71, 72, 74, 75, 76, 77, 80, 81, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 118, 119, 120, 123, 124, 125, 126, 128, 129, 130, 131, 132, 134, 135, 136, 137, 139, 140, 141, 142, 143, 145, 146, 147, 148, 149, 152, 153, 154, 155, 156, 157], "/home/ms/Project/kiwi-horizon/kiwi/storage/subformat/gce.py": [64, 66, 67, 70, 76, 77, 78, 45, 80, 81, 82, 83, 22, 23, 24, 27, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 43, 18, 46, 49, 50, 19, 52, 53, 54, 56, 60, 62, 63], "/home/ms/Project/kiwi-horizon/kiwi/system/profile.py": [256, 258, 43, 260, 262, 264, 266, 343, 268, 270, 272, 18, 19, 276, 278, 23, 280, 282, 284, 286, 31, 32, 33, 34, 36, 37, 38, 39, 40, 41, 298, 299, 44, 45, 302, 47, 304, 305, 50, 51, 308, 54, 55, 56, 313, 58, 59, 316, 317, 319, 321, 322, 324, 330, 331, 332, 333, 335, 337, 342, 57, 89, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 274, 110, 61, 112, 114, 116, 118, 345, 120, 217, 63, 124, 126, 128, 130, 294, 132, 22, 134, 136, 138, 140, 142, 144, 145, 148, 150, 151, 152, 154, 52, 26, 158, 159, 161, 162, 164, 165, 48, 168, 174, 175, 176, 177, 179, 180, 181, 182, 183, 184, 185, 186, 187, 189, 192, 288, 194, 196, 199, 201, 290, 210, 211, 213, 214, 216, 292, 219, 220, 122, 222, 223, 225, 226, 228, 229, 231, 232, 234, 236, 296, 42], "/home/ms/Project/kiwi-horizon/kiwi/container/setup/__init__.py": [32, 35, 34, 19, 21, 26, 29, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/mount_manager.py": [18, 19, 22, 23, 24, 27, 34, 35, 36, 37, 38, 40, 42, 43, 44, 45, 48, 49, 50, 51, 52, 53, 54, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 76, 77, 78, 79, 82, 84, 85, 87, 89, 90, 91, 92, 94, 95, 97], "/home/ms/Project/kiwi-horizon/kiwi/exceptions.py": [20, 24, 25, 26, 28, 29, 32, 33, 36, 37, 40, 41, 44, 45, 48, 49, 52, 53, 56, 57, 60, 61, 64, 65, 68, 69, 72, 73, 76, 77, 80, 81, 84, 85, 88, 89, 92, 93, 96, 97, 100, 101, 104, 105, 108, 109, 112, 113, 116, 117, 120, 121, 124, 125, 128, 129, 132, 133, 136, 137, 140, 141, 144, 145, 148, 149, 152, 153, 156, 157, 160, 161, 164, 165, 168, 169, 172, 173, 176, 177, 180, 181, 184, 185, 188, 189, 192, 193, 196, 197, 200, 201, 204, 205, 208, 209, 212, 213, 216, 217, 220, 221, 224, 225, 228, 229, 232, 233, 236, 237, 240, 241, 244, 245, 248, 249, 252, 253, 256, 257, 260, 261, 264, 265, 268, 269, 272, 273, 276, 277, 280, 281, 284, 285, 288, 289, 292, 293, 296, 297, 300, 301, 304, 305, 308, 309, 312, 313, 316, 317, 320, 321, 324, 325, 328, 329, 332, 333, 336, 337, 340, 341, 344, 345, 348, 349, 352, 353, 356, 357, 360, 361, 364, 365, 368, 369], "/home/ms/Project/kiwi-horizon/kiwi/bootloader/install/zipl.py": [64, 65, 66, 19, 20, 21, 22, 24, 29, 32, 33, 34, 35, 36, 37, 40, 41, 44, 48, 50, 52, 54, 55, 56, 59, 60, 62], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/ext4.py": [32, 33, 19, 20, 23, 26, 27, 28, 29, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/system/prepare.py": [18, 21, 22, 23, 24, 25, 26, 27, 29, 31, 40, 43, 45, 50, 51, 52, 54, 55, 56, 58, 59, 60, 62, 63, 64, 70, 72, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, 90, 92, 93, 94, 95, 96, 97, 99, 100, 102, 103, 104, 106, 108, 109, 111, 112, 114, 115, 116, 117, 120, 125, 126, 127, 128, 130, 131, 132, 133, 134, 136, 137, 138, 139, 140, 141, 142, 144, 145, 146, 148, 149, 150, 151, 152, 155, 156, 157, 159, 161, 162, 163, 164, 165, 166, 169, 176, 177, 178, 180, 181, 182, 183, 184, 185, 187, 188, 189, 190, 191, 192, 193, 195, 196, 197, 199, 200, 201, 202, 203, 206, 207, 208, 211, 212, 213, 214, 215, 216, 219, 224, 225, 226, 227, 228, 229, 230, 231, 234, 239, 240, 241, 243, 244, 245, 247, 248, 249, 250, 251, 254, 255, 256, 259, 264, 265, 266, 268, 269, 270, 271, 273, 274, 275, 276, 277, 280, 281, 282, 285, 291, 292, 293, 295, 296, 297, 298, 299, 302, 303, 304, 305, 306, 307, 309, 312, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 328, 329, 331, 332, 333, 334, 335, 336], "/home/ms/Project/kiwi-horizon/kiwi/builder/install.py": [18, 19, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 35, 40, 43, 44, 45, 46, 47, 48, 49, 51, 52, 53, 54, 55, 58, 60, 61, 62, 63, 64, 67, 69, 70, 71, 72, 73, 76, 77, 79, 80, 83, 84, 86, 87, 88, 89, 91, 96, 97, 101, 102, 106, 107, 108, 110, 111, 114, 117, 118, 120, 121, 124, 126, 129, 130, 132, 133, 134, 138, 139, 140, 142, 143, 144, 146, 147, 149, 152, 153, 155, 156, 157, 159, 160, 162, 165, 166, 169, 170, 171, 172, 173, 175, 178, 179, 182, 192, 193, 196, 197, 199, 200, 203, 204, 205, 207, 208, 209, 213, 214, 216, 217, 220, 221, 225, 227, 228, 231, 232, 233, 234, 235, 236, 239, 240, 243, 244, 245, 247, 248, 251, 252, 253, 254, 256, 257, 258, 260, 261, 262, 264, 265, 266, 268, 269, 271, 272, 276, 277, 278, 279, 280, 281, 283, 284, 285, 287, 288, 289, 291, 292, 293, 295, 296, 298, 299, 303, 305, 306, 307, 308, 309, 310, 312, 313, 314, 315, 316, 317, 318, 319], "/home/ms/Project/kiwi-horizon/kiwi/system/identifier.py": [18, 19, 22, 26, 27, 28, 30, 31, 33, 34, 35, 38, 39, 40, 42, 43, 44, 45, 46, 47, 49, 50], "/home/ms/Project/kiwi-horizon/kiwi/system/size.py": [65, 19, 20, 23, 26, 27, 28, 30, 34, 35, 36, 38, 39, 40, 41, 42, 43, 45, 47, 48, 50, 51, 54, 56, 58, 60, 62], "/home/ms/Project/kiwi-horizon/kiwi/storage/raid_device.py": [18, 21, 22, 23, 24, 26, 31, 34, 35, 39, 41, 42, 43, 45, 47, 51, 52, 53, 56, 61, 62, 63, 65, 66, 67, 68, 69, 71, 72, 73, 74, 76, 77, 78, 80, 82, 83, 84, 85, 88, 90, 91, 92, 94, 95, 97, 101, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113], "/home/ms/Project/kiwi-horizon/kiwi/system/result.py": [18, 19, 20, 23, 25, 30, 31, 35, 38, 39, 40, 45, 47, 50, 52, 53, 54, 55, 56, 57, 60, 61, 63, 64, 65, 66, 67, 69, 70, 71, 72, 73, 74, 75, 78, 80, 81, 82, 84, 85, 86, 87, 88, 89], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/setup.py": [64, 66, 67, 68, 69, 71, 19, 20, 21, 24, 29, 30, 31, 32, 33, 34, 35, 37, 39, 40, 41, 42, 45, 46, 47, 48, 50, 51, 53, 54, 55, 56, 57, 58, 60, 62, 63], "/home/ms/Project/kiwi-horizon/kiwi/package_manager/yum.py": [129, 131, 133, 138, 23, 142, 143, 144, 18, 147, 148, 21, 150, 151, 152, 22, 47, 28, 154, 31, 32, 33, 34, 35, 37, 38, 39, 41, 42, 44, 45, 157, 49, 51, 52, 53, 59, 60, 61, 65, 66, 139, 68, 71, 72, 73, 75, 76, 82, 83, 84, 88, 89, 90, 91, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 107, 108, 109, 112, 113, 116, 117, 118, 120, 67, 123, 124, 126, 149], "/home/ms/Project/kiwi-horizon/kiwi/archive/__init__.py": [1], "/home/ms/Project/kiwi-horizon/kiwi/volume_manager/btrfs.py": [18, 19, 22, 23, 24, 25, 26, 27, 28, 29, 31, 36, 39, 40, 41, 42, 44, 45, 46, 47, 48, 50, 51, 53, 55, 56, 57, 58, 62, 63, 64, 66, 67, 69, 70, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 87, 89, 91, 92, 93, 95, 97, 98, 101, 102, 105, 106, 109, 111, 112, 113, 114, 116, 117, 118, 120, 121, 124, 125, 126, 127, 128, 130, 131, 134, 135, 136, 137, 138, 139, 140, 143, 144, 145, 146, 148, 149, 150, 151, 152, 153, 154, 155, 156, 159, 160, 161, 163, 164, 165, 166, 167, 168, 169, 171, 172, 175, 177, 178, 181, 182, 183, 184], "/home/ms/Project/kiwi-horizon/kiwi/storage/setup.py": [18, 19, 22, 23, 24, 25, 28, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 49, 50, 53, 54, 56, 57, 58, 59, 60, 62, 63, 64, 65, 67, 68, 72, 73, 75, 76, 77, 78, 81, 82, 83, 84, 85, 86, 89, 90, 91, 92, 93, 96, 97, 98, 99, 100, 103, 104, 105, 106, 107, 110, 111, 112, 113, 114, 115, 118, 119, 120, 121, 123, 124, 126, 127, 128, 129, 130, 131, 133, 135, 136, 137, 139, 140, 141, 142, 144, 146, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 170, 171, 172, 173, 174, 176, 177, 179, 180, 182, 183, 184, 185, 187, 189, 199, 200, 201, 202, 204, 209, 211, 212, 214, 215, 216, 217, 218, 219, 220, 222, 223, 224, 225, 227, 228, 229, 232, 233, 234, 235, 238, 240, 241, 243, 244, 245, 248, 250, 256, 257, 259, 260, 261, 262, 263, 264, 265, 268, 273, 274, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 287, 289, 290, 291], "/home/ms/Project/kiwi-horizon/kiwi/data/sync.py": [32, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 19, 22, 26, 27, 28, 29, 31], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/__init__.py": [64, 65, 67, 68, 69, 71, 72, 73, 76, 77, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 34, 37, 38, 39, 40, 41, 43, 44, 45, 47, 48, 49, 51, 52, 53, 55, 56, 57, 59, 60, 61, 63], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/base.py": [64, 66, 88, 69, 71, 72, 73, 74, 76, 77, 78, 80, 81, 18, 19, 84, 85, 22, 23, 24, 89, 26, 86, 90, 94, 31, 96, 97, 34, 35, 40, 92, 95, 82, 46, 48, 52, 54, 55, 57, 59, 61], "/home/ms/Project/kiwi-horizon/kiwi/storage/device_provider.py": [32, 35, 36, 37, 39, 41, 42, 43, 45, 47, 48, 19, 20, 25, 28, 29, 31], "/home/ms/Project/kiwi-horizon/kiwi/filesystem/fat16.py": [32, 33, 19, 20, 23, 26, 27, 28, 29, 30, 31], "/home/ms/Project/kiwi-horizon/kiwi/builder/filesystem.py": [18, 21, 22, 23, 24, 25, 26, 27, 28, 30, 35, 38, 39, 40, 41, 42, 43, 44, 45, 46, 48, 49, 50, 51, 52, 54, 55, 57, 59, 60, 61, 62, 63, 66, 67, 69, 71, 73, 74, 75, 77, 78, 79, 80, 82, 83, 85, 86, 87, 88, 89, 90, 91, 93, 94, 95, 96, 98, 99, 100, 102, 103, 104, 105, 107, 108, 109, 111, 113, 114, 115, 116, 117, 118, 120, 121, 122, 123, 125, 126, 127, 130, 132, 134, 135, 136, 137, 138, 140, 141], "/home/ms/Project/kiwi-horizon/kiwi/container/docker.py": [35, 19, 36, 38, 22, 39, 25, 26, 27, 29, 31], "/home/ms/Project/kiwi-horizon/kiwi/partitioner/dasd.py": [64, 70, 72, 74, 19, 20, 21, 24, 27, 28, 29, 30, 33, 34, 35, 36, 37, 38, 39, 42, 43, 45, 46, 47, 48, 49, 50, 51, 53, 54, 56, 57, 58, 60, 61, 62], "/home/ms/Project/kiwi-horizon/kiwi/builder/live.py": [18, 19, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 43, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 63, 64, 66, 67, 69, 70, 72, 73, 75, 77, 78, 79, 80, 81, 84, 86, 87, 88, 89, 92, 94, 96, 97, 99, 102, 103, 104, 106, 107, 108, 110, 111, 112, 113, 116, 117, 120, 121, 125, 126, 127, 128, 129, 130, 132, 133, 134, 136, 138, 139, 143, 144, 145, 147, 148, 149, 151, 152, 154, 157, 158, 159, 160, 162, 163, 164, 166, 167, 169, 172, 173, 176, 177, 178, 179, 182, 183, 184, 185, 186, 188, 191, 192, 193, 196, 197, 198, 199, 200, 201, 203, 204, 205, 206, 208, 209, 210, 212, 213, 214, 215, 217, 218, 219, 221, 223, 224, 225, 226, 227, 228, 230, 231, 232, 234, 235, 236, 238, 239, 240, 242, 243, 245, 246, 250, 263, 264, 265, 267, 268, 269, 270, 271, 272, 275, 276, 277, 280, 281, 282, 283], "/home/ms/Project/kiwi-horizon/kiwi/package_manager/base.py": [64, 65, 67, 68, 70, 71, 73, 74, 75, 76, 20, 23, 24, 25, 26, 27, 28, 29, 30, 32, 34, 35, 37, 38, 40, 41, 43, 44, 46, 47, 49, 50, 52, 53, 55, 56, 58, 59, 61, 62], "/home/ms/Project/kiwi-horizon/kiwi/system/__init__.py": [1]}}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/PKG-INFO new/kiwi-9.18.12/PKG-INFO
--- old/kiwi-9.18.10/PKG-INFO 2019-08-05 09:57:13.000000000 +0200
+++ new/kiwi-9.18.12/PKG-INFO 2019-08-20 09:49:19.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: kiwi
-Version: 9.18.10
+Version: 9.18.12
Summary: KIWI - Appliance Builder (next generation)
Home-page: https://osinside.github.io/kiwi
Author: Marcus Schaefer
Binary files old/kiwi-9.18.10/doc/build/latex/kiwi.pdf and new/kiwi-9.18.12/doc/build/latex/kiwi.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/doc/build/man/kiwi.8 new/kiwi-9.18.12/doc/build/man/kiwi.8
--- old/kiwi-9.18.10/doc/build/man/kiwi.8 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/doc/build/man/kiwi.8 2019-08-20 09:49:18.000000000 +0200
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "KIWI" "8" "Aug 05, 2019" "9.18.10" "kiwi"
+.TH "KIWI" "8" "Aug 20, 2019" "9.18.12" "kiwi"
.SH NAME
kiwi \- Creating Operating System Images
.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/doc/build/man/kiwi::image::info.8 new/kiwi-9.18.12/doc/build/man/kiwi::image::info.8
--- old/kiwi-9.18.10/doc/build/man/kiwi::image::info.8 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/doc/build/man/kiwi::image::info.8 2019-08-20 09:49:18.000000000 +0200
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "KIWI::IMAGE::INFO" "8" "Aug 05, 2019" "9.18.10" "kiwi"
+.TH "KIWI::IMAGE::INFO" "8" "Aug 20, 2019" "9.18.12" "kiwi"
.SH NAME
kiwi::image::info \- Provide detailed information about an image description
.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/doc/build/man/kiwi::image::resize.8 new/kiwi-9.18.12/doc/build/man/kiwi::image::resize.8
--- old/kiwi-9.18.10/doc/build/man/kiwi::image::resize.8 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/doc/build/man/kiwi::image::resize.8 2019-08-20 09:49:18.000000000 +0200
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "KIWI::IMAGE::RESIZE" "8" "Aug 05, 2019" "9.18.10" "kiwi"
+.TH "KIWI::IMAGE::RESIZE" "8" "Aug 20, 2019" "9.18.12" "kiwi"
.SH NAME
kiwi::image::resize \- Resize disk images to new geometry
.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/doc/build/man/kiwi::result::bundle.8 new/kiwi-9.18.12/doc/build/man/kiwi::result::bundle.8
--- old/kiwi-9.18.10/doc/build/man/kiwi::result::bundle.8 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/doc/build/man/kiwi::result::bundle.8 2019-08-20 09:49:18.000000000 +0200
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "KIWI::RESULT::BUNDLE" "8" "Aug 05, 2019" "9.18.10" "kiwi"
+.TH "KIWI::RESULT::BUNDLE" "8" "Aug 20, 2019" "9.18.12" "kiwi"
.SH NAME
kiwi::result::bundle \- Bundle build results
.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/doc/build/man/kiwi::result::list.8 new/kiwi-9.18.12/doc/build/man/kiwi::result::list.8
--- old/kiwi-9.18.10/doc/build/man/kiwi::result::list.8 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/doc/build/man/kiwi::result::list.8 2019-08-20 09:49:18.000000000 +0200
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "KIWI::RESULT::LIST" "8" "Aug 05, 2019" "9.18.10" "kiwi"
+.TH "KIWI::RESULT::LIST" "8" "Aug 20, 2019" "9.18.12" "kiwi"
.SH NAME
kiwi::result::list \- List build results
.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/doc/build/man/kiwi::system::build.8 new/kiwi-9.18.12/doc/build/man/kiwi::system::build.8
--- old/kiwi-9.18.10/doc/build/man/kiwi::system::build.8 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/doc/build/man/kiwi::system::build.8 2019-08-20 09:49:18.000000000 +0200
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "KIWI::SYSTEM::BUILD" "8" "Aug 05, 2019" "9.18.10" "kiwi"
+.TH "KIWI::SYSTEM::BUILD" "8" "Aug 20, 2019" "9.18.12" "kiwi"
.SH NAME
kiwi::system::build \- Build image in combined prepare and create step
.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/doc/build/man/kiwi::system::create.8 new/kiwi-9.18.12/doc/build/man/kiwi::system::create.8
--- old/kiwi-9.18.10/doc/build/man/kiwi::system::create.8 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/doc/build/man/kiwi::system::create.8 2019-08-20 09:49:18.000000000 +0200
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "KIWI::SYSTEM::CREATE" "8" "Aug 05, 2019" "9.18.10" "kiwi"
+.TH "KIWI::SYSTEM::CREATE" "8" "Aug 20, 2019" "9.18.12" "kiwi"
.SH NAME
kiwi::system::create \- Create image from prepared root system
.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/doc/build/man/kiwi::system::prepare.8 new/kiwi-9.18.12/doc/build/man/kiwi::system::prepare.8
--- old/kiwi-9.18.10/doc/build/man/kiwi::system::prepare.8 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/doc/build/man/kiwi::system::prepare.8 2019-08-20 09:49:18.000000000 +0200
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "KIWI::SYSTEM::PREPARE" "8" "Aug 05, 2019" "9.18.10" "kiwi"
+.TH "KIWI::SYSTEM::PREPARE" "8" "Aug 20, 2019" "9.18.12" "kiwi"
.SH NAME
kiwi::system::prepare \- Prepare image root system
.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/doc/build/man/kiwi::system::update.8 new/kiwi-9.18.12/doc/build/man/kiwi::system::update.8
--- old/kiwi-9.18.10/doc/build/man/kiwi::system::update.8 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/doc/build/man/kiwi::system::update.8 2019-08-20 09:49:18.000000000 +0200
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "KIWI::SYSTEM::UPDATE" "8" "Aug 05, 2019" "9.18.10" "kiwi"
+.TH "KIWI::SYSTEM::UPDATE" "8" "Aug 20, 2019" "9.18.12" "kiwi"
.SH NAME
kiwi::system::update \- Update/Upgrade image root system
.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/dracut/modules.d/90kiwi-dump/kiwi-dump-image.sh new/kiwi-9.18.12/dracut/modules.d/90kiwi-dump/kiwi-dump-image.sh
--- old/kiwi-9.18.10/dracut/modules.d/90kiwi-dump/kiwi-dump-image.sh 2019-05-27 10:58:08.000000000 +0200
+++ new/kiwi-9.18.12/dracut/modules.d/90kiwi-dump/kiwi-dump-image.sh 2019-08-14 10:42:35.000000000 +0200
@@ -48,6 +48,7 @@
local max_disk
local kiwi_oem_maxdisk
local blk_opts="-p -n -r -o NAME,SIZE,TYPE"
+ local message
if [ -n "${kiwi_devicepersistency}" ];then
disk_id=${kiwi_devicepersistency}
fi
@@ -86,9 +87,13 @@
disk_size=$(echo "${disk_meta}" | cut -f2 -d:)
if [ ${max_disk} -gt 0 ]; then
local disk_size_bytes
- disk_size_bytes=$(binsize_to_bytesize "${disk_size}") || disk_size_bytes=0
+ disk_size_bytes=$(binsize_to_bytesize "${disk_size}") || \
+ disk_size_bytes=0
if [ "${disk_size_bytes}" -gt "${max_disk}" ]; then
- info "${disk_device} filtered out by rd.kiwi.oem.maxdisk=${kiwi_oem_maxdisk} (is ${disk_size})" >&2
+ message="${disk_device} filtered out by"
+ message="${message} rd.kiwi.oem.maxdisk=${kiwi_oem_maxdisk}"
+ message="${message} (disk size is: ${disk_size})"
+ info "${message}" >&2
continue
fi
fi
@@ -106,8 +111,9 @@
# check for custom filter rule
if [ -n "${kiwi_oemdevicefilter}" ];then
if [[ ${disk_device} =~ ${kiwi_oemdevicefilter} ]];then
- # info is more or less "echo" if debug is on, and it clutters stdout
- info "${disk_device} filtered out by: ${kiwi_oemdevicefilter}" >&2
+ message="${disk_device} filtered out by rule:"
+ message="${message} ${kiwi_oemdevicefilter}"
+ info "${message}" >&2
continue
fi
fi
@@ -125,6 +131,7 @@
declare kiwi_oemunattended_id=${kiwi_oemunattended_id}
local disk_list
local device_array
+ kiwi_oemunattended=$(bool "${kiwi_oemunattended}")
disk_list=$(get_disk_list)
if [ -n "${disk_list}" ];then
local count=0
@@ -139,7 +146,7 @@
if [ "${device_index}" -eq 1 ];then
# one single disk device found, use it
echo "${device_array[0]}"
- elif [ -n "${kiwi_oemunattended}" ];then
+ elif [ "${kiwi_oemunattended}" = "true" ];then
if [ -z "${kiwi_oemunattended_id}" ];then
# unattended mode requested but no target specifier,
# thus use first device from list
@@ -209,6 +216,8 @@
local image_from_remote=$3
local image_source
local image_basename
+ kiwi_oemsilentinstall=$(bool "${kiwi_oemsilentinstall}")
+ kiwi_oemunattended=$(bool "${kiwi_oemunattended}")
image_source="$(echo "${image_source_files}" | cut -f1 -d\|)"
image_basename=$(basename "${image_source}")
local progress=/dev/install_progress
@@ -224,7 +233,7 @@
check_image_fits_target "${image_target}"
- if [ -z "${kiwi_oemunattended}" ];then
+ if [ "${kiwi_oemunattended}" = "false" ];then
local ack_dump_text="Destroying ALL data on ${image_target}, continue ?"
if ! run_dialog --yesno "\"${ack_dump_text}\"" 7 80; then
local install_cancel_text="System installation canceled"
@@ -233,7 +242,8 @@
fi
echo "${load_text} [${image_target}]..."
- if command -v pv &>/dev/null && [ -z "${kiwi_oemsilentinstall}" ];then
+ if command -v pv &>/dev/null && [ "${kiwi_oemsilentinstall}" = "false" ]
+ then
# dump with dialog based progress information
setup_progress_fifo ${progress}
eval "${dump}" "${image_source}" "${image_target}" "${progress}" &
@@ -284,11 +294,14 @@
local verify_text="Verifying ${image_target}"
local title_text="Installation..."
local verify_result=/dumped_image.md5
- if [ -n "${kiwi_oemskipverify}" ];then
+ kiwi_oemskipverify=$(bool "${kiwi_oemskipverify}")
+ kiwi_oemsilentverify=$(bool "${kiwi_oemsilentverify}")
+ if [ "${kiwi_oemskipverify}" = "true" ];then
# no verification wanted
return
fi
- if command -v pv &>/dev/null && [ -z "${kiwi_oemsilentverify}" ];then
+ if command -v pv &>/dev/null && [ "${kiwi_oemsilentverify}" = "false" ]
+ then
# verify with dialog based progress information
setup_progress_fifo ${progress}
run_progress_dialog "${verify_text}" "${title_text}" &
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/dracut/modules.d/99kiwi-lib/kiwi-lib.sh new/kiwi-9.18.12/dracut/modules.d/99kiwi-lib/kiwi-lib.sh
--- old/kiwi-9.18.10/dracut/modules.d/99kiwi-lib/kiwi-lib.sh 2019-07-11 15:25:17.000000000 +0200
+++ new/kiwi-9.18.12/dracut/modules.d/99kiwi-lib/kiwi-lib.sh 2019-08-14 10:42:35.000000000 +0200
@@ -133,3 +133,17 @@
esac
awk "BEGIN {print int(${bs}*${mult})}"
}
+
+function bool {
+ # """
+ # provides boolean string true|false for given value.
+ # Only if value matches true return true, in any other
+ # case return false
+ # """
+ local value=$1
+ if [ -n "${value}" ] && [ "${value}" = "true" ] ;then
+ echo "true"
+ else
+ echo "false"
+ fi
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/boot/image/__init__.py new/kiwi-9.18.12/kiwi/boot/image/__init__.py
--- old/kiwi-9.18.10/kiwi/boot/image/__init__.py 2019-05-24 11:43:19.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/boot/image/__init__.py 2019-08-14 10:42:35.000000000 +0200
@@ -39,10 +39,12 @@
initrd_system = xml_state.get_initrd_system()
if initrd_system == 'kiwi':
return BootImageKiwi(
- xml_state, target_dir, root_dir, signing_keys
+ xml_state, target_dir, None, signing_keys
)
elif initrd_system == 'dracut':
- return BootImageDracut(xml_state, target_dir, root_dir)
+ return BootImageDracut(
+ xml_state, target_dir, root_dir, None
+ )
else:
raise KiwiBootImageSetupError(
'Support for %s initrd system not implemented' % initrd_system
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/boot/image/builtin_kiwi.py new/kiwi-9.18.12/kiwi/boot/image/builtin_kiwi.py
--- old/kiwi-9.18.10/kiwi/boot/image/builtin_kiwi.py 2019-05-24 11:43:19.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/boot/image/builtin_kiwi.py 2019-08-16 09:53:16.000000000 +0200
@@ -135,7 +135,7 @@
temp_boot_root_directory
)
data.sync_data(
- options=['-z', '-a']
+ options=['-a']
)
boot_directory = temp_boot_root_directory + '/boot'
Path.wipe(boot_directory)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/bootloader/config/grub2.py new/kiwi-9.18.12/kiwi/bootloader/config/grub2.py
--- old/kiwi-9.18.10/kiwi/bootloader/config/grub2.py 2019-08-02 14:34:52.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/bootloader/config/grub2.py 2019-08-20 09:47:42.000000000 +0200
@@ -525,6 +525,8 @@
grub_default_entries['GRUB_USE_INITRDEFI'] = 'true'
if self.xml_state.build_type.get_btrfs_root_is_snapshot():
grub_default_entries['SUSE_BTRFS_SNAPSHOT_BOOTING'] = 'true'
+ if self.custom_args.get('boot_is_crypto'):
+ grub_default_entries['GRUB_ENABLE_CRYPTODISK'] = 'y'
if grub_default_entries:
log.info('Writing grub2 defaults file')
@@ -714,6 +716,23 @@
early_boot.write(
'set btrfs_relative_path="yes"{0}'.format(os.linesep)
)
+ if self.custom_args.get('boot_is_crypto'):
+ early_boot.write(
+ 'insmod cryptodisk{0}'.format(os.linesep)
+ )
+ early_boot.write(
+ 'insmod luks{0}'.format(os.linesep)
+ )
+ early_boot.write(
+ 'cryptomount -u {0}{1}'.format(
+ uuid.replace('-', ''), os.linesep
+ )
+ )
+ early_boot.write(
+ 'set root="cryptouuid/{0}"{1}'.format(
+ uuid.replace('-', ''), os.linesep
+ )
+ )
early_boot.write(
'search --fs-uuid --set=root {0}{1}'.format(uuid, os.linesep)
)
@@ -852,7 +871,7 @@
theme_dir, boot_theme_dir
)
data.sync_data(
- options=['-z', '-a']
+ options=['-a']
)
if boot_theme_background_file:
# Install preserved background file to the theme
@@ -870,7 +889,7 @@
os.path.dirname(boot_theme_background_file), boot_theme_dir
)
data.sync_data(
- options=['-z', '-a']
+ options=['-a']
)
self._check_boot_theme_exists()
@@ -922,7 +941,7 @@
module_path + '/', boot_module_path
)
data.sync_data(
- options=['-z', '-a'], exclude=['*.module']
+ options=['-a'], exclude=['*.module']
)
except Exception as e:
raise KiwiBootLoaderGrubModulesError(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/builder/disk.py new/kiwi-9.18.12/kiwi/builder/disk.py
--- old/kiwi-9.18.10/kiwi/builder/disk.py 2019-07-19 11:32:41.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/builder/disk.py 2019-08-20 09:47:42.000000000 +0200
@@ -133,6 +133,8 @@
'.raw'
]
)
+ self.boot_is_crypto = True if self.luks and not \
+ self.disk_setup.need_boot_partition() else False
self.install_media = self._install_image_requested()
self.generic_fstab_entries = []
@@ -248,7 +250,9 @@
'targetbase':
loop_provider.get_device(),
'grub_directory_name':
- Defaults.get_grub_boot_directory_name(self.root_dir)
+ Defaults.get_grub_boot_directory_name(self.root_dir),
+ 'boot_is_crypto':
+ self.boot_is_crypto
}
)
@@ -268,9 +272,19 @@
# create luks on current root device if requested
if self.luks:
self.luks_root = LuksDevice(device_map['root'])
- self.luks_root.create_crypto_luks(
- passphrase=self.luks, os=self.luks_os
+ self.luks_boot_keyfile = ''.join(
+ [self.root_dir, '/.root.keyfile']
)
+ self.luks_root.create_crypto_luks(
+ passphrase=self.luks,
+ os=self.luks_os,
+ keyfile=self.luks_boot_keyfile if self.boot_is_crypto else None
+ )
+ if self.boot_is_crypto:
+ self.boot_image.include_file(
+ os.sep + os.path.basename(self.luks_boot_keyfile)
+ )
+ device_map['luks_root'] = device_map['root']
device_map['root'] = self.luks_root.get_device()
# create spare filesystem on spare partition if present
@@ -942,7 +956,12 @@
boot_uuid = self.disk.get_uuid(
boot_device.get_device()
)
- self.bootloader_config.setup_disk_boot_images(boot_uuid)
+ boot_uuid_unmapped = self.disk.get_uuid(
+ device_map['luks_root'].get_device()
+ ) if self.luks else boot_uuid
+ self.bootloader_config.setup_disk_boot_images(
+ boot_uuid_unmapped
+ )
self.bootloader_config.setup_disk_image_config(
boot_uuid=boot_uuid,
root_uuid=root_uuid,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/builder/pxe.py new/kiwi-9.18.12/kiwi/builder/pxe.py
--- old/kiwi-9.18.10/kiwi/builder/pxe.py 2019-08-02 14:34:52.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/builder/pxe.py 2019-08-14 10:42:35.000000000 +0200
@@ -65,7 +65,8 @@
and 'xz_options' in custom_args else None
self.boot_image_task = BootImage(
- xml_state, target_dir, signing_keys=self.boot_signing_keys
+ xml_state, target_dir, root_dir,
+ signing_keys=self.boot_signing_keys
)
self.image_name = ''.join(
[
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/container/setup/base.py new/kiwi-9.18.12/kiwi/container/setup/base.py
--- old/kiwi-9.18.10/kiwi/container/setup/base.py 2019-05-24 11:43:19.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/container/setup/base.py 2019-08-16 09:53:16.000000000 +0200
@@ -170,7 +170,7 @@
try:
data = DataSync('/dev/', self.root_dir + '/dev/')
data.sync_data(
- options=['-z', '-a', '-x', '--devices', '--specials']
+ options=['-a', '-x', '--devices', '--specials']
)
except Exception as e:
raise KiwiContainerSetupError(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/defaults.py new/kiwi-9.18.12/kiwi/defaults.py
--- old/kiwi-9.18.10/kiwi/defaults.py 2019-07-17 16:53:14.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/defaults.py 2019-08-20 09:47:42.000000000 +0200
@@ -62,6 +62,13 @@
]
@staticmethod
+ def get_luks_key_length():
+ """
+ Provides key length to use for random luks keys
+ """
+ return 256
+
+ @staticmethod
def get_xz_compression_options():
"""
Provides compression options for the xz compressor
@@ -376,6 +383,12 @@
'xfs',
'btrfs',
'lvm',
+ 'luks',
+ 'gcry_rijndael',
+ 'gcry_sha256',
+ 'gcry_sha512',
+ 'crypto',
+ 'cryptodisk',
'test',
'true'
]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/iso_tools/base.py new/kiwi-9.18.12/kiwi/iso_tools/base.py
--- old/kiwi-9.18.10/kiwi/iso_tools/base.py 2019-07-11 15:25:17.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/iso_tools/base.py 2019-08-16 09:53:16.000000000 +0200
@@ -176,5 +176,5 @@
loader_data, media_boot_path
)
data.sync_data(
- options=['-z', '-a']
+ options=['-a']
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/path.py new/kiwi-9.18.12/kiwi/path.py
--- old/kiwi-9.18.10/kiwi/path.py 2019-07-02 16:48:30.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/path.py 2019-08-20 09:47:42.000000000 +0200
@@ -141,7 +141,7 @@
)
path_elements = path.split(os.sep)
protected_elements = [
- 'boot', 'dev', 'proc', 'run', 'sys', 'tmp', 'home'
+ 'boot', 'dev', 'proc', 'run', 'sys', 'tmp', 'home', 'mnt'
]
for path_index in reversed(range(0, len(path_elements))):
sub_path = os.sep.join(path_elements[0:path_index])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/schema/kiwi.rnc new/kiwi-9.18.12/kiwi/schema/kiwi.rnc
--- old/kiwi-9.18.10/kiwi/schema/kiwi.rnc 2019-08-02 14:34:52.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/schema/kiwi.rnc 2019-08-14 10:42:35.000000000 +0200
@@ -1505,7 +1505,7 @@
}
>> sch:pattern [ id = "initrd_system" is-a = "image_type"
sch:param [ name = "attr" value = "initrd_system" ]
- sch:param [ name = "types" value = "oem" ]
+ sch:param [ name = "types" value = "oem pxe" ]
]
k.type.image.attribute =
## Specifies the image type
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/schema/kiwi.rng new/kiwi-9.18.12/kiwi/schema/kiwi.rng
--- old/kiwi-9.18.10/kiwi/schema/kiwi.rng 2019-08-02 14:34:52.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/schema/kiwi.rng 2019-08-14 10:42:35.000000000 +0200
@@ -2238,7 +2238,7 @@
</attribute>
-
+
</define>
<define name="k.type.image.attribute">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/storage/luks_device.py new/kiwi-9.18.12/kiwi/storage/luks_device.py
--- old/kiwi-9.18.10/kiwi/storage/luks_device.py 2019-05-24 11:43:19.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/storage/luks_device.py 2019-08-20 09:47:42.000000000 +0200
@@ -15,10 +15,12 @@
# You should have received a copy of the GNU General Public License
# along with kiwi. If not, see http://www.gnu.org/licenses/
#
+import os
from tempfile import NamedTemporaryFile
# project
from kiwi.command import Command
+from kiwi.defaults import Defaults
from kiwi.storage.device_provider import DeviceProvider
from kiwi.storage.mapped_device import MappedDevice
from kiwi.logger import log
@@ -41,6 +43,7 @@
self.storage_provider = storage_provider
self.luks_device = None
+ self.luks_keyfile = None
self.luks_name = 'luksRoot'
self.option_map = {
@@ -64,7 +67,9 @@
device=self.luks_device, device_provider=self
)
- def create_crypto_luks(self, passphrase, os=None, options=None):
+ def create_crypto_luks(
+ self, passphrase, os=None, options=None, keyfile=None
+ ):
"""
Create luks device. Please note the passphrase is readable
at creation time of this image. Make sure your host system
@@ -75,6 +80,9 @@
distribution name to match distribution specific
options for cryptsetup
:param list options: further cryptsetup options
+ :param string keyfile: file path name
+ file path name which contains an alternative key
+ to unlock the luks device
"""
if not options:
options = []
@@ -113,6 +121,15 @@
'luksFormat', storage_device
]
)
+ if keyfile:
+ self.luks_keyfile = keyfile
+ LuksDevice.create_random_keyfile(keyfile)
+ Command.run(
+ [
+ 'cryptsetup', '--key-file', passphrase_file.name,
+ 'luksAddKey', storage_device, keyfile
+ ]
+ )
Command.run(
[
'cryptsetup', '--key-file', passphrase_file.name,
@@ -129,11 +146,20 @@
"""
storage_device = self.storage_provider.get_device()
with open(filename, 'w') as crypttab:
- crypttab.write(
- 'luks UUID=%s\n' % self.storage_provider.get_uuid(
- storage_device
+ luks_uuid = self.storage_provider.get_uuid(storage_device)
+ if self.luks_keyfile:
+ crypttab.write(
+ 'luks UUID={0} /{1}{2}'.format(
+ luks_uuid, os.path.basename(self.luks_keyfile),
+ os.linesep
+ )
+ )
+ else:
+ crypttab.write(
+ 'luks UUID={0}{1}'.format(
+ luks_uuid, os.linesep
+ )
)
- )
def is_loop(self):
"""
@@ -147,6 +173,16 @@
"""
return self.storage_provider.is_loop()
+ @staticmethod
+ def create_random_keyfile(filename):
+ """
+ Create keyfile with random data
+
+ :param string filename: file path name
+ """
+ with open(filename, 'wb') as keyfile:
+ keyfile.write(os.urandom(Defaults.get_luks_key_length()))
+
def __del__(self):
if self.luks_device:
log.info('Cleaning up %s instance', type(self).__name__)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/storage/setup.py new/kiwi-9.18.12/kiwi/storage/setup.py
--- old/kiwi-9.18.10/kiwi/storage/setup.py 2019-05-24 11:43:19.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/storage/setup.py 2019-08-20 09:47:42.000000000 +0200
@@ -191,8 +191,6 @@
return True
if self.bootloader == 'grub2_s390x_emu':
return True
- if self.luks:
- return True
def get_boot_label(self):
"""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/system/setup.py new/kiwi-9.18.12/kiwi/system/setup.py
--- old/kiwi-9.18.10/kiwi/system/setup.py 2019-07-17 16:53:22.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/system/setup.py 2019-08-16 09:53:16.000000000 +0200
@@ -502,7 +502,7 @@
modprobe_config, target_root_dir + '/etc/'
)
data.sync_data(
- options=['-z', '-a']
+ options=['-a']
)
def export_package_list(self, target_dir):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi/version.py new/kiwi-9.18.12/kiwi/version.py
--- old/kiwi-9.18.10/kiwi/version.py 2019-08-05 09:55:02.000000000 +0200
+++ new/kiwi-9.18.12/kiwi/version.py 2019-08-20 09:48:00.000000000 +0200
@@ -18,5 +18,5 @@
"""
Global version information used in kiwi and the package
"""
-__version__ = '9.18.10'
-__githash__ = '728856aff2b53299bbaaeed6f6a593b73f3642e8'
+__version__ = '9.18.12'
+__githash__ = 'a97ad0e7e1c61f6f5eb8af4fad5fd781cd3f0e75'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/kiwi.egg-info/PKG-INFO new/kiwi-9.18.12/kiwi.egg-info/PKG-INFO
--- old/kiwi-9.18.10/kiwi.egg-info/PKG-INFO 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/kiwi.egg-info/PKG-INFO 2019-08-20 09:49:19.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: kiwi
-Version: 9.18.10
+Version: 9.18.12
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.18.10/kiwi.egg-info/SOURCES.txt new/kiwi-9.18.12/kiwi.egg-info/SOURCES.txt
--- old/kiwi-9.18.10/kiwi.egg-info/SOURCES.txt 2019-08-05 09:57:12.000000000 +0200
+++ new/kiwi-9.18.12/kiwi.egg-info/SOURCES.txt 2019-08-20 09:49:19.000000000 +0200
@@ -1,4 +1,5 @@
.bumpversion.cfg
+.coverage
.travis.yml
.virtualenv.dev-requirements.txt
.virtualenv.requirements.txt
@@ -475,6 +476,11 @@
test/unit/volume_manager_test.py
test/unit/xml_description_test.py
test/unit/xml_state_test.py
+test/unit/kiwi.egg-info/SOURCES.txt
+test/unit/kiwi.egg-info/dependency_links.txt
+test/unit/kiwi.egg-info/entry_points.txt
+test/unit/kiwi.egg-info/requires.txt
+test/unit/kiwi.egg-info/top_level.txt
tools/Makefile
tools/README.md
tools/dcounter.c
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/boot_image_builtin_kiwi_test.py new/kiwi-9.18.12/test/unit/boot_image_builtin_kiwi_test.py
--- old/kiwi-9.18.10/test/unit/boot_image_builtin_kiwi_test.py 2019-05-24 11:43:19.000000000 +0200
+++ new/kiwi-9.18.12/test/unit/boot_image_builtin_kiwi_test.py 2019-08-16 09:53:16.000000000 +0200
@@ -112,7 +112,7 @@
mock_sync.assert_called_once_with(
'boot-root-directory/', 'temp-boot-directory'
)
- data.sync_data.assert_called_once_with(options=['-z', '-a'])
+ data.sync_data.assert_called_once_with(options=['-a'])
mock_cpio.assert_called_once_with(
''.join(
[
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/boot_image_test.py new/kiwi-9.18.12/test/unit/boot_image_test.py
--- old/kiwi-9.18.10/test/unit/boot_image_test.py 2019-05-24 11:43:19.000000000 +0200
+++ new/kiwi-9.18.12/test/unit/boot_image_test.py 2019-08-14 10:42:35.000000000 +0200
@@ -33,5 +33,5 @@
self.xml_state.get_initrd_system.return_value = 'dracut'
BootImage(self.xml_state, 'target_dir', 'root_dir')
mock_dracut.assert_called_once_with(
- self.xml_state, 'target_dir', 'root_dir'
+ self.xml_state, 'target_dir', 'root_dir', None
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/bootloader_config_grub2_test.py new/kiwi-9.18.12/test/unit/bootloader_config_grub2_test.py
--- old/kiwi-9.18.10/test/unit/bootloader_config_grub2_test.py 2019-08-02 14:34:52.000000000 +0200
+++ new/kiwi-9.18.12/test/unit/bootloader_config_grub2_test.py 2019-08-20 09:47:42.000000000 +0200
@@ -95,7 +95,9 @@
return_value=False
)
self.bootloader = BootLoaderConfigGrub2(
- self.state, 'root_dir', None, {'grub_directory_name': 'grub2'}
+ self.state, 'root_dir', None, {
+ 'grub_directory_name': 'grub2', 'boot_is_crypto': True
+ }
)
@patch('platform.machine')
@@ -303,6 +305,7 @@
'/boot/grub2/themes/openSUSE/background.png'
),
call('GRUB_CMDLINE_LINUX_DEFAULT', '"some-cmdline"'),
+ call('GRUB_ENABLE_CRYPTODISK', 'y'),
call(
'GRUB_SERIAL_COMMAND',
'"serial --speed=38400 --unit=0 --word=8 --parity=no --stop=1"'
@@ -552,8 +555,10 @@
'search_label', 'search_fs_file', 'search', 'search_fs_uuid',
'ls', 'normal', 'gzio', 'png', 'fat', 'gettext', 'font',
'minicmd', 'gfxterm', 'gfxmenu', 'all_video', 'xfs',
- 'btrfs', 'lvm', 'test', 'true', 'multiboot', 'part_gpt',
- 'part_msdos', 'efi_gop', 'efi_uga', 'linuxefi'
+ 'btrfs', 'lvm', 'luks', 'gcry_rijndael', 'gcry_sha256',
+ 'gcry_sha512', 'crypto', 'cryptodisk', 'test', 'true',
+ 'multiboot', 'part_gpt', 'part_msdos', 'efi_gop',
+ 'efi_uga', 'linuxefi'
])
]
@@ -598,6 +603,10 @@
)
assert file_mock.write.call_args_list == [
call('set btrfs_relative_path="yes"\n'),
+ call('insmod cryptodisk\n'),
+ call('insmod luks\n'),
+ call('cryptomount -u 0815\n'),
+ call('set root="cryptouuid/0815"\n'),
call('search --fs-uuid --set=root 0815\n'),
call('set prefix=($root)//grub2\n')
]
@@ -616,8 +625,9 @@
'search_label', 'search_fs_file', 'search', 'search_fs_uuid',
'ls', 'normal', 'gzio', 'png', 'fat', 'gettext', 'font',
'minicmd', 'gfxterm', 'gfxmenu', 'all_video', 'xfs',
- 'btrfs', 'lvm', 'test', 'true', 'part_gpt', 'part_msdos',
- 'efi_gop', 'efi_uga', 'linuxefi'
+ 'btrfs', 'lvm', 'luks', 'gcry_rijndael', 'gcry_sha256',
+ 'gcry_sha512', 'crypto', 'cryptodisk', 'test', 'true',
+ 'part_gpt', 'part_msdos', 'efi_gop', 'efi_uga', 'linuxefi'
])
]
assert mock_sync.call_args_list == [
@@ -631,8 +641,8 @@
)
]
assert data.sync_data.call_args_list == [
- call(exclude=['*.module'], options=['-z', '-a']),
- call(exclude=['*.module'], options=['-z', '-a'])
+ call(exclude=['*.module'], options=['-a']),
+ call(exclude=['*.module'], options=['-a'])
]
mock_get_unsigned_grub_loader.return_value = 'custom_grub_image'
@@ -653,6 +663,10 @@
]
assert file_mock.write.call_args_list == [
call('set btrfs_relative_path="yes"\n'),
+ call('insmod cryptodisk\n'),
+ call('insmod luks\n'),
+ call('cryptomount -u 0815\n'),
+ call('set root="cryptouuid/0815"\n'),
call('search --fs-uuid --set=root 0815\n'),
call('set prefix=($root)//grub2\n'),
call('normal\n')
@@ -758,12 +772,12 @@
self.bootloader.setup_disk_boot_images('uuid')
assert mock_command.call_args_list == [
call([
- 'rsync', '-z', '-a', '--exclude', '/*.module',
+ 'rsync', '-a', '--exclude', '/*.module',
'root_dir/usr/share/grub2/i386-pc/',
'root_dir/boot/grub2/i386-pc'
]),
call([
- 'rsync', '-z', '-a', '--exclude', '/*.module',
+ 'rsync', '-a', '--exclude', '/*.module',
'root_dir/usr/share/grub2/x86_64-efi/',
'root_dir/boot/grub2/x86_64-efi']
)]
@@ -804,12 +818,12 @@
self.bootloader.setup_disk_boot_images('uuid')
assert mock_command.call_args_list == [
call([
- 'rsync', '-z', '-a', '--exclude', '/*.module',
+ 'rsync', '-a', '--exclude', '/*.module',
'root_dir/usr/share/grub2/i386-pc/',
'root_dir/boot/grub2/i386-pc'
]),
call([
- 'rsync', '-z', '-a', '--exclude', '/*.module',
+ 'rsync', '-a', '--exclude', '/*.module',
'root_dir/usr/share/grub2/x86_64-efi/',
'root_dir/boot/grub2/x86_64-efi'
]),
@@ -861,12 +875,12 @@
self.bootloader.setup_disk_boot_images('uuid')
assert mock_command.call_args_list == [
call([
- 'rsync', '-z', '-a', '--exclude', '/*.module',
+ 'rsync', '-a', '--exclude', '/*.module',
'root_dir/usr/share/grub2/i386-pc/',
'root_dir/boot/grub2/i386-pc'
]),
call([
- 'rsync', '-z', '-a', '--exclude', '/*.module',
+ 'rsync', '-a', '--exclude', '/*.module',
'root_dir/usr/share/grub2/x86_64-efi/',
'root_dir/boot/grub2/x86_64-efi'
]),
@@ -949,8 +963,10 @@
'search_label', 'search_fs_file', 'search',
'search_fs_uuid', 'ls', 'normal', 'gzio', 'png', 'fat',
'gettext', 'font', 'minicmd', 'gfxterm', 'gfxmenu',
- 'all_video', 'xfs', 'btrfs', 'lvm', 'test', 'true',
- 'part_gpt', 'part_msdos', 'biosdisk', 'vga', 'vbe',
+ 'all_video', 'xfs', 'btrfs', 'lvm', 'luks',
+ 'gcry_rijndael', 'gcry_sha256', 'gcry_sha512',
+ 'crypto', 'cryptodisk', 'test', 'true', 'part_gpt',
+ 'part_msdos', 'biosdisk', 'vga', 'vbe',
'chain', 'boot'
]
),
@@ -972,8 +988,10 @@
'search_label', 'search_fs_file', 'search',
'search_fs_uuid', 'ls', 'normal', 'gzio', 'png', 'fat',
'gettext', 'font', 'minicmd', 'gfxterm', 'gfxmenu',
- 'all_video', 'xfs', 'btrfs', 'lvm', 'test', 'true',
- 'part_gpt', 'part_msdos', 'efi_gop', 'efi_uga', 'linuxefi'
+ 'all_video', 'xfs', 'btrfs', 'lvm', 'luks',
+ 'gcry_rijndael', 'gcry_sha256', 'gcry_sha512',
+ 'crypto', 'cryptodisk', 'test', 'true', 'part_gpt',
+ 'part_msdos', 'efi_gop', 'efi_uga', 'linuxefi'
]
)
]
@@ -988,8 +1006,8 @@
)
]
assert data.sync_data.call_args_list == [
- call(exclude=['*.module'], options=['-z', '-a']),
- call(exclude=['*.module'], options=['-z', '-a'])
+ call(exclude=['*.module'], options=['-a']),
+ call(exclude=['*.module'], options=['-a'])
]
mock_get_unsigned_grub_loader.return_value = 'custom_grub_image'
@@ -1068,7 +1086,7 @@
),
call(
[
- 'rsync', '-z', '-a', '--exclude', '/*.module',
+ 'rsync', '-a', '--exclude', '/*.module',
'root_dir/usr/share/grub2/x86_64-efi/',
'root_dir/boot/grub2/x86_64-efi'
]
@@ -1137,7 +1155,7 @@
'root_dir/boot/grub2/themes'
)
assert data.sync_data.call_args_list[0] == call(
- options=['-z', '-a']
+ options=['-a']
)
@patch('kiwi.bootloader.config.grub2.Command.run')
@@ -1184,7 +1202,7 @@
'root_dir/boot/grub2/themes'
)
assert data.sync_data.call_args_list[0] == call(
- options=['-z', '-a']
+ options=['-a']
)
@patch('kiwi.bootloader.config.grub2.Command.run')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/builder_disk_test.py new/kiwi-9.18.12/test/unit/builder_disk_test.py
--- old/kiwi-9.18.10/test/unit/builder_disk_test.py 2019-06-11 13:46:25.000000000 +0200
+++ new/kiwi-9.18.12/test/unit/builder_disk_test.py 2019-08-20 09:47:42.000000000 +0200
@@ -680,14 +680,17 @@
mock_fs.return_value = filesystem
self.disk_builder.volume_manager_name = None
self.disk_builder.luks = 'passphrase'
+ self.disk_setup.need_boot_partition.return_value = False
+ self.disk_builder.boot_is_crypto = True
self.disk_builder.create_disk()
self.luks_root.create_crypto_luks.assert_called_once_with(
- passphrase='passphrase', os=None
+ passphrase='passphrase', os=None, keyfile='root_dir/.root.keyfile'
)
self.luks_root.create_crypttab.assert_called_once_with(
'root_dir/etc/crypttab'
)
assert self.boot_image_task.include_file.call_args_list == [
+ call('/.root.keyfile'),
call('/config.partids'),
call('/etc/crypttab')
]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/container_setup_base_test.py new/kiwi-9.18.12/test/unit/container_setup_base_test.py
--- old/kiwi-9.18.10/test/unit/container_setup_base_test.py 2019-05-24 11:43:19.000000000 +0200
+++ new/kiwi-9.18.12/test/unit/container_setup_base_test.py 2019-08-16 09:53:16.000000000 +0200
@@ -121,7 +121,7 @@
'/dev/', 'root_dir/dev/'
)
data.sync_data.assert_called_once_with(
- options=['-z', '-a', '-x', '--devices', '--specials']
+ options=['-a', '-x', '--devices', '--specials']
)
@patch('kiwi.container.setup.base.Command.run')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/iso_tools_base_test.py new/kiwi-9.18.12/test/unit/iso_tools_base_test.py
--- old/kiwi-9.18.10/test/unit/iso_tools_base_test.py 2019-07-11 15:25:17.000000000 +0200
+++ new/kiwi-9.18.12/test/unit/iso_tools_base_test.py 2019-08-16 09:53:16.000000000 +0200
@@ -203,5 +203,5 @@
'media_dir/boot/x86_64/loader'
)
data.sync_data.assert_called_once_with(
- options=['-z', '-a']
+ options=['-a']
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/kiwi.egg-info/dependency_links.txt new/kiwi-9.18.12/test/unit/kiwi.egg-info/dependency_links.txt
--- old/kiwi-9.18.10/test/unit/kiwi.egg-info/dependency_links.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/kiwi-9.18.12/test/unit/kiwi.egg-info/dependency_links.txt 2017-11-29 17:13:38.000000000 +0100
@@ -0,0 +1 @@
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/kiwi.egg-info/entry_points.txt new/kiwi-9.18.12/test/unit/kiwi.egg-info/entry_points.txt
--- old/kiwi-9.18.10/test/unit/kiwi.egg-info/entry_points.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/kiwi-9.18.12/test/unit/kiwi.egg-info/entry_points.txt 2017-11-29 17:13:38.000000000 +0100
@@ -0,0 +1,4 @@
+[console_scripts]
+kiwi-ng-3 = kiwi.kiwi:main
+kiwicompat-3 = kiwi.kiwi_compat:main
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/kiwi.egg-info/requires.txt new/kiwi-9.18.12/test/unit/kiwi.egg-info/requires.txt
--- old/kiwi-9.18.10/test/unit/kiwi.egg-info/requires.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/kiwi-9.18.12/test/unit/kiwi.egg-info/requires.txt 2017-11-29 17:13:38.000000000 +0100
@@ -0,0 +1,7 @@
+docopt>=0.6.2
+lxml
+xattr
+future
+six
+requests
+PyYAML
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/kiwi.egg-info/top_level.txt new/kiwi-9.18.12/test/unit/kiwi.egg-info/top_level.txt
--- old/kiwi-9.18.10/test/unit/kiwi.egg-info/top_level.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/kiwi-9.18.12/test/unit/kiwi.egg-info/top_level.txt 2017-11-29 17:13:38.000000000 +0100
@@ -0,0 +1 @@
+kiwi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/storage_luks_device_test.py new/kiwi-9.18.12/test/unit/storage_luks_device_test.py
--- old/kiwi-9.18.10/test/unit/storage_luks_device_test.py 2018-11-06 10:13:35.000000000 +0100
+++ new/kiwi-9.18.12/test/unit/storage_luks_device_test.py 2019-08-20 09:47:42.000000000 +0200
@@ -1,8 +1,8 @@
-from mock import patch
-from mock import call
-import mock
-
-from .test_helper import raises, patch_open
+import io
+from mock import (
+ patch, call, MagicMock, Mock
+)
+from pytest import raises
from kiwi.exceptions import KiwiLuksSetupError
from kiwi.storage.luks_device import LuksDevice
@@ -10,28 +10,28 @@
class TestLuksDevice(object):
def setup(self):
- storage_device = mock.Mock()
- storage_device.get_byte_size = mock.Mock(
+ storage_device = Mock()
+ storage_device.get_byte_size = Mock(
return_value=1048576
)
- storage_device.get_uuid = mock.Mock(
+ storage_device.get_uuid = Mock(
return_value='0815'
)
- storage_device.get_device = mock.Mock(
+ storage_device.get_device = Mock(
return_value='/dev/some-device'
)
- storage_device.is_loop = mock.Mock(
+ storage_device.is_loop = Mock(
return_value=True
)
self.luks = LuksDevice(storage_device)
- @raises(KiwiLuksSetupError)
def test_create_crypto_luks_empty_passphrase(self):
- self.luks.create_crypto_luks('')
+ with raises(KiwiLuksSetupError):
+ self.luks.create_crypto_luks('')
- @raises(KiwiLuksSetupError)
def test_create_crypto_luks_unsupported_os_options(self):
- self.luks.create_crypto_luks('passphrase', 'some-os')
+ with raises(KiwiLuksSetupError):
+ self.luks.create_crypto_luks('passphrase', 'some-os')
@patch('os.path.exists')
def test_get_device(self, mock_path):
@@ -42,44 +42,74 @@
@patch('kiwi.storage.luks_device.Command.run')
@patch('kiwi.storage.luks_device.NamedTemporaryFile')
- @patch_open
- def test_create_crypto_luks(self, mock_open, mock_tmpfile, mock_command):
- tmpfile = mock.Mock()
+ def test_create_crypto_luks(self, mock_tmpfile, mock_command):
+ tmpfile = Mock()
tmpfile.name = 'tmpfile'
mock_tmpfile.return_value = tmpfile
- self.luks.create_crypto_luks('passphrase', 'sle12')
- assert mock_command.call_args_list == [
- call([
- 'dd', 'if=/dev/urandom', 'bs=1M', 'count=1',
- 'of=/dev/some-device'
- ]),
- call([
- 'cryptsetup', '-q', '--key-file', 'tmpfile',
- '--cipher', 'aes-xts-plain64',
- '--key-size', '256', '--hash', 'sha1',
- 'luksFormat', '/dev/some-device'
- ]),
- call([
- 'cryptsetup', '--key-file', 'tmpfile', 'luksOpen',
- '/dev/some-device', 'luksRoot'
- ])
- ]
- self.luks.luks_device = None
+ with patch('builtins.open', create=True):
+ self.luks.create_crypto_luks(
+ passphrase='passphrase', os='sle12', keyfile='some-keyfile'
+ )
+ assert mock_command.call_args_list == [
+ call(
+ [
+ 'dd', 'if=/dev/urandom', 'bs=1M', 'count=1',
+ 'of=/dev/some-device'
+ ]
+ ),
+ call(
+ [
+ 'cryptsetup', '-q', '--key-file', 'tmpfile',
+ '--cipher', 'aes-xts-plain64',
+ '--key-size', '256', '--hash', 'sha1',
+ 'luksFormat', '/dev/some-device'
+ ]
+ ),
+ call(
+ [
+ 'cryptsetup', '--key-file', 'tmpfile', 'luksAddKey',
+ '/dev/some-device', 'some-keyfile'
+ ]
+ ),
+ call(
+ [
+ 'cryptsetup', '--key-file', 'tmpfile', 'luksOpen',
+ '/dev/some-device', 'luksRoot'
+ ]
+ )
+ ]
+ self.luks.luks_device = None
- @patch_open
- def test_create_crypttab(self, mock_open):
+ def test_create_crypttab(self):
self.luks.luks_device = '/dev/mapper/luksRoot'
- context_manager_mock = mock.Mock()
- mock_open.return_value = context_manager_mock
- file_mock = mock.Mock()
- enter_mock = mock.Mock()
- exit_mock = mock.Mock()
- enter_mock.return_value = file_mock
- setattr(context_manager_mock, '__enter__', enter_mock)
- setattr(context_manager_mock, '__exit__', exit_mock)
- self.luks.create_crypttab('crypttab')
- file_mock.write.assert_called_once_with('luks UUID=0815\n')
- self.luks.luks_device = None
+ self.luks.luks_keyfile = None
+ with patch('builtins.open', create=True) as mock_open:
+ mock_open.return_value = MagicMock(spec=io.IOBase)
+ file_handle = mock_open.return_value.__enter__.return_value
+ self.luks.create_crypttab('crypttab')
+ file_handle.write.assert_called_once_with(
+ 'luks UUID=0815\n'
+ )
+ self.luks.luks_device = None
+ self.luks.luks_keyfile = 'some-keyfile'
+ with patch('builtins.open', create=True) as mock_open:
+ mock_open.return_value = MagicMock(spec=io.IOBase)
+ file_handle = mock_open.return_value.__enter__.return_value
+ self.luks.create_crypttab('crypttab')
+ file_handle.write.assert_called_once_with(
+ 'luks UUID=0815 /some-keyfile\n'
+ )
+ self.luks.luks_device = None
+
+ @patch('os.urandom')
+ def test_create_random_keyfile(self, mock_os_urandom):
+ secret = b'secret'
+ mock_os_urandom.return_value = secret
+ with patch('builtins.open', create=True) as mock_open:
+ mock_open.return_value = MagicMock(spec=io.IOBase)
+ file_handle = mock_open.return_value.__enter__.return_value
+ LuksDevice.create_random_keyfile('some-file')
+ file_handle.write.assert_called_once_with(secret)
def test_is_loop(self):
assert self.luks.is_loop() is True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/storage_setup_test.py new/kiwi-9.18.12/test/unit/storage_setup_test.py
--- old/kiwi-9.18.10/test/unit/storage_setup_test.py 2019-05-24 11:43:19.000000000 +0200
+++ new/kiwi-9.18.12/test/unit/storage_setup_test.py 2019-08-20 09:47:42.000000000 +0200
@@ -88,11 +88,6 @@
self.setup.mdraid = True
assert self.setup.need_boot_partition() is True
- def test_need_boot_partition_luks(self):
- self._init_bootpart_check()
- self.setup.luks = True
- assert self.setup.need_boot_partition() is True
-
def test_need_boot_partition_lvm(self):
self._init_bootpart_check()
self.setup.volume_manager = 'lvm'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi-9.18.10/test/unit/system_setup_test.py new/kiwi-9.18.12/test/unit/system_setup_test.py
--- old/kiwi-9.18.10/test/unit/system_setup_test.py 2019-07-17 16:53:22.000000000 +0200
+++ new/kiwi-9.18.12/test/unit/system_setup_test.py 2019-08-16 09:53:16.000000000 +0200
@@ -803,7 +803,7 @@
'root_dir/etc/modprobe.d', 'target_root_dir/etc/'
)
data.sync_data.assert_called_once_with(
- options=['-z', '-a']
+ options=['-a']
)
@patch('kiwi.system.setup.Command.run')