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-01-17 22:18:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openSUSE-release-tools (Old)
 and      /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new.16006 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "openSUSE-release-tools"

Wed Jan 17 22:18:23 2024 rev:519 rq:1139431 version:20240110.8329809

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/openSUSE-release-tools/openSUSE-release-tools.changes
    2023-12-20 21:02:46.075583559 +0100
+++ 
/work/SRC/openSUSE:Factory/.openSUSE-release-tools.new.16006/openSUSE-release-tools.changes
 2024-01-17 22:19:12.879626635 +0100
@@ -1,0 +2,23 @@
+Wed Jan 10 10:53:18 UTC 2024 - opensuse-releaset...@opensuse.org
+
+- Update to version 20240110.8329809:
+  * check_source.py: Use correct function for getting maintainer of the devel 
pkg
+  * Fix --osc-debug option with new osc
+
+-------------------------------------------------------------------
+Wed Jan 03 16:20:00 UTC 2024 - opensuse-releaset...@opensuse.org
+
+- Update to version 20240103.6ab1d35:
+  * Slightly more useful info logging for source changes
+  * use list comprehension instead of set comparison
+  * publish bci repo right away on package set changes
+  * Remove SP3 and SP4 BCI repos
+
+-------------------------------------------------------------------
+Wed Jan 03 11:05:55 UTC 2024 - opensuse-releaset...@opensuse.org
+
+- Update to version 20240103.6478168:
+  * Add timer to monitor release finished for SLE-Micro
+  * Create Staging pipelines for ALP Dolomite 1.0
+
+-------------------------------------------------------------------

Old:
----
  openSUSE-release-tools-20231213.02b3886.obscpio

New:
----
  openSUSE-release-tools-20240110.8329809.obscpio

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

Other differences:
------------------
++++++ openSUSE-release-tools.spec ++++++
--- /var/tmp/diff_new_pack.dFUV0l/_old  2024-01-17 22:19:14.067670289 +0100
+++ /var/tmp/diff_new_pack.dFUV0l/_new  2024-01-17 22:19:14.067670289 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package openSUSE-release-tools
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -20,7 +20,7 @@
 %define source_dir openSUSE-release-tools
 %define announcer_filename factory-package-news
 Name:           openSUSE-release-tools
-Version:        20231213.02b3886
+Version:        20240110.8329809
 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.dFUV0l/_old  2024-01-17 22:19:14.107671759 +0100
+++ /var/tmp/diff_new_pack.dFUV0l/_new  2024-01-17 22:19:14.111671906 +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">02b3886bf34722f94374432766a37e7630f5d835</param>
+    <param 
name="changesrevision">8329809782a420f197f3e7b17fd37ea864c13650</param>
   </service>
 </servicedata>
 

++++++ openSUSE-release-tools-20231213.02b3886.obscpio -> 
openSUSE-release-tools-20240110.8329809.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openSUSE-release-tools-20231213.02b3886/ReviewBot.py 
new/openSUSE-release-tools-20240110.8329809/ReviewBot.py
--- old/openSUSE-release-tools-20231213.02b3886/ReviewBot.py    2023-12-13 
08:16:21.000000000 +0100
+++ new/openSUSE-release-tools-20240110.8329809/ReviewBot.py    2024-01-10 
11:51:44.000000000 +0100
@@ -896,7 +896,7 @@
         conf.get_config(override_apiurl=self.options.apiurl)
 
         if (self.options.osc_debug):
-            conf.config['debug'] = 1
+            conf.config['debug'] = True
 
         self.checker = self.setup_checker()
         if self.options.config:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231213.02b3886/check_source.py 
new/openSUSE-release-tools-20240110.8329809/check_source.py
--- old/openSUSE-release-tools-20231213.02b3886/check_source.py 2023-12-13 
08:16:21.000000000 +0100
+++ new/openSUSE-release-tools-20240110.8329809/check_source.py 2024-01-10 
11:51:44.000000000 +0100
@@ -22,7 +22,7 @@
 from osclib.core import group_members
 from osclib.core import package_kind
 from osclib.core import create_add_role_request
-from osclib.core import maintainers_get
+from osclib.core import package_role_expand
 from osc.core import show_package_meta, show_project_meta
 from osc.core import get_request_list
 from urllib.error import HTTPError
@@ -300,7 +300,7 @@
             devel_project, devel_package = devel_project_fallback(self.apiurl, 
target_project, target_package)
             if devel_project and devel_package:
                 submitter = self.request.creator
-                maintainers = set(maintainers_get(self.apiurl, devel_project, 
devel_package))
+                maintainers = set(package_role_expand(self.apiurl, 
devel_project, devel_package))
                 known_maintainer = False
                 if maintainers:
                     if submitter in maintainers:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231213.02b3886/gocd/bci.gocd.yaml 
