Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package openSUSE-release-tools for 
openSUSE:Factory checked in at 2023-10-29 19:41:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openSUSE-release-tools (Old)
 and      /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new.17445 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "openSUSE-release-tools"

Sun Oct 29 19:41:22 2023 rev:511 rq:1120883 version:20231027.c46db9b

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/openSUSE-release-tools/openSUSE-release-tools.changes
    2023-10-27 22:29:30.082393201 +0200
+++ 
/work/SRC/openSUSE:Factory/.openSUSE-release-tools.new.17445/openSUSE-release-tools.changes
 2023-10-29 19:41:42.087160575 +0100
@@ -1,0 +2,15 @@
+Fri Oct 27 12:32:12 UTC 2023 - opensuse-releaset...@opensuse.org
+
+- Update to version 20231027.c46db9b:
+  * Only treat aarch64 and x86_64 as mandatory
+  * Docstring improvements
+  * Wait a randomized interval
+  * Release bci repositories per architecture independently
+
+-------------------------------------------------------------------
+Fri Oct 27 08:49:18 UTC 2023 - opensuse-releaset...@opensuse.org
+
+- Update to version 20231027.3a138b5:
+  * gocd/rabbit-openqa.py: Ignore jobs without group
+
+-------------------------------------------------------------------

Old:
----
  openSUSE-release-tools-20231026.fcdc535.obscpio

New:
----
  openSUSE-release-tools-20231027.c46db9b.obscpio

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

Other differences:
------------------
++++++ openSUSE-release-tools.spec ++++++
--- /var/tmp/diff_new_pack.Nc2WMJ/_old  2023-10-29 19:41:42.891189825 +0100
+++ /var/tmp/diff_new_pack.Nc2WMJ/_new  2023-10-29 19:41:42.891189825 +0100
@@ -20,7 +20,7 @@
 %define source_dir openSUSE-release-tools
 %define announcer_filename factory-package-news
 Name:           openSUSE-release-tools
-Version:        20231026.fcdc535
+Version:        20231027.c46db9b
 Release:        0
 Summary:        Tools to aid in staging and release work for openSUSE/SUSE
 License:        GPL-2.0-or-later AND MIT

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.Nc2WMJ/_old  2023-10-29 19:41:42.935191426 +0100
+++ /var/tmp/diff_new_pack.Nc2WMJ/_new  2023-10-29 19:41:42.939191571 +0100
@@ -1,7 +1,7 @@
 <servicedata>
   <service name="tar_scm">
     <param 
name="url">https://github.com/openSUSE/openSUSE-release-tools.git</param>
-    <param 
name="changesrevision">fcdc5356b19450a12359ddc269328a662e98b4ea</param>
+    <param 
name="changesrevision">c46db9b61a44387768806fe38a70ddc5812e7add</param>
   </service>
 </servicedata>
 

++++++ openSUSE-release-tools-20231026.fcdc535.obscpio -> 
openSUSE-release-tools-20231027.c46db9b.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231026.fcdc535/gocd/bci_repo_publish.py 
new/openSUSE-release-tools-20231027.c46db9b/gocd/bci_repo_publish.py
--- old/openSUSE-release-tools-20231026.fcdc535/gocd/bci_repo_publish.py        
2023-10-26 17:04:01.000000000 +0200
+++ new/openSUSE-release-tools-20231027.c46db9b/gocd/bci_repo_publish.py        
2023-10-27 14:29:54.000000000 +0200
@@ -19,6 +19,7 @@
 from lxml import etree as ET
 from openqa_client.client import OpenQA_Client
 from osc.core import http_GET, makeurl
+from random import randint
 
 
 class BCIRepoPublisher(ToolBase.ToolBase):
@@ -59,7 +60,7 @@
         return self.openqa.openqa_request('GET', 'jobs', values)['jobs']
 
     def is_repo_published(self, project, repo, arch=None):
