summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Pollard <tom.pollard@codethink.co.uk>2019-10-23 16:21:09 +0100
committerbst-marge-bot <marge-bot@buildstream.build>2019-10-25 13:33:17 +0000
commit4dd9b9ed5293ef3dc40250c5ad470859f1d081ad (patch)
tree1976fc7698efec12194ac5277bb23d1a36da54d4
parent44e8e25d88a473d69197998f80a91bedaec15ddd (diff)
downloadbuildstream-tpollard/render_task_group.tar.gz
_frontend/status.py: Complete names when rendering dynamic queue statustpollard/render_task_group
At somepoint action_name instead of complete_name started to be rendered to the user for the dynamic list of queue status reports. As we now have more of a UI seperation between 'Artifact' & 'Source' tasks, it also makes sense to reflect these actions in this output.
-rw-r--r--src/buildstream/_frontend/status.py6
-rw-r--r--src/buildstream/_scheduler/queues/artifactpushqueue.py2
-rw-r--r--src/buildstream/_scheduler/queues/fetchqueue.py2
-rw-r--r--src/buildstream/_scheduler/queues/pullqueue.py2
-rw-r--r--src/buildstream/_scheduler/queues/queue.py2
-rw-r--r--src/buildstream/_scheduler/queues/sourcepushqueue.py2
-rw-r--r--src/buildstream/_scheduler/queues/trackqueue.py2
-rw-r--r--src/buildstream/_state.py9
8 files changed, 15 insertions, 12 deletions
diff --git a/src/buildstream/_frontend/status.py b/src/buildstream/_frontend/status.py
index a204bd9ac..8da7df047 100644
--- a/src/buildstream/_frontend/status.py
+++ b/src/buildstream/_frontend/status.py
@@ -394,7 +394,7 @@ class _StatusHeader():
#
# Line 2: Dynamic list of queue status reports
#
- # (Fetched:0 117 0)→ (Built:4 0 0)
+ # (Sources Fetched:0 117 0)→ (Built:4 0 0)
#
size = 0
text = ''
@@ -455,10 +455,10 @@ class _StatusHeader():
failed = str(len(group.failed_tasks))
size = 5 # Space for the formatting '[', ':', ' ', ' ' and ']'
- size += len(group.name)
+ size += len(group.complete_name)
size += len(processed) + len(skipped) + len(failed)
text = self._format_profile.fmt("(") + \
- self._content_profile.fmt(group.name) + \
+ self._content_profile.fmt(group.complete_name) + \
self._format_profile.fmt(":") + \
self._success_profile.fmt(processed) + ' ' + \
self._content_profile.fmt(skipped) + ' ' + \
diff --git a/src/buildstream/_scheduler/queues/artifactpushqueue.py b/src/buildstream/_scheduler/queues/artifactpushqueue.py
index 3b45a7154..071c6fe74 100644
--- a/src/buildstream/_scheduler/queues/artifactpushqueue.py
+++ b/src/buildstream/_scheduler/queues/artifactpushqueue.py
@@ -29,7 +29,7 @@ from ..._exceptions import SkipJob
class ArtifactPushQueue(Queue):
action_name = "Push"
- complete_name = "Pushed"
+ complete_name = "Artifacts Pushed"
resources = [ResourceType.UPLOAD]
def get_process_func(self):
diff --git a/src/buildstream/_scheduler/queues/fetchqueue.py b/src/buildstream/_scheduler/queues/fetchqueue.py
index af2a69444..4f38f377a 100644
--- a/src/buildstream/_scheduler/queues/fetchqueue.py
+++ b/src/buildstream/_scheduler/queues/fetchqueue.py
@@ -32,7 +32,7 @@ from ..jobs import JobStatus
class FetchQueue(Queue):
action_name = "Fetch"
- complete_name = "Fetched"
+ complete_name = "Sources Fetched"
resources = [ResourceType.DOWNLOAD]
def __init__(self, scheduler, skip_cached=False, fetch_original=False):
diff --git a/src/buildstream/_scheduler/queues/pullqueue.py b/src/buildstream/_scheduler/queues/pullqueue.py
index 7f4125099..e1d69590f 100644
--- a/src/buildstream/_scheduler/queues/pullqueue.py
+++ b/src/buildstream/_scheduler/queues/pullqueue.py
@@ -30,7 +30,7 @@ from ..._exceptions import SkipJob
class PullQueue(Queue):
action_name = "Pull"
- complete_name = "Pulled"
+ complete_name = "Artifacts Pulled"
resources = [ResourceType.DOWNLOAD, ResourceType.CACHE]
def get_process_func(self):
diff --git a/src/buildstream/_scheduler/queues/queue.py b/src/buildstream/_scheduler/queues/queue.py
index 6c6dfdc4f..49fae5677 100644
--- a/src/buildstream/_scheduler/queues/queue.py
+++ b/src/buildstream/_scheduler/queues/queue.py
@@ -85,7 +85,7 @@ class Queue():
if ResourceType.UPLOAD in self.resources or ResourceType.DOWNLOAD in self.resources:
self._max_retries = scheduler.context.sched_network_retries
- self._task_group = self._scheduler._state.add_task_group(self.action_name)
+ self._task_group = self._scheduler._state.add_task_group(self.action_name, self.complete_name)
# destroy()
#
diff --git a/src/buildstream/_scheduler/queues/sourcepushqueue.py b/src/buildstream/_scheduler/queues/sourcepushqueue.py
index 4b4b96e2b..897122108 100644
--- a/src/buildstream/_scheduler/queues/sourcepushqueue.py
+++ b/src/buildstream/_scheduler/queues/sourcepushqueue.py
@@ -27,7 +27,7 @@ from ..._exceptions import SkipJob
class SourcePushQueue(Queue):
action_name = "Src-push"
- complete_name = "Sources pushed"
+ complete_name = "Sources Pushed"
resources = [ResourceType.UPLOAD]
def get_process_func(self):
diff --git a/src/buildstream/_scheduler/queues/trackqueue.py b/src/buildstream/_scheduler/queues/trackqueue.py
index 3700f3406..4187c5c7b 100644
--- a/src/buildstream/_scheduler/queues/trackqueue.py
+++ b/src/buildstream/_scheduler/queues/trackqueue.py
@@ -32,7 +32,7 @@ from ..jobs import JobStatus
class TrackQueue(Queue):
action_name = "Track"
- complete_name = "Tracked"
+ complete_name = "Sources Tracked"
resources = [ResourceType.DOWNLOAD]
def get_process_func(self):
diff --git a/src/buildstream/_state.py b/src/buildstream/_state.py
index c99434018..310e12a63 100644
--- a/src/buildstream/_state.py
+++ b/src/buildstream/_state.py
@@ -26,10 +26,12 @@ from collections import OrderedDict
# Args:
# name (str): The name of the Task Group, e.g. 'build'
# state (State): The state object
+# complete_name (str): Optional name for frontend status rendering, e.g. 'built'
#
class TaskGroup():
- def __init__(self, name, state):
+ def __init__(self, name, state, complete_name=None):
self.name = name
+ self.complete_name = complete_name
self.processed_tasks = 0
self.skipped_tasks = 0
# NOTE: failed_tasks is a list of strings instead of an integer count
@@ -236,13 +238,14 @@ class State():
#
# Args:
# name (str): The name of the task group, e.g. 'build'
+ # complete_name (str): Optional name to be used for frontend status rendering, e.g. 'built'
#
# Returns:
# TaskGroup: The task group created
#
- def add_task_group(self, name):
+ def add_task_group(self, name, complete_name=None):
assert name not in self.task_groups, "Trying to add task group '{}' to '{}'".format(name, self.task_groups)
- group = TaskGroup(name, self)
+ group = TaskGroup(name, self, complete_name)
self.task_groups[name] = group
return group