See https://ci.suse.de/job/yast-bootloader-master/320/display/redirect?page=chan... Changes: [jreidinger] improve readme and add overview about module backend part [noreply] Grammar [jreidinger] add missing classes and make svg clickable [jreidinger] add note about clickable svg ------------------------------------------ [...truncated 115.58 KB...] yast2-bootloader-4.1.0/test/data/language yast2-bootloader-4.1.0/test/data/logical.yaml yast2-bootloader-4.1.0/test/data/lvm_whole_disk.yaml yast2-bootloader-4.1.0/test/data/md_raid.xml yast2-bootloader-4.1.0/test/data/msdos_and_gpt.yaml yast2-bootloader-4.1.0/test/data/multipath.xml yast2-bootloader-4.1.0/test/data/nfs_root.xml yast2-bootloader-4.1.0/test/data/prep_partitions.yaml yast2-bootloader-4.1.0/test/data/separate_boot.yaml yast2-bootloader-4.1.0/test/data/storage_lvm.yaml yast2-bootloader-4.1.0/test/data/trivial.yaml yast2-bootloader-4.1.0/test/data/trivial_dos.yaml yast2-bootloader-4.1.0/test/data/two_disks.yaml yast2-bootloader-4.1.0/test/data/two_disks_msdos.yaml yast2-bootloader-4.1.0/test/data/xfs.yaml yast2-bootloader-4.1.0/test/device_map_dialog_test.rb yast2-bootloader-4.1.0/test/device_map_test.rb yast2-bootloader-4.1.0/test/generic_widgets_test.rb yast2-bootloader-4.1.0/test/grub2_efi_test.rb yast2-bootloader-4.1.0/test/grub2_test.rb yast2-bootloader-4.1.0/test/grub2_widgets_test.rb yast2-bootloader-4.1.0/test/grub2base_test.rb yast2-bootloader-4.1.0/test/grub2pwd_test.rb yast2-bootloader-4.1.0/test/grub_install_test.rb yast2-bootloader-4.1.0/test/kexec_test.rb yast2-bootloader-4.1.0/test/language_test.rb yast2-bootloader-4.1.0/test/main_dialog_test.rb yast2-bootloader-4.1.0/test/mbr_update_test.rb yast2-bootloader-4.1.0/test/none_bootloader_test.rb yast2-bootloader-4.1.0/test/sections_test.rb yast2-bootloader-4.1.0/test/serial_console_test.rb yast2-bootloader-4.1.0/test/stage1_test.rb yast2-bootloader-4.1.0/test/sysconfig_test.rb yast2-bootloader-4.1.0/test/test_helper.rb yast2-bootloader-4.1.0/test/udev_mapping_test.rb tar xvf https://ci.suse.de/job/yast-bootloader-master/ws/Devel:YaST:Head/yast2-bootloader/yast2-bootloader-4.1.0.tar.bz2 -C /tmp/unpacked_tarball20180531-31965-1wbty4a yast2-bootloader-4.1.0/.coveralls.yml yast2-bootloader-4.1.0/.rubocop.yml yast2-bootloader-4.1.0/.travis.yml yast2-bootloader-4.1.0/.yardopts yast2-bootloader-4.1.0/CONTRIBUTING.md yast2-bootloader-4.1.0/COPYING yast2-bootloader-4.1.0/Dockerfile yast2-bootloader-4.1.0/MAINTAINER yast2-bootloader-4.1.0/README.md yast2-bootloader-4.1.0/RPMNAME yast2-bootloader-4.1.0/Rakefile yast2-bootloader-4.1.0/SUPPORTED_SCENARIOS.md yast2-bootloader-4.1.0/doc/boot_storage_needed_info.md yast2-bootloader-4.1.0/package/yast2-bootloader.changes yast2-bootloader-4.1.0/package/yast2-bootloader.spec yast2-bootloader-4.1.0/src/autoyast-rnc/bootloader.rnc yast2-bootloader-4.1.0/src/bin/update_gfxmenu yast2-bootloader-4.1.0/src/clients/bootloader.rb yast2-bootloader-4.1.0/src/clients/bootloader_auto.rb yast2-bootloader-4.1.0/src/clients/bootloader_finish.rb yast2-bootloader-4.1.0/src/clients/bootloader_proposal.rb yast2-bootloader-4.1.0/src/clients/inst_bootloader.rb yast2-bootloader-4.1.0/src/desktop/bootloader.desktop yast2-bootloader-4.1.0/src/fillup/sysconfig.bootloader.default yast2-bootloader-4.1.0/src/fillup/sysconfig.bootloader.i386 yast2-bootloader-4.1.0/src/lib/bootloader/auto_client.rb yast2-bootloader-4.1.0/src/lib/bootloader/autoyast_converter.rb yast2-bootloader-4.1.0/src/lib/bootloader/boot_record_backup.rb yast2-bootloader-4.1.0/src/lib/bootloader/bootloader_base.rb yast2-bootloader-4.1.0/src/lib/bootloader/bootloader_factory.rb yast2-bootloader-4.1.0/src/lib/bootloader/config_dialog.rb yast2-bootloader-4.1.0/src/lib/bootloader/device_map.rb yast2-bootloader-4.1.0/src/lib/bootloader/device_map_dialog.rb yast2-bootloader-4.1.0/src/lib/bootloader/exceptions.rb yast2-bootloader-4.1.0/src/lib/bootloader/finish_client.rb yast2-bootloader-4.1.0/src/lib/bootloader/generic_widgets.rb yast2-bootloader-4.1.0/src/lib/bootloader/grub2.rb yast2-bootloader-4.1.0/src/lib/bootloader/grub2_widgets.rb yast2-bootloader-4.1.0/src/lib/bootloader/grub2base.rb yast2-bootloader-4.1.0/src/lib/bootloader/grub2efi.rb yast2-bootloader-4.1.0/src/lib/bootloader/grub2pwd.rb yast2-bootloader-4.1.0/src/lib/bootloader/grub_install.rb yast2-bootloader-4.1.0/src/lib/bootloader/kexec.rb yast2-bootloader-4.1.0/src/lib/bootloader/language.rb yast2-bootloader-4.1.0/src/lib/bootloader/main_dialog.rb yast2-bootloader-4.1.0/src/lib/bootloader/mbr_update.rb yast2-bootloader-4.1.0/src/lib/bootloader/none_bootloader.rb yast2-bootloader-4.1.0/src/lib/bootloader/proposal_client.rb yast2-bootloader-4.1.0/src/lib/bootloader/read_dialog.rb yast2-bootloader-4.1.0/src/lib/bootloader/sections.rb yast2-bootloader-4.1.0/src/lib/bootloader/serial_console.rb yast2-bootloader-4.1.0/src/lib/bootloader/stage1.rb yast2-bootloader-4.1.0/src/lib/bootloader/stage1_proposal.rb yast2-bootloader-4.1.0/src/lib/bootloader/sysconfig.rb yast2-bootloader-4.1.0/src/lib/bootloader/udev_mapping.rb yast2-bootloader-4.1.0/src/lib/bootloader/write_dialog.rb yast2-bootloader-4.1.0/src/modules/BootArch.rb yast2-bootloader-4.1.0/src/modules/BootStorage.rb yast2-bootloader-4.1.0/src/modules/BootSupportCheck.rb yast2-bootloader-4.1.0/src/modules/Bootloader.rb yast2-bootloader-4.1.0/src/scrconf/cfg_bootloader.scr yast2-bootloader-4.1.0/test/autoyast_converter_test.rb yast2-bootloader-4.1.0/test/boot_arch_test.rb yast2-bootloader-4.1.0/test/boot_record_backup_test.rb yast2-bootloader-4.1.0/test/boot_storage_test.rb yast2-bootloader-4.1.0/test/boot_support_test.rb yast2-bootloader-4.1.0/test/bootloader_base_test.rb yast2-bootloader-4.1.0/test/bootloader_factory_test.rb yast2-bootloader-4.1.0/test/bootloader_finish_client_test.rb yast2-bootloader-4.1.0/test/bootloader_proposal_client_test.rb yast2-bootloader-4.1.0/test/bootloader_test.rb yast2-bootloader-4.1.0/test/data/complex-lvm-encrypt.yaml yast2-bootloader-4.1.0/test/data/grub.cfg yast2-bootloader-4.1.0/test/data/intel_rst.xml yast2-bootloader-4.1.0/test/data/language yast2-bootloader-4.1.0/test/data/logical.yaml yast2-bootloader-4.1.0/test/data/lvm_whole_disk.yaml yast2-bootloader-4.1.0/test/data/md_raid.xml yast2-bootloader-4.1.0/test/data/msdos_and_gpt.yaml yast2-bootloader-4.1.0/test/data/multipath.xml yast2-bootloader-4.1.0/test/data/nfs_root.xml yast2-bootloader-4.1.0/test/data/prep_partitions.yaml yast2-bootloader-4.1.0/test/data/separate_boot.yaml yast2-bootloader-4.1.0/test/data/storage_lvm.yaml yast2-bootloader-4.1.0/test/data/trivial.yaml yast2-bootloader-4.1.0/test/data/trivial_dos.yaml yast2-bootloader-4.1.0/test/data/two_disks.yaml yast2-bootloader-4.1.0/test/data/two_disks_msdos.yaml yast2-bootloader-4.1.0/test/data/xfs.yaml yast2-bootloader-4.1.0/test/device_map_dialog_test.rb yast2-bootloader-4.1.0/test/device_map_test.rb yast2-bootloader-4.1.0/test/generic_widgets_test.rb yast2-bootloader-4.1.0/test/grub2_efi_test.rb yast2-bootloader-4.1.0/test/grub2_test.rb yast2-bootloader-4.1.0/test/grub2_widgets_test.rb yast2-bootloader-4.1.0/test/grub2base_test.rb yast2-bootloader-4.1.0/test/grub2pwd_test.rb yast2-bootloader-4.1.0/test/grub_install_test.rb yast2-bootloader-4.1.0/test/kexec_test.rb yast2-bootloader-4.1.0/test/language_test.rb yast2-bootloader-4.1.0/test/main_dialog_test.rb yast2-bootloader-4.1.0/test/mbr_update_test.rb yast2-bootloader-4.1.0/test/none_bootloader_test.rb yast2-bootloader-4.1.0/test/sections_test.rb yast2-bootloader-4.1.0/test/serial_console_test.rb yast2-bootloader-4.1.0/test/stage1_test.rb yast2-bootloader-4.1.0/test/sysconfig_test.rb yast2-bootloader-4.1.0/test/test_helper.rb yast2-bootloader-4.1.0/test/udev_mapping_test.rb rm https://ci.suse.de/job/yast-bootloader-master/ws/Devel:YaST:Head/yast2-bootloader/yast2-bootloader.spec rm https://ci.suse.de/job/yast-bootloader-master/ws/Devel:YaST:Head/yast2-bootloader/yast2-bootloader.changes rm https://ci.suse.de/job/yast-bootloader-master/ws/Devel:YaST:Head/yast2-bootloader/yast2-bootloader-4.1.0.tar.bz2 cp package/yast2-bootloader.spec https://ci.suse.de/job/yast-bootloader-master/ws/Devel:YaST:Head/yast2-bootloader cp package/yast2-bootloader.changes https://ci.suse.de/job/yast-bootloader-master/ws/Devel:YaST:Head/yast2-bootloader cp package/yast2-bootloader-4.1.0.tar.bz2 https://ci.suse.de/job/yast-bootloader-master/ws/Devel:YaST:Head/yast2-bootloader osc -A 'https://api.suse.de/' addremove diff -ur /tmp/unpacked_tarball20180531-31965-sc7um5/yast2-bootloader-4.1.0/README.md /tmp/unpacked_tarball20180531-31965-1wbty4a/yast2-bootloader-4.1.0/README.md --- /tmp/unpacked_tarball20180531-31965-sc7um5/yast2-bootloader-4.1.0/README.md 2018-05-31 07:58:37.000000000 +0000 +++ /tmp/unpacked_tarball20180531-31965-1wbty4a/yast2-bootloader-4.1.0/README.md 2018-05-30 09:24:17.000000000 +0000 @@ -5,45 +5,4 @@ [![Coverage Status](https://img.shields.io/coveralls/yast/yast-bootloader.svg)](https://coveralls.io/r/yast/yast-bootloader?branch=master) [![inline docs](http://inch-ci.org/github/yast/yast-bootloader.svg?branch=master)](http://inch-ci.org/github/yast/yast-bootloader) -## Goal - -This module has two main responsibilities: - -1. Proposing a bootable configuration so even beginners who've never heard about - booting can get a bootable distribution out of the box without any interaction. - -2. Letting advanced users who already know what they want to achieve - to edit an existing configuration or a proposal. - Check our list of [supported scenarios.](SUPPORTED_SCENARIOS.md) - -## Development - -### High Level Overview - -The bootloader module consists of two more or less separated components. -The **UI** including dialogs, widgets and similar, and -the **backend** that is responsible for reading, writing, proposing. - -### Backend - -![overview picture](doc/bootloader_backend.svg) - -To get to the clickable links in the image, right-click the diagram and choose "Display Image" (Firefox) or "Open Image in New Tab" (Chromium). - -The entry point to the backend is the [bootloader factory](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/Bootl...), -that holds and also can propose the bootloader implementation. So now let's explain each component of the picture: - -- [GRUB2](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/Grub2) for legacy booting or emulated grub2 boot like s390x. -- [GRUB2-EFI](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/Grub2...) for EFI variant of GRUB2 bootloader -- [None](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/NoneB...) when YaST does not manage booting -- [GRUB2 base](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/Grub2...) is the shared functionality for both GRUB2 implementations -- [GRUB password](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/GRUB2...) is a specific class that manages password protection of grub2 -- [Sections](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/Secti...) is a component responsible for getting info about generated grub2 sections and what the default section for booting is -- [GRUB2 install](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/GrubI...) is responsible for calling the `grub2-install` script with correct arguments. For legacy booting it gets target stage1 devices. -- [Device Map](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/Devic...) is a component responsible for managing the mapping between grub device names and kernel/udev names. -- [Stage1](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/Stage...) holds information about stage1 location for grub2, also whether a generic MBR is needed and whether a partition should be activated. -- [MBR Update](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/MBRUp...) is responsible for generic MBR and stage1 if needed -- [Boot Record backup](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/BootR...) creates a backup of boot record for devices which the code touched -- [Serial Console](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/Seria...) converts between grub2 serial console configuration and kernel serial console configuration -- [Sysconfig](https://www.rubydoc.info/github/yast/yast-bootloader/master/Bootloader/Sysco...) read/write sysconfig configuration for bootloader. Sysconfig basically holds currently used grub2 implementation and configuration that is not in grub2 itself like if use secure boot or trusted grub Only in /tmp/unpacked_tarball20180531-31965-sc7um5/yast2-bootloader-4.1.0/doc: bootloader_backend.svg submitting package... osc -A https://api.suse.de/ commit -m Updated to git ref da10e5c Sending yast2-bootloader-4.1.0.tar.bz2 Transmitting file data . Committed revision 343. rm -rf Devel:YaST:Head osc -A 'https://api.suse.de/' --traceback --verbose checkout 'Devel:YaST:Head' yast2-bootloader New package submitted to Devel:YaST:Head cleaning makeurl: https://api.suse.de ['source', 'Devel%3AYaST%3AHead', 'yast2-bootloader', '_meta'] {} makeurl: https://api.suse.de ['source', 'Devel:YaST:Head', 'yast2-bootloader'] {'rev': 'latest'} A Devel:YaST:Head makeurl: https://api.suse.de ['source', 'Devel:YaST:Head'] {} A Devel:YaST:Head/yast2-bootloader makeurl: https://api.suse.de ['source', 'Devel:YaST:Head'] {} makeurl: https://api.suse.de ['source', 'Devel:YaST:Head', 'yast2-bootloader'] {'rev': 'latest'} makeurl: https://api.suse.de ['source', 'Devel:YaST:Head', 'yast2-bootloader', 'yast2-bootloader-4.1.0.tar.bz2'] {'rev': '343'} A Devel:YaST:Head/yast2-bootloader/yast2-bootloader-4.1.0.tar.bz2 makeurl: https://api.suse.de ['source', 'Devel:YaST:Head', 'yast2-bootloader', 'yast2-bootloader.changes'] {'rev': '343'} A Devel:YaST:Head/yast2-bootloader/yast2-bootloader.changes makeurl: https://api.suse.de ['source', 'Devel:YaST:Head', 'yast2-bootloader', 'yast2-bootloader.spec'] {'rev': '343'} A Devel:YaST:Head/yast2-bootloader/yast2-bootloader.spec makeurl: https://api.suse.de ['source', 'Devel:YaST:Head', 'yast2-bootloader', '_meta'] {} At revision 343. osc -A 'https://api.suse.de/' cat 'nil' 'yast2-bootloader' 'yast2-bootloader.spec' > /tmp/yast-rake20180531-31965-zqkl07 Server returned an error: HTTP Error 404: Not Found nil osc -A https://api.suse.de/ service wait Devel:YaST:Head yast2-bootloader Version cannot be compared, so act like it is different Waiting for the server side service... ok yes | osc -A 'https://api.suse.de/' submitreq --no-cleanup 'Devel:YaST:Head' 'yast2-bootloader' 'nil' -m 'submit new version 4.1.0' --yes Warning: failed to fetch meta data for 'nil' package 'yast2-bootloader' (new package?) Server returned an error: HTTP Error 404: Not Found nil rm -rf Devel:YaST:Head rake aborted! Command failed with status (1): [yes | osc -A 'https://api.suse.de/' submit...] Tasks: TOP => osc:sr (See full trace by running task with --trace) cleaning Build step 'Execute shell' marked build as failure Not sending mail to unregistered user jreidinger@suse.cz Not sending mail to unregistered user igonzalezsosa@suse.com Not sending mail to unregistered user teclator@gmail.com Not sending mail to unregistered user noreply@github.com