Hello community,

here is the log from the commit of package openSUSE-release-tools for 
openSUSE:Factory checked in at 2019-12-06 15:06:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openSUSE-release-tools (Old)
 and      /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new.4691 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "openSUSE-release-tools"

Fri Dec  6 15:06:14 2019 rev:258 rq:754658 version:20191206.8f62f42c

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/openSUSE-release-tools/openSUSE-release-tools.changes
    2019-12-06 12:12:31.964020444 +0100
+++ 
/work/SRC/openSUSE:Factory/.openSUSE-release-tools.new.4691/openSUSE-release-tools.changes
  2019-12-06 15:06:32.816368731 +0100
@@ -1,0 +2,7 @@
+Fri Dec 06 11:41:08 UTC 2019 - opensuse-releaset...@opensuse.org
+
+- Update to version 20191206.8f62f42c:
+  * Don't take multibuild packages as subpackage of itself
+  * Delete adi projects whenever we'd build disable them
+
+-------------------------------------------------------------------

Old:
----
  openSUSE-release-tools-20191205.67ccc5ae.obscpio

New:
----
  openSUSE-release-tools-20191206.8f62f42c.obscpio

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

Other differences:
------------------
++++++ openSUSE-release-tools.spec ++++++
--- /var/tmp/diff_new_pack.DL4mCP/_old  2019-12-06 15:06:44.828364275 +0100
+++ /var/tmp/diff_new_pack.DL4mCP/_new  2019-12-06 15:06:44.828364275 +0100
@@ -20,7 +20,7 @@
 %define source_dir openSUSE-release-tools
 %define announcer_filename factory-package-news
 Name:           openSUSE-release-tools
-Version:        20191205.67ccc5ae
+Version:        20191206.8f62f42c
 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.DL4mCP/_old  2019-12-06 15:06:44.888364252 +0100
+++ /var/tmp/diff_new_pack.DL4mCP/_new  2019-12-06 15:06:44.888364252 +0100
@@ -1,6 +1,6 @@
 <servicedata>
   <service name="tar_scm">
     <param 
name="url">https://github.com/openSUSE/openSUSE-release-tools.git</param>
-    <param 
name="changesrevision">0eb12a53c4b4cc455e626585c2a91f93c31bdf22</param>
+    <param 
name="changesrevision">345321f98d1653df4059ddcb9d5e762ab8d3f99c</param>
   </service>
 </servicedata>

++++++ openSUSE-release-tools-20191205.67ccc5ae.obscpio -> 
openSUSE-release-tools-20191206.8f62f42c.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20191205.67ccc5ae/osclib/accept_command.py 
new/openSUSE-release-tools-20191206.8f62f42c/osclib/accept_command.py
--- old/openSUSE-release-tools-20191205.67ccc5ae/osclib/accept_command.py       
2019-12-05 17:21:59.000000000 +0100
+++ new/openSUSE-release-tools-20191206.8f62f42c/osclib/accept_command.py       
2019-12-06 12:39:14.000000000 +0100
@@ -116,6 +116,10 @@
                 time.sleep(1)
 
             self.api.accept_status_comment(project, staging_packages[project])
+            if self.api.is_adi_project(project):
+                self.api.delete_empty_adi_project(project)
+                return
+
             self.api.staging_deactivate(project)
 
             self.reset_rebuild_data(prj)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20191205.67ccc5ae/osclib/adi_command.py 
new/openSUSE-release-tools-20191206.8f62f42c/osclib/adi_command.py
--- old/openSUSE-release-tools-20191205.67ccc5ae/osclib/adi_command.py  
2019-12-05 17:21:59.000000000 +0100
+++ new/openSUSE-release-tools-20191206.8f62f42c/osclib/adi_command.py  
2019-12-06 12:39:14.000000000 +0100
@@ -5,7 +5,6 @@
 
 from osc import oscerr
 from osc.core import get_request
-from osc.core import delete_project
 from osc.core import show_package_meta
 from osc import conf
 
