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 2024-12-29 11:56:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openSUSE-release-tools (Old)
and /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new.1881 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openSUSE-release-tools"
Sun Dec 29 11:56:07 2024 rev:529 rq:1233431 version:20241219.396fe69
Changes:
--------
---
/work/SRC/openSUSE:Factory/openSUSE-release-tools/openSUSE-release-tools.changes
2024-11-28 22:43:22.199510635 +0100
+++
/work/SRC/openSUSE:Factory/.openSUSE-release-tools.new.1881/openSUSE-release-tools.changes
2024-12-29 11:56:09.815007544 +0100
@@ -1,0 +2,30 @@
+Thu Dec 19 08:13:52 UTC 2024 - [email protected]
+
+- Update to version 20241219.396fe69:
+ * gocd: SLES 16.0: Remove duplicate pipeline.
+
+-------------------------------------------------------------------
+Mon Dec 16 15:13:17 UTC 2024 - [email protected]
+
+- Update to version 20241216.9b8e794:
+ * Look for images and sbom assets also in the iso/ folder
+
+-------------------------------------------------------------------
+Tue Dec 10 15:12:51 UTC 2024 - [email protected]
+
+- Update to version 20241210.17af565:
+ * Add Leap Micro 6.2 pipeline and publish_distro part
+
+-------------------------------------------------------------------
+Tue Dec 10 07:50:09 UTC 2024 - [email protected]
+
+- Update to version 20241210.157bf13:
+ * Make check_source ignore patchinfo using same rules as meta
+
+-------------------------------------------------------------------
+Wed Dec 04 16:30:03 UTC 2024 - [email protected]
+
+- Update to version 20241204.ac74d91:
+ * osclib/list_command.py: Allow overriding reviews filter from the command
line.
+
+-------------------------------------------------------------------
Old:
----
openSUSE-release-tools-20241121.c222573.obscpio
New:
----
openSUSE-release-tools-20241219.396fe69.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openSUSE-release-tools.spec ++++++
--- /var/tmp/diff_new_pack.24b89n/_old 2024-12-29 11:56:11.699084806 +0100
+++ /var/tmp/diff_new_pack.24b89n/_new 2024-12-29 11:56:11.711085298 +0100
@@ -21,7 +21,7 @@
%define announcer_filename factory-package-news
%define services osrt-slsa.target [email protected]
[email protected] [email protected] [email protected]
Name: openSUSE-release-tools
-Version: 20241121.c222573
+Version: 20241219.396fe69
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.24b89n/_old 2024-12-29 11:56:11.951095140 +0100
+++ /var/tmp/diff_new_pack.24b89n/_new 2024-12-29 11:56:11.995096945 +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">c22257344b21ba8fad541dbd917488aa70a7a725</param>
+ <param
name="changesrevision">396fe6928fa0836660138f10f5abcf995c089c22</param>
</service>
</servicedata>
++++++ openSUSE-release-tools-20241121.c222573.obscpio ->
openSUSE-release-tools-20241219.396fe69.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20241121.c222573/check_source.py
new/openSUSE-release-tools-20241219.396fe69/check_source.py
--- old/openSUSE-release-tools-20241121.c222573/check_source.py 2024-11-21
08:39:59.000000000 +0100
+++ new/openSUSE-release-tools-20241219.396fe69/check_source.py 2024-12-19
09:12:15.000000000 +0100
@@ -139,12 +139,11 @@
return False
kind = package_kind(self.apiurl, target_project, target_package)
- if kind == 'meta':
- self.review_messages['accepted'] = 'Skipping most checks for meta
packages'
+ if kind == 'meta' or kind == 'patchinfo':
+ self.review_messages['accepted'] = f'Skipping most checks for
{kind} packages'
if not self.skip_add_reviews and self.add_review_team and
self.review_team is not None:
if not (self.allow_valid_source_origin and source_project in
self.valid_source_origins):
self.add_review(self.request, by_group=self.review_team,
msg='Please review sources')
-
return True
elif (kind is not None and kind != 'source'):
self.review_messages['declined'] = f'May not modify a non-source
package of type {kind}'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20241121.c222573/gocd/leapmicro.target.gocd.yaml
new/openSUSE-release-tools-20241219.396fe69/gocd/leapmicro.target.gocd.yaml
--- old/openSUSE-release-tools-20241121.c222573/gocd/leapmicro.target.gocd.yaml
2024-11-21 08:39:59.000000000 +0100
+++ new/openSUSE-release-tools-20241219.396fe69/gocd/leapmicro.target.gocd.yaml
2024-12-19 09:12:15.000000000 +0100
@@ -110,3 +110,58 @@
- repo-checker
tasks:
- script: osc -A https://api.opensuse.org release
--target-project=openSUSE:Leap:Micro:6.1:ToTest --target-repository=product -r
product openSUSE:Leap:Micro:6.1 000productcompose
+
+ LeapMicro62.RelPkgs:
+ group: Leap
+ lock_behavior: unlockWhenFinished
+ timer:
+ spec: 0 10 * ? * *
+ only_on_changes: false
+ materials:
+ git:
+ git: https://github.com/openSUSE/openSUSE-release-tools.git
+ environment_variables:
+ OSC_CONFIG: /home/go/config/oscrc-staging-bot
+ stages:
+ - Create.Release.Packages:
+ approval: manual
+ resources:
+ - repo-checker
+ tasks:
+ - script: ./pkglistgen.py -A https://api.opensuse.org
update_and_solve -p openSUSE:Leap:Micro:6.2 -s target --only-release-packages
+
+ LeapMicro62.Package.Lists:
+ group: Leap
+ lock_behavior: unlockWhenFinished
+ environment_variables:
+ OSC_CONFIG: /home/go/config/oscrc-staging-bot
+ timer:
+ spec: 0 40 * ? * *
+ only_on_changes: false
+ materials:
+ git:
+ git: https://github.com/openSUSE/openSUSE-release-tools.git
+ stages:
+ - Update.000productcompose:
+ resources:
+ - repo-checker
+ tasks:
+ - script: ./pkglistgen.py --verbose -A https://api.opensuse.org
update_and_solve --project openSUSE:Leap:Micro:6.2 --scope target --engine
product_composer --force
+
+ LeapMicro62.Publish:
+ group: Leap
+ lock_behavior: unlockWhenFinished
+ environment_variables:
+ OSC_CONFIG: /home/go/config/oscrc-staging-bot
+ timer:
+ spec: 0 50 0,12 ? * *
+ only_on_changes: false
+ materials:
+ git:
+ git: https://github.com/openSUSE/openSUSE-release-tools.git
+ stages:
+ - Publish.000productcompose:
+ resources:
+ - repo-checker
+ tasks:
+ - script: osc -A https://api.opensuse.org release
--target-project=openSUSE:Leap:Micro:6.1:ToTest --target-repository=product -r
product openSUSE:Leap:Micro:6.2 000productcompose
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20241121.c222573/gocd/rabbit-openqa.py
new/openSUSE-release-tools-20241219.396fe69/gocd/rabbit-openqa.py
--- old/openSUSE-release-tools-20241121.c222573/gocd/rabbit-openqa.py
2024-11-21 08:39:59.000000000 +0100
+++ new/openSUSE-release-tools-20241219.396fe69/gocd/rabbit-openqa.py
2024-12-19 09:12:15.000000000 +0100
@@ -63,24 +63,24 @@
def gather_isos(self, name, repository):
iso_set = set()
- # Fetch /published/prj/repo/iso/*.iso
- url = self.api.makeurl(['published', name, repository, 'iso'])
- f = self.api.retried_GET(url)
- root = ET.parse(f).getroot()
- for entry in root.findall('entry'):
- if entry.get('name').endswith('.iso'):
- iso_set.add(self.map_iso(name, entry.get('name')))
+ # Look for .iso and other images/sbom assets in the repository root
and in the
+ # iso sub-folder of /published/prj/repo/
+ places = (
+ ['published', name, repository, 'iso'],
+ ['published', name, repository],
+ )
+ for place in places:
+ url = self.api.makeurl(place)
+ f = self.api.retried_GET(url)
+ root = ET.parse(f).getroot()
- # Fetch /published/prj/repo/*.{qcow2,raw.xz,spdx.json}
- url = self.api.makeurl(['published', name, repository])
- f = self.api.retried_GET(url)
- root = ET.parse(f).getroot()
- for entry in root.findall('entry'):
- filename = entry.get('name')
- if (filename.endswith('.qcow2') or
- filename.endswith('.raw.xz') or
- filename.endswith('.spdx.json')):
- iso_set.add(self.map_iso(name, filename))
+ for entry in root.findall('entry'):
+ filename = entry.get('name')
+ if (filename.endswith('.qcow2') or
+ filename.endswith('.raw.xz') or
+ filename.endswith('.spdx.json') or
+ filename.endswith('.iso')):
+ iso_set.add(self.map_iso(name, filename))
# Filter out isos which couldn't be mapped
return [iso for iso in iso_set if iso]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20241121.c222573/gocd/sles.target.gocd.yaml
new/openSUSE-release-tools-20241219.396fe69/gocd/sles.target.gocd.yaml
--- old/openSUSE-release-tools-20241121.c222573/gocd/sles.target.gocd.yaml
2024-11-21 08:39:59.000000000 +0100
+++ new/openSUSE-release-tools-20241219.396fe69/gocd/sles.target.gocd.yaml
2024-12-19 09:12:15.000000000 +0100
@@ -54,33 +54,6 @@
done
osc -A https://api.suse.de/ api
"/build/SUSE:SLFO:Products:SLES:16.0:TEST/_result?view=summary&repository=images"
| grep "result project" | grep 'code="published" state="published">' && echo
PUBLISHED
- - Release.Images.To.Publish:
- approval: manual
- roles:
- - SLE
- environment_variables:
- OSC_CONFIG: /home/go/config/oscrc-totest-manager
- resources:
- - staging-bot
- tasks:
- - script: |-
- set -e
- for image in agama-installer-SLES kiwi-templates-Minimal; do
- osc -A https://api.suse.de release
--target-project=SUSE:SLFO:Products:SLES:16.0:PUBLISH
--target-repository=images -r images SUSE:SLFO:Products:SLES:16.0:TEST $image
- done
- osc -A https://api.suse.de release
--target-project=SUSE:SLFO:Products:SLES:16.0:PUBLISH
--target-repository=product -r product SUSE:SLFO:Products:SLES:16.0:TEST
000productcompose
- sleep 600
- while (osc -A https://api.suse.de/ api
"/build/SUSE:SLFO:Products:SLES:16.0:PUBLISH/_result?view=summary&repository=product"
| grep "result project" | grep -v 'code="published" state="published">'); do
- echo PENDING
- sleep 600
- done
- osc -A https://api.suse.de/ api
"/build/SUSE:SLFO:Products:SLES:16.0:PUBLISH/_result?view=summary&repository=product"
| grep "result project" | grep 'code="published" state="published">' && echo
PUBLISHED
- while (osc -A https://api.suse.de/ api
"/build/SUSE:SLFO:Products:SLES:16.0:PUBLISH/_result?view=summary&repository=images"
| grep "result project" | grep -v 'code="published" state="published">'); do
- echo PENDING
- sleep 600
- done
- osc -A https://api.suse.de/ api
"/build/SUSE:SLFO:Products:SLES:16.0:PUBLISH/_result?view=summary&repository=images"
| grep "result project" | grep 'code="published" state="published">' && echo
PUBLISHED
-
SLES16.0.Images.To.Publish:
group: SLES
materials:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20241121.c222573/osc-staging.py
new/openSUSE-release-tools-20241219.396fe69/osc-staging.py
--- old/openSUSE-release-tools-20241121.c222573/osc-staging.py 2024-11-21
08:39:59.000000000 +0100
+++ new/openSUSE-release-tools-20241219.396fe69/osc-staging.py 2024-12-19
09:12:15.000000000 +0100
@@ -120,6 +120,7 @@
@cmdln.option('--merge', action='store_true', help='propose merge where
applicable and store details to allow future merges')
@cmdln.option('--try-strategies', action='store_true', default=False,
help='apply strategies and keep any with desireable outcome')
@cmdln.option('--strategy', help='apply a specific strategy')
[email protected]('--match-filter', help='xpath by which to filter requests on the
basis of the reviews they received', default=None)
@cmdln.option('--no-color', action='store_true', help='strip colors from
output (or add staging.color = 0 to the .oscrc general section')
@cmdln.option('--remove-exclusion', action='store_true', help='unignore
selected requests automatically', default=False)
@cmdln.option('--save', action='store_true', help='save the result to the
pseudometa package')
@@ -158,6 +159,14 @@
"list" will list/supersede requests for ring packages or all if no rings.
+ By just calling list, the staging plugin will list all the request
included
+ in the backlog section of the web UI. It is also possible to
optionally limit
+ results with an XPATH filter. As an example, the following would list
all
+ packages which have received a positive review from a member of the
+ licensedigger group or the factory-auto one
+
+ list --match-filter "state/@name='review' and
review[(@by_group='factory-auto' or @by_group='licensedigger') and
@state='accepted']"
+
"lock" acquire a hold on the project in order to execute multiple commands
and prevent others from interrupting. An example:
@@ -309,7 +318,7 @@
osc staging frozenage [STAGING...]
osc staging ignore [-m MESSAGE] REQUEST...
osc staging unignore [--cleanup] [REQUEST...|all]
- osc staging list [--supersede] [--adi-details]
+ osc staging list [--adi-details] [--match-filter] [--supersede]
osc staging lock [-m MESSAGE]
osc staging select [--no-freeze] [--remove-exclusion] [--move
[--filter-from STAGING]]
STAGING REQUEST...
@@ -580,7 +589,7 @@
elif cmd == 'unignore':
UnignoreCommand(api).perform(args[1:], opts.cleanup)
elif cmd == 'list':
- ListCommand(api).perform(supersede=opts.supersede,
adi_details=opts.adi_details)
+ ListCommand(api).perform(adi_details=opts.adi_details,
match_filter=opts.match_filter, supersede=opts.supersede)
elif cmd == 'lock':
lock.hold(opts.message)
elif cmd == 'adi':
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20241121.c222573/osclib/list_command.py
new/openSUSE-release-tools-20241219.396fe69/osclib/list_command.py
--- old/openSUSE-release-tools-20241121.c222573/osclib/list_command.py
2024-11-21 08:39:59.000000000 +0100
+++ new/openSUSE-release-tools-20241219.396fe69/osclib/list_command.py
2024-12-19 09:12:15.000000000 +0100
@@ -43,7 +43,7 @@
print(' ', line)
- def perform(self, supersede=False, adi_details=False):
+ def perform(self, adi_details=False, match_filter=None, supersede=False):
"""
Perform the list command
"""
@@ -51,7 +51,7 @@
if supersede:
SupersedeCommand(self.api).perform()
- requests = self.api.get_open_requests()
+ requests = self.api.get_open_requests(match_filter=match_filter)
if not len(requests):
return
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20241121.c222573/osclib/stagingapi.py
new/openSUSE-release-tools-20241219.396fe69/osclib/stagingapi.py
--- old/openSUSE-release-tools-20241121.c222573/osclib/stagingapi.py
2024-11-21 08:39:59.000000000 +0100
+++ new/openSUSE-release-tools-20241219.396fe69/osclib/stagingapi.py
2024-12-19 09:12:15.000000000 +0100
@@ -574,7 +574,7 @@
http_DELETE(url, data=ET.tostring(root))
@memoize(session=True, add_invalidate=True)
- def get_open_requests(self, query_extra=None):
+ def get_open_requests(self, match_filter=None, query_extra=None):
"""
Get all requests with open review for staging project
that are not yet included in any staging project
@@ -585,12 +585,13 @@
# expect Request objects
requests = []
+ target = f"target[@project='{self.project}']"
# xpath query, using the -m, -r, -s options
- where = f"@by_group='{self.cstaging_group}' and @state='new'"
- target = f"target[@project='{self.project}']"
+ if not match_filter:
+ match_filter = f"state/@name='review' and
review[@by_group='{self.cstaging_group}' and @state='new']"
- query = {'match': f"state/@name='review' and review[{where}] and
{target}"}
+ query = {'match': f"{match_filter} and {target}"}
if query_extra is not None:
query.update(query_extra)
url = self.makeurl(['search', 'request'], query)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20241121.c222573/publish_distro_conf/publish_leap-micro62.config
new/openSUSE-release-tools-20241219.396fe69/publish_distro_conf/publish_leap-micro62.config
---
old/openSUSE-release-tools-20241121.c222573/publish_distro_conf/publish_leap-micro62.config
1970-01-01 01:00:00.000000000 +0100
+++
new/openSUSE-release-tools-20241219.396fe69/publish_distro_conf/publish_leap-micro62.config
2024-12-19 09:12:15.000000000 +0100
@@ -0,0 +1,52 @@
+# vim:syntax=sh
+
+micro_version=6.2
+qu="" # empty string for GA, QuarterlyUpdate repins have -N in version
+logfile_base=~/publish_logs/$micro_version/$(date -d "$date" '+%Y/%m/%d/%H%M')
+synclog="${logfile_base}.log"
+deletelog="${logfile_base}-deletes.log"
+path="/distribution/leap-micro/$micro_version/product"
+flavors=(x86_64 aarch64)
+
+# openSUSE-Leap-Micro-6.1-aarch64-Build13.1.iso is the filename by
000productcompose
+get_version() {
+ # get expected version from first flavor
+ if [ -z "$version" ]; then
+ version=`echo
$stage/iso/openSUSE-Leap-Micro-$micro_version$qu-$flavor-Build[0123456789]*.[0123456789]*.iso`
+ version=${version##*Build}
+ version=${version%-*}
+ if [ -z "$version" ]; then
+ echo "no version found, exit." | tee -a $synclog
+ exit 1
+ fi
+ fi
+}
+
+get_iso()
+{
+ # openSUSE-Leap-Micro-6.1-aarch64-Build13.1.iso
+ iso="openSUSE-Leap-Micro-$micro_version$qu-$flavor-Build$version.iso"
+}
+
+get_iso_link()
+{
+ link="$stage/iso/openSUSE-Leap-$micro_version$qu-$flavor-Current.iso"
+}
+
+get_diff_url()
+{
+ url="$diff_url_base/$micro_version/diff/$version"
+}
+
+get_mark_published_url()
+{
+ url="$diff_url_base/$micro_version/current"
+}
+
+get_changes_filename()
+{
+ # ChangeLog files from obsgendiff are used instead
+ #changes="$changes_dir_base/jump/$jump_version/Changes.$version.txt"
+ :
+# changes="$changes_dir_base/leap/$micro_version/Changes.$version.txt"
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20241121.c222573/publish_distro_conf/publish_leap-micro62_appliances.config
new/openSUSE-release-tools-20241219.396fe69/publish_distro_conf/publish_leap-micro62_appliances.config
---
old/openSUSE-release-tools-20241121.c222573/publish_distro_conf/publish_leap-micro62_appliances.config
1970-01-01 01:00:00.000000000 +0100
+++
new/openSUSE-release-tools-20241219.396fe69/publish_distro_conf/publish_leap-micro62_appliances.config
2024-12-19 09:12:15.000000000 +0100
@@ -0,0 +1,57 @@
+# vim:syntax=sh
+
+micro_version=6.2
+logfile_base=~/publish_logs/$micro_version-appliances/$(date -d "$date"
'+%Y/%m/%d/%H%M')
+synclog="${logfile_base}.log"
+deletelog="${logfile_base}-deletes.log"
+path="/distribution/leap-micro/$micro_version/appliances"
+flavors=(Default-SelfInstall)
+repos=()
+extra_repos=()
+isodir=""
+
+get_version() {
+ # get expected version from first flavor
+ if [ -z "$version" ]; then
+ version=`echo
$stage/openSUSE-Leap-Micro.x86_64-$micro_version-$flavor-Build*.raw.xz`
+ version=${version##*Build}
+ version=${version%.*}
+ if [ -z "$version" ]; then
+ echo "no version found, exit." | tee -a $synclog
+ exit 1
+ fi
+ fi
+}
+
+_get_iso()
+{
+ local snapshot="$1"
+ local suffix=xz
+# echo
"openSUSE-Leap-Micro-$micro_version-JeOS.x86_64-$micro_version.0-$flavor-$snapshot.$suffix"
+ echo
"openSUSE-Leap-Micro.x86_64-$micro_version-$flavor-$snapshot.$suffix"
+}
+
+get_iso()
+{
+ iso=`_get_iso "Build$version"`
+}
+
+get_iso_link()
+{
+ link="$stage/`_get_iso Current`"
+}
+
+get_diff_url()
+{
+ url=""
+}
+
+get_mark_published_url()
+{
+ url=""
+}
+
+get_changes_filename()
+{
+ changes=""
+}
++++++ openSUSE-release-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.24b89n/_old 2024-12-29 11:56:16.447279519 +0100
+++ /var/tmp/diff_new_pack.24b89n/_new 2024-12-29 11:56:16.475280667 +0100
@@ -1,5 +1,5 @@
name: openSUSE-release-tools
-version: 20241121.c222573
-mtime: 1732174799
-commit: c22257344b21ba8fad541dbd917488aa70a7a725
+version: 20241219.396fe69
+mtime: 1734595935
+commit: 396fe6928fa0836660138f10f5abcf995c089c22