r4831 - trunk/mint/python/mint
by tmckay@fedoraproject.org
Author: tmckay
Date: 2011-06-15 12:49:35 +0000 (Wed, 15 Jun 2011)
New Revision: 4831
Modified:
trunk/mint/python/mint/update.py
Log:
Remove special case for collector in delete_agent_objects
Modified: trunk/mint/python/mint/update.py
===================================================================
--- trunk/mint/python/mint/update.py 2011-06-15 12:18:00 UTC (rev 4830)
+++ trunk/mint/python/mint/update.py 2011-06-15 12:49:35 UTC (rev 4831)
@@ -614,7 +614,7 @@
def delete_agent_objects(self, cursor, stats, agent, bound_classes, bound_packages):
def loop_body(cls):
- if cls._storage != "none" and cls is not self.model.com_redhat_grid.Collector:
+ if cls._storage != "none": # and cls is not self.model.com_redhat_grid.Collector:
count = cls.delete_selection(cursor, _qmf_agent_id=agent.id)
stats.objects_deleted += count
#stats.objects_deleted_by_class[cls] += count
12 years, 10 months
r4830 - in trunk/cumin: bin etc python/cumin python/cumin/grid
by croberts@fedoraproject.org
Author: croberts
Date: 2011-06-15 12:18:00 +0000 (Wed, 15 Jun 2011)
New Revision: 4830
Modified:
trunk/cumin/bin/cumin-web
trunk/cumin/etc/cumin.conf
trunk/cumin/python/cumin/config.py
trunk/cumin/python/cumin/grid/job.py
trunk/cumin/python/cumin/grid/job.strings
trunk/cumin/python/cumin/main.py
Log:
Addressing BZ https://bugzilla.redhat.com/show_bug.cgi?id=699890 by adding an "overview" tab to the view of an individual job. By default, it will contain the folowing attributes: JobStatus, Cmd, Args, ExitStatus, JobStartDate, LastRemoteHost, LastJobStatus, Owner. That list of attributes can be overridden in cumin.conf to include any standard or custom attribute.
Modified: trunk/cumin/bin/cumin-web
===================================================================
--- trunk/cumin/bin/cumin-web 2011-06-14 19:32:23 UTC (rev 4829)
+++ trunk/cumin/bin/cumin-web 2011-06-15 12:18:00 UTC (rev 4830)
@@ -92,6 +92,9 @@
cumin.user = values.user
cumin.update_interval = values.update_interval
cumin.max_qmf_table_sort = values.max_qmf_table_sort
+
+ cumin.fast_view_attributes = [x.strip() for x in values.fast_view_attributes.split(',')]
+
# set default values for form inputs
cumin.set_form_defaults(values.request_memory,
Modified: trunk/cumin/etc/cumin.conf
===================================================================
--- trunk/cumin/etc/cumin.conf 2011-06-14 19:32:23 UTC (rev 4829)
+++ trunk/cumin/etc/cumin.conf 2011-06-15 12:18:00 UTC (rev 4830)
@@ -58,6 +58,7 @@
# update-interval: 10
# max-qmf-table-sort: 1000
# persona: default
+# fast-view-attributes: JobStatus,Cmd,Args,ExitStatus,JobStartDate,LastRemoteHost,LastJobStatus,Owner
[data]
# log-file: $CUMIN_HOME/log/data.log
Modified: trunk/cumin/python/cumin/config.py
===================================================================
--- trunk/cumin/python/cumin/config.py 2011-06-14 19:32:23 UTC (rev 4829)
+++ trunk/cumin/python/cumin/config.py 2011-06-15 12:18:00 UTC (rev 4830)
@@ -51,6 +51,9 @@
param = ConfigParameter(web, "persona", str)
param.default = "default"
+
+ param = ConfigParameter(web, "fast-view-attributes", str)
+ param.default = "JobStatus,Cmd,Args,ExitStatus,JobStartDate,LastRemoteHost,LastJobStatus,Owner"
def create_data_section(self, name, strict_section):
data = CuminConfigSection(self, name, strict_section)
Modified: trunk/cumin/python/cumin/grid/job.py
===================================================================
--- trunk/cumin/python/cumin/grid/job.py 2011-06-14 19:32:23 UTC (rev 4829)
+++ trunk/cumin/python/cumin/grid/job.py 2011-06-15 12:18:00 UTC (rev 4830)
@@ -28,11 +28,14 @@
cls = app.model.com_redhat_grid.Submission
super(JobFrame, self).__init__(app, name, cls)
-
+
self.view = JobView(app, "view", self.object)
self.replace_child(self.view)
# view or edit
+ self.fast_view = JobAdFastView(app, "fastads")
+ self.view.add_tab(self.fast_view)
+
self.ads = JobAdModes(app, "ads")
self.view.add_tab(self.ads)
@@ -94,7 +97,17 @@
def render_title(self, session):
return "Attributes"
+
+class JobAdFastView(ModeSet):
+ def __init__(self, app, name):
+ super(JobAdFastView, self).__init__(app, name)
+ self.viewer = FastViewJobAdsViewer(app, "fastviewer")
+ self.add_mode(self.viewer)
+
+ def render_title(self, session):
+ return "Overview"
+
class JobView(ObjectView):
def add_details_tab(self):
pass
@@ -480,7 +493,35 @@
idict["path"] = path
return idict
+
+class FastViewJobAdsSet(JobAdsSet):
+ def __init__(self, app, name):
+ super(FastViewJobAdsSet, self).__init__(app, name)
+
+ def do_get_items(self, session):
+ ad_list = self.items.get(session)
+ error = self.qmf_error.get(session)
+
+ if not ad_list and not error:
+ ad_list = list()
+ id = self.frame.id.get(session)
+ job_server = self.frame.get_job_server(session, id)
+ job_id = self.frame.job_id.get(session)
+ action = QmfCall(self.app, {'JobAd': {}})
+ results = action.execute(job_server, "GetJobAd", job_id)
+ error = results.error
+ self.qmf_error.set(session, error)
+ ads = results.data['JobAd']
+ cls = self.app.model.job_meta_data
+ ad_list = [self.gen_item(x, ads[x], cls, dtype=self.get_type(ads[x])) \
+ for x in ads if not x.startswith("!!") and x in self.app.fast_view_attributes]
+
+ self.items.set(session, ad_list)
+
+ return ad_list, error
+
+
class JobPropertyRenderer(TemplateRenderer):
def render_title(self, session, item):
title = item["name"]
@@ -517,6 +558,9 @@
if "property" in item:
property = item["property"]
return property.description
+
+ def render_id(self, session, item):
+ return item["property"].name
class JobAdsGroups(Widget):
def __init__(self, app, name):
@@ -606,7 +650,48 @@
group_items.append(item)
return group_items, error
+
+class FastViewJobAdsViewer(FastViewJobAdsSet):
+ def __init__(self, app, name):
+ super(FastViewJobAdsViewer, self).__init__(app, name)
+
+ self.item_renderer = JobPropertyRenderer(self, "property_html")
+ self.wait = Wait(app, "wait")
+ self.add_child(self.wait)
+
+ self.defer_enabled = True
+ self.update_enabled = True
+
+ def render_title(self, session):
+ return "Attributes"
+
+ def get_group_items(self, session, group):
+ group_items = list()
+
+ items, error = self.do_get_items(session)
+ for item in items:
+ if "property" in item:
+ property = item["property"]
+ item_group = property.group
+ else:
+ item_group = "Other"
+ if item_group == group:
+ group_items.append(item)
+
+ return group_items, error
+
+ def render_all_ordered_properties(self, session):
+ items, error = self.do_get_items(session)
+ writer = Writer()
+ viewable_items = self.app.fast_view_attributes
+ for viewable_item in viewable_items:
+ for item in items:
+ if item["name"] == viewable_item:
+ self.item_renderer.render(writer, session, item)
+ break
+ return writer.to_string()
+
class JobAdsEditButton(Widget):
def render_edit_ads_url(self, session):
branch = session.branch()
Modified: trunk/cumin/python/cumin/grid/job.strings
===================================================================
--- trunk/cumin/python/cumin/grid/job.strings 2011-06-14 19:32:23 UTC (rev 4829)
+++ trunk/cumin/python/cumin/grid/job.strings 2011-06-15 12:18:00 UTC (rev 4830)
@@ -181,3 +181,37 @@
</ul>
</div>
</div>
+
+[FastViewJobAdsViewer.html]
+<div id="{id}">
+<table style='width:100%' class="CuminDetails">
+ <tbody>
+ <tr>
+ <td>
+ <table class="PropertySet FastViewPropertySet">
+ <thead>
+ <tr>
+ <th style="width: 33%;">Name</th>
+ <th style="width: 33%;">Value</th>
+ <th style="width: 33%;"> </th>
+ </tr>
+ </thead>
+ <tbody id="properties">
+ {all_ordered_properties}
+ </tbody>
+ </table>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+[FastViewJobAdsViewer.deferred_html]
+<div id="{id}">
+ {wait}
+</div>
+
+[FastViewJobAdsViewer.property_html]
+<tr id='{id}'>
+ <th style="width:33%;">{title}</th><td style="width:33%;">{value}</td><td style="width:33%;">{inline_help}</td>
+</tr>
\ No newline at end of file
Modified: trunk/cumin/python/cumin/main.py
===================================================================
--- trunk/cumin/python/cumin/main.py 2011-06-14 19:32:23 UTC (rev 4829)
+++ trunk/cumin/python/cumin/main.py 2011-06-15 12:18:00 UTC (rev 4830)
@@ -56,6 +56,8 @@
self.operator_email = None
self.update_interval = 10
self.max_qmf_table_sort = 1000
+
+ self.fast_view_attributes = list()
self.form_defaults = self.CuminFormDefaults()
12 years, 10 months
r4828 - branches/clarity/cumin/python/cumin
by tmckay@fedoraproject.org
Author: tmckay
Date: 2011-06-14 19:15:11 +0000 (Tue, 14 Jun 2011)
New Revision: 4828
Modified:
branches/clarity/cumin/python/cumin/objectselector.strings
Log:
Merge 4780 from trunk.
BZ703279
Modified: branches/clarity/cumin/python/cumin/objectselector.strings
===================================================================
--- branches/clarity/cumin/python/cumin/objectselector.strings 2011-06-14 19:13:08 UTC (rev 4827)
+++ branches/clarity/cumin/python/cumin/objectselector.strings 2011-06-14 19:15:11 UTC (rev 4828)
@@ -112,10 +112,28 @@
return true;
}
+function clearOffsetInput(id) {
+ if (id) {
+ var regex = new RegExp("\.offset$");
+ var inputs = id.getElements("input");
+ if(inputs) {
+ for (i = 0; i < inputs.length; i++) {
+ var input_name = inputs[i].name;
+ var match = regex.exec(input_name);
+ if(match != null) {
+ inputs[i].value = 0;
+ }
+ }
+ }
+ }
+ return true;
+}
+
+
[ObjectSelectorFilters.html]
<div id="{id}" class="{class}">
<ul>{widgets}</ul>
- <input type="submit" value="Search" tabindex="100"/><input type="submit" value="Clear" onclick="return clearSearchInput('{id}')" tabindex="100"/>
+ <input type="submit" value="Search" onclick="return clearOffsetInput(this.form)" tabindex="100"/><input type="submit" value="Clear" onclick="return clearSearchInput('{id}')" tabindex="100"/>
</div><div style="margin-bottom: 0.5em; clear:both;"></div>
[ExportButton.css]
12 years, 10 months
r4827 - in branches/clarity: cumin/model cumin/python/cumin cumin/python/cumin/grid rosemary/python/rosemary
by tmckay@fedoraproject.org
Author: tmckay
Date: 2011-06-14 19:13:08 +0000 (Tue, 14 Jun 2011)
New Revision: 4827
Modified:
branches/clarity/cumin/model/rosemary.xml
branches/clarity/cumin/python/cumin/grid/dashboard.py
branches/clarity/cumin/python/cumin/grid/negotiator.py
branches/clarity/cumin/python/cumin/grid/scheduler.py
branches/clarity/cumin/python/cumin/objectselector.py
branches/clarity/rosemary/python/rosemary/util.py
Log:
Merge 4779 from trunk.
BZ700540
Modified: branches/clarity/cumin/model/rosemary.xml
===================================================================
--- branches/clarity/cumin/model/rosemary.xml 2011-06-14 19:11:38 UTC (rev 4826)
+++ branches/clarity/cumin/model/rosemary.xml 2011-06-14 19:13:08 UTC (rev 4827)
@@ -308,6 +308,7 @@
<statistic name="MonitorSelfAge">
<title>Up-time</title>
+ <formatter>fmt_timestamp_ddhhmmss</formatter>
</statistic>
<statistic name="MonitorSelfImageSize">
@@ -444,6 +445,7 @@
<statistic name="MonitorSelfAge">
<title>Up-time</title>
+ <formatter>fmt_timestamp_ddhhmmss</formatter>
</statistic>
</class>
@@ -536,6 +538,7 @@
<statistic name="MonitorSelfAge">
<title>Up-time</title>
+ <formatter>fmt_timestamp_ddhhmmss</formatter>
</statistic>
</class>
</package>
Modified: branches/clarity/cumin/python/cumin/grid/dashboard.py
===================================================================
--- branches/clarity/cumin/python/cumin/grid/dashboard.py 2011-06-14 19:11:38 UTC (rev 4826)
+++ branches/clarity/cumin/python/cumin/grid/dashboard.py 2011-06-14 19:13:08 UTC (rev 4827)
@@ -13,7 +13,7 @@
from cumin.sqladapter import ObjectSqlAdapter
from cumin.stat import StatSet, PieChartPage, StatFlashChart
from cumin.objectselector import ObjectSelector, MonitorSelfStatColumn, ObjectTableColumn, ObjectTable,\
- ObjectLinkColumn, CsvStatsExporter, ExportButton
+ ObjectLinkColumn, CsvStatsExporter, ExportButton, MonitorSelfAgeColumn
from cumin.util import rgb_to_string
from negotiator import NegotiatorAttribute
@@ -877,7 +877,8 @@
col = ObjectLinkColumn(app, "name", cls.Name, cls._id, frame)
self.add_column(col)
- self.add_attribute_column(cls.MonitorSelfAge)
+ stat = MonitorSelfAgeColumn(app, "monitorSelfAge", cls.MonitorSelfAge)
+ self.add_column(stat)
self.add_attribute_column(cls.JobSubmissionRate)
self.add_attribute_column(cls.JobStartRate)
@@ -995,10 +996,10 @@
col.static_header = static
self.add_column(col)
- stat = ObjectTableColumn(app, cls.MonitorSelfAge.name, cls.MonitorSelfAge)
+ stat = MonitorSelfAgeColumn(app, "monitorSelfAge", cls.MonitorSelfAge)
stat.static_header = static
self.add_column(stat)
-
+
stat = MonitorSelfStatColumn(app, cls.MonitorSelfRegisteredSocketCount.name, cls.MonitorSelfRegisteredSocketCount)
stat.static_header = static
self.add_column(stat)
Modified: branches/clarity/cumin/python/cumin/grid/negotiator.py
===================================================================
--- branches/clarity/cumin/python/cumin/grid/negotiator.py 2011-06-14 19:11:38 UTC (rev 4826)
+++ branches/clarity/cumin/python/cumin/grid/negotiator.py 2011-06-14 19:13:08 UTC (rev 4827)
@@ -3,7 +3,7 @@
from cumin.objectframe import ObjectFrame, ObjectFrameTask,\
ObjectFrameTaskFeedbackForm
from cumin.objectselector import ObjectSelector, ObjectLinkColumn,\
- MonitorSelfStatColumn, ObjectTable
+ MonitorSelfStatColumn, ObjectTable, MonitorSelfAgeColumn
from wooly import Widget, Attribute, Parameter
from parsley.stringex import rpartition
from cumin.parameters import RosemaryObjectParameter
@@ -39,7 +39,7 @@
self.add_attribute_column(cls.Machine)
self.add_attribute_column(cls.System)
- stat = MonitorSelfStatColumn(app, cls.MonitorSelfAge.name, cls.MonitorSelfAge)
+ stat = MonitorSelfAgeColumn(app, cls.MonitorSelfAge.name, cls.MonitorSelfAge)
self.add_column(stat)
stat = MonitorSelfStatColumn(app, cls.MonitorSelfCPUUsage.name, cls.MonitorSelfCPUUsage)
self.add_column(stat)
Modified: branches/clarity/cumin/python/cumin/grid/scheduler.py
===================================================================
--- branches/clarity/cumin/python/cumin/grid/scheduler.py 2011-06-14 19:11:38 UTC (rev 4826)
+++ branches/clarity/cumin/python/cumin/grid/scheduler.py 2011-06-14 19:13:08 UTC (rev 4827)
@@ -9,7 +9,7 @@
from submitter import SubmitterFrame, SubmitterSelector
from submission import PoolSubmissionSelector
from cumin.objectselector import ObjectSelectorTable, ObjectSelector,\
- ObjectLinkColumn, MonitorSelfStatColumn, ObjectTable
+ ObjectLinkColumn, MonitorSelfStatColumn, ObjectTable, MonitorSelfAgeColumn
from cumin.grid.submission import SubmissionFrame
strings = StringCatalog(__file__)
@@ -90,7 +90,7 @@
self.add_attribute_column(cls.TotalRunningJobs)
self.add_attribute_column(cls.TotalHeldJobs)
- stat = MonitorSelfStatColumn(app, cls.MonitorSelfAge.name, cls.MonitorSelfAge)
+ stat = MonitorSelfAgeColumn(app, cls.MonitorSelfAge.name, cls.MonitorSelfAge)
self.add_column(stat)
stat = MonitorSelfStatColumn(app, cls.MonitorSelfCPUUsage.name, cls.MonitorSelfCPUUsage)
self.add_column(stat)
Modified: branches/clarity/cumin/python/cumin/objectselector.py
===================================================================
--- branches/clarity/cumin/python/cumin/objectselector.py 2011-06-14 19:11:38 UTC (rev 4826)
+++ branches/clarity/cumin/python/cumin/objectselector.py 2011-06-14 19:13:08 UTC (rev 4827)
@@ -548,7 +548,14 @@
if parts[0] == "Monitor" and parts[1] == "self":
return " ".join(parts[2:])
return title
-
+
+class MonitorSelfAgeColumn(ObjectTableColumn):
+ def render_cell_content(self, session, record):
+ mins, secs = divmod(self.field.get_content(session, record), 60)
+ hours, mins = divmod(mins, 60)
+ days = hours / 24
+ return '%02d:%02d:%02d:%02d' % (days, hours, mins, secs)
+
class ExportButton(Widget):
def __init__(self, app, name, args, exporter, file_name):
super(ExportButton, self).__init__(app, name)
Modified: branches/clarity/rosemary/python/rosemary/util.py
===================================================================
--- branches/clarity/rosemary/python/rosemary/util.py 2011-06-14 19:11:38 UTC (rev 4826)
+++ branches/clarity/rosemary/python/rosemary/util.py 2011-06-14 19:13:08 UTC (rev 4827)
@@ -14,4 +14,10 @@
return value and value or "Default exchange"
def fmt_kbmb(value):
- return fmt_bytes(value * 1024)
\ No newline at end of file
+ return fmt_bytes(value * 1024)
+
+def fmt_timestamp_ddhhmmss(value):
+ mins, secs = divmod(value, 60)
+ hours, mins = divmod(mins, 60)
+ days = hours / 24
+ return '%02d:%02d:%02d:%02d' % (days, hours, mins, secs)
\ No newline at end of file
12 years, 10 months
r4826 - in branches/clarity/cumin/python/cumin: . grid
by tmckay@fedoraproject.org
Author: tmckay
Date: 2011-06-14 19:11:38 +0000 (Tue, 14 Jun 2011)
New Revision: 4826
Modified:
branches/clarity/cumin/python/cumin/grid/submission.py
branches/clarity/cumin/python/cumin/objectframe.py
Log:
Merge 4778 from trunk.
BZ699732
Modified: branches/clarity/cumin/python/cumin/grid/submission.py
===================================================================
--- branches/clarity/cumin/python/cumin/grid/submission.py 2011-06-14 19:10:01 UTC (rev 4825)
+++ branches/clarity/cumin/python/cumin/grid/submission.py 2011-06-14 19:11:38 UTC (rev 4826)
@@ -88,7 +88,7 @@
cls = app.model.com_redhat_grid.JobServer
self.add_filter(self.pool, cls.Pool)
- col = ObjectLinkColumn(app, "name", self.cls.Name, self.cls._id, frame)
+ col = self.PoolSubmissionObjectLinkColumn(app, "name", self.cls.Name, self.cls._id, frame)
self.insert_column(0, col)
self.add_search_filter(col)
@@ -111,6 +111,14 @@
def do_enter(self, session, obj, form_session):
pool = self.parent.pool.get(session)
self.form.pool_name.set(form_session, pool.Pool)
+
+ class PoolSubmissionObjectLinkColumn(ObjectLinkColumn):
+ def render_cell_content(self, session, record):
+ retval = len(record) > 0 and record[self.field.index] or ""
+ if(len(record[self.field.index]) > 100):
+ retval = record[self.field.index][:100] + "..." #indicate that we truncated the name
+ return retval
+
class PoolSubmissionJoinSelector(PoolSubmissionSelector):
def __init__(self, app, name, pool):
Modified: branches/clarity/cumin/python/cumin/objectframe.py
===================================================================
--- branches/clarity/cumin/python/cumin/objectframe.py 2011-06-14 19:10:01 UTC (rev 4825)
+++ branches/clarity/cumin/python/cumin/objectframe.py 2011-06-14 19:11:38 UTC (rev 4826)
@@ -233,8 +233,20 @@
links.append(self.link.render(session, frame))
- return " › ".join(reversed(links))
-
+ trimmed_links = list()
+ text_matcher = re.compile('<a.*?>(.*?)</a>')
+ for onelink in links:
+ new_link = onelink
+ #get just the text that we will be displaying to truncate
+ result = text_matcher.search(onelink)
+ if(result.group(1) and len(result.group(1)) > 100):
+ origText = result.group(1)
+ newText = result.group(1)[:100] + "...'"
+ new_link = onelink.replace(origText, newText, 1)
+ trimmed_links.append(new_link)
+
+ return " › ".join(reversed(trimmed_links))
+
class ObjectViewContextLink(Link):
def __init__(self, app, name):
super(ObjectViewContextLink, self).__init__(app, name)
@@ -261,7 +273,11 @@
return self.frame.icon_href
def render_title(self, session):
- return self.parent.render_title(session)
+ retval = self.parent.render_title(session)
+ if(len(retval) > 100):
+ retval = retval[:100] + "..."
+ return retval
+
class ObjectViewSummary(ObjectViewChild):
def __init__(self, app, name, object):
12 years, 10 months
r4825 - branches/clarity/cumin/python/cumin
by tmckay@fedoraproject.org
Author: tmckay
Date: 2011-06-14 19:10:01 +0000 (Tue, 14 Jun 2011)
New Revision: 4825
Modified:
branches/clarity/cumin/python/cumin/session.py
Log:
Merge 4777 from trunk.
BZ692238
Modified: branches/clarity/cumin/python/cumin/session.py
===================================================================
--- branches/clarity/cumin/python/cumin/session.py 2011-06-14 19:08:07 UTC (rev 4824)
+++ branches/clarity/cumin/python/cumin/session.py 2011-06-14 19:10:01 UTC (rev 4825)
@@ -125,6 +125,15 @@
def __init__(self, session):
self.session = session
+ def brokerConnected(self, broker):
+ log.info("Broker connected %s:%s", broker.host, broker.port)
+
+ def brokerConnectionFailed(self, broker):
+ log.info("Broker connection failed %s:%s", broker.host, broker.port)
+
+ def brokerDisconnected(self, broker):
+ log.info("Broker disconnected %s:%s", broker.host, broker.port)
+
def newPackage(self, name):
log.debug("New package %s", name)
12 years, 10 months
r4824 - branches/clarity/cumin/etc
by tmckay@fedoraproject.org
Author: tmckay
Date: 2011-06-14 19:08:07 +0000 (Tue, 14 Jun 2011)
New Revision: 4824
Modified:
branches/clarity/cumin/etc/sysvinit-cumin
Log:
Merge 4776 from trunk.
BZ673273
Modified: branches/clarity/cumin/etc/sysvinit-cumin
===================================================================
--- branches/clarity/cumin/etc/sysvinit-cumin 2011-06-14 19:05:44 UTC (rev 4823)
+++ branches/clarity/cumin/etc/sysvinit-cumin 2011-06-14 19:08:07 UTC (rev 4824)
@@ -8,28 +8,19 @@
#
# Sanity checks.
-test -x /usr/bin/cumin || exit 1
-test -x /usr/bin/cumin-database || exit 1
-
-SYSCONFIG="/etc/sysconfig/cumin"
-[ -r "$SYSCONFIG" ] && source "$SYSCONFIG"
-
-cumin-database check-started &> /dev/null || {
- echo "Cumin's database server is not running"
- echo "Run 'cumin-database start' as root"
+test -x /usr/bin/cumin || {
+ echo "/usr/bin/cumin has been removed"
exit 1
}
-cumin-database check &> /dev/null || {
- # Run again with output left on for user.
- echo "Cumin's database is not yet installed"
- echo "Run 'cumin-database install' as root"
-
- echo "(detailed output from cumin-database check:)"
- cumin-database check noadvice
+test -x /usr/bin/cumin-database || {
+ echo "/usr/bin/cumin-database has been removed"
exit 1
}
+SYSCONFIG="/etc/sysconfig/cumin"
+[ -r "$SYSCONFIG" ] && source "$SYSCONFIG"
+
# Source function library.
. /etc/rc.d/init.d/functions
@@ -40,6 +31,24 @@
RETVAL=0
start() {
+
+ # Initial checks for the start case
+ cumin-database check-started &> /dev/null || {
+ echo "Cumin's database server is not running"
+ echo "Run 'cumin-database start' as root"
+ exit 1
+ }
+
+ cumin-database check &> /dev/null || {
+ # Run again with output left on for user.
+ echo "Cumin's database is not yet installed"
+ echo "Run 'cumin-database install' as root"
+
+ echo "(detailed output from cumin-database check:)"
+ cumin-database check noadvice
+ exit 1
+ }
+
echo -n $"Starting cumin: "
# If it's already running, be happy and return success
status $processname &> /dev/null
12 years, 10 months
r4823 - branches/clarity/cumin/python/cumin
by tmckay@fedoraproject.org
Author: tmckay
Date: 2011-06-14 19:05:44 +0000 (Tue, 14 Jun 2011)
New Revision: 4823
Modified:
branches/clarity/cumin/python/cumin/widgets.strings
Log:
Merge 4775 from trunk.
BZ697075
Modified: branches/clarity/cumin/python/cumin/widgets.strings
===================================================================
--- branches/clarity/cumin/python/cumin/widgets.strings 2011-06-14 19:03:33 UTC (rev 4822)
+++ branches/clarity/cumin/python/cumin/widgets.strings 2011-06-14 19:05:44 UTC (rev 4823)
@@ -110,7 +110,13 @@
[CuminMainView.javascript]
cumin.set_updated = function () {
- $('heartbeat').set('text', "Updated " + new Date().format("%Y-%m-%d %H:%M:%S"));
+ var updateStr;
+ var kiosk = wooly.session.branch()["kiosk"];
+ if (kiosk != null && kiosk != undefined)
+ updateStr = "**Updated "
+ else
+ updateStr = "Updated "
+ $('heartbeat').set('text', updateStr + new Date().format("%Y-%m-%d %H:%M:%S"));
$('shock').style.display = "none";
$('heartbeat').style.display = "inline";
$('heartbeat').style.color = "#000000";
@@ -129,18 +135,23 @@
cumin.expireID = null;
}
}
- cumin.expireID = setTimeout(function () {
- wooly.cancelIntervalUpdate();
- setTimeout(function () {
- $('heartbeat').style.display = "none";
- $('shock').style.display = "block"}, 1000);
- $('shock').onclick = function () {
- wooly.updateNow();
- wooly.resumeIntervalUpdate();
- cumin.expireIntervalUpdate();
- cumin.set_updated();
- }
- }, 30*60*1000);
+ // A "kiosk" NV pair in the URL prevents timeouts
+ var kiosk = wooly.session.branch()["kiosk"]
+ if (kiosk == null || kiosk == undefined)
+ {
+ cumin.expireID = setTimeout(function () {
+ wooly.cancelIntervalUpdate();
+ setTimeout(function () {
+ $('heartbeat').style.display = "none";
+ $('shock').style.display = "block"}, 1000);
+ $('shock').onclick = function () {
+ wooly.updateNow();
+ wooly.resumeIntervalUpdate();
+ cumin.expireIntervalUpdate();
+ cumin.set_updated();
+ }
+ }, 30*60*1000);
+ };
};
cumin.expireIntervalUpdate();
window.addEvent('domready', function () {
12 years, 10 months
r4822 - branches/clarity/cumin/python/cumin/grid
by tmckay@fedoraproject.org
Author: tmckay
Date: 2011-06-14 19:03:33 +0000 (Tue, 14 Jun 2011)
New Revision: 4822
Modified:
branches/clarity/cumin/python/cumin/grid/limit.py
Log:
Merge 4774 from trunk.
BZ696697
Modified: branches/clarity/cumin/python/cumin/grid/limit.py
===================================================================
--- branches/clarity/cumin/python/cumin/grid/limit.py 2011-06-14 19:00:20 UTC (rev 4821)
+++ branches/clarity/cumin/python/cumin/grid/limit.py 2011-06-14 19:03:33 UTC (rev 4822)
@@ -183,9 +183,7 @@
self.reset_button = self.ResetLimitFormButton(app, "resetbutton")
self.add_field(self.reset_button)
-
-
-
+
def process_submit(self, session):
new_max_value = self.limit_max.input.get(session)
@@ -193,8 +191,10 @@
if not self.errors.get(session):
if new_max_value.lower() in ("unlimited", "na", "n/a") or float(new_max_value) >= LIMIT_FLOAT_VALUE_FOR_UNLIMITED:
self.limit_max.set(session, LIMIT_FLOAT_VALUE_FOR_UNLIMITED)
+ elif float(new_max_value) < 0:
+ self.limit_max.set(session, 0)
else:
- self.limit_max.set(session,new_max_value)
+ self.limit_max.set(session, new_max_value)
if not self.errors.get(session):
limit_name = self.limit_name.get(session)
12 years, 10 months
r4821 - in branches/clarity/cumin/python/cumin: . grid
by tmckay@fedoraproject.org
Author: tmckay
Date: 2011-06-14 19:00:20 +0000 (Tue, 14 Jun 2011)
New Revision: 4821
Modified:
branches/clarity/cumin/python/cumin/grid/job.py
branches/clarity/cumin/python/cumin/objectframe.strings
Log:
Merge 4773 from trunk.
BZ703285
Modified: branches/clarity/cumin/python/cumin/grid/job.py
===================================================================
--- branches/clarity/cumin/python/cumin/grid/job.py 2011-06-14 18:43:13 UTC (rev 4820)
+++ branches/clarity/cumin/python/cumin/grid/job.py 2011-06-14 19:00:20 UTC (rev 4821)
@@ -972,6 +972,12 @@
self.form.return_url.set(session, nsession.marshal())
class JobSetAttribute(ObjectFrameTask):
+ def __init__(self, app, frame):
+ super(JobSetAttribute, self).__init__(app, frame)
+
+ # Since we don't actually want to see this on the job view page
+ self.visible=False
+
def get_title(self, session):
pass
Modified: branches/clarity/cumin/python/cumin/objectframe.strings
===================================================================
--- branches/clarity/cumin/python/cumin/objectframe.strings 2011-06-14 18:43:13 UTC (rev 4820)
+++ branches/clarity/cumin/python/cumin/objectframe.strings 2011-06-14 19:00:20 UTC (rev 4821)
@@ -55,8 +55,19 @@
</table>
[ObjectTasksLink.html]
-<li><a href="{href}">{content}</a></li>
+<li><a class="{class}" href="{href}">{content}</a></li>
+[ObjectTasksLink.css]
+a.ObjectTaskLink {
+ font-size: 0.9em;
+}
+
+a.ObjectTasksLink:before {
+ content: "\00BB \0020";
+ font-weight: bold;
+ color: #dc9f2e;
+}
+
[SummaryTasks.css]
ul.SummaryTasks {
width: 15em;
12 years, 10 months