new/openSUSE-release-tools-20240110.8329809/gocd/bci.gocd.yaml
--- old/openSUSE-release-tools-20231213.02b3886/gocd/bci.gocd.yaml      
2023-12-13 08:16:21.000000000 +0100
+++ new/openSUSE-release-tools-20240110.8329809/gocd/bci.gocd.yaml      
2024-01-10 11:51:44.000000000 +0100
@@ -42,222 +42,6 @@
             - script: python3 ./pkglistgen.py -d -A https://api.opensuse.org 
update_and_solve -p devel:BCI -s target
 
 
-  SLE_BCI_15SP3.RelPkgs:
-    group: BCI
-    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.suse.de update_and_solve -p 
SUSE:SLE-15-SP3:Update:BCI -s target --only-release-packages --force
-
-  Pkglistgen.SLE_BCI_15SP3:
-    group: BCI
-    lock_behavior: unlockWhenFinished
-    timer:
-      spec: 0 10 * ? * *
-      only_on_changes: false
-    materials:
-      repos:
-        git: git://botmaster.suse.de/suse-repos.git
-        auto_update: true
-        destination: repos
-        whitelist:
-          - SUSE:SLE-15-SP3:Update_-_standard.yaml
-      scripts:
-        auto_update: true
-        git: https://github.com/openSUSE/openSUSE-release-tools.git
-        whitelist:
-          - DO_NOT_TRIGGER
-        destination: scripts
-    environment_variables:
-      OSC_CONFIG: /home/go/config/oscrc-staging-bot
-    stages:
-    - pkglistgen:
-        approval:
-          type: manual
-        jobs:
-          BCI_target:
-            resources:
-            - repo-checker
-            tasks:
-            - script: ./scripts/pkglistgen.py -d -A https://api.suse.de 
update_and_solve -p SUSE:SLE-15-SP3:Update:BCI -s target
-    - Expect.Images.To.Finish:
-        resources:
-        - staging-bot
-        tasks:
-        - script: |
-            export PYTHONPATH=scripts
-            ./scripts/gocd/verify-repo-built-successful.py -A 
https://api.suse.de -p  SUSE:SLE-15-SP3:Update:BCI -r images
-
-    - Release.Images.to.Product:
-        approval: manual
-        roles:
-        - SLE
-        environment_variables:
-          OSC_CONFIG: /home/go/config/oscrc-totest-manager
-          BCI_TOKEN: '{{SECRET:[opensuse.secrets][BCI_TOKEN]}}'
-        resources:
-        - staging-bot
-        tasks:
-        # can't use osc command due to 
https://github.com/openSUSE/osc/issues/1194
-        - script: |-
-            SPRJ=SUSE:SLE-15-SP3:Update:BCI
-            for arch in aarch64 ppc64le s390x x86_64 ; do
-              PKG="000product:SLE_BCI-ftp-POOL-$arch"
-              PRJ="SUSE:Products:SLE-BCI:15-SP3:$arch"
-              curl -X POST -H "Authorization: Token $BCI_TOKEN" 
"https://api.suse.de/trigger/release?project=${SPRJ}&package=${PKG}&targetproject=${PRJ}&targetrepository=images&filter_source_repository=images";
-            done
-            for arch in aarch64 ppc64le s390x x86_64 ; do
-              sleep 600
-              while (osc -A https://api.suse.de/ api 
"/build/$PRJ/_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/$PRJ/_result?view=summary&repository=images" | grep "result project" | 
grep 'code="published" state="published">' && echo PUBLISHED
-            done
-
-  SLE_BCI_15SP3.RepoPublisher:
-    group: BCI
-    lock_behavior: unlockWhenFinished
-    timer:
-      spec: 0 23 * ? * *
-      only_on_changes: false
-    materials:
-      git:
-        git: https://github.com/openSUSE/openSUSE-release-tools.git
-        destination: scripts
-    environment_variables:
-        OSC_CONFIG: /home/go/config/oscrc-totest-manager
-        BCI_TOKEN: '{{SECRET:[opensuse.secrets][BCI_TOKEN]}}'
-    stages:
-    - Run:
-        approval: manual
-        resources:
-        - staging-bot
-        tasks:
-        - script: |
-            export PYTHONPATH=scripts
-            ./scripts/gocd/bci_repo_publish.py -A https://api.suse.de 
--verbose --debug run "--token=$BCI_TOKEN" 15-SP3
-
-  SLE_BCI_15SP4.RelPkgs:
-    group: BCI
-    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.suse.de update_and_solve -p 
SUSE:SLE-15-SP4:Update:BCI -s target --only-release-packages --force
-
-  Pkglistgen.SLE_BCI_15SP4:
-    group: BCI
-    lock_behavior: unlockWhenFinished
-    timer:
-      spec: 0 10 * ? * *
-      only_on_changes: false
-    materials:
-      repos:
-        git: git://botmaster.suse.de/suse-repos.git
-        auto_update: true
-        destination: repos
-        whitelist:
-          - SUSE:SLE-15-SP4:Update_-_standard.yaml
-      scripts:
-        auto_update: true
-        git: https://github.com/openSUSE/openSUSE-release-tools.git
-        whitelist:
-          - DO_NOT_TRIGGER
-        destination: scripts
-    environment_variables:
-      OSC_CONFIG: /home/go/config/oscrc-staging-bot
-    stages:
-    - pkglistgen:
-        approval:
-          type: manual
-        jobs:
-          BCI_target:
-            resources:
-            - repo-checker
-            tasks:
-            - script: ./scripts/pkglistgen.py -d -A https://api.suse.de 
update_and_solve -p SUSE:SLE-15-SP4:Update:BCI -s target
-    - Expect.Images.To.Finish:
-        resources:
-        - staging-bot
-        tasks:
-        - script: |
-            export PYTHONPATH=scripts
-            ./scripts/gocd/verify-repo-built-successful.py -A 
https://api.suse.de -p  SUSE:SLE-15-SP4:Update:BCI -r images
-
-    - Release.Images.to.Product:
-        approval: manual
-        roles:
-        - SLE
-        environment_variables:
-          OSC_CONFIG: /home/go/config/oscrc-totest-manager
-          BCI_TOKEN: '{{SECRET:[opensuse.secrets][BCI_TOKEN]}}'
-        resources:
-        - staging-bot
-        tasks:
-        # can't use osc command due to 
https://github.com/openSUSE/osc/issues/1194
-        - script: |-
-            SPRJ=SUSE:SLE-15-SP4:Update:BCI
-            for arch in aarch64 ppc64le s390x x86_64 ; do
-              PKG="000product:SLE_BCI-ftp-POOL-$arch"
-              PRJ="SUSE:Products:SLE-BCI:15-SP4:$arch"
-              curl -X POST -H "Authorization: Token $BCI_TOKEN" 
"https://api.suse.de/trigger/release?project=${SPRJ}&package=${PKG}&targetproject=${PRJ}&targetrepository=images&filter_source_repository=images";
-            done
-            for arch in aarch64 ppc64le s390x x86_64 ; do
-              sleep 600
-              while (osc -A https://api.suse.de/ api 
"/build/$PRJ/_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/$PRJ/_result?view=summary&repository=images" | grep "result project" | 
grep 'code="published" state="published">' && echo PUBLISHED
-            done
-
-  SLE_BCI_15SP4.RepoPublisher:
-    group: BCI
-    lock_behavior: unlockWhenFinished
-    timer:
-      spec: 0 23 * ? * *
-      only_on_changes: false
-    materials:
-      git:
-        git: https://github.com/openSUSE/openSUSE-release-tools.git
-        destination: scripts
-    environment_variables:
-        OSC_CONFIG: /home/go/config/oscrc-totest-manager
-        BCI_TOKEN: '{{SECRET:[opensuse.secrets][BCI_TOKEN]}}'
-    stages:
-    - Run:
-        approval: manual
-        resources:
-        - staging-bot
-        tasks:
-        - script: |
-            export PYTHONPATH=scripts
-            ./scripts/gocd/bci_repo_publish.py -A https://api.suse.de 
--verbose --debug run "--token=$BCI_TOKEN" 15-SP4
-
   SLE_BCI_15SP5.RelPkgs:
     group: BCI
     lock_behavior: unlockWhenFinished
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231213.02b3886/gocd/bci.gocd.yaml.erb 
new/openSUSE-release-tools-20240110.8329809/gocd/bci.gocd.yaml.erb
--- old/openSUSE-release-tools-20231213.02b3886/gocd/bci.gocd.yaml.erb  
2023-12-13 08:16:21.000000000 +0100
+++ new/openSUSE-release-tools-20240110.8329809/gocd/bci.gocd.yaml.erb  
2024-01-10 11:51:44.000000000 +0100
@@ -41,7 +41,7 @@
             tasks:
             - script: python3 ./pkglistgen.py -d -A https://api.opensuse.org 
update_and_solve -p devel:BCI -s target
 
-<% ['SP3', 'SP4', 'SP5', 'SP6'].each do |sp| %>
+<% ['SP5', 'SP6'].each do |sp| %>
   SLE_BCI_15<%= sp %>.RelPkgs:
     group: BCI
     lock_behavior: unlockWhenFinished
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231213.02b3886/gocd/bci_repo_publish.py 
new/openSUSE-release-tools-20240110.8329809/gocd/bci_repo_publish.py
--- old/openSUSE-release-tools-20231213.02b3886/gocd/bci_repo_publish.py        
2023-12-13 08:16:21.000000000 +0100
+++ new/openSUSE-release-tools-20240110.8329809/gocd/bci_repo_publish.py        
2024-01-10 11:51:44.000000000 +0100
@@ -39,6 +39,16 @@
 
         raise RuntimeError(f"Failed to get version of {project}/{package}")
 
+    def srcmd5_of_product(self, project, package):
+        """Get the srcmd5 of the given source package."""
+        # convert to the base package (without multibuild flavor)
+        package = package.partition(':')[0]
+        url = makeurl(self.apiurl, ['source', project, package])
+        root = ET.parse(http_GET(url)).getroot()
+        if root.tag == 'directory' and 'srcmd5' in root.attrib:
+            return root.attrib['srcmd5']
+        raise RuntimeError(f"Failed to get srcmd5 of {project}/{package}")
+
     def mtime_of_product(self, project, package, repo, arch):
         """Get the build time stamp of the given product, based on 
_buildenv."""
         url = makeurl(self.apiurl, ['build', project, repo, arch, package])
@@ -104,12 +114,16 @@
         # After release, the BuildXXX part vanishes, so the mtime has to be
         # used instead for comparing built and published binaries.
         for pkg in packages:
-            pkg['built_version'] = self.version_of_product(pkg['build_prj'], 
pkg['name'],
-                                                           'images', 'local')
-            pkg['built_mtime'] = self.mtime_of_product(pkg['build_prj'], 
pkg['name'],
-                                                       'images', 'local')
-            pkg['published_mtime'] = self.mtime_of_product(pkg['publish_prj'], 
pkg['name'],
-                                                           'images', 'local')
+            pkg['built_srcmd5'] = self.srcmd5_of_product(
+                pkg['build_prj'], pkg['name'])
+            pkg['published_srcmd5'] = self.srcmd5_of_product(
+                pkg['publish_prj'], pkg['name'])
+            pkg['built_version'] = self.version_of_product(
+                pkg['build_prj'], pkg['name'], 'images', 'local')
+            pkg['built_mtime'] = self.mtime_of_product(
+                pkg['build_prj'], pkg['name'], 'images', 'local')
+            pkg['published_mtime'] = self.mtime_of_product(
+                pkg['publish_prj'], pkg['name'], 'images', 'local')
 
         # Verify that the builds for all archs are in sync
         built_versions = {pkg['built_version'] for pkg in packages}
@@ -126,11 +140,18 @@
             return
 
         # If the last published build is less than a day old, don't publish
-        newest_published_mtime = max([int(pkg['published_mtime']) for pkg in 
packages])
-        published_build_age_hours = int(time.time() - newest_published_mtime) 
// (60 * 60)
-        if published_build_age_hours < 24:
-            self.logger.info('Current published build less than a day old '
-                             f'({published_build_age_hours}h).')
+        oldest_published_mtime = min([int(pkg['published_mtime']) for pkg in 
packages])
+        published_build_age_hours = int(time.time() - oldest_published_mtime) 
// (60 * 60)
+        pending_source_changes = [
+            f"{pkg['name']}: {pkg['built_srcmd5']}/{pkg['published_srcmd5']}"
+            for pkg in packages if pkg['built_srcmd5'] != 
pkg['published_srcmd5']]
+        if pending_source_changes:
+            self.logger.info(f"Pending source changes to published, skipping 
waiting for 24h: {pending_source_changes}")
+            # If the source commit different than the published version, we
+            # do not wait for 24h for a publish as there was a package 
addition or removal change
+            pass
+        elif published_build_age_hours < 24:
+            self.logger.info(f'Oldest published build is only 
{published_build_age_hours}h old, not publishing yet.')
             return
 
         # Check openQA results
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231213.02b3886/gocd/checkers.alp.gocd.yaml 
new/openSUSE-release-tools-20240110.8329809/gocd/checkers.alp.gocd.yaml
--- old/openSUSE-release-tools-20231213.02b3886/gocd/checkers.alp.gocd.yaml     
2023-12-13 08:16:21.000000000 +0100
+++ new/openSUSE-release-tools-20240110.8329809/gocd/checkers.alp.gocd.yaml     
2024-01-10 11:51:44.000000000 +0100
@@ -1,5 +1,60 @@
 format_version: 3
 pipelines:
+  ALP.Dolomite.Project:
+    group: ALP.Checkers
+    lock_behavior: unlockWhenFinished
+    timer:
+      spec: 0 0 * ? * *
+      only_on_changes: false
+    materials:
+      git:
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+    environment_variables:
+      OSC_CONFIG: /home/go/config/oscrc-repo-checker
+    stages:
+    - Run:
+        timeout: 30
+        approval: manual
+        jobs:
+          ALP.Dolomite:
+            resources:
+            - repo-checker
+            tasks:
+            - script: ./project-installcheck.py -A https://api.suse.de --debug 
check --store SUSE:ALP:Products:Dolomite:1.0:Staging/dashboard --no-rebuild 
SUSE:ALP:Products:Dolomite:1.0
+  ALP.Dolomite.Staging.Bot.Regular:
+    group: ALP.Checkers
+    lock_behavior: unlockWhenFinished
+    timer:
+      spec: 0 0 * ? * *
+    environment_variables:
+      OSC_CONFIG: /home/go/config/oscrc-staging-bot
+    materials:
+      git:
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+    stages:
+    - Run:
+        approval:
+          type: manual
+        jobs:
+          Run:
+            timeout: 30
+            resources:
+            - staging-bot
+            tasks:
+            - script: |-
+                set -e
+                tempdir=$(mktemp -d)
+                mkdir -p $tempdir/.osc-plugins
+                ln -s $PWD/osc-staging.py $tempdir/.osc-plugins
+                ln -s $PWD/osclib $tempdir/.osc-plugins
+                export HOME=$tempdir
+
+                osc -A https://api.suse.de staging -p 
SUSE:ALP:Products:Dolomite:1.0 rebuild
+                osc -A https://api.suse.de staging -p 
SUSE:ALP:Products:Dolomite:1.0 list --supersede
+                osc -A https://api.suse.de staging -p 
SUSE:ALP:Products:Dolomite:1.0 select --non-interactive --merge --try-strategies
+                osc -A https://api.suse.de staging -p 
SUSE:ALP:Products:Dolomite:1.0 unselect --cleanup
+                osc -A https://api.suse.de staging -p 
SUSE:ALP:Products:Dolomite:1.0 repair --cleanup
+                rm -rf $tempdir
   ALP.Source.Standard.1_0.Staging.Bot.Regular:
     group: ALP.Checkers
     lock_behavior: unlockWhenFinished
@@ -33,6 +88,27 @@
                 osc -A https://api.suse.de staging -p 
SUSE:ALP:Source:Standard:1.0 unselect --cleanup
                 osc -A https://api.suse.de staging -p 
SUSE:ALP:Source:Standard:1.0 repair --cleanup
                 rm -rf $tempdir
+  ALP.Dolomite.Staging.Bot.Report:
+    group: ALP.Checkers
+    lock_behavior: unlockWhenFinished
+    timer:
+      spec: 0 */3 * ? * *
+    environment_variables:
+      OSC_CONFIG: /home/go/config/oscrc-staging-bot
+    materials:
+      git:
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+    stages:
+    - Run:
+        approval:
+          type: manual
+        jobs:
+          Run:
+            timeout: 30
+            resources:
+            - staging-bot
+            tasks:
+            - script: ./staging-report.py --debug -A https://api.suse.de -p 
SUSE:ALP:Products:Dolomite:1.0
   ALP.Source.Standard.1_0.Staging.Bot.Report:
     group: ALP.Checkers
     lock_behavior: unlockWhenFinished
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231213.02b3886/gocd/checkers.alp.gocd.yaml.erb 
new/openSUSE-release-tools-20240110.8329809/gocd/checkers.alp.gocd.yaml.erb
--- old/openSUSE-release-tools-20231213.02b3886/gocd/checkers.alp.gocd.yaml.erb 
2023-12-13 08:16:21.000000000 +0100
+++ new/openSUSE-release-tools-20240110.8329809/gocd/checkers.alp.gocd.yaml.erb 
2024-01-10 11:51:44.000000000 +0100
@@ -1,5 +1,60 @@
 format_version: 3
 pipelines:
+  ALP.Dolomite.Project:
+    group: ALP.Checkers
+    lock_behavior: unlockWhenFinished
+    timer:
+      spec: 0 0 * ? * *
+      only_on_changes: false
+    materials:
+      git:
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+    environment_variables:
+      OSC_CONFIG: /home/go/config/oscrc-repo-checker
+    stages:
+    - Run:
+        timeout: 30
+        approval: manual
+        jobs:
+          ALP.Dolomite:
+            resources:
+            - repo-checker
+            tasks:
+            - script: ./project-installcheck.py -A https://api.suse.de --debug 
check --store SUSE:ALP:Products:Dolomite:1.0:Staging/dashboard --no-rebuild 
SUSE:ALP:Products:Dolomite:1.0
+  ALP.Dolomite.Staging.Bot.Regular:
+    group: ALP.Checkers
+    lock_behavior: unlockWhenFinished
+    timer:
+      spec: 0 0 * ? * *
+    environment_variables:
+      OSC_CONFIG: /home/go/config/oscrc-staging-bot
+    materials:
+      git:
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+    stages:
+    - Run:
+        approval:
+          type: manual
+        jobs:
+          Run:
+            timeout: 30
+            resources:
+            - staging-bot
+            tasks:
+            - script: |-
+                set -e
+                tempdir=$(mktemp -d)
+                mkdir -p $tempdir/.osc-plugins
+                ln -s $PWD/osc-staging.py $tempdir/.osc-plugins
+                ln -s $PWD/osclib $tempdir/.osc-plugins
+                export HOME=$tempdir
+
+                osc -A https://api.suse.de staging -p 
SUSE:ALP:Products:Dolomite:1.0 rebuild
+                osc -A https://api.suse.de staging -p 
SUSE:ALP:Products:Dolomite:1.0 list --supersede
+                osc -A https://api.suse.de staging -p 
SUSE:ALP:Products:Dolomite:1.0 select --non-interactive --merge --try-strategies
+                osc -A https://api.suse.de staging -p 
SUSE:ALP:Products:Dolomite:1.0 unselect --cleanup
+                osc -A https://api.suse.de staging -p 
SUSE:ALP:Products:Dolomite:1.0 repair --cleanup
+                rm -rf $tempdir
   ALP.Source.Standard.1_0.Staging.Bot.Regular:
     group: ALP.Checkers
     lock_behavior: unlockWhenFinished
@@ -33,6 +88,27 @@
                 osc -A https://api.suse.de staging -p 
SUSE:ALP:Source:Standard:1.0 unselect --cleanup
                 osc -A https://api.suse.de staging -p 
SUSE:ALP:Source:Standard:1.0 repair --cleanup
                 rm -rf $tempdir
+  ALP.Dolomite.Staging.Bot.Report:
+    group: ALP.Checkers
+    lock_behavior: unlockWhenFinished
+    timer:
+      spec: 0 */3 * ? * *
+    environment_variables:
+      OSC_CONFIG: /home/go/config/oscrc-staging-bot
+    materials:
+      git:
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+    stages:
+    - Run:
+        approval:
+          type: manual
+        jobs:
+          Run:
+            timeout: 30
+            resources:
+            - staging-bot
+            tasks:
+            - script: ./staging-report.py --debug -A https://api.suse.de -p 
SUSE:ALP:Products:Dolomite:1.0
   ALP.Source.Standard.1_0.Staging.Bot.Report:
     group: ALP.Checkers
     lock_behavior: unlockWhenFinished
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231213.02b3886/gocd/dolomite-stagings.gocd.yaml 
new/openSUSE-release-tools-20240110.8329809/gocd/dolomite-stagings.gocd.yaml
--- 
old/openSUSE-release-tools-20231213.02b3886/gocd/dolomite-stagings.gocd.yaml    
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/openSUSE-release-tools-20240110.8329809/gocd/dolomite-stagings.gocd.yaml    
    2024-01-10 11:51:44.000000000 +0100
@@ -0,0 +1,154 @@
+---
+format_version: 3
+pipelines:
+  Dolomite.Stagings.RelPkgs:
+    environment_variables:
+      OSC_CONFIG: /home/go/config/oscrc-staging-bot
+    group: ALP.Target
+    lock_behavior: unlockWhenFinished
+    timer:
+      spec: 0 0 * ? * *
+      only_on_changes: false
+    materials:
+      scripts:
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+    stages:
+    - Generate.Release.Package:
+        approval: manual
+        jobs:
+          Dolomite.Staging.A:
+            resources:
+              - repo-checker
+            tasks:
+              - script: ./pkglistgen.py -A https://api.suse.de update_and_solve
+                  --staging SUSE:ALP:Products:Dolomite:1.0:Staging:A
+                  --only-release-packages --force
+          Dolomite.Staging.B:
+            resources:
+              - repo-checker
+            tasks:
+              - script: ./pkglistgen.py -A https://api.suse.de update_and_solve
+                  --staging SUSE:ALP:Products:Dolomite:1.0:Staging:B
+                  --only-release-packages --force
+
+  Dolomite.Staging.A:
+    environment_variables:
+      STAGING_PROJECT: SUSE:ALP:Products:Dolomite:1.0:Staging:A
+      STAGING_API: https://api.suse.de
+      OSC_CONFIG: /home/go/config/oscrc-staging-bot
+    group: ALP.Target
+    lock_behavior: unlockWhenFinished
+    materials:
+      stagings:
+        git: git://botmaster.suse.de/suse-repos.git
+        auto_update: true
+        destination: repos
+        whitelist:
+          - SUSE:ALP:Products:Dolomite:1.0:Staging:A_-_standard.yaml
+      scripts:
+        auto_update: true
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+        whitelist:
+          - DO_NOT_TRIGGER
+        destination: scripts
+    stages:
+    - Checks:
+        jobs:
+          Check.Build.Succeeds:
+            resources:
+              - staging-bot
+            tasks:
+              - script: |-
+                  export PYTHONPATH=$PWD/scripts
+                  cd scripts/gocd
+                  ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n 
packagelists -r standard -s pending
+                  ./verify-repo-built-successful.py -A $STAGING_API -p 
$STAGING_PROJECT -r standard
+          Repo.Checker:
+            environment_variables:
+              OSC_CONFIG: /home/go/config/oscrc-staging-bot
+            resources:
+              - repo-checker
+            tasks:
+              - script: ./scripts/staging-installcheck.py -A $STAGING_API -p 
SUSE:ALP:Products:Dolomite:1.0 -s $STAGING_PROJECT
+    - Update.000product:
+        resources:
+          - repo-checker
+        tasks:
+          - script: |-
+              export PYTHONPATH=$PWD/scripts
+              cd scripts/gocd
+
+              if ../pkglistgen.py --debug -A $STAGING_API update_and_solve 
--staging $STAGING_PROJECT --force; then
+                ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n 
packagelists -r standard -s success
+              else
+                ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n 
packagelists -r standard -s failure
+                exit 1
+              fi
+
+    - Enable.images.repo:
+        resources:
+          - staging-bot
+        tasks:
+          - script: |-
+              osc -A $STAGING_API api -X POST 
"/source/$STAGING_PROJECT?cmd=remove_flag&repository=images&flag=build"
+
+  Dolomite.Staging.B:
+    environment_variables:
+      STAGING_PROJECT: SUSE:ALP:Products:Dolomite:1.0:Staging:B
+      STAGING_API: https://api.suse.de
+      OSC_CONFIG: /home/go/config/oscrc-staging-bot
+    group: ALP.Target
+    lock_behavior: unlockWhenFinished
+    materials:
+      stagings:
+        git: git://botmaster.suse.de/suse-repos.git
+        auto_update: true
+        destination: repos
+        whitelist:
+          - SUSE:ALP:Products:Dolomite:1.0:Staging:B_-_standard.yaml
+      scripts:
+        auto_update: true
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+        whitelist:
+          - DO_NOT_TRIGGER
+        destination: scripts
+    stages:
+    - Checks:
+        jobs:
+          Check.Build.Succeeds:
+            resources:
+              - staging-bot
+            tasks:
+              - script: |-
+                  export PYTHONPATH=$PWD/scripts
+                  cd scripts/gocd
+                  ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n 
packagelists -r standard -s pending
+                  ./verify-repo-built-successful.py -A $STAGING_API -p 
$STAGING_PROJECT -r standard
+          Repo.Checker:
+            environment_variables:
+              OSC_CONFIG: /home/go/config/oscrc-staging-bot
+            resources:
+              - repo-checker
+            tasks:
+              - script: ./scripts/staging-installcheck.py -A $STAGING_API -p 
SUSE:ALP:Products:Dolomite:1.0 -s $STAGING_PROJECT
+    - Update.000product:
+        resources:
+          - repo-checker
+        tasks:
+          - script: |-
+              export PYTHONPATH=$PWD/scripts
+              cd scripts/gocd
+
+              if ../pkglistgen.py --debug -A $STAGING_API update_and_solve 
--staging $STAGING_PROJECT --force; then
+                ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n 
packagelists -r standard -s success
+              else
+                ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n 
packagelists -r standard -s failure
+                exit 1
+              fi
+
+    - Enable.images.repo:
+        resources:
+          - staging-bot
+        tasks:
+          - script: |-
+              osc -A $STAGING_API api -X POST 
"/source/$STAGING_PROJECT?cmd=remove_flag&repository=images&flag=build"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231213.02b3886/gocd/dolomite-stagings.gocd.yaml.erb
 
new/openSUSE-release-tools-20240110.8329809/gocd/dolomite-stagings.gocd.yaml.erb
--- 
old/openSUSE-release-tools-20231213.02b3886/gocd/dolomite-stagings.gocd.yaml.erb
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/openSUSE-release-tools-20240110.8329809/gocd/dolomite-stagings.gocd.yaml.erb
    2024-01-10 11:51:44.000000000 +0100
@@ -0,0 +1,90 @@
+---
+<% stagings = %w(A B) -%>
+format_version: 3
+pipelines:
+  Dolomite.Stagings.RelPkgs:
+    environment_variables:
+      OSC_CONFIG: /home/go/config/oscrc-staging-bot
+    group: ALP.Target
+    lock_behavior: unlockWhenFinished
+    timer:
+      spec: 0 0 * ? * *
+      only_on_changes: false
+    materials:
+      scripts:
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+    stages:
+    - Generate.Release.Package:
+        approval: manual
+        jobs:
+<% stagings.each do |letter| -%>
+          Dolomite.Staging.<%= letter %>:
+            resources:
+              - repo-checker
+            tasks:
+              - script: ./pkglistgen.py -A https://api.suse.de update_and_solve
+                  --staging SUSE:ALP:Products:Dolomite:1.0:Staging:<%= letter 
%>
+                  --only-release-packages --force
+<% end -%>
+<% stagings.each do |letter| %>
+  Dolomite.Staging.<%= letter %>:
+    environment_variables:
+      STAGING_PROJECT: SUSE:ALP:Products:Dolomite:1.0:Staging:<%= letter %>
+      STAGING_API: https://api.suse.de
+      OSC_CONFIG: /home/go/config/oscrc-staging-bot
+    group: ALP.Target
+    lock_behavior: unlockWhenFinished
+    materials:
+      stagings:
+        git: git://botmaster.suse.de/suse-repos.git
+        auto_update: true
+        destination: repos
+        whitelist:
+          - SUSE:ALP:Products:Dolomite:1.0:Staging:<%= letter 
%>_-_standard.yaml
+      scripts:
+        auto_update: true
+        git: https://github.com/openSUSE/openSUSE-release-tools.git
+        whitelist:
+          - DO_NOT_TRIGGER
+        destination: scripts
+    stages:
+    - Checks:
+        jobs:
+          Check.Build.Succeeds:
+            resources:
+              - staging-bot
+            tasks:
+              - script: |-
+                  export PYTHONPATH=$PWD/scripts
+                  cd scripts/gocd
+                  ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n 
packagelists -r standard -s pending
+                  ./verify-repo-built-successful.py -A $STAGING_API -p 
$STAGING_PROJECT -r standard
+          Repo.Checker:
+            environment_variables:
+              OSC_CONFIG: /home/go/config/oscrc-staging-bot
+            resources:
+              - repo-checker
+            tasks:
+              - script: ./scripts/staging-installcheck.py -A $STAGING_API -p 
SUSE:ALP:Products:Dolomite:1.0 -s $STAGING_PROJECT
+    - Update.000product:
+        resources:
+          - repo-checker
+        tasks:
+          - script: |-
+              export PYTHONPATH=$PWD/scripts
+              cd scripts/gocd
+
+              if ../pkglistgen.py --debug -A $STAGING_API update_and_solve 
--staging $STAGING_PROJECT --force; then
+                ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n 
packagelists -r standard -s success
+              else
+                ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n 
packagelists -r standard -s failure
+                exit 1
+              fi
+
+    - Enable.images.repo:
+        resources:
+          - staging-bot
+        tasks:
+          - script: |-
+              osc -A $STAGING_API api -X POST 
"/source/$STAGING_PROJECT?cmd=remove_flag&repository=images&flag=build"
+<% end -%>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20231213.02b3886/gocd/microos.target.gocd.yaml 
new/openSUSE-release-tools-20240110.8329809/gocd/microos.target.gocd.yaml
--- old/openSUSE-release-tools-20231213.02b3886/gocd/microos.target.gocd.yaml   
2023-12-13 08:16:21.000000000 +0100
+++ new/openSUSE-release-tools-20240110.8329809/gocd/microos.target.gocd.yaml   
2024-01-10 11:51:44.000000000 +0100
@@ -40,6 +40,12 @@
             for product in 000product SLE-Micro; do
               osc -A https://api.suse.de release SUSE:ALP:Products:Marble:6.0 
$product
             done
+            sleep 600
+            while (osc -A https://api.suse.de/ api 
"/build/SUSE:ALP:Products:Marble:6.0:ToTest/_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:ALP:Products:Marble:6.0:ToTest/_result?view=summary&repository=images"
 | grep "result project" | grep 'code="published" state="published">' && echo 
PUBLISHED
 
     - Release.Images.To.Publish:
         approval: manual
@@ -50,4 +56,11 @@
         resources:
         - staging-bot
         tasks:
-        - script: osc -A https://api.suse.de release 
SUSE:ALP:Products:Marble:6.0:ToTest
+        - script: |-
+            osc -A https://api.suse.de release 
SUSE:ALP:Products:Marble:6.0:ToTest
+            sleep 600
+            while (osc -A https://api.suse.de/ api 
"/build/SUSE:ALP:Products:Marble:6.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:ALP:Products:Marble:6.0:PUBLISH/_result?view=summary&repository=images"
 | grep "result project" | grep 'code="published" state="published">' && echo 
PUBLISHED

++++++ openSUSE-release-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.dFUV0l/_old  2024-01-17 22:19:17.287788612 +0100
+++ /var/tmp/diff_new_pack.dFUV0l/_new  2024-01-17 22:19:17.291788758 +0100
@@ -1,5 +1,5 @@
 name: openSUSE-release-tools
-version: 20231213.02b3886
-mtime: 1702451781
-commit: 02b3886bf34722f94374432766a37e7630f5d835
+version: 20240110.8329809
+mtime: 1704883904
+commit: 8329809782a420f197f3e7b17fd37ea864c13650
 

Reply via email to