Hello community,
here is the log from the commit of package openSUSE-release-tools for
openSUSE:Factory checked in at 2018-03-13 10:23:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openSUSE-release-tools (Old)
and /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openSUSE-release-tools"
Tue Mar 13 10:23:46 2018 rev:69 rq:585797 version:20180312.35e7c51
Changes:
--------
---
/work/SRC/openSUSE:Factory/openSUSE-release-tools/openSUSE-release-tools.changes
2018-03-11 15:24:46.444242475 +0100
+++
/work/SRC/openSUSE:Factory/.openSUSE-release-tools.new/openSUSE-release-tools.changes
2018-03-13 10:23:57.653937317 +0100
@@ -1,0 +2,29 @@
+Mon Mar 12 09:42:07 UTC 2018 - [email protected]
+
+- Update to version 20180312.35e7c51:
+ * services: Add Install section to totest-manager service
+
+-------------------------------------------------------------------
+Sun Mar 11 08:31:32 UTC 2018 - [email protected]
+
+- Update to version 20180311.ad60562:
+ * ReviewBot: don't crash if staging-group is None
+ * check_source: make adding review team configurable
+ * check_source: fix boolean option
+ * pkglistgen: Fix reading boolean values
+
+-------------------------------------------------------------------
+Fri Mar 09 18:06:53 UTC 2018 - [email protected]
+
+- Update to version 20180309.d001daf:
+ * issue-diff: rename --config-dir as --cache-dir to be more accurate.
+ * issue-diff: replace git sync functionality with osclib.git.
+ * osclib/git: provide git utilities: clone() and sync().
+
+-------------------------------------------------------------------
+Fri Mar 09 11:12:04 UTC 2018 - [email protected]
+
+- Update to version 20180309.fe4edd6:
+ * Treat stagings differently
+
+-------------------------------------------------------------------
Old:
----
openSUSE-release-tools-20180309.7484722.obscpio
New:
----
openSUSE-release-tools-20180312.35e7c51.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openSUSE-release-tools.spec ++++++
--- /var/tmp/diff_new_pack.TXfRML/_old 2018-03-13 10:23:58.897892749 +0100
+++ /var/tmp/diff_new_pack.TXfRML/_new 2018-03-13 10:23:58.901892605 +0100
@@ -20,7 +20,7 @@
%define source_dir osc-plugin-factory
%define announcer_filename factory-package-news
Name: openSUSE-release-tools
-Version: 20180309.7484722
+Version: 20180312.35e7c51
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.TXfRML/_old 2018-03-13 10:23:58.957890599 +0100
+++ /var/tmp/diff_new_pack.TXfRML/_new 2018-03-13 10:23:58.957890599 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param
name="url">https://github.com/openSUSE/osc-plugin-factory.git</param>
- <param
name="changesrevision">7484722b2abe685a03cf783661bd23282a7db52f</param>
+ <param
name="changesrevision">f1e56df8b9e8a123911ec8e4f2b08dd6c27db8b4</param>
</service>
</servicedata>
++++++ openSUSE-release-tools-20180309.7484722.obscpio ->
openSUSE-release-tools-20180312.35e7c51.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/openSUSE-release-tools-20180309.7484722/ReviewBot.py
new/openSUSE-release-tools-20180312.35e7c51/ReviewBot.py
--- old/openSUSE-release-tools-20180309.7484722/ReviewBot.py 2018-03-09
11:00:05.000000000 +0100
+++ new/openSUSE-release-tools-20180312.35e7c51/ReviewBot.py 2018-03-12
10:26:07.000000000 +0100
@@ -169,7 +169,10 @@
self.staging_api(project)
config = self.staging_config[project]
- users = group_members(self.apiurl, config['staging-group'])
+ users = []
+ group = config.get('staging-group')
+ if group:
+ users += group_members(self.apiurl, group)
if self.override_group_key:
override_group = config.get(self.override_group_key)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180309.7484722/check_source.py
new/openSUSE-release-tools-20180312.35e7c51/check_source.py
--- old/openSUSE-release-tools-20180309.7484722/check_source.py 2018-03-09
11:00:05.000000000 +0100
+++ new/openSUSE-release-tools-20180312.35e7c51/check_source.py 2018-03-12
10:26:07.000000000 +0100
@@ -17,6 +17,7 @@
import urllib2
import ReviewBot
from check_maintenance_incidents import MaintenanceChecker
+from osclib.conf import str2bool
class CheckSource(ReviewBot.ReviewBot):
@@ -37,7 +38,8 @@
self.staging_api(project)
config = self.staging_config[project]
- self.ignore_devel = not bool(config.get('devel-project-enforce',
False))
+ self.ignore_devel = not str2bool(config.get('devel-project-enforce',
'False'))
+ self.add_review_team =
str2bool(config.get('check-source-add-review-team', 'True'))
self.review_team = config.get('review-team')
self.repo_checker = config.get('repo-checker')
self.devel_whitelist = config.get('devel-whitelist', '').split()
@@ -131,7 +133,7 @@
self.review_messages['accepted'] += "\n\nOutput of check script
(non-fatal):\n" + output
if not self.skip_add_reviews:
- if self.review_team is not None:
+ if self.add_review_team and self.review_team is not None:
self.add_review(self.request, by_group=self.review_team,
msg='Please review sources')
if self.only_changes():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180309.7484722/issue-diff.py
new/openSUSE-release-tools-20180312.35e7c51/issue-diff.py
--- old/openSUSE-release-tools-20180309.7484722/issue-diff.py 2018-03-09
11:00:05.000000000 +0100
+++ new/openSUSE-release-tools-20180312.35e7c51/issue-diff.py 2018-03-12
10:26:07.000000000 +0100
@@ -22,6 +22,8 @@
from osclib.cache import Cache
from osclib.core import package_list
+from osclib.git import CACHE_DIR
+from osclib.git import sync
# Issue summary can contain unicode characters and therefore a string
containing
# either summary or one in which ISSUE_SUMMARY is then placed must be unicode.
@@ -205,40 +207,6 @@
return issues
-def git_clone(url, directory):
- return_code = subprocess.call(['git', 'clone', url, directory])
- if return_code != 0:
- raise Exception('Failed to clone {}'.format(url))
-
-def sync(config_dir, db_dir):
- cwd = os.getcwd()
- devnull = open(os.devnull, 'wb')
-
- git_sync_dir = os.path.join(config_dir, 'git-sync')
- git_sync_exec = os.path.join(git_sync_dir, 'git-sync')
- if not os.path.exists(git_sync_dir):
- os.makedirs(git_sync_dir)
- git_clone('https://github.com/simonthum/git-sync.git', git_sync_dir)
- else:
- os.chdir(git_sync_dir)
- subprocess.call(['git', 'pull', 'origin', 'master'], stdout=devnull,
stderr=devnull)
-
- if not os.path.exists(db_dir):
- os.makedirs(db_dir)
-
git_clone('[email protected]:jberry-suse/osc-plugin-factory-issue-db.git', db_dir)
-
- os.chdir(db_dir)
- subprocess.call(['git', 'config', '--bool', 'branch.master.sync',
'true'])
- subprocess.call(['git', 'config', '--bool',
'branch.master.syncNewFiles', 'true'])
- subprocess.call(['git', 'config', 'branch.master.syncCommitMsg', 'Sync
issue-diff.py changes.'])
-
- os.chdir(db_dir)
- return_code = subprocess.call([git_sync_exec])
- if return_code != 0:
- raise Exception('Failed to sync local db changes.')
-
- os.chdir(cwd)
-
def print_stats(db):
bug_ids = []
reported = 0
@@ -273,9 +241,10 @@
Cache.init()
- db_dir = os.path.join(args.config_dir, 'issue-db')
+ git_repo_url =
'[email protected]:jberry-suse/osc-plugin-factory-issue-db.git'
+ git_message = 'Sync issue-diff.py changes.'
+ db_dir = sync(args.cache_dir, git_repo_url, git_message)
db_file = os.path.join(db_dir, '{}.yml'.format(args.project))
- sync(args.config_dir, db_dir)
if os.path.exists(db_file):
db = yaml.safe_load(open(db_file).read())
@@ -424,7 +393,7 @@
print('stopped at limit')
break
- sync(args.config_dir, db_dir)
+ sync(args.cache_dir, git_repo_url, git_message)
if __name__ == '__main__':
@@ -443,11 +412,11 @@
parser.add_argument('-p', '--project', default='SUSE:SLE-12-SP3:GA',
metavar='PROJECT', help='project to check for issues that have are not found in
factory')
parser.add_argument('--newest', type=int, default='30',
metavar='AGE_IN_DAYS', help='newest issues to be considered')
parser.add_argument('--limit', type=int, default='0', help='limit number
of packages with new issues processed')
- parser.add_argument('--config-dir', help='configuration directory
containing git-sync tool and issue db')
+ parser.add_argument('--cache-dir', help='cache directory containing
git-sync tool and issue db')
parser.add_argument('--print-stats', action='store_true', help='print
statistics based on database')
args = parser.parse_args()
- if args.config_dir is None:
- args.config_dir = os.path.expanduser('~/.osc-plugin-factory')
+ if args.cache_dir is None:
+ args.cache_dir = CACHE_DIR
sys.exit(main(args))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180309.7484722/osclib/conf.py
new/openSUSE-release-tools-20180312.35e7c51/osclib/conf.py
--- old/openSUSE-release-tools-20180309.7484722/osclib/conf.py 2018-03-09
11:00:05.000000000 +0100
+++ new/openSUSE-release-tools-20180312.35e7c51/osclib/conf.py 2018-03-12
10:26:07.000000000 +0100
@@ -73,6 +73,7 @@
'main-repo': 'standard',
'download-baseurl':
'http://download.opensuse.org/distribution/leap/%(version)s/',
'download-baseurl-update':
'http://download.opensuse.org/update/leap/%(version)s/',
+ 'check-source-add-review-team': 'False',
'review-team': 'opensuse-review-team',
'legal-review-group': 'legal-auto',
# check_source.py
@@ -169,6 +170,10 @@
#
+def str2bool(v):
+ return v.lower() in ("yes", "true", "t", "1")
+
+
class Config(object):
"""Helper class to configuration file."""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180309.7484722/osclib/git.py
new/openSUSE-release-tools-20180312.35e7c51/osclib/git.py
--- old/openSUSE-release-tools-20180309.7484722/osclib/git.py 1970-01-01
01:00:00.000000000 +0100
+++ new/openSUSE-release-tools-20180312.35e7c51/osclib/git.py 2018-03-12
10:26:07.000000000 +0100
@@ -0,0 +1,46 @@
+import os
+from os import path
+import subprocess
+from xdg.BaseDirectory import save_cache_path
+
+CACHE_DIR = save_cache_path('osc-plugin-factory', 'git')
+
+def clone(url, directory):
+ return_code = subprocess.call(['git', 'clone', url, directory])
+ if return_code != 0:
+ raise Exception('Failed to clone {}'.format(url))
+
+def sync(cache_dir, repo_url, message=None):
+ cwd = os.getcwd()
+ devnull = open(os.devnull, 'wb')
+
+ # Ensure git-sync tool is available.
+ git_sync_dir = path.join(cache_dir, 'git-sync')
+ git_sync_exec = path.join(git_sync_dir, 'git-sync')
+ if not path.exists(git_sync_dir):
+ os.makedirs(git_sync_dir)
+ clone('https://github.com/simonthum/git-sync.git', git_sync_dir)
+ else:
+ os.chdir(git_sync_dir)
+ subprocess.call(['git', 'pull', 'origin', 'master'], stdout=devnull,
stderr=devnull)
+
+ repo_name = path.basename(path.normpath(repo_url))
+ repo_dir = path.join(cache_dir, repo_name)
+ if not path.exists(repo_dir):
+ os.makedirs(repo_dir)
+ clone(repo_url, repo_dir)
+
+ os.chdir(repo_dir)
+ subprocess.call(['git', 'config', '--bool', 'branch.master.sync',
'true'])
+ subprocess.call(['git', 'config', '--bool',
'branch.master.syncNewFiles', 'true'])
+ if message:
+ subprocess.call(['git', 'config', 'branch.master.syncCommitMsg',
message])
+
+ os.chdir(repo_dir)
+ return_code = subprocess.call([git_sync_exec])
+ if return_code != 0:
+ raise Exception('failed to sync {}'.format(repo_name))
+
+ os.chdir(cwd)
+
+ return repo_dir
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180309.7484722/pkglistgen.py
new/openSUSE-release-tools-20180312.35e7c51/pkglistgen.py
--- old/openSUSE-release-tools-20180309.7484722/pkglistgen.py 2018-03-09
11:00:05.000000000 +0100
+++ new/openSUSE-release-tools-20180312.35e7c51/pkglistgen.py 2018-03-12
10:26:07.000000000 +0100
@@ -39,7 +39,7 @@
from osc.core import show_results_meta
from osc.core import undelete_package
from osc import conf
-from osclib.conf import Config
+from osclib.conf import Config, str2bool
from osclib.stagingapi import StagingAPI
from osclib.util import project_list_family
from osclib.util import project_list_family_prior
@@ -1156,6 +1156,7 @@
self.copy_directory_contents(group_dir, product_dir,
['supportstatus.txt', 'groups.yml',
'package-groups.changes'])
self.change_extension(product_dir, '.spec.in', '.spec')
+ self.change_extension(product_dir, '.product.in', '.product')
self.options.input_dir = group_dir
self.options.output_dir = product_dir
@@ -1185,9 +1186,9 @@
self.update_merge(nonfree if drop_list else False)
print('-> do_solve')
- opts.ignore_unresolvable =
bool(target_config.get('pkglistgen-ignore-unresolvable'))
- opts.ignore_recommended =
bool(target_config.get('pkglistgen-ignore-recommended'))
- opts.include_suggested =
bool(target_config.get('pkglistgen-include-suggested'))
+ opts.ignore_unresolvable =
str2bool(target_config.get('pkglistgen-ignore-unresolvable'))
+ opts.ignore_recommended =
str2bool(target_config.get('pkglistgen-ignore-recommended'))
+ opts.include_suggested =
str2bool(target_config.get('pkglistgen-include-suggested'))
opts.locale = target_config.get('pkglistgen-local')
opts.locales_from = target_config.get('pkglistgen-locales-from')
self.do_solve('solve', opts)
@@ -1223,6 +1224,8 @@
delete_kiwis =
target_config.get('pkglistgen-delete-kiwis-{}'.format(opts.scope), '').split('
')
self.unlink_list(product_dir, delete_kiwis)
+ if opts.scope == 'staging':
+ self.strip_medium_from_staging(product_dir)
spec_files = glob.glob(os.path.join(product_dir, '*.spec'))
if skip_release:
@@ -1297,6 +1300,16 @@
return prior
+ # staging projects don't need source and debug medium - and the glibc
source
+ # rpm conflicts between standard and bootstrap_copy repository causing the
+ # product builder to fail
+ def strip_medium_from_staging(self, path):
+ medium = re.compile('name="(DEBUG|SOURCE)MEDIUM"')
+ for name in glob.glob(os.path.join(path, '*.kiwi')):
+ lines = open(name).readlines()
+ lines = [l for l in lines if not medium.search(l)]
+ open(name, 'w').writelines(lines)
+
def move_list(self, file_list, destination):
for name in file_list:
os.rename(name, os.path.join(destination, os.path.basename(name)))
@@ -1335,7 +1348,7 @@
def multibuild_from_glob(self, destination, pathname):
root = ET.Element('multibuild')
- for name in glob.glob(os.path.join(destination, pathname)):
+ for name in sorted(glob.glob(os.path.join(destination, pathname))):
package = ET.SubElement(root, 'package')
package.text = os.path.splitext(os.path.basename(name))[0]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180309.7484722/systemd/[email protected]
new/openSUSE-release-tools-20180312.35e7c51/systemd/[email protected]
---
old/openSUSE-release-tools-20180309.7484722/systemd/[email protected]
2018-03-09 11:00:05.000000000 +0100
+++
new/openSUSE-release-tools-20180312.35e7c51/systemd/[email protected]
2018-03-12 10:26:07.000000000 +0100
@@ -6,3 +6,7 @@
User=osrt-totest-manager
WorkingDirectory=~
ExecStart=/usr/bin/osrt-totest-manager --verbose run --interval 5 "%i"
+
+[Install]
+WantedBy=multi-user.target
+
++++++ openSUSE-release-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.TXfRML/_old 2018-03-13 10:23:59.933855632 +0100
+++ /var/tmp/diff_new_pack.TXfRML/_new 2018-03-13 10:23:59.933855632 +0100
@@ -1,5 +1,5 @@
name: openSUSE-release-tools
-version: 20180309.7484722
-mtime: 1520589605
-commit: 7484722b2abe685a03cf783661bd23282a7db52f
+version: 20180312.35e7c51
+mtime: 1520846767
+commit: 35e7c51c1653c36d80cae97804d95f1f34ce9402