@@ -56,33 +55,19 @@
                     return
 
         overall_state = info.get('state')
-        if overall_state != 'acceptable' and overall_state != 'empty':
-            raise oscerr.WrongArgs('Missed some case')
 
-        # no longer accept/delete adi projects
-        return
+        if overall_state == 'empty':
+            self.api.delete_empty_adi_project(project)
+            return
+
+        if overall_state != 'acceptable':
+            raise oscerr.WrongArgs('Missed some case')
 
-        if self.api.is_user_member_of(self.api.user, self.api.cstaging_group):
-            print(query_project + ' ' + Fore.GREEN + 'ready')
-            packages = []
-            for req in info.findall('staged_requests/request'):
-                msg = 'ready to accept'
-                print(' - {} [{}]'.format(Fore.CYAN + req.get('package') + 
Fore.RESET, req.get('id')))
-                self.api.rm_from_prj(project, request_id=req.get('id'), 
msg=msg)
-                self.api.do_change_review_state(req.get('id'), 'accepted', 
by_group=self.api.cstaging_group, message=msg)
-                packages.append(req.get('package'))
-            self.api.accept_status_comment(project, packages)
-            try:
-                delete_project(self.api.apiurl, project, force=True)
-            except HTTPError as e:
-                print(e)
-                pass
-        else:
-            ready = []
-            for req in info.findall('staged_requests/request'):
-                ready.append('{}[{}]'.format(Fore.CYAN + req.get('package') + 
Fore.RESET, req.get('id')))
-            if len(ready):
-                print(query_project, Fore.GREEN + 'ready:', ', '.join(ready))
+        ready = []
+        for req in info.findall('staged_requests/request'):
+            ready.append('{}[{}]'.format(Fore.CYAN + req.get('package') + 
Fore.RESET, req.get('id')))
+        if len(ready):
+            print(query_project, Fore.GREEN + 'ready:', ', '.join(ready))
 
     def check_adi_projects(self):
         for p in self.api.get_adi_projects():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20191205.67ccc5ae/osclib/stagingapi.py 
new/openSUSE-release-tools-20191206.8f62f42c/osclib/stagingapi.py
--- old/openSUSE-release-tools-20191205.67ccc5ae/osclib/stagingapi.py   
2019-12-05 17:21:59.000000000 +0100
+++ new/openSUSE-release-tools-20191206.8f62f42c/osclib/stagingapi.py   
2019-12-06 12:39:14.000000000 +0100
@@ -20,6 +20,7 @@
 from osc.core import buildlog_strip_time
 from osc.core import change_review_state
 from osc.core import delete_package
+from osc.core import delete_project
 from osc.core import get_commitlog
 from osc.core import get_group
 from osc.core import get_request
@@ -70,6 +71,7 @@
         self._package_metas = dict()
         self._supersede = False
         self._package_disabled = {}
+        self._is_staging_manager = None
 
         Cache.init()
 
@@ -146,6 +148,12 @@
         xpath = 'repository[@name="images"]'
         return len(meta.xpath(xpath)) > 0
 
