From 4dd9b9ed5293ef3dc40250c5ad470859f1d081ad Mon Sep 17 00:00:00 2001 From: Tom Pollard Date: Wed, 23 Oct 2019 16:21:09 +0100 Subject: _frontend/status.py: Complete names when rendering dynamic queue status 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. --- src/buildstream/_frontend/status.py | 6 +++--- src/buildstream/_scheduler/queues/artifactpushqueue.py | 2 +- src/buildstream/_scheduler/queues/fetchqueue.py | 2 +- src/buildstream/_scheduler/queues/pullqueue.py | 2 +- src/buildstream/_scheduler/queues/queue.py | 2 +- src/buildstream/_scheduler/queues/sourcepushqueue.py | 2 +- src/buildstream/_scheduler/queues/trackqueue.py | 2 +- src/buildstream/_state.py | 9 ++++++--- 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 -- cgit v1.2.1