Makefile
by Luke Macken
Makefile | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
New commits:
commit c9809c3bf7178c038fb240a4af41adb691351630
Author: Till Maas <opensource(a)till.name>
Date: Tue Jul 6 22:24:56 2010 +0200
make init: download pickle data only when needed
Using wget -N the pickle data is only downloaded when the remote file is
newer than the local one. Also the pickle data tarball is now removed in
the clean target.
diff --git a/Makefile b/Makefile
index 202b5f2..ad4923a 100644
--- a/Makefile
+++ b/Makefile
@@ -22,6 +22,7 @@ todo:
clean:
find . -name '*.pyc' | xargs rm -f
rm -rf virtenv
+ rm bodhi-pickledb.tar.bz2
dist:
python setup.py sdist --formats=bztar
@@ -47,10 +48,11 @@ pyflakes:
find . -name '*.py' | xargs pyflakes
init:
- curl -O https://fedorahosted.org/releases/b/o/bodhi/bodhi-pickledb.tar.bz2
+ wget -N https://fedorahosted.org/releases/b/o/bodhi/bodhi-pickledb.tar.bz2
tar -jxvf bodhi-pickledb.tar.bz2
- rm bodhi-pickledb.tar.bz2
- tg-admin --config=bodhi.cfg sql create && bodhi/tools/init.py && bodhi/tools/dev_init.py && bodhi/tools/pickledb.py load bodhi-pickledb*
+ tg-admin --config=bodhi.cfg sql create && bodhi/tools/init.py && bodhi/tools/dev_init.py && bodhi/tools/pickledb.py load bodhi-pickledb-*
+ # remove the untared pickledb
+ rm bodhi-pickledb-*
run:
python start-bodhi
13 years, 11 months
bodhi/controllers.py
by Luke Macken
bodhi/controllers.py | 8 ++++++++
1 file changed, 8 insertions(+)
New commits:
commit b2599fb5684b07a91e99632325ab3c01b6df6363
Author: Luke Macken <lmacken(a)redhat.com>
Date: Tue Jul 6 15:16:09 2010 -0400
Notify the security team when an update is edited and turned into a security fix
This fixes bodhi ticket #403
diff --git a/bodhi/controllers.py b/bodhi/controllers.py
index 37a18ad..b7f1216 100644
--- a/bodhi/controllers.py
+++ b/bodhi/controllers.py
@@ -834,7 +834,10 @@ class Root(controllers.RootController):
log.exception(e)
log.error('Unable to convert our update to utf-8; passing '
'unicode strings to SQLObject.')
+
+ old_type = None
if edited:
+ old_type = edited.type
update = edited
log.debug("Editing update %s" % edited.title)
update.set(release=release, date_modified=datetime.utcnow(),
@@ -908,6 +911,11 @@ class Root(controllers.RootController):
config.get('base_address') + tg_url(update.get_url())))
except SQLObjectNotFound:
log.debug('Bug #%d not found in our database' % bug)
+
+ # If this update was changed to a security update, notify
+ # the security team.
+ if old_type != 'security' and update.type == 'security':
+ mail.send(config.get('security_team'), 'security', update)
else:
# Notify security team of newly submitted security updates
if update.type == 'security':
13 years, 11 months
bodhi/tools
by Luke Macken
bodhi/tools/client.py | 7 +++++++
1 file changed, 7 insertions(+)
New commits:
commit 816b5200cdacbdaa90b97c92733ebfd6c0f44467
Author: Luke Macken <lmacken(a)redhat.com>
Date: Thu Jul 1 20:31:02 2010 -0400
Support using --critpath and --type with --testable
diff --git a/bodhi/tools/client.py b/bodhi/tools/client.py
index 6f68796..c796abb 100755
--- a/bodhi/tools/client.py
+++ b/bodhi/tools/client.py
@@ -276,6 +276,13 @@ def main():
elif opts.testable:
for update in bodhi.testable():
+ # Allow for some basic filtering of installed updates
+ if opts.critpath:
+ if not update['critpath']:
+ continue
+ if opts.type_:
+ if not update['type'] == opts.type_:
+ continue
log.info(bodhi.update_str(update, minimal=opts.verbose))
elif opts.candidates:
13 years, 12 months
bodhi/model.py
by Luke Macken
bodhi/model.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
New commits:
commit 970d19860175c7aa1d8db3711d1d5cd9a7710c21
Author: Luke Macken <lmacken(a)redhat.com>
Date: Thu Jul 1 02:33:12 2010 -0400
Fix a bug in the new bugzilla product handling (#448)
diff --git a/bodhi/model.py b/bodhi/model.py
index 4a284b8..35ad8c2 100644
--- a/bodhi/model.py
+++ b/bodhi/model.py
@@ -1045,14 +1045,14 @@ class Bugzilla(SQLObject):
log.warning("No bodhi_email defined; skipping bug comment")
return
bz = Bugzilla.get_bz()
- if bug.product not in config.get('bz_products', '').split(','):
- log.warning("Skipping %r bug #%d" % (bug.product, self.bz_id))
- return
if not comment:
comment = self._default_message(update)
- log.debug("Adding comment to Bug #%d: %s" % (self.bz_id, comment))
try:
bug = bz.getbug(self.bz_id)
+ if bug.product not in config.get('bz_products', '').split(','):
+ log.warning("Skipping %r bug #%d" % (bug.product, self.bz_id))
+ return
+ log.debug("Adding comment to Bug #%d: %s" % (self.bz_id, comment))
bug.addcomment(comment)
except Exception, e:
log.error("Unable to add comment to bug #%d\n%s" % (self.bz_id,
13 years, 12 months
Bodhi 0.7.5 release
by Luke Macken
Hi,
I just pushed a version 0.7.5 of bodhi into production. This release
contains the following notable changes:
proventesters & strict critical path update handling
----------------------------------------------------
Critical path package[0] updates now require positive karma from 1
proventester[1], and a single +1 from one other community member.
You can get a list of critical path updates using the bodhi web interface:
https://admin.fedoraproject.org/updates/critpath?release=F13&untested=True
You can optionally pass in a specific 'release' or an 'untested' flag,
which will return a list of critical path updates that have yet to be
approved. I have not added these links to the main interface yet,
because at the moment they are fairly expensive calls. This will be
addressed in an upcoming release.
The latest command-line client also supports these options as well:
$ bodhi --critpath --untested --release F13
Auto-obsoletion re-enabled
--------------------------
I re-enabled the auto-obsoletion code in bodhi. This means that new
updates will automatically obsolete older testing updates containing the
same packages. The new update will also inherit all of the old updates
bugs and notes. This code had been disabled for a while now, due to
some nasty edge cases, but those have since been resolved.
If you experience any problems, please file tickets here:
https://fedorahosted.org/bodhi/newticket
Thanks,
luke
[0]: https://fedoraproject.org/wiki/Critical_Path_Packages
[1]: https://fedoraproject.org/wiki/QA/JoinProvenTesters
13 years, 12 months
bodhi/model.py
by Luke Macken
bodhi/model.py | 2 ++
1 file changed, 2 insertions(+)
New commits:
commit c47555692c8c56cc03e816dcf3845047c1da5052
Author: Luke Macken <lmacken(a)redhat.com>
Date: Wed Jun 30 20:11:44 2010 -0400
Fix PackageUpdate.num_admin_approvals to actually track approvals
diff --git a/bodhi/model.py b/bodhi/model.py
index c98570a..4a284b8 100644
--- a/bodhi/model.py
+++ b/bodhi/model.py
@@ -898,6 +898,8 @@ class PackageUpdate(SQLObject):
""" Return the number of Releng/QA approvals of this update """
approvals = 0
for comment in self.comments:
+ if comment.karma != 1:
+ continue
# FIXME:
# We need to actually store the groups or approvals sanely.
# Hack, to get this working for F13 w/o changing the DB
13 years, 12 months
2 commits - bodhi/config bodhi/model.py Makefile
by Luke Macken
Makefile | 2 +-
bodhi/config/app.cfg | 3 +++
bodhi/model.py | 7 +++++--
3 files changed, 9 insertions(+), 3 deletions(-)
New commits:
commit 31709f388e9bfe8658075cb0ab63461afbfd53e6
Author: Luke Macken <lmacken(a)redhat.com>
Date: Wed Jun 30 20:06:03 2010 -0400
Only touch bugs associated with a list of known products (#361)
diff --git a/bodhi/config/app.cfg b/bodhi/config/app.cfg
index 9813a99..87e4c6f 100644
--- a/bodhi/config/app.cfg
+++ b/bodhi/config/app.cfg
@@ -131,6 +131,9 @@ pkgdb_url = 'https://admin.fedoraproject.org/pkgdb'
bz_server = 'https://bugzilla.redhat.com/xmlrpc.cgi'
bz_cookie = None
+# Bodhi will avoid touching bugs that are not against the following products
+bz_products = 'Fedora,Fedora EPEL'
+
##
## Packages that should suggest a reboot
##
diff --git a/bodhi/model.py b/bodhi/model.py
index 333f48b..c98570a 100644
--- a/bodhi/model.py
+++ b/bodhi/model.py
@@ -1043,6 +1043,9 @@ class Bugzilla(SQLObject):
log.warning("No bodhi_email defined; skipping bug comment")
return
bz = Bugzilla.get_bz()
+ if bug.product not in config.get('bz_products', '').split(','):
+ log.warning("Skipping %r bug #%d" % (bug.product, self.bz_id))
+ return
if not comment:
comment = self._default_message(update)
log.debug("Adding comment to Bug #%d: %s" % (self.bz_id, comment))
@@ -1064,7 +1067,7 @@ class Bugzilla(SQLObject):
log.debug("Setting Bug #%d to ON_QA" % self.bz_id)
try:
bug = bz.getbug(self.bz_id)
- if bug.product != 'Fedora' and bug.product != 'Fedora EPEL':
+ if bug.product not in config.get('bz_products', '').split(','):
log.warning("Skipping %r bug" % bug.product)
return
bug.setstatus('ON_QA', comment=comment)
@@ -1083,7 +1086,7 @@ class Bugzilla(SQLObject):
bz = Bugzilla.get_bz()
try:
bug = bz.getbug(self.bz_id)
- if bug.product != 'Fedora' and bug.product != 'Fedora EPEL':
+ if bug.product not in config.get('bz_products', '').split(','):
log.warning("Not closing %r bug" % bug.product)
return
bug.close('ERRATA', fixedin=update.builds[0].nvr)
commit 4592a8f460647e13f7ea89e161b6f2b6174a9708
Author: Till Maas <opensource(a)till.name>
Date: Tue Dec 16 12:50:45 2008 +0100
- enforce LANG=C for nostests
diff --git a/Makefile b/Makefile
index 0e5e12e..202b5f2 100644
--- a/Makefile
+++ b/Makefile
@@ -13,7 +13,7 @@ docs:
`find bodhi -name '*.py'`
test:
- nosetests
+ LANG=C nosetests
todo:
grep -r --color=auto TODO bodhi/ || :
13 years, 12 months