ctp: add CTPBuilder support for TR hours

BUG=b:466201275
TEST=satlab cli

Change-Id: Ib80f20e8a28ed7efe253c7aa9066365bf0e8e320
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/dev-util/+/7414847
Reviewed-by: Matt Bubernak <mattbubernak@google.com>
Auto-Submit: Jacek Klimkowicz <klimkowicz@google.com>
Tested-by: Jacek Klimkowicz <klimkowicz@google.com>
Commit-Queue: Matt Bubernak <mattbubernak@google.com>
diff --git a/src/go.chromium.org/chromiumos/ctp/builder/builder.go b/src/go.chromium.org/chromiumos/ctp/builder/builder.go
index 58889b1..f94ec75 100644
--- a/src/go.chromium.org/chromiumos/ctp/builder/builder.go
+++ b/src/go.chromium.org/chromiumos/ctp/builder/builder.go
@@ -106,6 +106,8 @@
 	// TimeoutMins is the timeout of the CTP run in minutes
 	// If not set, will default to 360
 	TimeoutMins int
+	// TrHours is used to extend the TestRunner child builders spawned by CTP
+	TrHours int64
 	// UseScheduke determines if we use Scheduke to schedule the CTP build
 	UseScheduke bool
 	// UserDefinedFilters are run within CTPv2.
@@ -435,6 +437,8 @@
 		s.Priority = c.Priority
 	}
 
+	s.TrHours = c.TrHours
+
 	return s
 }
 
diff --git a/src/go.chromium.org/chromiumos/ctp/builder/builder_test.go b/src/go.chromium.org/chromiumos/ctp/builder/builder_test.go
index 646d8f5..f8678ed 100644
--- a/src/go.chromium.org/chromiumos/ctp/builder/builder_test.go
+++ b/src/go.chromium.org/chromiumos/ctp/builder/builder_test.go
@@ -323,6 +323,19 @@
 		},
 	},
 	{
+		"TR hours",
+		CTPBuilder{
+			Priority: 123,
+			Pool:     "foobar",
+			TrHours:  48,
+		},
+		&test_platform.Request_Params_Scheduling{
+			Pool:     &test_platform.Request_Params_Scheduling_UnmanagedPool{UnmanagedPool: "foobar"},
+			Priority: 123,
+			TrHours:  48,
+		},
+	},
+	{
 		"managed pool",
 		CTPBuilder{
 			Priority: 123,