-        """Validates that the given prj/repo is fully published and all builds
+        """Validate that the given prj/repo is fully published and all builds
         have succeeded."""
         result_filter = {'view': 'summary', 'repository': repo}
         if arch:
@@ -87,6 +88,8 @@
 
         # Build the list of packages with metainfo
         packages = []
+        # List of packages that have passed openQA
+        openqa_passed_packages = []
         # As long as it's the same everywhere, hardcoding this list here
         # is easier and safer than trying to derive it from the package list.
         for arch in ('aarch64', 'ppc64le', 's390x', 'x86_64'):
@@ -131,7 +134,7 @@
             return
 
         # Check openQA results
-        openqa_passed = True
+        mandatory_arches = ('aarch64', 'x86_64')
         for pkg in packages:
             passed = 0
             pending = 0
@@ -146,20 +149,20 @@
                 else:
                     
self.logger.warning(f'https://openqa.suse.de/tests/{job["id"]} failed')
                     failed += 1
-
-            if passed == 0 or pending > 0 or failed > 0:
-                openqa_passed = False
-
-        if not openqa_passed:
-            self.logger.info('No positive result from openQA (yet)')
-            return
+            if pending or failed:
+                self.logger.info(f'openQA did not (yet) pass for 
{pkg["name"]}: {passed}/{pending}/{failed}')
+                continue
+            if passed == 0 and pkg['arch'] in mandatory_arches:
+                self.logger.info('No positive result from openQA (yet)')
+                return
+            openqa_passed_packages.append(pkg)
 
         # Trigger publishing
         if token is None:
-            self.logger.warning('Would publish now, but no token specified')
+            self.logger.warning(f'Would publish {[pkg["name"] for pkg in 
openqa_passed_packages]}, but no token specified')
             return
 
-        for pkg in packages:
+        for pkg in openqa_passed_packages:
             self.logger.info(f'Releasing {pkg["name"]}...')
             params = {
                 'project': pkg['build_prj'], 'package': pkg['name'],
@@ -173,10 +176,10 @@
                 raise RuntimeError(f'Releasing failed: {req.text}')
 
         self.logger.info('Waiting for publishing to finish')
-        for pkg in packages:
+        for pkg in openqa_passed_packages:
             while not self.is_repo_published(pkg['publish_prj'], 'images'):
                 self.logger.debug(f'Waiting for {pkg["publish_prj"]}')
-                time.sleep(20)
+                time.sleep(randint(10, 30))
 
 
 class CommandLineInterface(ToolBase.CommandLineInterface):
@@ -194,8 +197,7 @@
 
     @cmdln.option('--token', help='The token for publishing. Does a dry run if 
not given.')
     def do_run(self, subcmd, opts, project):
-        """${cmd_name}: run the BCI repo publisher for the specified project,
-        e.g. 15-SP3
+        """${cmd_name}: run BCI repo publisher for the project, e.g. 15-SP5.
 
         ${cmd_usage}
         ${cmd_option_list}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231026.fcdc535/gocd/rabbit-openqa.py 
new/openSUSE-release-tools-20231027.c46db9b/gocd/rabbit-openqa.py
--- old/openSUSE-release-tools-20231026.fcdc535/gocd/rabbit-openqa.py   
2023-10-26 17:04:01.000000000 +0200
+++ new/openSUSE-release-tools-20231027.c46db9b/gocd/rabbit-openqa.py   
2023-10-27 14:29:54.000000000 +0200
@@ -292,7 +292,7 @@
 
     def is_production_job(self, job):
         if '/' in job['settings'].get('BUILD', '/') or \
-           'Development' in job['group']:
+           'group' not in job or 'Development' in job['group']:
             return False
 
         return True

++++++ openSUSE-release-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.Nc2WMJ/_old  2023-10-29 19:41:43.639217038 +0100
+++ /var/tmp/diff_new_pack.Nc2WMJ/_new  2023-10-29 19:41:43.643217184 +0100
@@ -1,5 +1,5 @@
 name: openSUSE-release-tools
-version: 20231026.fcdc535
-mtime: 1698332641
-commit: fcdc5356b19450a12359ddc269328a662e98b4ea
+version: 20231027.c46db9b
+mtime: 1698409794
+commit: c46db9b61a44387768806fe38a70ddc5812e7add
 

Reply via email to