Hello community, here is the log from the commit of package kiwi for openSUSE:Factory checked in at 2014-07-13 17:16:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kiwi (Old) and /work/SRC/openSUSE:Factory/.kiwi.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kiwi" Changes: -------- --- /work/SRC/openSUSE:Factory/kiwi/kiwi.changes 2014-07-01 07:05:27.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.kiwi.new/kiwi.changes 2014-07-13 17:16:37.000000000 +0200 @@ -1,0 +2,215 @@ +Mon Jul 7 16:49:52 CEST 2014 - m...@suse.de + +- v5.06.127 released + +------------------------------------------------------------------- +Mon Jul 7 16:38:34 CEST 2014 - m...@suse.de + +- Make sure squashfs module is loaded in any case + Depending on the install method udev does not auto load + the squashfs module if there is a cascade of loop devices + to the target file. This happens if e.g the install iso + is used as a disk in hybrid mode + +------------------------------------------------------------------- +Mon Jul 7 16:19:28 CEST 2014 - m...@suse.de + +- v5.06.126 released + +------------------------------------------------------------------- +Mon Jul 7 15:24:34 CEST 2014 - m...@suse.de + +- DB: rebuild documentation + +------------------------------------------------------------------- +Mon Jul 7 15:24:05 CEST 2014 - m...@suse.de + +- DB: update documentation + + Added information about handleSplash hook + +------------------------------------------------------------------- +Mon Jul 7 15:17:28 CEST 2014 - m...@suse.de + +- Prevent initrd code to break console setup + Many people using more than one active console stumbled over + the problem that messages gets lost while the system is booting + the first time with the kiwi initrd. The following changes + fixes this: + + * Setting up console by using udev's console_init + * Added handleSplash hook at the end of the hideSplash function + and let kiwi only disable the splash if there is one active + console + * There is not much value using klogconsole to set the kernel + default loglevel. Delete this code and the no longer needed + klogconsole tool from the kiwi initrd + +------------------------------------------------------------------- +Mon Jul 7 09:42:49 CEST 2014 - m...@suse.de + +- Don't use video_ grub2 modules + + video_bochs and video_cirrus were removed from grub2 + +------------------------------------------------------------------- +Mon Jul 7 09:30:34 CEST 2014 - m...@suse.de + +- Deleted ifplugd from SLE12 JeOS template + + ifplugd does not exist in main SLE12 repo + +------------------------------------------------------------------- +Fri Jul 4 14:04:51 CEST 2014 - m...@suse.de + +- v5.06.125 released + +------------------------------------------------------------------- +Fri Jul 4 13:58:14 CEST 2014 - m...@suse.de + +- Enhance installation procedure for legacy grub loader + If a system root tree is present we install the loader from + within the system root tree via chroot. This is to allow use + of legacy grub on host systems which dropped grub + +------------------------------------------------------------------- +Thu Jul 3 15:57:37 CEST 2014 - m...@suse.de + +- v5.06.124 released + +------------------------------------------------------------------- +Thu Jul 3 12:14:52 CEST 2014 - m...@suse.de + +- travis setup up and running, removed prophet scripts and data + +------------------------------------------------------------------- +Thu Jul 3 12:07:41 CEST 2014 - m...@suse.de + +- Fixed kiwiRuntimeChecker unit test + + the case without zypper installed is not an error. Thus the + return message is of type info not error + +------------------------------------------------------------------- +Thu Jul 3 11:55:48 CEST 2014 - m...@suse.de + +- Update travis setup + + we need syslinux for the tests + +------------------------------------------------------------------- +Thu Jul 3 11:42:26 CEST 2014 - m...@suse.de + +- Update travis setup + + we need xsltproc for the tests + +------------------------------------------------------------------- +Thu Jul 3 11:32:35 CEST 2014 - m...@suse.de + +- Fixed running tests in travis + + changed kiwiLocator test to check for bash instead of perl + because in travis perl is relinked to perlbrew + + call prove with perl prove in order to make sure the perlbrew + linked interpreter is called including all module INC paths + +------------------------------------------------------------------- +Wed Jul 2 16:51:09 CEST 2014 - m...@suse.de + +- Update perl module list + + remove modules required by modules that's auto resolved + +------------------------------------------------------------------- +Wed Jul 2 16:36:53 CEST 2014 - m...@suse.de + +- Update module include path for prove calls + +------------------------------------------------------------------- +Wed Jul 2 16:00:24 CEST 2014 - m...@suse.de + +- Update travis script + + force install of modules with cpanm + +------------------------------------------------------------------- +Wed Jul 2 15:50:28 CEST 2014 - m...@suse.de + +- Update travis script + + add more information about installed prerequiremets + +------------------------------------------------------------------- +Wed Jul 2 15:43:57 CEST 2014 - m...@suse.de + +- Update .perlmodules list for travis + + List::MoreUtils was missing + +------------------------------------------------------------------- +Wed Jul 2 15:37:16 CEST 2014 - m...@suse.de + +- Update travis script + + make sure all required perl modules are fetched + +------------------------------------------------------------------- +Wed Jul 2 15:24:54 CEST 2014 - m...@suse.de + +- Fixed perl include path for calling tests in travis + +------------------------------------------------------------------- +Wed Jul 2 15:16:35 CEST 2014 - m...@suse.de + +- Update travis script + + install perl modules as system modules + +------------------------------------------------------------------- +Wed Jul 2 15:04:19 CEST 2014 - m...@suse.de + +- Fixed perl include path for calling tests in travis + +------------------------------------------------------------------- +Wed Jul 2 14:58:26 CEST 2014 - adr...@suse.de + +- avoid listing packages twice if target destination is the same. + + eg. noarch on multi-arch medias + +------------------------------------------------------------------- +Wed Jul 2 14:14:33 CEST 2014 - m...@suse.de + +- Provide additional module include path for travis + It looks like the install routine in travis installs in /home/travis + thus we need to use this path as additional include path in prove + +------------------------------------------------------------------- +Wed Jul 2 13:43:19 CEST 2014 - m...@suse.de + +- Update travis script + + don't stick to a specific perl version + +------------------------------------------------------------------- +Wed Jul 2 13:36:35 CEST 2014 - m...@suse.de + +- Make sure unit test cleanup scripts runs using bash + +------------------------------------------------------------------- +Wed Jul 2 13:32:01 CEST 2014 - m...@suse.de + +- Update travis script + + require Test::Unit::Lite in install section + +------------------------------------------------------------------- +Wed Jul 2 13:15:32 CEST 2014 - m...@suse.de + +- Rename markdown files to use the .md extension + +------------------------------------------------------------------- ++++ 18 more lines (skipped) ++++ between /work/SRC/openSUSE:Factory/kiwi/kiwi.changes ++++ and /work/SRC/openSUSE:Factory/.kiwi.new/kiwi.changes ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kiwi.spec ++++++ --- /var/tmp/diff_new_pack.tefI59/_old 2014-07-13 17:16:39.000000000 +0200 +++ /var/tmp/diff_new_pack.tefI59/_new 2014-07-13 17:16:39.000000000 +0200 @@ -26,7 +26,7 @@ Group: System/Management Url: http://github.com/openSUSE/kiwi Name: kiwi -Version: 5.06.123 +Version: 5.06.127 Release: 0 Provides: kiwi-schema = 6.1 # requirements to build packages ++++++ kiwi-docu.tar.bz2 ++++++ /work/SRC/openSUSE:Factory/kiwi/kiwi-docu.tar.bz2 /work/SRC/openSUSE:Factory/.kiwi.new/kiwi-docu.tar.bz2 differ: char 11, line 1 ++++++ kiwi-repo.tar.bz2 ++++++ ++++++ kiwi.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/.perlmodules new/kiwi/.perlmodules --- old/kiwi/.perlmodules 1970-01-01 01:00:00.000000000 +0100 +++ new/kiwi/.perlmodules 2014-07-03 15:58:16.000000000 +0200 @@ -0,0 +1,11 @@ +Test::Unit::Lite +Class::Singleton +Config::IniFiles +Digest::SHA1 +File::Slurp +JSON +Readonly +XML::LibXML +XML::LibXML::Common +XML::SAX +LWP diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/.prophet new/kiwi/.prophet --- old/kiwi/.prophet 2014-06-30 18:39:07.000000000 +0200 +++ new/kiwi/.prophet 1970-01-01 01:00:00.000000000 +0100 @@ -1,24 +0,0 @@ -#!/usr/bin/env ruby - -require 'prophet' - -Prophet.setup do |config| - # Setup custom logger. - config.logger = log = Logger.new(STDOUT) - log.level = Logger::INFO - - # Specify which code to run. - config.execution do - log.info 'Running tests ...' - test_results = system "make test" - config.success = ($? == 0) - if config.success - log.info 'All tests are passing.' - else - log.info 'Some tests are failing.' - log.info test_results.inspect - end - end -end - -Prophet.run diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/.prophet.readme new/kiwi/.prophet.readme --- old/kiwi/.prophet.readme 2014-06-30 18:39:07.000000000 +0200 +++ new/kiwi/.prophet.readme 1970-01-01 01:00:00.000000000 +0100 @@ -1,21 +0,0 @@ -Prophet setup (1.5.5) -===================== - -- This version required some gem version lock downs to work - - gem install octokit --version 1.25.0 - gem uninstall faraday - gem install faraday --version 0.8.8 - gem uninstall faraday_middleware - gem install faraday_middleware --version 0.9.0 - gem install prophet - -- In addition prophet cannot deal with https git urls in - Thus you have to make sure to use the following url - format in the .git/config file - - url = g...@github.com:project/project.git - -- In order to run the prophet script automatically you can - either call it from a cronjob or even better let a jenkins - test call it diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/.revision new/kiwi/.revision --- old/kiwi/.revision 2014-06-17 13:29:42.000000000 +0200 +++ new/kiwi/.revision 2014-06-17 13:29:42.000000000 +0200 @@ -1 +1 @@ -ae47f9f42b779aaaf214b430ec4f1a7f5eca4ea4 +b6b86f1039dbbf17cd644ca396c96378427124ed diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/.travis.yml new/kiwi/.travis.yml --- old/kiwi/.travis.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/kiwi/.travis.yml 2014-07-03 15:58:16.000000000 +0200 @@ -0,0 +1,8 @@ +language: perl +before_install: + - sudo apt-get update -qq + - sudo apt-get install -y xsltproc + - sudo apt-get install -y syslinux +install: + - cpanm -f -n $(cat .perlmodules | tr "\n" " ") +script: make test diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/Makefile new/kiwi/Makefile --- old/kiwi/Makefile 2014-05-27 14:49:56.000000000 +0200 +++ new/kiwi/Makefile 2014-07-03 15:58:16.000000000 +0200 @@ -217,7 +217,8 @@ touch tests/.timestamps/$$i's';\ done cd tests/unit && \ - ${NONETWORKTEST} ${KIWINOFSTEST} /usr/bin/prove ${TESTVERBOSE} . + ${NONETWORKTEST} ${KIWINOFSTEST} perl /usr/bin/prove \ + ${TESTVERBOSE} . rm -f .revision critic: @@ -236,7 +237,8 @@ fi touch tests/.timestamps/$@s cd tests/unit && \ - ${NONETWORKTEST} ${KIWINOFSTEST} /usr/bin/prove ${TESTVERBOSE} $@ + ${NONETWORKTEST} ${KIWINOFSTEST} perl /usr/bin/prove \ + ${TESTVERBOSE} $@ clean: (cd system/boot && find -type f | grep -v .svn | xargs chmod u+w) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/README.md new/kiwi/README.md --- old/kiwi/README.md 1970-01-01 01:00:00.000000000 +0100 +++ new/kiwi/README.md 2014-07-03 15:58:16.000000000 +0200 @@ -0,0 +1,56 @@ +KIWI +==== + +Introduction +------------ + +The openSUSE KIWI Image System provides an operating +system image solution for Linux supported hardware platforms as +well as for virtualization systems like Xen, VMware, etc. The KIWI +architecture was designed as a two level system. The first stage, +based on a valid software package source, creates a so called +unpacked image according to the provided image description. +The second stage creates from a required unpacked image an +operating system image. The result of the second stage is called +a packed image or short an image. + +Installation +------------ + +packages for kiwi are provided at the openSUSE buildservice: +http://download.opensuse.org/repositories/Virtualization:/Appliances/ + +Usage +----- + +1. make sure you have the kiwi-templates package installed +2. build a live ISO example: + +``` +kiwi --build suse-XXX-JeOS -d /tmp/myimage --type iso +``` + +3. run your OS in a VM like kvm + +``` +kvm -cdrom /tmp/myimage/*.iso +``` + +Mailing list +------------ + +* http://groups.google.com/group/kiwi-images + +Contributing +------------ + +1. Fork it. +2. Create a branch (`git checkout -b my_kiwi`) +3. Commit your changes (`git commit -am "Added Snarkdown"`) +4. Push to the branch (`git push origin my_kiwi`) +5. Create an [Issue][1] with a link to your branch +6. Enjoy a refreshing Diet Coke and wait + +also see the git-review gem + +Remember to have fun :) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/README.mkd new/kiwi/README.mkd --- old/kiwi/README.mkd 2014-02-21 12:44:03.000000000 +0100 +++ new/kiwi/README.mkd 1970-01-01 01:00:00.000000000 +0100 @@ -1,54 +0,0 @@ -KIWI -==== - -Introduction ------------- - -The openSUSE KIWI Image System provides a complete operating -system image solution for Linux supported hardware platforms as -well as for virtualization systems like Xen, VMware, etc. The KIWI -architecture was designed as a two level system. The first stage, -based on a valid software package source, creates a so called -unpacked image according to the provided image description. -The second stage creates from a required unpacked image an -operating system image. The result of the second stage is called -a packed image or short an image. - -Installation ------------- - -packages for kiwi are provided at the openSUSE buildservice: -http://download.opensuse.org/repositories/Virtualization:/Appliances/ - -Usage ------ - -1. make sure you have the kiwi-templates package installed -2. build a live ISO example: - -```kiwi --build suse-XXX-JeOS -d /tmp/myimage --type iso -``` - -3. run your OS in a VM like kvm - -```kvm -cdrom /tmp/myimage/*.iso -``` - -Mailing list ------------- - -* http://groups.google.com/group/kiwi-images - -Contributing ------------- - -1. Fork it. -2. Create a branch (`git checkout -b my_kiwi`) -3. Commit your changes (`git commit -am "Added Snarkdown"`) -4. Push to the branch (`git push origin my_kiwi`) -5. Create an [Issue][1] with a link to your branch -6. Enjoy a refreshing Diet Coke and wait - -also see the git-review gem - -Remember to have fun :) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/metadata/KIWIAnalyse.custom.sync.md new/kiwi/metadata/KIWIAnalyse.custom.sync.md --- old/kiwi/metadata/KIWIAnalyse.custom.sync.md 1970-01-01 01:00:00.000000000 +0100 +++ new/kiwi/metadata/KIWIAnalyse.custom.sync.md 2014-07-03 15:58:16.000000000 +0200 @@ -0,0 +1,38 @@ +KIWI Custom files analyser +========================== + +Introduction +------------ + +kiwi has created a set of files which does not belong to any +packagemanger or repository kiwi knows about. These information +is called custom/unpackaged files. You can find a raw list of +this data in the file + +* custom.files + +kiwi does not automatically sync all this information into the +description because on real world machines this could be a huge +set of information which are displayed in a nice way on the +kiwi created report page but normally you want only a specific +subset of this data to be synced and content controlled. + +How to manage custom files +-------------------------- + +most people find it useful to control the contents of for +example '/etc' which you will find out has a lot of customfiles +which do not belong to any package but are pretty important for +the system to operate. In order to let the kiwi analyser take +care for this information store a file called: + +* custom.sync + +in the git repo and commit it. The contents of the file are used +by an rsync process as --files-from input. Thus to sync all +contents of '/etc' add the line + +* /etc/ + +to the custom.sync file. Any subsequent call of kiwi --describe +will now care for /etc and track it via the git system diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/metadata/KIWIAnalyse.custom.sync.mkd new/kiwi/metadata/KIWIAnalyse.custom.sync.mkd --- old/kiwi/metadata/KIWIAnalyse.custom.sync.mkd 2014-06-12 12:24:23.000000000 +0200 +++ new/kiwi/metadata/KIWIAnalyse.custom.sync.mkd 1970-01-01 01:00:00.000000000 +0100 @@ -1,38 +0,0 @@ -KIWI Custom files analyser -========================== - -Introduction ------------- - -kiwi has created a set of files which does not belong to any -packagemanger or repository kiwi knows about. These information -is called custom/unpackaged files. You can find a raw list of -this data in the file - -* custom.files - -kiwi does not automatically sync all this information into the -description because on real world machines this could be a huge -set of information which are displayed in a nice way on the -kiwi created report page but normally you want only a specific -subset of this data to be synced and content controlled. - -How to manage custom files --------------------------- - -most people find it useful to control the contents of for -example '/etc' which you will find out has a lot of customfiles -which do not belong to any package but are pretty important for -the system to operate. In order to let the kiwi analyser take -care for this information store a file called: - -* custom.sync - -in the git repo and commit it. The contents of the file are used -by an rsync process as --files-from input. Thus to sync all -contents of '/etc' add the line - -* /etc/ - -to the custom.sync file. Any subsequent call of kiwi --describe -will now care for /etc and track it via the git system diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/metadata/KIWIConfig.xml new/kiwi/metadata/KIWIConfig.xml --- old/kiwi/metadata/KIWIConfig.xml 2014-05-23 14:09:40.000000000 +0200 +++ new/kiwi/metadata/KIWIConfig.xml 2014-07-07 16:20:44.000000000 +0200 @@ -119,7 +119,6 @@ <file name="killall"/> <file name="killall5"/> <file name="killproc"/> - <file name="klogconsole"/> <file name="kpartx"/> <file name="kpartx_id"/> <file name="ldconfig"/> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/modules/KIWIBoot.pm new/kiwi/modules/KIWIBoot.pm --- old/kiwi/modules/KIWIBoot.pm 2014-06-23 10:51:43.000000000 +0200 +++ new/kiwi/modules/KIWIBoot.pm 2014-07-07 16:20:44.000000000 +0200 @@ -3736,8 +3736,7 @@ 'boot','search_label','search_fs_file','search', 'search_fs_uuid','ls','normal','gzio','multiboot', 'png','fat','gettext','chain','font','minicmd', - 'gfxterm','gfxmenu','video_bochs','video_cirrus', - 'video','video_fb' + 'gfxterm','gfxmenu','video','video_fb' ); my @bios_core_modules = ( 'biosdisk','part_msdos','part_gpt','vga','vbe' @@ -5517,6 +5516,7 @@ my $xml = $this->{xml}; my $firmware = $this->{firmware}; my $system = $this->{system}; + my $haveTree = $this->{haveTree}; my $locator = KIWILocator -> instance(); my $bootdev; my $result; @@ -5726,19 +5726,72 @@ #========================================== # Install grub in batch mode #------------------------------------------ - my $grub = $locator -> getExecPath ('grub'); + my $grub; + if ($haveTree) { + # Use image root system grub + $grub = $locator -> getExecPath ('grub', $system); + } else { + # Use host system grub + $grub = $locator -> getExecPath ('grub'); + } if (! $grub) { $kiwi -> failed (); - $kiwi -> error ("Can't locate grub binary"); + if ($haveTree) { + $kiwi -> error ( + "Can't locate grub binary in image root" + ); + } else { + $kiwi -> error ( + "Can't locate grub binary" + ); + } $kiwi -> failed (); return; } - my $grubOptions = "--device-map $dmfile --no-floppy --batch"; - if (-d "/boot/grub") { - KIWIQX::qxx ("mount -n --bind $tmpdir/boot/grub /boot/grub"); + my $gopts = "--device-map $dmfile --no-floppy --batch"; + if ($haveTree) { + # Use image root system grub + my $basedir_disk = dirname ($diskname); + my $basedir_tmp = $tmpdir; + $status = KIWIQX::qxx ( + "mkdir -p $system/$basedir_disk $system/$basedir_tmp 2>&1" + ); + $result= $? >> 8; + if ($result == 0) { + $status = KIWIQX::qxx ( + "mount -n --bind $basedir_disk $system/$basedir_disk" + ); + $result= $? >> 8; + } + if ($result == 0) { + $status = KIWIQX::qxx ( + "mount -n --bind $basedir_tmp $system/$basedir_tmp" + ); + $result= $? >> 8; + } + if ($result != 0) { + $kiwi -> failed (); + $kiwi -> error ("grub chroot setup failed: $status"); + $kiwi -> failed (); + return; + } + KIWIQX::qxx ( + "chroot $system $grub $gopts < $cmdfile &> $tmpdir/grub.log" + ); + KIWIQX::qxx ("umount $system/$basedir_tmp 2>&1"); + KIWIQX::qxx ("umount $system/$basedir_disk 2>&1"); + my $rmopts = "-p --ignore-fail-on-non-empty"; + KIWIQX::qxx ( + "rmdir $rmopts $system/$basedir_disk $system/$basedir_tmp" + ); + } else { + # Use host system grub + if (-d "/boot/grub") { + KIWIQX::qxx ("mount -n --bind $tmpdir/boot/grub /boot/grub"); + } + KIWIQX::qxx ("$grub $gopts < $cmdfile &> $tmpdir/grub.log"); + KIWIQX::qxx ("umount /boot/grub &>/dev/null"); } - KIWIQX::qxx ("$grub $grubOptions < $cmdfile &> $tmpdir/grub.log"); - KIWIQX::qxx ("umount /boot/grub &>/dev/null"); my $glog; if ($dmfd -> open ("$tmpdir/grub.log")) { my @glog = <$dmfd>; $dmfd -> close(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/modules/KIWICollect.pm new/kiwi/modules/KIWICollect.pm --- old/kiwi/modules/KIWICollect.pm 2014-06-26 11:21:46.000000000 +0200 +++ new/kiwi/modules/KIWICollect.pm 2014-07-03 15:58:16.000000000 +0200 @@ -1181,10 +1181,10 @@ . 'failed'; $this->logMsg('E', $msg); } else { - $this->addToTrackFile($packName, $packPointer, $medium); + my $lnkTarget = + $packOptions->{$requestedArch}->{'newpath'}; + $this->addToTrackFile($packName, $packPointer, $medium, $lnkTarget); if ($this->{m_debug} >= 4) { - my $lnkTarget = - $packOptions->{$requestedArch}->{'newpath'}; my $msg = " linked file $packPointer->{'localfile'}" . " to $lnkTarget/" @@ -1448,7 +1448,8 @@ die "Unable to open report file: $medium->{filename}"; } print $fd "<report>\n"; - for my $binary(@{$medium->{entries}}) { + for my $entry(sort(keys($medium->{entries}))) { + my $binary = $medium->{entries}->{$entry}; $this->printTrackLine( $fd, " <binary ", $binary, ">".$binary->{'localfile'}."</binary>", @@ -1486,7 +1487,7 @@ # addToTrackFile #------------------------------------------ sub addToTrackFile { - my ($this, $name, $pkg, $medium) = @_; + my ($this, $name, $pkg, $medium, $on_media_path) = @_; if (!$this->{m_reportLog}->{$medium}) { $this->{m_reportLog}->{$medium}->{filename} = "$this->{m_basesubdir}->{$medium}.report"; @@ -1505,7 +1506,7 @@ if (defined($pkg->{epoch}) && $pkg->{epoch} ne "") { $hash{"epoch"} = $pkg->{epoch}; } - push @{$this->{m_reportLog}->{$medium}->{entries}}, \%hash; + $this->{m_reportLog}->{$medium}->{entries}->{$on_media_path} = \%hash; return $this; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/modules/KIWIContainerBuilder.pm new/kiwi/modules/KIWIContainerBuilder.pm --- old/kiwi/modules/KIWIContainerBuilder.pm 2014-05-23 14:09:40.000000000 +0200 +++ new/kiwi/modules/KIWIContainerBuilder.pm 2014-07-03 15:58:16.000000000 +0200 @@ -766,7 +766,7 @@ #------------------------------------------ sub __removeKiwiBuildInfo { # ... - # Remove data that is inserted in teh root tree for image building + # Remove data that is inserted in the root tree for image building # --- my $this = shift; my $targetDir = shift; @@ -775,7 +775,7 @@ $kiwi -> info('Clean up kiwi image build artifacts'); # Remove the shell scripts my $rm = $locator -> getExecPath('rm'); - my $cmd = "$rm $targetDir/{.kconfig,.profile}"; + my $cmd = "$rm -f $targetDir/.kconfig $targetDir/.profile"; my $data = KIWIQX::qxx ($cmd); my $code = $? >> 8; if ($code != 0) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/modules/KIWIGlobals.pm new/kiwi/modules/KIWIGlobals.pm --- old/kiwi/modules/KIWIGlobals.pm 2014-06-30 18:39:07.000000000 +0200 +++ new/kiwi/modules/KIWIGlobals.pm 2014-07-07 16:50:38.000000000 +0200 @@ -1493,7 +1493,7 @@ # Globals (generic) #------------------------------------------ my %data; - $data{Version} = "5.06.123"; + $data{Version} = "5.06.127"; $data{Publisher} = "SUSE LINUX GmbH"; $data{Preparer} = "KIWI - http://opensuse.github.com/kiwi"; $data{ConfigName} = "config.xml"; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/modules/KIWILinuxRC.sh new/kiwi/modules/KIWILinuxRC.sh --- old/kiwi/modules/KIWILinuxRC.sh 2014-06-23 10:51:43.000000000 +0200 +++ new/kiwi/modules/KIWILinuxRC.sh 2014-07-07 16:50:38.000000000 +0200 @@ -103,10 +103,23 @@ # hideSplash #-------------------------------------- function hideSplash { - test -e /proc/splash && echo verbose > /proc/splash - if lookup plymouthd &>/dev/null;then - plymouth hide-splash + # /.../ + # Only in case of one active console kiwi hides + # the splash screen for it to allow interactive dialog + # sessions on this console. In any other case the user + # can control a custom behavior using the handleSplash + # hook called at the end of this function + # ---- + local console_count=$(activeConsoles) + if [ $console_count -eq 1 ];then + test -e /proc/splash && echo verbose > /proc/splash + if lookup plymouthd &>/dev/null;then + plymouth hide-splash + # reset tty after plymouth messed with it + consoleInit + fi fi + runHook handleSplash "$@" } #====================================== @@ -125,7 +138,7 @@ --exit-label "$TEXT_EXIT" \ $@ echo \$? > /tmp/fbcode -EOF + EOF if FBOK;then fbiterm -m $UFONT -- bash -e /tmp/fbcode else @@ -333,7 +346,7 @@ fi ;; "user_reboot") - Echo "reboot triggered by user: consoles at Alt-F3/F4" + Echo "reboot triggered by user" Echo "reboot in 30 sec..."; sleep 30 /sbin/reboot -f -i >$nuldev ;; @@ -434,13 +447,7 @@ ln -s fd/0 $prefix/stdin ln -s fd/1 $prefix/stdout ln -s fd/2 $prefix/stderr - #====================================== - # setup dev/console - #-------------------------------------- - exec < $prefix/console > $prefix/console } - - #====================================== # mount_rpc_pipefs #-------------------------------------- @@ -524,15 +531,14 @@ function errorLogStop { set +x export ELOG_STOPPED=1 - exec 2>$ELOG_EXCEPTION - exec 1>>$ELOG_EXCEPTION + exec < $ELOG_EXCEPTION &> $ELOG_EXCEPTION } #====================================== # errorLogContinue #-------------------------------------- function errorLogContinue { exec 2>>$ELOG_FILE - exec 1>>$ELOG_EXCEPTION + exec < $ELOG_EXCEPTION > $ELOG_EXCEPTION export ELOG_STOPPED=0 set -x } @@ -579,19 +585,16 @@ #====================================== # Redirect/Clean stdout if quiet is set #-------------------------------------- - exec 1>>/dev/null + exec >/dev/null if [ -x /usr/bin/setterm ];then setterm -clear all setterm -background black fi else #====================================== - # Set kernel log level + # Redirect stdout to console #-------------------------------------- - exec 1>>$ELOG_EXCEPTION - if lookup klogconsole;then - klogconsole -l 6 - fi + exec < $ELOG_EXCEPTION > $ELOG_EXCEPTION fi #====================================== # Clean proc @@ -600,7 +603,7 @@ umount /proc fi #====================================== - # Enable shell debugging and redirect + # Enable shell debugging #-------------------------------------- set -x } @@ -721,6 +724,8 @@ udevTrigger # wait for events to finish udevPending + # init console + consoleInit # start plymouth if it exists and enabled for o in $(cat /proc/cmdline) ; do case "$o" in @@ -765,6 +770,24 @@ fi } #====================================== +# activeConsoles +#-------------------------------------- +function activeConsoles { + for i in $(cat /sys/class/tty/console/active 2>/dev/null);do + echo $i + done | wc -l +} +#====================================== +# consoleInit +#-------------------------------------- +function consoleInit { + read consoledev rest < /sys/class/tty/console/active + consoledev=${consoledev:-tty0} + if [ -x /lib/udev/console_init ] && [ -e "/dev/$consoledev" ];then + /lib/udev/console_init "/dev/$consoledev" + fi +} +#====================================== # startPlymouth #-------------------------------------- function startPlymouth { @@ -777,18 +800,12 @@ --subsystem-match=drm --subsystem-match=tty &>/dev/null udevadm settle --timeout=30 mkdir --mode 755 /run/plymouth - read consoledev rest < /sys/class/tty/console/active - consoledev=${consoledev:-tty0} - if [ -x /lib/udev/console_init ] && [ -e "/dev/$consoledev" ];then - /lib/udev/console_init "/dev/$consoledev" - fi + consoleInit plymouth-set-default-theme $kiwi_splash_theme &>/dev/null plymouthd --attach-to-session --pid-file /run/plymouth/pid &>/dev/null plymouth show-splash &>/dev/null # reset tty after plymouth messed with it - if [ -x /lib/udev/console_init ] && [ -e "/dev/$consoledev" ];then - /lib/udev/console_init "/dev/$consoledev" - fi + consoleInit fi } #====================================== @@ -3660,7 +3677,7 @@ #====================================== # Manual loading of modules #-------------------------------------- - for i in rd brd edd dm-mod xennet xenblk virtio_blk loop;do + for i in rd brd edd dm-mod xennet xenblk virtio_blk loop squashfs;do modprobe $i &>/dev/null done udevPending diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/template/ix86/suse-SLE12-JeOS/config.xml new/kiwi/template/ix86/suse-SLE12-JeOS/config.xml --- old/kiwi/template/ix86/suse-SLE12-JeOS/config.xml 2014-06-10 11:52:04.000000000 +0200 +++ new/kiwi/template/ix86/suse-SLE12-JeOS/config.xml 2014-07-07 16:20:44.000000000 +0200 @@ -71,7 +71,6 @@ <namedCollection name="Minimal"/> <package name="plymouth-branding-SLE" bootinclude="true"/> <package name="grub2-branding-SLE" bootinclude="true"/> - <package name="ifplugd"/> <package name="iputils"/> <package name="vim"/> <package name="grub2"/> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/tests/unit/cleanup.sh new/kiwi/tests/unit/cleanup.sh --- old/kiwi/tests/unit/cleanup.sh 2014-05-23 14:09:40.000000000 +0200 +++ new/kiwi/tests/unit/cleanup.sh 2014-07-03 15:58:16.000000000 +0200 @@ -1,9 +1,8 @@ -#!/bin/sh -# cleanup +#!/bin/bash # # Clean up any artifacts that may be left over from a previous test run -# # This script is part of the Kiwi test framework +# echo "Cleaning up artifacts" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/tests/unit/lib/Test/kiwiLocator.pm new/kiwi/tests/unit/lib/Test/kiwiLocator.pm --- old/kiwi/tests/unit/lib/Test/kiwiLocator.pm 2014-03-04 11:48:57.000000000 +0100 +++ new/kiwi/tests/unit/lib/Test/kiwiLocator.pm 2014-07-03 15:58:16.000000000 +0200 @@ -689,16 +689,15 @@ #------------------------------------------ sub test_getExecPerl { # ... - # Test behavior when an executable can be found - # Using the perl interpreter as an example - # Perl's location is specified by LSB, thus we only make the - # assumption that we are on an LSB compliant system, this should be - # reasonable. + # Test behavior when an executable can be found Using the bash + # interpreter as an example bash's location is specified by LSB, + # thus we only make the assumption that we are on an LSB compliant + # system, this should be reasonable. # --- my $this = shift; my $kiwi = $this -> {kiwi}; my $locator = $this -> __getLocator(); - my $res = $locator -> getExecPath( 'perl' ); + my $res = $locator -> getExecPath( 'bash' ); my $msg = $kiwi -> getMessage(); $this -> assert_str_equals('No messages set', $msg); my $msgT = $kiwi -> getMessageType(); @@ -707,9 +706,8 @@ $this -> assert_str_equals('No state set', $state); # Test this condition last to get potential error messages $this -> assert_not_null($res); - my $perlPath = '/usr/bin/perl'; + my $perlPath = '/bin/bash'; $this -> assert_str_equals($perlPath, $res); - return; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiwi/tests/unit/lib/Test/kiwiRuntimeChecker.pm new/kiwi/tests/unit/lib/Test/kiwiRuntimeChecker.pm --- old/kiwi/tests/unit/lib/Test/kiwiRuntimeChecker.pm 2014-05-23 14:09:40.000000000 +0200 +++ new/kiwi/tests/unit/lib/Test/kiwiRuntimeChecker.pm 2014-07-03 15:58:16.000000000 +0200 @@ -910,7 +910,7 @@ . 'could not be found.'; $this -> assert_str_equals($failExpect, $errMsg); my $msgT = $kiwi -> getMessageType(); - $this -> assert_str_equals('error', $msgT); + $this -> assert_str_equals('info', $msgT); my $state = $kiwi -> getState(); $this -> assert_str_equals('failed', $state); $this -> assert_null($res); -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org