Google cloud platform 谷歌云构建PYPI400错误

Google cloud platform 谷歌云构建PYPI400错误,google-cloud-platform,gcloud,google-cloud-build,Google Cloud Platform,Gcloud,Google Cloud Build,调用list\u builds()方法时,我当前收到400个错误(见此处:) 以下命令使用gcloud工作: gcloud生成列表--filter=“status=FAILURE” 但是,以下API调用返回google.API_core.exceptions.InvalidArgument:400错误处理筛选器表达式 for element in client.list_builds("REDACTED", filter_="status=FAILURE"): # process ele

调用
list\u builds()
方法时,我当前收到400个错误(见此处:)

以下命令使用gcloud工作:

gcloud生成列表--filter=“status=FAILURE”

但是,以下API调用返回
google.API_core.exceptions.InvalidArgument:400错误处理筛选器表达式

for element in client.list_builds("REDACTED", filter_="status=FAILURE"):
    # process element
    pass

我猜我在这里遗漏了一些非常明显和简单的东西,但我不能确切地指出我做错了什么

欢迎来到Stack O!所以我在这里只是说说而已,但是文档说过滤器字符串是“用于约束结果的原始过滤器文本”

在控制台中筛选云构建时,UI中的“原始筛选文本”显示
状态:失败
-您可以尝试:

--filter=“状态:失败”

--filter=“状态:失败”

--filter=“状态:失败”

或者,它可能是URL中的字符串,它的格式太简单,Stack O的机器人无法处理,因此我无法将其粘贴到此处,但它以
f
开头,以
失败
结尾:

这里的关键是字符串中有一个等号,以及
Failure
而不是
Failed
——更改其中一个或两个可能会起到作用


希望这有帮助

欢迎来到Stack O!所以我在这里只是说说而已,但是文档说过滤器字符串是“用于约束结果的原始过滤器文本”

在控制台中筛选云构建时,UI中的“原始筛选文本”显示
状态:失败
-您可以尝试:

--filter=“状态:失败”

--filter=“状态:失败”

--filter=“状态:失败”

或者,它可能是URL中的字符串,它的格式太简单,Stack O的机器人无法处理,因此我无法将其粘贴到此处,但它以
f
开头,以
失败
结尾:

这里的关键是字符串中有一个等号,以及
Failure
而不是
Failed
——更改其中一个或两个可能会起到作用


希望这有帮助

将筛选器字符串传递给API调用的正确方法包括在实际文本周围使用双撇号,如下所示:

过滤器\'status=“FAILURE”

不确定将来是否会更改,但这与通过REST API传入的行为相同:


e、 g指定
status=FAILURE
将失败,但
status=“FAILURE”
返回200响应。

将筛选器字符串传递给API调用的正确方法包括在实际文本周围使用双撇号,如下所示:

过滤器\'status=“FAILURE”

不确定将来是否会更改,但这与通过REST API传入的行为相同:


e、 g指定
status=FAILURE
将失败,但
status=“FAILURE”
返回200响应。

感谢您的快速响应!只是为了再次迭代,我展示的gcloud命令实际上是有效的(并返回有效的结果)。当我尝试使用google cloud build Python API客户端进行等效API调用,并将相同的值传递给filter_uu变量时,我得到了一个400错误;您建议的其他变体似乎不适用于API调用和gcloud命令过滤器。我在这一页上注意到,示例
descripe
命令的输出是“status:SUCCESS”,这使我建议使用冒号而不是等号。你试过所有的帽子了吗?GCP并不可怕,但它有一些漂亮粗糙的边缘。哦,还有!该页面显示两种类型的生成状态字符串:失败和失败。超级骗子。当您找到答案时,请务必更新我们,我的好奇心现在被激发了。在gcloud命令上启用-log http标志后,我能够跟踪构建列表端点的http请求,结果证明我必须在API调用中完全像这样传递过滤器:
filter\uu='status=“FAILURE”
。有点令人沮丧,至少可以这么说(考虑到我不会猜到在我的字符串作业中同时使用单撇号和双撇号),嗨!考虑到您找到了解决问题的方法,您是否可以添加您的评论作为答案并将其标记为已接受?谢谢你的快速回复!只是为了再次迭代,我展示的gcloud命令实际上是有效的(并返回有效的结果)。当我尝试使用google cloud build Python API客户端进行等效API调用,并将相同的值传递给filter_uu变量时,我得到了一个400错误;您建议的其他变体似乎不适用于API调用和gcloud命令过滤器。我在这一页上注意到,示例
descripe
命令的输出是“status:SUCCESS”,这使我建议使用冒号而不是等号。你试过所有的帽子了吗?GCP并不可怕,但它有一些漂亮粗糙的边缘。哦,还有!该页面显示两种类型的生成状态字符串:失败和失败。超级骗子。当您找到答案时,请务必更新我们,我的好奇心现在被激发了。在gcloud命令上启用-log http标志后,我能够跟踪构建列表端点的http请求,结果证明我必须在API调用中完全像这样传递过滤器:
filter\uu='status=“FAILURE”
。有点令人沮丧,至少可以这么说(考虑到我不会猜到在我的字符串作业中同时使用单撇号和双撇号),嗨!考虑到您找到了解决问题的方法,您是否可以添加您的评论作为答案并将其标记为已接受?为什么GCP坚持这些荒谬的构想?感谢分享解决方案,th