+    @property
+    def is_staging_manager(self):
+        if self._is_staging_manager is None:
+            self._is_staging_manager = self.is_user_member_of(self.user, 
self.cstaging_group)
+        return self._is_staging_manager
+
     def makeurl(self, l, query=None):
         """
         Wrapper around osc's makeurl passing our apiurl
@@ -938,7 +946,7 @@
         # created before through get_sub_packages().
         filelist = self.get_filelist_for_package(pkgname=package, 
project=project, expand='1')
         if '_multibuild' in filelist:
-            return [package]
+            return []
 
         mainspec = "{}{}".format(package, '.spec')
         if mainspec in filelist:
@@ -1253,7 +1261,10 @@
         root = self.project_status(project, reload=True)
         if root.get('state') == 'empty':
             # Cleanup like accept since the staging is now empty.
-            self.staging_deactivate(project)
+            if self.is_adi_project(project):
+                self.api.delete_empty_adi_project(project)
+            else:
+                self.staging_deactivate(project)
         else:
             self.build_switch_staging_project(project, 'enable')
 
@@ -1483,3 +1494,16 @@
             return meta.find(xpath) is not None
 
         return False
+
+    def delete_empty_adi_project(self, project):
+        if not self.is_adi_project(project):
+            return
+
+        if not self.is_staging_manager:
+            return
+
+        try:
+            delete_project(self.apiurl, project, force=True)
+        except HTTPError as e:
+            print(e)
+            pass
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20191205.67ccc5ae/tests/select_tests.py 
new/openSUSE-release-tools-20191206.8f62f42c/tests/select_tests.py
--- old/openSUSE-release-tools-20191205.67ccc5ae/tests/select_tests.py  
2019-12-05 17:21:59.000000000 +0100
+++ new/openSUSE-release-tools-20191206.8f62f42c/tests/select_tests.py  
2019-12-06 12:39:14.000000000 +0100
@@ -11,6 +11,7 @@
 from osclib.unselect_command import UnselectCommand
 from osclib.stagingapi import StagingAPI
 from osclib.memoize import memoize_session_reset
+from osclib.core import source_file_load
 import logging
 
 from mock import MagicMock
@@ -55,7 +56,7 @@
 
         project = self.wf.create_project('devel:gcc')
         package = OBSLocal.Package(name='gcc8', project=project)
-        package.create_commit(filename='gcc8.spec')
+        package.create_commit(filename='gcc8.spec', text='Name: gcc8')
         package.create_commit(filename='gcc8-tests.spec')
         self.wf.submit_package(package)
 
@@ -63,6 +64,12 @@
         self.assertEqual(True, ret)
 
         self.assertEqual(package_list(self.wf.apiurl, staging.name), ['gcc8', 
'gcc8-tests'])
+        file = source_file_load(self.wf.apiurl, staging.name, 'gcc8', 
'gcc8.spec')
+        self.assertEqual(file, 'Name: gcc8')
+        # we should see the spec file also in the 2nd package
+        file = source_file_load(self.wf.apiurl, staging.name, 'gcc8-tests', 
'gcc8.spec')
+        self.assertEqual(file, 'Name: gcc8')
+
         uc = UnselectCommand(self.wf.api)
         self.assertIsNone(uc.perform(['gcc8'], False, None))
 
@@ -75,7 +82,7 @@
 
         project = self.wf.create_project('devel:gcc')
         package = OBSLocal.Package(name='gcc9', project=project)
-        package.create_commit(filename='gcc9.spec')
+        package.create_commit(filename='gcc9.spec', text='Name: gcc9')
         package.create_commit(filename='gcc9-tests.spec')
         
package.create_commit('<multibuild><flavor>gcc9-tests.spec</flavor></multibuild>',
 filename='_multibuild')
         self.wf.submit_package(package)
@@ -84,6 +91,9 @@
         self.assertEqual(True, ret)
 
         self.assertEqual(package_list(self.wf.apiurl, staging.name), ['gcc9'])
+        file = source_file_load(self.wf.apiurl, staging.name, 'gcc9', 
'gcc9.spec')
+        self.assertEqual(file, 'Name: gcc9')
+
         uc = UnselectCommand(self.wf.api)
         self.assertIsNone(uc.perform(['gcc9'], False, None))
 

++++++ openSUSE-release-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.DL4mCP/_old  2019-12-06 15:06:45.492364028 +0100
+++ /var/tmp/diff_new_pack.DL4mCP/_new  2019-12-06 15:06:45.492364028 +0100
@@ -1,5 +1,5 @@
 name: openSUSE-release-tools
-version: 20191205.67ccc5ae
-mtime: 1575562919
-commit: 67ccc5ae1bf9c4f97ced12acd8c4ce86d4c0b5e6
+version: 20191206.8f62f42c
+mtime: 1575632354
+commit: 8f62f42ca560fb0a374701a2c011ffd6da41d0fa
 


Reply via email to