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 2021-09-09 23:07:32 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/openSUSE-release-tools (Old) and /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new.1899 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openSUSE-release-tools" Thu Sep 9 23:07:32 2021 rev:322 rq:917670 version:20210907.d2e3c9d2 Changes: -------- --- /work/SRC/openSUSE:Factory/openSUSE-release-tools/openSUSE-release-tools.changes 2021-09-07 21:22:13.749361542 +0200 +++ /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new.1899/openSUSE-release-tools.changes 2021-09-09 23:07:56.436858564 +0200 @@ -1,0 +2,14 @@ +Wed Sep 08 07:02:07 UTC 2021 - opensuse-releaset...@opensuse.org + +- Update to version 20210907.d2e3c9d2: + * Add some comments + * Create ProductVersion attribute + * Remove attributes when destroying a workflow + +------------------------------------------------------------------- +Tue Sep 07 09:33:30 UTC 2021 - opensuse-releaset...@opensuse.org + +- Update to version 20210907.d07908c4: + * skippkg-finder: move extra packages to the OSRT attribute + +------------------------------------------------------------------- Old: ---- openSUSE-release-tools-20210906.2f7e2499.obscpio New: ---- openSUSE-release-tools-20210907.d2e3c9d2.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openSUSE-release-tools.spec ++++++ --- /var/tmp/diff_new_pack.9ZJH5l/_old 2021-09-09 23:07:57.040859265 +0200 +++ /var/tmp/diff_new_pack.9ZJH5l/_new 2021-09-09 23:07:57.044859269 +0200 @@ -20,7 +20,7 @@ %define source_dir openSUSE-release-tools %define announcer_filename factory-package-news Name: openSUSE-release-tools -Version: 20210906.2f7e2499 +Version: 20210907.d2e3c9d2 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.9ZJH5l/_old 2021-09-09 23:07:57.084859316 +0200 +++ /var/tmp/diff_new_pack.9ZJH5l/_new 2021-09-09 23:07:57.084859316 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/openSUSE/openSUSE-release-tools.git</param> - <param name="changesrevision">2f7e2499485d70cb6f764fa7f1c54022873f94c8</param> + <param name="changesrevision">d2e3c9d2c1649b0a9f19c1a8c510d52c04d85ff1</param> </service> </servicedata> ++++++ openSUSE-release-tools-20210906.2f7e2499.obscpio -> openSUSE-release-tools-20210907.d2e3c9d2.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openSUSE-release-tools-20210906.2f7e2499/skippkg-finder.py new/openSUSE-release-tools-20210907.d2e3c9d2/skippkg-finder.py --- old/openSUSE-release-tools-20210906.2f7e2499/skippkg-finder.py 2021-09-06 14:20:07.000000000 +0200 +++ new/openSUSE-release-tools-20210907.d2e3c9d2/skippkg-finder.py 2021-09-07 15:58:46.000000000 +0200 @@ -17,6 +17,7 @@ from osc import oscerr import osclib from osclib.core import source_file_ensure +from osclib.conf import Config SUPPORTED_ARCHS = ['x86_64', 'i586', 'aarch64', 'ppc64le', 's390x'] DEFAULT_REPOSITORY = 'standard' @@ -32,6 +33,12 @@ self.apiurl = osc.conf.config['apiurl'] self.debug = osc.conf.config['debug'] + config = Config.get(self.apiurl, self.opensuse_project) + # binary rpms of packages from `skippkg-finder-skiplist-ignores` + # be found in the `package_binaries` thus format must to be like + # SUSE:SLE-15:Update_libcdio.12032, PROJECT-NAME_PACKAGE-NAME + self.skiplist_ignored = set(config.get('skippkg-finder-skiplist-ignores', '').split(' ')) + def is_sle_specific(self, package): """ Return True if package is provided for SLE only or a SLE forking. @@ -274,30 +281,7 @@ # eg. SUSE:SLE-15-SP3:GA has qpdf/libqpdf28 but cups-filter was build # in/when SLE15 SP2 which requiring qpdf/libqpdf6, therefore old # qpdf/libqpdf6 from SLE15 SP2 should not to be missed. - extra_packagelist = [ - # gnome-software requirement - 'SUSE:SLE-15-SP2:Update_libxmlb.15999', - # cups-filter requirement - 'SUSE:SLE-15-SP2:GA_qpdf', - # libcdio_paranoia2 requirement - 'SUSE:SLE-15:Update_libcdio.12032', - # libstoken1 requirement - 'SUSE:SLE-15:Update_libnettle.19992', - # python2-Pillow requirement - 'SUSE:SLE-15:Update_libwebp.19719', - # amarok requirement - 'SUSE:SLE-15:Update_mariadb.20531', - # bogofilter requirement - 'SUSE:SLE-15:GA_gsl', - # gnome-builder requirement - 'SUSE:SLE-15-SP2:GA_vala', - # hfst-ospell requirement - 'SUSE:SLE-15:Update_icu.14528', - # for zypper dup reason - 'SUSE:SLE-15-SP2:Update_icu.18168', - 'SUSE:SLE-15-SP2:Update_gnome-desktop.16620', - ] - for pkg in extra_packagelist: + for pkg in self.skiplist_ignored: selected_binarylist += package_binaries[pkg] # Preparing a packagelist for the skipping candidate diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openSUSE-release-tools-20210906.2f7e2499/tests/OBSLocal.py new/openSUSE-release-tools-20210907.d2e3c9d2/tests/OBSLocal.py --- old/openSUSE-release-tools-20210906.2f7e2499/tests/OBSLocal.py 2021-09-06 14:20:07.000000000 +0200 +++ new/openSUSE-release-tools-20210907.d2e3c9d2/tests/OBSLocal.py 2021-09-07 15:58:46.000000000 +0200 @@ -195,6 +195,7 @@ self.requests = [] self.groups = [] self.users = [] + self.attributes = {} logging.basicConfig() # clear cache from other tests - otherwise the VCR is replayed depending @@ -217,6 +218,8 @@ self.setup_remote_config() self.load_config() self.api = StagingAPI(APIURL, project) + # The ProductVersion is required for some actions, for example, when a request is accepted + self.create_attribute_type('OSRT', 'ProductVersion', 1) def load_config(self, project=None): """Loads the corresponding :class:`osclib.Config` object into the attribute ``config`` @@ -230,6 +233,10 @@ self.config = Config(APIURL, project) def create_attribute_type(self, namespace, name, values=None): + if not namespace in self.attributes: self.attributes[namespace] = [] + + if not name in self.attributes[namespace]: self.attributes[namespace].append(name) + meta = """ <namespace name='{}'> <modifiable_by user='Admin'/> @@ -484,20 +491,56 @@ def remove(self): print('deleting staging workflow') + for project in self.projects.values(): project.remove() for request in self.requests: request.revoke() for group in self.groups: - url = osc.core.makeurl(APIURL, ['group', group]) - try: - osc.core.http_DELETE(url) - except HTTPError: - pass + self.remove_group(group) + for namespace in self.attributes: + self.remove_attributes(namespace) + print('done') + if hasattr(self.api, '_invalidate_all'): self.api._invalidate_all() + def remove_group(self, group): + """Removes a group from the OBS instance + + :param group: name of the group to remove + :type group: str + """ + print('deleting group', group) + url = osc.core.makeurl(APIURL, ['group', group]) + self._safe_delete(url) + + def remove_attributes(self, namespace): + """Removes an attributes namespace and all the attributes it contains + + :param namespace: attributes namespace to remove + :type namespace: str + """ + for name in self.attributes[namespace]: + print('deleting attribute {}:{}'.format(namespace, name)) + url = osc.core.makeurl(APIURL, ['attribute', namespace, name, '_meta']) + self._safe_delete(url) + print('deleting namespace', namespace) + url = osc.core.makeurl(APIURL, ['attribute', namespace, '_meta']) + self._safe_delete(url) + + def _safe_delete(self, url): + """Performs a delete request to the OBS instance, ignoring possible http errors + + :param url: url to use for the http delete request + :type url: str + """ + try: + osc.core.http_DELETE(url) + except HTTPError: + pass + class Project(object): """This class represents a project in the testing environment of the release tools. It usually corresponds to a project in the local OBS instance that is used by the tests. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openSUSE-release-tools-20210906.2f7e2499/tests/factory_submit_request_test.py new/openSUSE-release-tools-20210907.d2e3c9d2/tests/factory_submit_request_test.py --- old/openSUSE-release-tools-20210906.2f7e2499/tests/factory_submit_request_test.py 2021-09-06 14:20:07.000000000 +0200 +++ new/openSUSE-release-tools-20210907.d2e3c9d2/tests/factory_submit_request_test.py 2021-09-07 15:58:46.000000000 +0200 @@ -93,9 +93,13 @@ # for the staging work self.assertReview(reqid, by_user=('factory-auto', 'accepted')) self.assertReview(reqid, by_user=('licensedigger', 'accepted')) - self.assertReview(reqid, by_group=('opensuse-review-team', 'new')) + + # This review will be accepted when the Staging Manager puts it into a staging project self.assertReview(reqid, by_group=('factory-staging', 'new')) + # Review created by CheckSource bot. This review should be manually accepted. + self.assertReview(reqid, by_group=('opensuse-review-team', 'new')) + # Let's first accept the manual review change_review_state( apiurl = self.wf.apiurl, reqid = reqid, @@ -108,7 +112,7 @@ self.assertReview(reqid, by_group=('opensuse-review-team', 'accepted')) self.assertReview(reqid, by_group=('factory-staging', 'new')) - # Let's put the request into the staging project + # The Staging Manager puts the request into a staging project SelectCommand(self.wf.api, STAGING_PROJECT_NAME).perform(['wine']) # The factory-staging review is now accepted and a new review associated to the @@ -116,7 +120,7 @@ self.assertReview(reqid, by_group=('factory-staging', 'accepted')) self.assertReview(reqid, by_project=(STAGING_PROJECT_NAME, 'new')) - # Let's say everything looks good in the staging project and it can be accepted + # Let's say everything looks good in the staging project and the Staging Manager accepts it AcceptCommand(self.wf.api).accept_all([STAGING_PROJECT_NAME], True) # Finally, all the reviews are accepted: one for each bot, one for manual review and ++++++ openSUSE-release-tools.obsinfo ++++++ --- /var/tmp/diff_new_pack.9ZJH5l/_old 2021-09-09 23:07:57.664859989 +0200 +++ /var/tmp/diff_new_pack.9ZJH5l/_new 2021-09-09 23:07:57.664859989 +0200 @@ -1,5 +1,5 @@ name: openSUSE-release-tools -version: 20210906.2f7e2499 -mtime: 1630930807 -commit: 2f7e2499485d70cb6f764fa7f1c54022873f94c8 +version: 20210907.d2e3c9d2 +mtime: 1631023126 +commit: d2e3c9d2c1649b0a9f19c1a8c510d52c04d85ff1