Google cloud platform 获取Google云中的列表公共VM图像

Google cloud platform 获取Google云中的列表公共VM图像,google-cloud-platform,gcloud,google-compute-api,gcloud-compute,Google Cloud Platform,Gcloud,Google Compute Api,Gcloud Compute,我正在使用C Google SDK获取Google Cloud中可用的公共ubuntu或debian VM图像列表。 响应是一长串VM,主要是不推荐状态为过时的 当为活动状态应用筛选器时,响应为空,任何人都可以帮助获取活动图像,或者不使用筛选器返回的结果是否正确 情景1。没有应用过滤器时 var lstRequest=new ImagesResource.ListRequest_computeClient; var images=lstRequest.Execute 样本响应 { id:proj

我正在使用C Google SDK获取Google Cloud中可用的公共ubuntu或debian VM图像列表。 响应是一长串VM,主要是不推荐状态为过时的

当为活动状态应用筛选器时,响应为空,任何人都可以帮助获取活动图像,或者不使用筛选器返回的结果是否正确

情景1。没有应用过滤器时

var lstRequest=new ImagesResource.ListRequest_computeClient; var images=lstRequest.Execute

样本响应 { id:projects/windows cloud/global/images, 项目:[ { archiveSizeBytes:77493158912, creationTimestamp:2017-11-06T11:38:00.859-08:00, 不赞成:{ 已删除:空, 不推荐:null, 过时:null, 替换:空, 国家:过时, ETag:null }, 描述:Microsoft,Windows Server,1709 Core版容器测试版,服务器Core,x64,构建于2017-10-30, diskSizeGb:32, 系列:windows-1709-core-for-containers, 客房特色:[ { 类型:多IP子网, ETag:null }, { 类型:VIRTIO_SCSI_MULTIQUEUE, ETag:null }, { 类型:WINDOWS, ETag:null } ], id:706804475301027575, imageEncryptionKey:null, 种类:计算机图像, labelFingerprint:42WmSpB8rSM=, 标签:空, 许可证代码:[ 5194306116883728686, 1000226, 2643967004807329741 ], 许可证:[ https://www.googleapis.com/compute/v1/projects/windows-cloud/global/licenses/windows-server-1709-dc, https://www.googleapis.com/compute/v1/projects/windows-cloud/global/licenses/windows-server-core, https://www.googleapis.com/compute/v1/projects/windows-cloud/global/licenses/windows-for-containers ], 名称:windows-server-1709-dc-core-for-containers-v20171030, 原始磁盘:{ 集装箱类型:焦油, sha1Checksum:null, 资料来源: }, 自链接:https://www.googleapis.com/compute/v1/projects/windows-cloud/global/images/windows-server-1709-dc-core-for-containers-v20171030, ShieldInStanceInitialState:null, sourceDisk:null, sourceDiskEncryptionKey:null, sourceDiskId:null, sourceImage:null, sourceImageEncryptionKey:null, sourceImageId:null, sourceSnapshot:null, sourceSnapshotEncryptionKey:null, sourceSnapshotId:null, sourceType:RAW, 状态:就绪, 存储位置:[ 我们 我们 欧盟, 亚洲 亚洲 欧盟, 亚洲 我们 我们 我们 亚洲 亚洲 欧盟 ], ETag:null }, { archiveSizeBytes:79706428672, creationTimestamp:2017-11-16T12:14:33.128-08:00, 不赞成:{ 已删除:空, 不推荐:null, 过时:null, 替换:空, 国家:过时, ETag:null }, 描述:Microsoft,Windows Server,1709 Core版容器测试版,Server Core,x64,构建于2017-11-14, diskSizeGb:32, 系列:windows-1709-core-for-containers, 客房特色:[ { 类型:多IP子网, ETag:null }, { 类型:VIRTIO_SCSI_MULTIQUEUE, ETag:null }, { 类型:WINDOWS, ETag:null } ], 身份证号码:15723528838839848774, imageEncryptionKey:null, 种类:计算机图像, labelFingerprint:42WmSpB8rSM=, 标签:空, 许可证代码:[ 5194306116883728686, 1000226, 2643967004807329741 ], 许可证:[ https://www.googleapis.com/compute/v1/projects/windows-cloud/global/licenses/windows-server-1709-dc, https://www.googleapis.com/compute/v1/projects/windows-cloud/global/licenses/windows-server-core, https://www.googleapis.com/compute/v1/projects/windows-cloud/global/licenses/windows-for-containers ], 名称:windows-server-1709-dc-core-for-containers-v20171114, 原始磁盘:{ 集装箱类型:焦油, sha1Checksum:null, 资料来源: }, 自链接:https://www.googleapis.com/compute/v1/projects/windows-cloud/global/images/windows-server-1709-dc-core-for-containers-v20171114, ShieldInStanceInitialState:null, sourceDisk:null, sourceDiskEncryptionKey:null, sourceDiskId:null, sourceImage:null, sourceImageEncryptionKey:null, sourceImageId:null, sourceSnapshot:null, sourceSnapshotEncryptionKey:null, sourceSnapshotId:null, sourceType:RAW, 状态:就绪, 存储位置:[ 我们 我们 亚洲 亚洲 欧盟, 亚洲 亚洲 我们 亚洲 我们 我们 欧盟, 欧盟 ], ETag:null },

============================================================

场景2:关于应用过滤器

var lstRequest=newImagesResource.ListRequest\u computeClient,ubuntu操作系统云; lstrest.Filter=已弃用。state=活动; var images=lstRequest.Execute

回答 空的

我正在使用Google.api.Compute.v1名称空间更新:正如Sam指出的,ACTIVE是一个有效状态,但在示例列表中未使用,因此结果为空

我认为,因为活动值无效

gcloud计算图像列表\ -项目=${project}\ -显示不推荐\ -format=valuedeprecated.state\ |分类\ |uniq 不赞成 淘汰的 我得到的结果都不是:

request.Filter=deprecated.state=\deprecated\; request.Filter=已弃用。state=\ocated\; 注:图像项目与GCP项目不同

计算引擎API v1仅将图像项目作为图像自链接的一部分进行表面处理

当您计算service.Images.Listproject时

项目的价值应该是你的 GCP项目不是ubuntu操作系统云

使用ubuntu os cloud是可行的,但它不会通过ubuntu os cloud Image项目过滤结果

此外,它是一种测试Google API服务调用的优秀机制,可确保您获得正确的调用,例如:


检查此链接,状态可以是活动的、过时的、不推荐的、已删除的。很好。虽然在这种情况下似乎没有使用它。gcloud命令不会返回具有该值的图像,这解释了为什么代码中会出现null。