Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package product-builder-plugin-Tumbleweed 
for openSUSE:Factory checked in at 2021-10-04 18:39:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/product-builder-plugin-Tumbleweed (Old)
 and      
/work/SRC/openSUSE:Factory/.product-builder-plugin-Tumbleweed.new.2443 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "product-builder-plugin-Tumbleweed"

Mon Oct  4 18:39:33 2021 rev:19 rq:922537 version:1.6.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/product-builder-plugin-Tumbleweed/product-builder-plugin-Tumbleweed.changes
      2021-09-20 23:32:11.283102038 +0200
+++ 
/work/SRC/openSUSE:Factory/.product-builder-plugin-Tumbleweed.new.2443/product-builder-plugin-Tumbleweed.changes
    2021-10-04 18:40:40.886127354 +0200
@@ -1,0 +2,7 @@
+Fri Sep 24 08:50:41 UTC 2021 - Adrian Schr??ter <adr...@suse.de>
+
+- 1.6.0
+  * KIWIDnfRepoclosurePlugin added
+  * KIWIPackagesDVDPlugin added
+
+-------------------------------------------------------------------
@@ -5 +12 @@
-  - comps meta data support
+  * comps meta data support
@@ -11 +18 @@
-  - modulemd data support
+  * modulemd data support

Old:
----
  product-builder-plugins-1.4.3.obscpio

New:
----
  product-builder-plugins-1.6.0.obscpio

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

Other differences:
------------------
++++++ product-builder-plugin-Tumbleweed.spec ++++++
--- /var/tmp/diff_new_pack.bHRqlV/_old  2021-10-04 18:40:41.514128374 +0200
+++ /var/tmp/diff_new_pack.bHRqlV/_new  2021-10-04 18:40:41.514128374 +0200
@@ -20,11 +20,12 @@
 Summary:        openSUSE - KIWI Image System
 License:        GPL-2.0-or-later
 Group:          System/Management
-Version:        1.4.3
+Version:        1.6.0
 Release:        0
 Source:         product-builder-plugins-%version.tar.xz
 Provides:       product-builder-plugin = %version-%release
 Requires:       createrepo_c
+Requires:       dnf
 Requires:       mtools
 Requires:       product-builder
 Requires:       perl(YAML::XS)

++++++ _service ++++++
--- /var/tmp/diff_new_pack.bHRqlV/_old  2021-10-04 18:40:41.550128432 +0200
+++ /var/tmp/diff_new_pack.bHRqlV/_new  2021-10-04 18:40:41.554128439 +0200
@@ -5,8 +5,8 @@
     <param name="revision">SLE_15</param>
 -->
     <param name="scm">git</param>
-    <param name="version">1.4.3</param>
-    <param name="revision">1.4.3</param>
+    <param name="version">1.6.0</param>
+    <param name="revision">1.6.0</param>
   </service>
   <service mode="manual" name="set_version" />
   <service mode="buildtime" name="tar"/>

++++++ product-builder-plugins-1.4.3.obscpio -> 
product-builder-plugins-1.6.0.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/product-builder-plugins-1.4.3/KIWIDescrPlugin.pm 
new/product-builder-plugins-1.6.0/KIWIDescrPlugin.pm
--- old/product-builder-plugins-1.4.3/KIWIDescrPlugin.pm        2021-09-17 
13:30:25.000000000 +0200
+++ new/product-builder-plugins-1.6.0/KIWIDescrPlugin.pm        2021-09-24 
10:07:52.000000000 +0200
@@ -298,7 +298,31 @@
          opendir(DH, "$masterpath/comps");
          foreach my $comps (readdir(DH)) {
            next if $comps =~ /^\./m;
-           $cmd = "/usr/bin/modifyrepo $masterpath/comps/$comps 
$masterpath/repodata/";
+           # decompress file
+           if ($comps =~ /\.gz$/m) {
+               $cmd = "gunzip $masterpath/comps/$comps";
+               $call = $this -> callCmd($cmd);
+               $status = $call->[0];
+               my $out = join("\n",@{$call->[2]});
+               $this->logMsg("I",
+                   "Called $cmd exit status: <$status> output: $out"
+               );
+               return 1 if $status;
+               $comps =~ s/\.gz$//;
+           }
+
+           # add uncompressed file
+           $cmd = "/usr/bin/modifyrepo --no-compress --mdtype=group 
$masterpath/comps/$comps $masterpath/repodata/";
+           $call = $this -> callCmd($cmd);
+           $status = $call->[0];
+           my $out = join("\n",@{$call->[2]});
+           $this->logMsg("I",
+               "Called $cmd exit status: <$status> output: $out"
+           );
+           return 1 if $status;
+
+           # add compressed file
+           $cmd = "/usr/bin/modifyrepo --compress-type=xz --mdtype=group_xz 
$masterpath/comps/$comps $masterpath/repodata/";
            $call = $this -> callCmd($cmd);
            $status = $call->[0];
            my $out = join("\n",@{$call->[2]});
@@ -306,9 +330,11 @@
                "Called $cmd exit status: <$status> output: $out"
            );
            return 1 if $status;
