[buildbucket] Fix field mask in search
It must be `builds.*.builder`, not `builds.builder`.
TBR=tandrii@chromium.org
Recipe-Nontrivial-Roll: chromiumos
Change-Id: I5ebdef0e080784a89cab9453cabb488aaf99d047
Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/recipes-py/+/1600332
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
diff --git a/README.recipes.md b/README.recipes.md
index eb875a4..6296c28 100644
--- a/README.recipes.md
+++ b/README.recipes.md
@@ -247,7 +247,7 @@
A module for interacting with buildbucket.
-  **@property**<br>— **def [bucket\_v1](/recipe_modules/buildbucket/api.py#829)(self):**
+  **@property**<br>— **def [bucket\_v1](/recipe_modules/buildbucket/api.py#828)(self):**
Returns bucket name in v1 format.
@@ -270,11 +270,11 @@
the rules described in the .proto files.
If the current build is not a buildbucket build, returned `build.id` is 0.
-  **@property**<br>— **def [build\_id](/recipe_modules/buildbucket/api.py#845)(self):**
+  **@property**<br>— **def [build\_id](/recipe_modules/buildbucket/api.py#844)(self):**
DEPRECATED, use build.id instead.
-  **@property**<br>— **def [build\_input](/recipe_modules/buildbucket/api.py#850)(self):**
+  **@property**<br>— **def [build\_input](/recipe_modules/buildbucket/api.py#849)(self):**
DEPRECATED, use build.input instead.
@@ -291,7 +291,7 @@
See "Builder cache" in
https://chromium.googlesource.com/infra/luci/luci-go/+/master/buildbucket/proto/project_config.proto
-  **@property**<br>— **def [builder\_id](/recipe_modules/buildbucket/api.py#855)(self):**
+  **@property**<br>— **def [builder\_id](/recipe_modules/buildbucket/api.py#854)(self):**
Deprecated. Use build.builder instead.
@@ -301,7 +301,7 @@
— **def [cancel\_build](/recipe_modules/buildbucket/api.py#598)(self, build_id, \*\*kwargs):**
-— **def [collect\_build](/recipe_modules/buildbucket/api.py#658)(self, build_id, mirror_status=False, \*\*kwargs):**
+— **def [collect\_build](/recipe_modules/buildbucket/api.py#657)(self, build_id, mirror_status=False, \*\*kwargs):**
Shorthand for `collect_builds` below, but for a single build only.
@@ -313,7 +313,7 @@
[Build](https://chromium.googlesource.com/infra/luci/luci-go/+/master/buildbucket/proto/build.proto).
for the ended build.
-— **def [collect\_builds](/recipe_modules/buildbucket/api.py#678)(self, build_ids, interval=None, timeout=None, step_name=None, raise_if_unsuccessful=False):**
+— **def [collect\_builds](/recipe_modules/buildbucket/api.py#677)(self, build_ids, interval=None, timeout=None, step_name=None, raise_if_unsuccessful=False):**
Waits for a set of builds to end and returns their details.
@@ -343,9 +343,9 @@
Returns:
A build_pb2.Build.
-— **def [get\_build](/recipe_modules/buildbucket/api.py#654)(self, build_id, \*\*kwargs):**
+— **def [get\_build](/recipe_modules/buildbucket/api.py#653)(self, build_id, \*\*kwargs):**
-DEPRECTED. Use get().
+DEPRECATED. Use get().
— **def [get\_multi](/recipe_modules/buildbucket/api.py#601)(self, build_ids, url_title_fn=None, step_name=None):**
@@ -375,7 +375,7 @@
Returns True if the build is critical. Build defaults to the current one.
-  **@property**<br>— **def [properties](/recipe_modules/buildbucket/api.py#840)(self):**
+  **@property**<br>— **def [properties](/recipe_modules/buildbucket/api.py#839)(self):**
DEPRECATED, use build attribute instead.
diff --git a/recipe_modules/buildbucket/api.py b/recipe_modules/buildbucket/api.py
index e56e6a1..b39b50e 100644
--- a/recipe_modules/buildbucket/api.py
+++ b/recipe_modules/buildbucket/api.py
@@ -570,7 +570,7 @@
dict(search_builds=dict(
predicate=p,
page_size=limit,
- fields=self._default_field_mask('builds.'),
+ fields=self._default_field_mask('builds.*.'),
))
for p in predicate
],
diff --git a/recipe_modules/buildbucket/tests/search.expected/basic.json b/recipe_modules/buildbucket/tests/search.expected/basic.json
index 89b04e1..5dd849e 100644
--- a/recipe_modules/buildbucket/tests/search.expected/basic.json
+++ b/recipe_modules/buildbucket/tests/search.expected/basic.json
@@ -8,7 +8,7 @@
],
"infra_step": true,
"name": "buildbucket.search",
- "stdin": "{\"requests\": [{\"searchBuilds\": {\"fields\": \"builds.builder,builds.createTime,builds.createdBy,builds.endTime,builds.id,builds.input,builds.number,builds.output,builds.startTime,builds.status,builds.updateTime\", \"pageSize\": 1000, \"predicate\": {\"gerritChanges\": [{\"change\": \"123456\", \"host\": \"chromium-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"chromium/src\"}]}}}]}",
+ "stdin": "{\"requests\": [{\"searchBuilds\": {\"fields\": \"builds.*.builder,builds.*.createTime,builds.*.createdBy,builds.*.endTime,builds.*.id,builds.*.input,builds.*.number,builds.*.output,builds.*.startTime,builds.*.status,builds.*.updateTime\", \"pageSize\": 1000, \"predicate\": {\"gerritChanges\": [{\"change\": \"123456\", \"host\": \"chromium-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"chromium/src\"}]}}}]}",
"stdout": "/path/to/tmp/json",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{}@@@",
@@ -17,7 +17,7 @@
"@@@STEP_LOG_LINE@request@ \"requests\": [@@@",
"@@@STEP_LOG_LINE@request@ {@@@",
"@@@STEP_LOG_LINE@request@ \"searchBuilds\": {@@@",
- "@@@STEP_LOG_LINE@request@ \"fields\": \"builds.builder,builds.createTime,builds.createdBy,builds.endTime,builds.id,builds.input,builds.number,builds.output,builds.startTime,builds.status,builds.updateTime\", @@@",
+ "@@@STEP_LOG_LINE@request@ \"fields\": \"builds.*.builder,builds.*.createTime,builds.*.createdBy,builds.*.endTime,builds.*.id,builds.*.input,builds.*.number,builds.*.output,builds.*.startTime,builds.*.status,builds.*.updateTime\", @@@",
"@@@STEP_LOG_LINE@request@ \"pageSize\": 1000, @@@",
"@@@STEP_LOG_LINE@request@ \"predicate\": {@@@",
"@@@STEP_LOG_LINE@request@ \"gerritChanges\": [@@@",
diff --git a/recipe_modules/buildbucket/tests/search.expected/limit.json b/recipe_modules/buildbucket/tests/search.expected/limit.json
index f9f30f6..8644440 100644
--- a/recipe_modules/buildbucket/tests/search.expected/limit.json
+++ b/recipe_modules/buildbucket/tests/search.expected/limit.json
@@ -8,7 +8,7 @@
],
"infra_step": true,
"name": "buildbucket.search",
- "stdin": "{\"requests\": [{\"searchBuilds\": {\"fields\": \"builds.builder,builds.createTime,builds.createdBy,builds.endTime,builds.id,builds.input,builds.number,builds.output,builds.startTime,builds.status,builds.updateTime\", \"pageSize\": 5, \"predicate\": {\"gerritChanges\": [{\"change\": \"123456\", \"host\": \"chromium-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"chromium/src\"}]}}}]}",
+ "stdin": "{\"requests\": [{\"searchBuilds\": {\"fields\": \"builds.*.builder,builds.*.createTime,builds.*.createdBy,builds.*.endTime,builds.*.id,builds.*.input,builds.*.number,builds.*.output,builds.*.startTime,builds.*.status,builds.*.updateTime\", \"pageSize\": 5, \"predicate\": {\"gerritChanges\": [{\"change\": \"123456\", \"host\": \"chromium-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"chromium/src\"}]}}}]}",
"stdout": "/path/to/tmp/json",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
@@ -66,7 +66,7 @@
"@@@STEP_LOG_LINE@request@ \"requests\": [@@@",
"@@@STEP_LOG_LINE@request@ {@@@",
"@@@STEP_LOG_LINE@request@ \"searchBuilds\": {@@@",
- "@@@STEP_LOG_LINE@request@ \"fields\": \"builds.builder,builds.createTime,builds.createdBy,builds.endTime,builds.id,builds.input,builds.number,builds.output,builds.startTime,builds.status,builds.updateTime\", @@@",
+ "@@@STEP_LOG_LINE@request@ \"fields\": \"builds.*.builder,builds.*.createTime,builds.*.createdBy,builds.*.endTime,builds.*.id,builds.*.input,builds.*.number,builds.*.output,builds.*.startTime,builds.*.status,builds.*.updateTime\", @@@",
"@@@STEP_LOG_LINE@request@ \"pageSize\": 5, @@@",
"@@@STEP_LOG_LINE@request@ \"predicate\": {@@@",
"@@@STEP_LOG_LINE@request@ \"gerritChanges\": [@@@",
diff --git a/recipe_modules/buildbucket/tests/search.expected/search failed.json b/recipe_modules/buildbucket/tests/search.expected/search failed.json
index 26a49d9..da3c7c0 100644
--- a/recipe_modules/buildbucket/tests/search.expected/search failed.json
+++ b/recipe_modules/buildbucket/tests/search.expected/search failed.json
@@ -8,7 +8,7 @@
],
"infra_step": true,
"name": "buildbucket.search",
- "stdin": "{\"requests\": [{\"searchBuilds\": {\"fields\": \"builds.builder,builds.createTime,builds.createdBy,builds.endTime,builds.id,builds.input,builds.number,builds.output,builds.startTime,builds.status,builds.updateTime\", \"pageSize\": 1000, \"predicate\": {\"gerritChanges\": [{\"change\": \"123456\", \"host\": \"chromium-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"chromium/src\"}]}}}]}",
+ "stdin": "{\"requests\": [{\"searchBuilds\": {\"fields\": \"builds.*.builder,builds.*.createTime,builds.*.createdBy,builds.*.endTime,builds.*.id,builds.*.input,builds.*.number,builds.*.output,builds.*.startTime,builds.*.status,builds.*.updateTime\", \"pageSize\": 1000, \"predicate\": {\"gerritChanges\": [{\"change\": \"123456\", \"host\": \"chromium-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"chromium/src\"}]}}}]}",
"stdout": "/path/to/tmp/json",
"~followup_annotations": [
"@@@STEP_TEXT@Request #0<br>Status code: 0<br>Message: there was a problem<br>@@@",
@@ -26,7 +26,7 @@
"@@@STEP_LOG_LINE@request@ \"requests\": [@@@",
"@@@STEP_LOG_LINE@request@ {@@@",
"@@@STEP_LOG_LINE@request@ \"searchBuilds\": {@@@",
- "@@@STEP_LOG_LINE@request@ \"fields\": \"builds.builder,builds.createTime,builds.createdBy,builds.endTime,builds.id,builds.input,builds.number,builds.output,builds.startTime,builds.status,builds.updateTime\", @@@",
+ "@@@STEP_LOG_LINE@request@ \"fields\": \"builds.*.builder,builds.*.createTime,builds.*.createdBy,builds.*.endTime,builds.*.id,builds.*.input,builds.*.number,builds.*.output,builds.*.startTime,builds.*.status,builds.*.updateTime\", @@@",
"@@@STEP_LOG_LINE@request@ \"pageSize\": 1000, @@@",
"@@@STEP_LOG_LINE@request@ \"predicate\": {@@@",
"@@@STEP_LOG_LINE@request@ \"gerritChanges\": [@@@",
diff --git a/recipe_modules/buildbucket/tests/search.expected/two builds.json b/recipe_modules/buildbucket/tests/search.expected/two builds.json
index 52a3ad2..8f79814 100644
--- a/recipe_modules/buildbucket/tests/search.expected/two builds.json
+++ b/recipe_modules/buildbucket/tests/search.expected/two builds.json
@@ -8,7 +8,7 @@
],
"infra_step": true,
"name": "buildbucket.search",
- "stdin": "{\"requests\": [{\"searchBuilds\": {\"fields\": \"builds.builder,builds.createTime,builds.createdBy,builds.endTime,builds.id,builds.input,builds.number,builds.output,builds.startTime,builds.status,builds.updateTime\", \"pageSize\": 1000, \"predicate\": {\"gerritChanges\": [{\"change\": \"123456\", \"host\": \"chromium-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"chromium/src\"}]}}}]}",
+ "stdin": "{\"requests\": [{\"searchBuilds\": {\"fields\": \"builds.*.builder,builds.*.createTime,builds.*.createdBy,builds.*.endTime,builds.*.id,builds.*.input,builds.*.number,builds.*.output,builds.*.startTime,builds.*.status,builds.*.updateTime\", \"pageSize\": 1000, \"predicate\": {\"gerritChanges\": [{\"change\": \"123456\", \"host\": \"chromium-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"chromium/src\"}]}}}]}",
"stdout": "/path/to/tmp/json",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
@@ -34,7 +34,7 @@
"@@@STEP_LOG_LINE@request@ \"requests\": [@@@",
"@@@STEP_LOG_LINE@request@ {@@@",
"@@@STEP_LOG_LINE@request@ \"searchBuilds\": {@@@",
- "@@@STEP_LOG_LINE@request@ \"fields\": \"builds.builder,builds.createTime,builds.createdBy,builds.endTime,builds.id,builds.input,builds.number,builds.output,builds.startTime,builds.status,builds.updateTime\", @@@",
+ "@@@STEP_LOG_LINE@request@ \"fields\": \"builds.*.builder,builds.*.createTime,builds.*.createdBy,builds.*.endTime,builds.*.id,builds.*.input,builds.*.number,builds.*.output,builds.*.startTime,builds.*.status,builds.*.updateTime\", @@@",
"@@@STEP_LOG_LINE@request@ \"pageSize\": 1000, @@@",
"@@@STEP_LOG_LINE@request@ \"predicate\": {@@@",
"@@@STEP_LOG_LINE@request@ \"gerritChanges\": [@@@",