OLD | NEW |
1 # Copyright 2015 The LUCI Authors. All rights reserved. | 1 # Copyright 2015 The LUCI Authors. All rights reserved. |
2 # Use of this source code is governed under the Apache License, Version 2.0 | 2 # Use of this source code is governed under the Apache License, Version 2.0 |
3 # that can be found in the LICENSE file. | 3 # that can be found in the LICENSE file. |
4 | 4 |
5 """This module defines ProtoRPC types for the Swarming Server handlers.""" | 5 """This module defines ProtoRPC types for the Swarming Server handlers.""" |
6 | 6 |
7 from protorpc import message_types | 7 from protorpc import message_types |
8 from protorpc import messages | 8 from protorpc import messages |
9 | 9 |
10 | 10 |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 # CIPD package of CIPD client to use. | 136 # CIPD package of CIPD client to use. |
137 # client_package.version is required. | 137 # client_package.version is required. |
138 # This field is optional is default value is defined in the server config. | 138 # This field is optional is default value is defined in the server config. |
139 # client_package.path must be empty. | 139 # client_package.path must be empty. |
140 client_package = messages.MessageField(CipdPackage, 2) | 140 client_package = messages.MessageField(CipdPackage, 2) |
141 | 141 |
142 # List of CIPD packages to install in $CIPD_PATH prior task execution. | 142 # List of CIPD packages to install in $CIPD_PATH prior task execution. |
143 packages = messages.MessageField(CipdPackage, 3, repeated=True) | 143 packages = messages.MessageField(CipdPackage, 3, repeated=True) |
144 | 144 |
145 | 145 |
| 146 class CipdPins(messages.Message): |
| 147 """Defines pinned CIPD packages that were installed during the task.""" |
| 148 |
| 149 # The pinned package + version of the CIPD client that was actually used. |
| 150 client_package = messages.MessageField(CipdPackage, 1) |
| 151 |
| 152 # List of CIPD packages that were installed in the task with fully resolved |
| 153 # package names and versions. |
| 154 packages = messages.MessageField(CipdPackage, 2, repeated=True) |
| 155 |
| 156 |
146 class TaskProperties(messages.Message): | 157 class TaskProperties(messages.Message): |
147 """Important metadata about a particular task.""" | 158 """Important metadata about a particular task.""" |
148 cipd_input = messages.MessageField(CipdInput, 10) | 159 cipd_input = messages.MessageField(CipdInput, 10) |
149 command = messages.StringField(1, repeated=True) | 160 command = messages.StringField(1, repeated=True) |
150 dimensions = messages.MessageField(StringPair, 2, repeated=True) | 161 dimensions = messages.MessageField(StringPair, 2, repeated=True) |
151 env = messages.MessageField(StringPair, 3, repeated=True) | 162 env = messages.MessageField(StringPair, 3, repeated=True) |
152 execution_timeout_secs = messages.IntegerField(4) | 163 execution_timeout_secs = messages.IntegerField(4) |
153 extra_args = messages.StringField(5, repeated=True) | 164 extra_args = messages.StringField(5, repeated=True) |
154 grace_period_secs = messages.IntegerField(6) | 165 grace_period_secs = messages.IntegerField(6) |
155 idempotent = messages.BooleanField(7) | 166 idempotent = messages.BooleanField(7) |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
283 costs_usd = messages.FloatField(22, repeated=True) | 294 costs_usd = messages.FloatField(22, repeated=True) |
284 # Only in TaskResultSummary. | 295 # Only in TaskResultSummary. |
285 name = messages.StringField(23) | 296 name = messages.StringField(23) |
286 # Only in TaskResultSummary. | 297 # Only in TaskResultSummary. |
287 tags = messages.StringField(24, repeated=True) | 298 tags = messages.StringField(24, repeated=True) |
288 # Only in TaskResultSummary. | 299 # Only in TaskResultSummary. |
289 user = messages.StringField(25) | 300 user = messages.StringField(25) |
290 # Statistics about overhead for an isolated task. Only sent when requested. | 301 # Statistics about overhead for an isolated task. Only sent when requested. |
291 performance_stats = messages.MessageField(PerformanceStats, 26) | 302 performance_stats = messages.MessageField(PerformanceStats, 26) |
292 | 303 |
| 304 # A listing of the ACTUAL pinned CipdPackages that the task used. These can |
| 305 # vary from the input packages if the inputs included non-identity versions |
| 306 # (e.g. a ref like "latest"). |
| 307 cipd_pins = messages.MessageField(CipdPins, 27) |
| 308 |
293 | 309 |
294 class TaskList(messages.Message): | 310 class TaskList(messages.Message): |
295 """Wraps a list of TaskResult.""" | 311 """Wraps a list of TaskResult.""" |
296 # TODO(maruel): Rename to TaskResults. | 312 # TODO(maruel): Rename to TaskResults. |
297 cursor = messages.StringField(1) | 313 cursor = messages.StringField(1) |
298 items = messages.MessageField(TaskResult, 2, repeated=True) | 314 items = messages.MessageField(TaskResult, 2, repeated=True) |
299 now = message_types.DateTimeField(3) | 315 now = message_types.DateTimeField(3) |
300 | 316 |
301 | 317 |
302 class TaskRequests(messages.Message): | 318 class TaskRequests(messages.Message): |
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
467 | 483 |
468 | 484 |
469 class DeletedResponse(messages.Message): | 485 class DeletedResponse(messages.Message): |
470 """Indicates whether a bot was deleted.""" | 486 """Indicates whether a bot was deleted.""" |
471 deleted = messages.BooleanField(1) | 487 deleted = messages.BooleanField(1) |
472 | 488 |
473 | 489 |
474 class TerminateResponse(messages.Message): | 490 class TerminateResponse(messages.Message): |
475 """Returns the pseudo taskid to wait for the bot to shut down.""" | 491 """Returns the pseudo taskid to wait for the bot to shut down.""" |
476 task_id = messages.StringField(1) | 492 task_id = messages.StringField(1) |
OLD | NEW |