search-server/spacewalk-search
by Milan Zazrivec
search-server/spacewalk-search/src/config/rhn-search | 2 +-
search-server/spacewalk-search/src/config/search/rhn_search_daemon.conf | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
New commits:
commit c0848f39799794c28786aa07e27402027dd02949
Author: Milan Zazrivec <mzazrivec(a)redhat.com>
Date: Thu Jul 29 11:38:46 2010 +0200
correct the path to oci
diff --git a/search-server/spacewalk-search/src/config/rhn-search b/search-server/spacewalk-search/src/config/rhn-search
index 7819d30..e10e318 100644
--- a/search-server/spacewalk-search/src/config/rhn-search
+++ b/search-server/spacewalk-search/src/config/rhn-search
@@ -75,7 +75,7 @@ unlock() {
}
removeindex() {
- JAVA_LIBRARY_PATH='-Djava.library.path=/usr/lib/oracle/10.2.0.4/client/lib:/usr/lib/oracle/10.2.0.4/client/lib64'
+ JAVA_LIBRARY_PATH='-Djava.library.path=/usr/lib/oracle/10.2.0.4/client/lib:/usr/lib/oracle/10.2.0.4/client64/lib'
SEARCH_CLASS_PATH=`build-classpath-directory /usr/share/rhn/search/lib /usr/share/java/ojdbc14.jar`
CLASSPATH=${SEARCH_CLASS_PATH} java $JAVA_LIBRARY_PATH com.redhat.satellite.search.DeleteIndexes
}
diff --git a/search-server/spacewalk-search/src/config/search/rhn_search_daemon.conf b/search-server/spacewalk-search/src/config/search/rhn_search_daemon.conf
index fe3f5e8..526e3f5 100644
--- a/search-server/spacewalk-search/src/config/search/rhn_search_daemon.conf
+++ b/search-server/spacewalk-search/src/config/search/rhn_search_daemon.conf
@@ -42,7 +42,7 @@ wrapper.java.classpath.20=/usr/share/rhn/search/lib/commons-httpclient-3.0.jar
wrapper.java.library.path.1=/usr/lib
wrapper.java.library.path.2=/usr/lib64
wrapper.java.library.path.3=/usr/lib/oracle/10.2.0.4/client/lib
-wrapper.java.library.path.4=/usr/lib/oracle/10.2.0.4/client/lib64
+wrapper.java.library.path.4=/usr/lib/oracle/10.2.0.4/client64/lib
# Java Additional Parameters
#wrapper.java.additional.1=
13 years, 9 months
search-server/spacewalk-search
by Tomas Lestach
dev/null |binary
search-server/spacewalk-search/build.properties | 2 +-
search-server/spacewalk-search/spacewalk-search.spec | 2 ++
search-server/spacewalk-search/src/config/search/rhn_search_daemon.conf | 2 +-
4 files changed, 4 insertions(+), 2 deletions(-)
New commits:
commit 59e688a4b3bfaf6883dd318dba0e5264e31612d6
Author: Tomas Lestach <tlestach(a)redhat.com>
Date: Thu Jul 29 09:40:31 2010 +0200
changes due to simple-core gets packaged separatelly
diff --git a/search-server/spacewalk-search/build.properties b/search-server/spacewalk-search/build.properties
index b03455e..5fa6842 100644
--- a/search-server/spacewalk-search/build.properties
+++ b/search-server/spacewalk-search/build.properties
@@ -19,4 +19,4 @@ javadoc.method.scope=public
javadoc.type.scope=package
javadoc.var.scope=package
javadoc.lazy=true
-jpackage.jars="commons-lang commons-logging redstone-xmlrpc redstone-xmlrpc-client quartz tanukiwrapper log4j commons-httpclient oro commons-cli commons-codec"
+jpackage.jars="commons-lang commons-logging redstone-xmlrpc redstone-xmlrpc-client quartz tanukiwrapper log4j commons-httpclient oro commons-cli commons-codec simple-core"
diff --git a/search-server/spacewalk-search/buildconf/tempjars/simple-core-3.1.3.jar b/search-server/spacewalk-search/buildconf/tempjars/simple-core-3.1.3.jar
deleted file mode 100644
index 80b44c1..0000000
Binary files a/search-server/spacewalk-search/buildconf/tempjars/simple-core-3.1.3.jar and /dev/null differ
diff --git a/search-server/spacewalk-search/spacewalk-search.spec b/search-server/spacewalk-search/spacewalk-search.spec
index d2cece6..8f9708b 100644
--- a/search-server/spacewalk-search/spacewalk-search.spec
+++ b/search-server/spacewalk-search/spacewalk-search.spec
@@ -31,6 +31,7 @@ Requires: quartz
Requires: redstone-xmlrpc
#Requires: picocontainer
Requires: tanukiwrapper
+Requires: simple-core
Obsoletes: rhn-search < 5.3.0
BuildRequires: ant
#BuildRequires: apache-ibatis-sqlmap
@@ -47,6 +48,7 @@ BuildRequires: quartz
BuildRequires: redstone-xmlrpc
#BuildRequires: picocontainer
BuildRequires: tanukiwrapper
+BuildRequires: simple-core
Requires(post): chkconfig
Requires(preun): chkconfig
# This is for /sbin/service
diff --git a/search-server/spacewalk-search/src/config/search/rhn_search_daemon.conf b/search-server/spacewalk-search/src/config/search/rhn_search_daemon.conf
index 6ef1005..fe3f5e8 100644
--- a/search-server/spacewalk-search/src/config/search/rhn_search_daemon.conf
+++ b/search-server/spacewalk-search/src/config/search/rhn_search_daemon.conf
@@ -23,7 +23,7 @@ wrapper.java.classpath.8=/usr/share/rhn/search/lib/picocontainer-1.3.jar
wrapper.java.classpath.9=/usr/share/rhn/search/lib/quartz.jar
wrapper.java.classpath.10=/usr/share/rhn/search/lib/redstone-xmlrpc.jar
wrapper.java.classpath.11=/usr/share/rhn/search/lib/redstone-xmlrpc-client.jar
-wrapper.java.classpath.12=/usr/share/rhn/search/lib/simple-core-3.1.3.jar
+wrapper.java.classpath.12=/usr/share/rhn/search/lib/simple-core.jar
wrapper.java.classpath.13=/usr/share/rhn/search/lib/spacewalk-search.jar
wrapper.java.classpath.14=/usr/share/java/tanukiwrapper.jar
wrapper.java.classpath.15=/usr/share/rhn/search/lib/lucene-analyzers-2.3.2.jar
13 years, 9 months
java/code
by Justin Sherrill
java/code/src/com/redhat/rhn/common/conf/ConfigDefaults.java | 2
java/code/src/com/redhat/rhn/common/errors/LookupExceptionHandler.java | 22 +++++-----
2 files changed, 15 insertions(+), 9 deletions(-)
New commits:
commit 3e6c2a40cb9f99743c733ffab1e943c9bd3fda26
Author: Justin Sherrill <jsherril(a)redhat.com>
Date: Wed Jul 28 17:14:04 2010 -0400
563797 - changing behavior of lookup exceptions to print a smaller error as well as not send an email by default
diff --git a/java/code/src/com/redhat/rhn/common/conf/ConfigDefaults.java b/java/code/src/com/redhat/rhn/common/conf/ConfigDefaults.java
index 7918b1d..9259c2a 100644
--- a/java/code/src/com/redhat/rhn/common/conf/ConfigDefaults.java
+++ b/java/code/src/com/redhat/rhn/common/conf/ConfigDefaults.java
@@ -157,6 +157,8 @@ public class ConfigDefaults {
public static final String DB_BACKEND = "db_backend";
public static final String DB_BACKEND_ORACLE = "oracle";
+ public static final String LOOKUP_EXCEPT_SEND_EMAIL = "lookup_exception_email";
+
private ConfigDefaults() {
}
diff --git a/java/code/src/com/redhat/rhn/common/errors/LookupExceptionHandler.java b/java/code/src/com/redhat/rhn/common/errors/LookupExceptionHandler.java
index b74b2e6..ff48c07 100644
--- a/java/code/src/com/redhat/rhn/common/errors/LookupExceptionHandler.java
+++ b/java/code/src/com/redhat/rhn/common/errors/LookupExceptionHandler.java
@@ -14,6 +14,8 @@
*/
package com.redhat.rhn.common.errors;
+import com.redhat.rhn.common.conf.Config;
+import com.redhat.rhn.common.conf.ConfigDefaults;
import com.redhat.rhn.common.hibernate.LookupException;
import com.redhat.rhn.common.messaging.MessageQueue;
import com.redhat.rhn.domain.user.User;
@@ -40,21 +42,23 @@ public class LookupExceptionHandler extends ExceptionHandler {
*/
protected void logException(Exception ex) {
Logger log = Logger.getLogger(LookupExceptionHandler.class);
- log.error("Hibernate LookupException", ex);
exception = (LookupException) ex;
+ log.warn(exception.getMessage());
}
protected void storeException(HttpServletRequest request, String property,
ActionMessage msg, ActionForward forward, String scope) {
- TraceBackEvent evt = new TraceBackEvent();
- RequestContext requestContext = new RequestContext(request);
- User usr = requestContext.getLoggedInUser();
- evt.setUser(usr);
- evt.setRequest(request);
- evt.setException(exception);
- MessageQueue.publish(evt);
-
+ if (Config.get().getBoolean(ConfigDefaults.LOOKUP_EXCEPT_SEND_EMAIL)) {
+ TraceBackEvent evt = new TraceBackEvent();
+ RequestContext requestContext = new RequestContext(request);
+ User usr = requestContext.getLoggedInUser();
+ evt.setUser(usr);
+ evt.setRequest(request);
+ evt.setException(exception);
+ MessageQueue.publish(evt);
+ }
request.setAttribute("error", exception);
+
}
}
13 years, 9 months
java/code
by Justin Sherrill
java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
New commits:
commit bb71fe8f8d6cef4d938b271a65c408ad53974a9f
Author: Justin Sherrill <jsherril(a)redhat.com>
Date: Wed Jul 28 16:15:49 2010 -0400
533190 - fixing issue where deleting more than 1000 errata would throw a database error
diff --git a/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java b/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java
index fe5c910..95770ce 100644
--- a/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java
+++ b/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java
@@ -673,9 +673,8 @@ public class ChannelFactory extends HibernateFactory {
public static List getChannelPackageWithErrata(Channel chan, Collection<Long> eids) {
Map params = new HashMap();
params.put("cid", chan.getId());
- params.put("eids", eids);
return singleton.listObjectsByNamedQuery(
- "Channel.packageInChannelAndErrata", params);
+ "Channel.packageInChannelAndErrata", params, eids, "eids");
}
13 years, 9 months
java/code
by Justin Sherrill
java/code/src/com/redhat/rhn/frontend/taglibs/list/ListTag.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
New commits:
commit fe36cc296fa7aa1954fe8e4b0320033807bbcac5
Author: Justin Sherrill <jsherril(a)redhat.com>
Date: Wed Jul 28 16:01:45 2010 -0400
514426 - changing list tag behavior to show fliter box even if the user has filtered something and got no results
diff --git a/java/code/src/com/redhat/rhn/frontend/taglibs/list/ListTag.java b/java/code/src/com/redhat/rhn/frontend/taglibs/list/ListTag.java
index 5babb0d..559f9d9 100644
--- a/java/code/src/com/redhat/rhn/frontend/taglibs/list/ListTag.java
+++ b/java/code/src/com/redhat/rhn/frontend/taglibs/list/ListTag.java
@@ -473,7 +473,7 @@ public class ListTag extends BodyTagSupport {
ListTagUtil.write(pageContext, String.format(HIDDEN_TEXT,
ListTagUtil.makeParentIsAnElementLabel(uniqueName), parentIsElement));
setupFilterUI();
- if (filter != null && !isEmpty()) {
+ if (filter != null && manip.getUnfilteredDataSize() != 0) {
ListTagUtil.renderFilterUI(pageContext, filter,
getUniqueName(), width, columnCount,
searchParent, searchChild);
13 years, 9 months
java/code
by Justin Sherrill
java/code/src/com/redhat/rhn/frontend/action/common/DownloadFile.java | 11 ++++++++++
1 file changed, 11 insertions(+)
New commits:
commit ff77e9b12ac95fb2bd0a31cc3ea07f1c03b3279b
Author: Justin Sherrill <jsherril(a)redhat.com>
Date: Wed Jul 28 15:42:40 2010 -0400
595524 - changing improper accesses to /ks/dist to return a file not found
diff --git a/java/code/src/com/redhat/rhn/frontend/action/common/DownloadFile.java b/java/code/src/com/redhat/rhn/frontend/action/common/DownloadFile.java
index 31b75e7..dbdf278 100644
--- a/java/code/src/com/redhat/rhn/frontend/action/common/DownloadFile.java
+++ b/java/code/src/com/redhat/rhn/frontend/action/common/DownloadFile.java
@@ -161,6 +161,11 @@ public class DownloadFile extends DownloadAction {
}
String[] split = url.split("/");
+ if (split.length < 3) {
+ return null;
+ }
+
+
int labelPos = 2;
if (split[2].equals("org")) {
ret.put("orgId", split[3]);
@@ -194,6 +199,12 @@ public class DownloadFile extends DownloadAction {
}
Map<String, String> map = DownloadFile.parseDistUrl(url);
+
+ if (map == null) {
+ response.sendError(HttpServletResponse.SC_NOT_FOUND);
+ return mapping.findForward("error");
+ }
+
String path = map.get("path");
String label = map.get("label");
Long orgId = null;
13 years, 9 months
spacecmd/src
by aparsons
spacecmd/src/doc/spacecmd.1 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
New commits:
commit 9f8a621376189a52ed027d4dc9ccaf363aea0e93
Author: Aron Parsons <aparsons(a)redhat.com>
Date: Wed Jul 28 15:12:08 2010 -0400
added a missing hyphen in the spacecmd man page
diff --git a/spacecmd/src/doc/spacecmd.1 b/spacecmd/src/doc/spacecmd.1
index 2f811c9..88160b4 100644
--- a/spacecmd/src/doc/spacecmd.1
+++ b/spacecmd/src/doc/spacecmd.1
@@ -27,7 +27,7 @@ use this username to connect to the server
.B \-p PASSWORD, \-\-password=PASSWORD
use this password to connect to the server
.TP
-.B s SERVER, \-\-server=SERVER
+.B \-s SERVER, \-\-server=SERVER
connect to this server [default: localhost]
.TP
.B \-\-nossl
13 years, 9 months
Changes to 'refs/tags/spacecmd-0.5.4-1'
by aparsons
Tag 'spacecmd-0.5.4-1' created by Aron Parsons <aparsons(a)redhat.com> at 2010-07-28 19:05 +0000
Tagging package [spacecmd] version [0.5.4-1] in directory [spacecmd/].
Changes since spacewalk-search-1.1.4-1:
Aron Parsons (3):
added new function errata_publish
simplified softwarechannel_adderrata
Automatic commit of package [spacecmd] release [0.5.4-1].
Justin Sherrill (2):
591863 - making pre and post logging work for scripts that are not bash scripts
getting rid of tabs
---
java/code/src/com/redhat/rhn/manager/kickstart/KickstartFormatter.java | 45 +--
rel-eng/packages/spacecmd | 2
spacecmd/spacecmd.spec | 35 ++
spacecmd/src/lib/errata.py | 37 ++
spacecmd/src/lib/softwarechannel.py | 144 +++-------
5 files changed, 144 insertions(+), 119 deletions(-)
---
13 years, 9 months
rel-eng/packages spacecmd/spacecmd.spec
by aparsons
rel-eng/packages/spacecmd | 2 +-
spacecmd/spacecmd.spec | 35 ++++++++++++++++++++++++++++++++++-
2 files changed, 35 insertions(+), 2 deletions(-)
New commits:
commit ce75ed4d4f441759603da52deabfc2aff8959167
Author: Aron Parsons <aparsons(a)redhat.com>
Date: Wed Jul 28 15:05:03 2010 -0400
Automatic commit of package [spacecmd] release [0.5.4-1].
diff --git a/rel-eng/packages/spacecmd b/rel-eng/packages/spacecmd
index fa996f7..4188e77 100644
--- a/rel-eng/packages/spacecmd
+++ b/rel-eng/packages/spacecmd
@@ -1 +1 @@
-0.5.3-1 spacecmd/
+0.5.4-1 spacecmd/
diff --git a/spacecmd/spacecmd.spec b/spacecmd/spacecmd.spec
index 98c3c8b..4d7aba8 100644
--- a/spacecmd/spacecmd.spec
+++ b/spacecmd/spacecmd.spec
@@ -4,7 +4,7 @@
%endif
Name: spacecmd
-Version: 0.5.3
+Version: 0.5.4
Release: 1%{?dist}
Summary: Command-line interface to Spacewalk and Satellite servers
@@ -57,6 +57,39 @@ touch %{buildroot}/%{python_sitelib}/spacecmd/__init__.py
%doc %{_mandir}/man1/spacecmd.1.gz
%changelog
+* Wed Jul 28 2010 Aron Parsons <aparsons(a)redhat.com> 0.5.4-1
+- simplified softwarechannel_adderrata (aparsons(a)redhat.com)
+- added new function errata_publish (aparsons(a)redhat.com)
+- support quoting of package profile names in tab completion
+ (aparsons(a)redhat.com)
+- remove old instance of system_createpackageprofile (aparsons(a)redhat.com)
+- only call the system.listDuplicates* functions if the API supports it
+ (aparsons(a)redhat.com)
+- support quoting of group names (aparsons(a)redhat.com)
+- support quoting of arguments (aparsons(a)redhat.com)
+- change the log level for warning that cached credentials are invalid
+ (aparsons(a)redhat.com)
+- added new functions system_deletepackageprofile and
+ system_listpackageprofiles (aparsons(a)redhat.com)
+- added new functions to create and compare package profiles
+ (aparsons(a)redhat.com)
+- added new function system_listduplicates (aparsons(a)redhat.com)
+- regenerate the errata cache after cloning errata (aparsons(a)redhat.com)
+- added new function errata_delete (aparsons(a)redhat.com)
+- list CVEs in errata_details (aparsons(a)redhat.com)
+- added new function errata_listcves (aparsons(a)redhat.com)
+- make system_installpackage use the new API system.listLatestAvailablePackage
+ (aparsons(a)redhat.com)
+- don't include archived actions in the default call of schedule_list
+ (aparsons(a)redhat.com)
+- significant improvement to the performance of schedule_list* functions
+ (aparsons(a)redhat.com)
+- changed where an empty list is checked for in schedule_reschedule
+ (aparsons(a)redhat.com)
+- fixed tab completion in schedule_cancel (aparsons(a)redhat.com)
+- added function schedule_reschedule (aparsons(a)redhat.com)
+- allow filtering in report_errata (aparsons(a)redhat.com)
+
* Mon Jul 26 2010 Miroslav Suchý <msuchy(a)redhat.com> 0.5.3-1
- 616120 - remove python requires (msuchy(a)redhat.com)
- 616120 - add -p to install, to preserve timestamps (msuchy(a)redhat.com)
13 years, 9 months
2 commits - spacecmd/src
by aparsons
spacecmd/src/lib/errata.py | 37 +++++++++
spacecmd/src/lib/softwarechannel.py | 144 ++++++++++++------------------------
2 files changed, 88 insertions(+), 93 deletions(-)
New commits:
commit e499a78102642416c30bd36a88a78bf6cde28d45
Author: Aron Parsons <aparsons(a)redhat.com>
Date: Wed Jul 28 14:53:46 2010 -0400
simplified softwarechannel_adderrata
have softwarechannel_adderrata use system.mergeErrata APIs so that packages are automatically added to the channel
diff --git a/spacecmd/src/lib/softwarechannel.py b/spacecmd/src/lib/softwarechannel.py
index dfa4889..c709d85 100644
--- a/spacecmd/src/lib/softwarechannel.py
+++ b/spacecmd/src/lib/softwarechannel.py
@@ -512,131 +512,89 @@ def do_softwarechannel_removepackages(self, args):
####################
-def help_softwarechannel_adderratabydate(self):
- print 'softwarechannel_adderratabydate: Add errata from one channel ' + \
- 'into another channel based on a date range'
- print 'usage: softwarechannel_adderratabydate SOURCE DEST BEGINDATE ENDDATE'
-
-def complete_softwarechannel_adderratabydate(self, text, line, beg, end):
- parts = line.split(' ')
-
- if len(parts) <= 3:
- return tab_completer(self.do_softwarechannel_list('', True),
- text)
-
-def do_softwarechannel_adderratabydate(self, args):
- args = parse_arguments(args)
-
- if len(args) != 4:
- self.help_softwarechannel_adderratabydate()
- return
-
- source_channel = args[0]
- dest_channel = args[1]
- begin_date = args[2]
- end_date = args[3]
-
- if not re.match('\d{8}', begin_date):
- logging.error('%s is an invalid date' % begin_date)
- return
-
- if not re.match('\d{8}', end_date):
- logging.error('%s is an invalid date' % end_date)
- return
-
- # get the errata that are in the given date range
- logging.debug('Retrieving list of errata from source channel')
- errata = \
- self.client.channel.software.listErrata(self.session,
- source_channel,
- parse_time_input(begin_date),
- parse_time_input(end_date))
-
- if not len(errata):
- logging.warning('No errata found between the given dates')
- return
-
- # call adderrata with the list of errata from the date range
- return self.do_softwarechannel_adderrata('%s %s %s' % (
- source_channel,
- dest_channel,
- ' '.join([ e.get('advisory_name') for e in errata ])))
-
-####################
-
def help_softwarechannel_adderrata(self):
print 'softwarechannel_adderrata: Add errata from one channel ' + \
'into another channel'
- print 'usage: softwarechannel_adderrata SOURCE DEST <ERRATA:search:XXX ...>'
+ print 'usage: softwarechannel_adderrata SOURCE DEST [BEGINDATE] [ENDDATE]'
def complete_softwarechannel_adderrata(self, text, line, beg, end):
parts = line.split(' ')
if len(parts) <= 3:
return tab_completer(self.do_softwarechannel_list('', True), text)
- elif len(parts) > 3:
- return self.tab_complete_errata(text)
def do_softwarechannel_adderrata(self, args):
args = parse_arguments(args)
- if len(args) < 3:
+ if len(args) < 2:
self.help_softwarechannel_adderrata()
return
source_channel = args[0]
dest_channel = args[1]
- errata_wanted = self.expand_errata(args[2:])
- logging.debug('Retrieving the list of errata from source channel')
- source_errata = self.client.channel.software.listErrata(self.session,
- source_channel)
+ if len(args) >= 3:
+ begin_date = parse_time_input(args[2])
+ if not begin_date: return
+ else:
+ begin_date = None
- errata = filter_results([ e.get('advisory_name') for e in source_errata ],
- errata_wanted)
+ if len(args) == 4:
+ end_date = parse_time_input(args[3])
+ if not end_date: return
+ else:
+ end_date = parse_time_input('now')
- # get the packages that resolve these errata so we can add them
- # to the channel afterwards
- package_ids = []
- for erratum in errata:
- logging.debug('Retrieving packages for errata %s' % erratum)
+ logging.debug('Retrieving the list of errata from %s' % source_channel)
- # get the packages affected by this errata
- packages = self.client.errata.listPackages(self.session, erratum)
+ if begin_date:
+ source_errata = self.client.channel.software.listErrata(self.session,
+ source_channel,
+ begin_date,
+ end_date)
+ else:
+ source_errata = self.client.channel.software.listErrata(self.session,
+ source_channel)
- # only add packages that exist in the source channel
- for package in packages:
- if source_channel in package.get('providing_channels'):
- package_ids.append(package.get('id'))
+ logging.debug('Retrieving the list of errata from %s' % dest_channel)
+ dest_errata = self.client.channel.software.listErrata(self.session,
+ dest_channel)
- if not len(errata):
- logging.warning('No errata to add')
- return
+ dest_errata_names = [ e.get('advisory_name') for e in dest_errata ]
- print 'Errata'
- print '------'
- print '\n'.join(sorted(errata))
+ # generate a list of errata likely to be merged by the API call
+ likely = []
+ for erratum in source_errata:
+ if erratum.get('advisory_name') not in dest_errata_names:
+ likely.append(erratum)
- print
- print 'Packages'
- print '--------'
- print '\n'.join(sorted([ self.get_package_name(p) for p in package_ids ]))
+ if len(likely):
+ print_errata_list(likely)
+ else:
+ logging.warning('No errata to add to the channel')
+ return
print
- print 'Total Errata: %s' % str(len(errata)).rjust(3)
- print 'Total Packages: %s' % str(len(package_ids)).rjust(3)
+ print 'Total Errata: %i' % len(likely)
- if not self.user_confirm('Add these errata and packages [y/N]:'): return
+ if not self.user_confirm('Add these errata [y/N]:'): return
# add the errata to the destination channel
- logging.debug('Cloning errata into %s' % dest_channel)
- self.client.errata.clone(self.session, dest_channel, errata)
+ logging.debug('Adding errata to %s' % dest_channel)
+
+ if begin_date:
+ added = self.client.channel.software.mergeErrata(self.session,
+ source_channel,
+ dest_channel,
+ begin_date,
+ end_date)
+ else:
+ added = self.client.channel.software.mergeErrata(self.session,
+ source_channel,
+ dest_channel)
- # add the affected packages to the channel
- logging.debug('Adding required packages to %s' % dest_channel)
- self.client.channel.software.addPackages(self.session,
- dest_channel,
- package_ids)
+ logging.info('The following errata were added to the channel:')
+ print_errata_list(added)
# regenerate the errata cache since we just cloned errata
self.generate_errata_cache(True)
commit c81172d9777ce20c7ac8ab4689a55078a12e6d7f
Author: Aron Parsons <aparsons(a)redhat.com>
Date: Wed Jul 28 14:50:49 2010 -0400
added new function errata_publish
diff --git a/spacecmd/src/lib/errata.py b/spacecmd/src/lib/errata.py
index 68ec31e..52569fe 100644
--- a/spacecmd/src/lib/errata.py
+++ b/spacecmd/src/lib/errata.py
@@ -349,6 +349,43 @@ def do_errata_delete(self, args):
####################
+def help_errata_publish(self):
+ print 'errata_publish: Publish an erratum to a channel'
+ print 'usage: errata_publish ERRATA|search:XXX <CHANNEL ...>'
+
+def complete_errata_publish(self, text, line, beg, end):
+ parts = line.split(' ')
+
+ if len(parts) == 2:
+ return self.tab_complete_errata(text)
+ elif len(parts) > 2:
+ return tab_completer(self.do_softwarechannel_list('', True), text)
+
+def do_errata_publish(self, args):
+ args = parse_arguments(args)
+
+ if len(args) < 2:
+ self.help_errata_publish()
+ return
+
+ # allow globbing and searching via arguments
+ errata = self.expand_errata(args[0])
+
+ channels = args[1:]
+
+ if not len(errata):
+ logging.warning('No errata to publish')
+ return
+
+ print '\n'.join(sorted(errata))
+
+ if not self.user_confirm('Publish these errata [y/N]:'): return
+
+ for erratum in errata:
+ self.client.errata.publish(self.session, erratum, channels)
+
+####################
+
def help_errata_search(self):
print 'errata_search: List errata that meet the given criteria'
print 'usage: errata_search CVE|RHSA|RHBA|RHEA|CLA ...'
13 years, 9 months