Script 'mail_helper' called by ro Hello packager, This is just FYI. Your package was checked in in distribution "sle12" by autobuild-member: ro. Here comes the log... ---------------------------%<------------------------------ Hi, here is the log from ci_new_pac /mounts/work_src_done/SLE12/autoyast2 -> sle12 ## BNC# 897404 : "Build0846: AutoYaST doesn't transfer additional packages from software selection to autoinst.xml" (NEW/) Changes: -------- --- /work/SRC/SUSE:SLE-12:GA/autoyast2/autoyast2.changes 2014-09-25 14:36:21.000000000 +0200 +++ /mounts/work_src_done/SLE12/autoyast2/autoyast2.changes 2014-09-25 17:23:49.000000000 +0200 @@ -1,0 +2,7 @@ +Wed Sep 24 18:27:58 CEST 2014 - schubi@suse.de + +- Exporting package selection correctly. + (bnc#897404) +- 3.1.63 + +------------------------------------------------------------------- calling whatdependson for sle12-i586 Packages directly triggered for rebuild: - autoyast2 - yast2-product-creator - yast2-schema ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/SUSE:SLE-12:GA/autoyast2 (Old) and /mounts/work_src_done/SLE12/autoyast2 (BS:build ID:44626 MAIL:yast-commit@opensuse.org) (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "autoyast2", Maintainer is "yast-commit@opensuse.org" Old: ---- autoyast2-3.1.62.tar.bz2 New: ---- autoyast2-3.1.63.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ autoyast2.spec ++++++ --- /var/tmp/diff_new_pack.aLxdzL/_old 2014-09-25 18:21:00.000000000 +0200 +++ /var/tmp/diff_new_pack.aLxdzL/_new 2014-09-25 18:21:00.000000000 +0200 @@ -17,7 +17,7 @@ Name: autoyast2 -Version: 3.1.62 +Version: 3.1.63 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ autoyast2-3.1.62.tar.bz2 -> autoyast2-3.1.63.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/autoyast2-3.1.62/package/autoyast2.changes new/autoyast2-3.1.63/package/autoyast2.changes --- old/autoyast2-3.1.62/package/autoyast2.changes 2014-09-25 13:36:20.000000000 +0200 +++ new/autoyast2-3.1.63/package/autoyast2.changes 2014-09-25 17:21:19.000000000 +0200 @@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Wed Sep 24 18:27:58 CEST 2014 - schubi@suse.de + +- Exporting package selection correctly. + (bnc#897404) +- 3.1.63 + +------------------------------------------------------------------- Wed Sep 24 11:24:39 CEST 2014 - schubi@suse.de - Fixed path of change-root scripts which have been diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/autoyast2-3.1.62/package/autoyast2.spec new/autoyast2-3.1.63/package/autoyast2.spec --- old/autoyast2-3.1.62/package/autoyast2.spec 2014-09-25 13:36:20.000000000 +0200 +++ new/autoyast2-3.1.63/package/autoyast2.spec 2014-09-25 17:21:19.000000000 +0200 @@ -17,7 +17,7 @@ Name: autoyast2 -Version: 3.1.62 +Version: 3.1.63 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/autoyast2-3.1.62/src/modules/AutoinstSoftware.rb new/autoyast2-3.1.63/src/modules/AutoinstSoftware.rb --- old/autoyast2-3.1.62/src/modules/AutoinstSoftware.rb 2014-09-25 13:36:20.000000000 +0200 +++ new/autoyast2-3.1.63/src/modules/AutoinstSoftware.rb 2014-09-25 17:21:20.000000000 +0200 @@ -950,6 +950,33 @@ packages.map! {|p| p["name"] } end + def install_packages + # user selected packages which have not been already installed + packages = Pkg.FilterPackages( + solver_selected = false, + app_selected = true, + user_selected = true, + name_only = true) + + # user selected packages which have already been installed + installed_by_user = Pkg.GetPackages(:installed, true).select{ |pkg_name| + Pkg.PkgPropertiesAll(pkg_name).any? { |package| package["on_system_by_user"] } + } + + # Filter out kernel and pattern packages + kernel_packages = Pkg.PkgQueryProvides("kernel").collect { |package| + package[0] + }.compact.uniq + pattern_packages = Pkg.PkgQueryProvides("pattern()").collect { |package| + package[0] + }.compact.uniq + + (packages + installed_by_user).uniq.select{ |pkg_name| + !kernel_packages.include?(pkg_name) && + !pattern_packages.include?(pkg_name) + } + end + # Return list of software packages of calling client # in the installed environment # @return [Hash] map of installed software package @@ -957,15 +984,14 @@ # "packages" -> list<string> user selected packages # "remove-packages" -> list<string> packages to remove def ReadHelper - ret = Pkg.TargetInit("/", false) - # Pkg::TargetInitialize ("/"); + Pkg.TargetInit("/", false) Pkg.TargetLoad Pkg.SourceStartManager(true) Pkg.PkgSolve(false) - @inst = Pkg.GetPackages(:installed, true) all_patterns = Pkg.ResolvableProperties("", :pattern, "") @all_xpatterns = Pkg.ResolvableDependencies("", :pattern, "") + to_install_packages = install_packages patterns = [] patternsFullData = Builtins.filter(all_patterns) do |p| @@ -988,10 +1014,7 @@ Builtins.y2debug("SourceStartCache: %1", Pkg.SourceStartCache(false)) Pkg.SourceStartManager(true) - - userpackages = Pkg.FilterPackages(false, false, true, true) Pkg.TargetFinish - # Remove kernel packages patternPackages = [] new_p = [] @@ -1006,10 +1029,6 @@ if Ops.get_string(d, "res_kind", "") == "package" && (Ops.get_string(d, "dep_kind", "") == "requires" || Ops.get_string(d, "dep_kind", "") == "recommends") - patternPackages = Builtins.add( - patternPackages, - Ops.get_string(d, "name", "") - ) req = true end end @@ -1020,61 +1039,17 @@ end patterns = deep_copy(new_p) - patternPackagesTemp = deep_copy(patternPackages) - run = false - emergency_break = 0 - begin - run = false - emergency_break = Ops.add(emergency_break, 1) - # remove all packages that are pulled in by the resolver anyway - tmp = [] - patternPackagesTemp = Builtins.toset(patternPackagesTemp) - Builtins.foreach(patternPackagesTemp) do |ppackage| - Builtins.foreach(Pkg.ResolvableDependencies(ppackage, :package, "")) do |d| - Builtins.foreach(Ops.get_list(d, "dependencies", [])) do |dd| - if Ops.get_string(dd, "res_kind", "") == "package" && - (Ops.get_string(dd, "dep_kind", "") == "requires" || - Ops.get_string(dd, "dep_kind", "") == "recommends") && - !Builtins.contains( - patternPackages, - Ops.get_string(dd, "name", "") - ) - patternPackages = Builtins.add( - patternPackages, - Ops.get_string(dd, "name", "") - ) - tmp = Builtins.add(tmp, Ops.get_string(dd, "name", "")) - run = true - end - end - end - end - patternPackagesTemp = deep_copy(tmp) - Builtins.y2milestone("temp package list = %1", tmp) - end while run == true && Ops.less_than(emergency_break, 20) - software = {} - if Ops.greater_than(Builtins.size(patterns), 0) - Builtins.foreach(@inst) do |p| - if !Builtins.contains(patternPackages, p) - userpackages = Builtins.add(userpackages, p) - end - end - end - Ops.set( - software, - "packages", - Builtins.sort(Builtins.filter(userpackages) do |pkg| - !Builtins.regexpmatch(pkg, "kernel-.*") || pkg == "kernel-uml" - end) - ) Ops.set(software, "patterns", Builtins.sort(patterns)) # Currently we do not have any information about user deleted packages in # the installed system. # In order to prevent a reinstallation we can take the locked packages at least. # (bnc#888296) software["remove-packages"] = locked_packages + + software["packages"] = to_install_packages + deep_copy(software) end @@ -1096,12 +1071,6 @@ end end - install_packages = Pkg.FilterPackages( - solver_selected = false, - app_selected = false, - user_selected = true, - name_only = true) - software = {} software["packages"] = install_packages software["patterns"] = install_patterns.compact continue with "q"... Checked in at Thu Sep 25 18:21:12 CEST 2014 by ro Remember to have fun... -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org