+
+           unlink("$masterpath/comps/$comps");
          }
          closedir(DH);
-         unlink("$masterpath/comps");
+         rmdir("$masterpath/comps");
       }
 
       # detached signature
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/product-builder-plugins-1.4.3/KIWIDnfRepoclosurePlugin.ini 
new/product-builder-plugins-1.6.0/KIWIDnfRepoclosurePlugin.ini
--- old/product-builder-plugins-1.4.3/KIWIDnfRepoclosurePlugin.ini      
1970-01-01 01:00:00.000000000 +0100
+++ new/product-builder-plugins-1.6.0/KIWIDnfRepoclosurePlugin.ini      
2021-09-24 10:07:52.000000000 +0200
@@ -0,0 +1,5 @@
+[base]
+name = KIWIDnfRepoclosure
+order = 99
+defaultenable = 1
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/product-builder-plugins-1.4.3/KIWIDnfRepoclosurePlugin.pm 
new/product-builder-plugins-1.6.0/KIWIDnfRepoclosurePlugin.pm
--- old/product-builder-plugins-1.4.3/KIWIDnfRepoclosurePlugin.pm       
1970-01-01 01:00:00.000000000 +0100
+++ new/product-builder-plugins-1.6.0/KIWIDnfRepoclosurePlugin.pm       
2021-09-24 10:07:52.000000000 +0200
@@ -0,0 +1,77 @@
+################################################################
+# Copyright (c) 2019 SUSE
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program (see the file LICENSE); if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+#
+################################################################
+package KIWIDnfRepoclosurePlugin;
+
+use strict;
+use warnings;
+
+use base "KIWIBasePlugin";
+use Data::Dumper;
+use Config::IniFiles;
+use File::Find;
+use File::Basename;
+
+sub new {
+    # ...
+    # Create a new KIWIPackagesDVDPlugin object
+    # ---
+    my ($class, $handler, $config) = @_;
+    my $this = KIWIBasePlugin -> new($handler);
+    bless ($this, $class);
+
+    $this->name('KIWIDnfRepoclosurePlugin');
+    $this->order(99);
+    $this->ready(1);
+    return $this;
+}
+
+sub execute {
+    my $this = shift;
+    return unless ref($this);
+
+    my $collect = $this->collect();
+    my $enabled = 
$this->collect()->productData()->getOpt("RUN_DEPENDENCY_CHECK");
+    return 0 if ($enabled || '') ne 'true';
+
+    my @archs = keys(%{$collect->{m_archlist}->{m_archs}});
+
+    $this->logMsg("I", "Basedir " . $this->handler()->collect()->basedir());
+    my @targetmedia = $this->collect()->getMediaNumbers();
+    foreach my $cd (@targetmedia) {
+        my $dir = $this->collect()->basesubdirs()->{$cd};
+        next unless -d "$dir/repodata";
+        foreach my $arch (@archs) {
+             next if $arch eq 'noarch';
+             $this->logMsg("I", "Verifing dependencies in <$cd>");
+             $this->logMsg("I", "Pass $dir");
+             my $cmd = "dnf repoclosure --arch=noarch --arch=$arch 
--repofrompath=dnf_repoclosure,file://$dir --repo=dnf_repoclosure 
--check=dnf_repoclosure 2>&1"; # verbose output
+             $this->logMsg("I", "Executing command <$cmd>");
+             my $call = $this -> callCmd($cmd);
+             my $status = $call->[0];
+             if ($status) {
+                 my $out = join("\n",@{$call->[1]});
+                 $this->logMsg("E", "Validation failed: $out");
+                 return 1;
+             }
+        }
+    }
+    return 0;
+}
+
+1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/product-builder-plugins-1.4.3/KIWIPackagesDVDPlugin.ini 
new/product-builder-plugins-1.6.0/KIWIPackagesDVDPlugin.ini
--- old/product-builder-plugins-1.4.3/KIWIPackagesDVDPlugin.ini 1970-01-01 
01:00:00.000000000 +0100
+++ new/product-builder-plugins-1.6.0/KIWIPackagesDVDPlugin.ini 2021-09-24 
10:07:52.000000000 +0200
@@ -0,0 +1,5 @@
+[base]
+name = KIWIPackagesDVDPlugin
+order = 7
+defaultenable = 1
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/product-builder-plugins-1.4.3/KIWIPackagesDVDPlugin.pm 
new/product-builder-plugins-1.6.0/KIWIPackagesDVDPlugin.pm
--- old/product-builder-plugins-1.4.3/KIWIPackagesDVDPlugin.pm  1970-01-01 
01:00:00.000000000 +0100
+++ new/product-builder-plugins-1.6.0/KIWIPackagesDVDPlugin.pm  2021-09-24 
10:07:52.000000000 +0200
@@ -0,0 +1,97 @@
+################################################################
+# Copyright (c) 2019 SUSE
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program (see the file LICENSE); if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+#
+################################################################
+package KIWIPackagesDVDPlugin;
+
+use strict;
+use warnings;
+
+use base "KIWIBasePlugin";
+use Data::Dumper;
+use Config::IniFiles;
+use File::Find;
+use File::Basename;
+
+sub new {
+    # ...
+    # Create a new KIWIPackagesDVDPlugin object
+    # ---
+    my ($class, $handler, $config) = @_;
+    my $this = KIWIBasePlugin -> new($handler);
+    bless ($this, $class);
+
+    $this->name('KIWIPackagesDVDPlugin');
+    $this->order(7);
+    $this->ready(1);
+    return $this;
+}
+
+sub execute {
+    my $this = shift;
+    if(not ref($this)) {
+        return;
+    }
+    my $flavor = $this->collect()->productData()->getVar("FLAVOR");
+    if (($flavor || '') ne 'Full') {
+        return 0;
+    }
+    $this->logMsg("I", "Basedir " . $this->handler()->collect()->basedir());
+    my @targetmedia = $this->collect()->getMediaNumbers();
+    foreach my $cd (@targetmedia) {
+        $this->logMsg("I", "Check <$cd>");
+        my $dir = $this->collect()->basesubdirs()->{$cd};
+        open(my $report, '>', "$dir.report");
+        # reset the / media - just an empty repo
+        open(my $products, '>', "$dir/media.1/products");
+        print $report "<report>\n";
+        $this->logMsg("I", "Pass $dir");
+        for my $module (glob('/usr/src/packages/KIWIALL/*')) {
+          $this->logMsg("I", "Found $module");
+          my $bname = basename($module);
+          $bname =~ s,.*-Module,Module,,;
+          $bname =~ s,.*-Product,Product,,;
+          $bname =~ s,.*-Liberty-Linux-,,;
+          my ($module_dir) = glob("$module/*-Media$cd");
+          if (!$module_dir) {
+            $this->logMsg("I", "Could not find <$module/*-Media$cd>");
+            next;
+          }
+          $this->logMsg("I", "Copy <$module_dir>");
+          system("cp -a $module_dir $dir/$bname");
+          open(my $fd, '<', "$module_dir.report");
+          while (<$fd>) {
+            my $line = $_;
+            print "$module_dir.report $line";
+            next if $line =~ m,</?report>,;
+            print $report $line;
+          }
+          close($fd);
+          open($fd, '<', "$module_dir/media.1/products");
+          my $line = <$fd>;
+          $line =~ s,^/,/$bname,;
+          print $products $line;
+          close($fd);
+        }
+        print $report "</report>\n";
+        close($report);
+        close($products);
+    }
+    return 0;
+}
+
+1;

++++++ product-builder-plugins.obsinfo ++++++
--- /var/tmp/diff_new_pack.bHRqlV/_old  2021-10-04 18:40:41.646128588 +0200
+++ /var/tmp/diff_new_pack.bHRqlV/_new  2021-10-04 18:40:41.646128588 +0200
@@ -1,5 +1,5 @@
 name: product-builder-plugins
-version: 1.4.3
-mtime: 1631878225
-commit: aceff0c4ea5bc78c72514716e90aa45560329330
+version: 1.6.0
+mtime: 1632470872
+commit: b59bf7b3c5876304dabcc344baf0e95e8705b578
 

Reply via email to