更新时间:2025-09-26 GMT+08:00
分享

查询cicd镜像列表

功能介绍

查询cicd镜像列表

调用方法

请参见如何调用API

URI

GET /v5/{project_id}/image/cicd/images

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

项目ID,用于明确项目归属,配置后可通过该ID查询项目下资产。获取方式请参见获取项目ID

约束限制:

不涉及

取值范围:

字符长度1-256位

默认取值:

不涉及

表2 Query参数

参数

是否必选

参数类型

描述

enterprise_project_id

String

参数解释:

企业项目ID,用于过滤不同企业项目下的资产。获取方式请参见获取企业项目ID

如需查询所有企业项目下的资产请传参“all_granted_eps”。

约束限制:

开通企业项目功能后才需要配置企业项目ID参数。

取值范围:

字符长度1-256位

默认取值:

0,表示默认企业项目(default)。

namespace

String

参数解释:

组织名称

约束限制:

不涉及

取值范围:

字符长度1-128位。

默认取值:

不涉及

image_name

String

参数解释:

镜像名称

取值范围:

字符长度1-128位

image_version

String

参数解释:

镜像版本

取值范围:

字符长度1-64位

sort_key

String

参数解释:

可排序字段

约束限制:

不涉及

取值范围:

  • latest_scan_time:最近扫描时间。

默认取值:

不涉及

sort_dir

String

参数解释:

排序的顺序

约束限制:

不涉及

取值范围:

  • asc : 正序

  • desc : 倒序

默认取值:

正序排序

limit

Integer

参数解释:

每页显示个数

约束限制:

不涉及

取值范围:

取值10-200

默认取值:

10

offset

Integer

参数解释:

偏移量:指定返回记录的开始位置

约束限制:

不涉及

取值范围:

最小值0,最大值2000000

默认取值:

默认为0

image_id

String

参数解释:

cicd镜像标识

约束限制:

不涉及

取值范围:

字符长度0-128位

默认取值:

不涉及

cicd_name

String

参数解释:

cicd名称

约束限制:

不涉及

取值范围:

字符长度0-128位

默认取值:

不涉及

latest_version

Boolean

参数解释:

仅关注最新版本镜像

约束限制:

不涉及

取值范围:

  • true:是。

  • false:否。

默认取值:

不涉及

image_size

Long

参数解释:

镜像大小

约束限制:

不涉及

取值范围:

最小值0,最大值2147483547

默认取值:

不涉及

scan_status

String

参数解释

扫描状态

约束限制

不涉及

取值范围

  • unscan : 未扫描。

  • success : 扫描完成。

  • scanning : 扫描中

  • failed : 扫描失败。

  • waiting_for_scan : 等待扫描。

默认取值:

不涉及

start_latest_update_time

Long

参数解释:

创建时间开始日期,时间单位 毫秒(ms)

约束限制:

不涉及

取值范围:

最小值0,最大值9223372036854775807

默认取值:

不涉及

end_latest_update_time

Long

参数解释:

创建时间结束日期,时间单位 毫秒(ms)

约束限制:

不涉及

取值范围:

最小值0,最大值9223372036854775807

默认取值:

不涉及

start_latest_scan_time

Long

参数解释:

最近一次扫描完成时间开始日期,时间单位 毫秒(ms)

约束限制:

不涉及

取值范围:

最小值0,最大值9223372036854775807

默认取值:

不涉及

end_latest_scan_time

Long

参数解释:

最近一次扫描完成时间结束日期,时间单位 毫秒(ms)

约束限制:

不涉及

取值范围:

最小值0,最大值9223372036854775807

默认取值:

不涉及

has_malicious_file

Boolean

参数解释:

是否存在恶意文件

约束限制:

不涉及

取值范围:

  • true:是。

  • false:否。

默认取值:

不涉及

has_unsafe_setting

Boolean

参数解释:

是否存在基线检查

约束限制:

不涉及

取值范围:

  • true:是。

  • false:否。

默认取值:

不涉及

has_vul

Boolean

参数解释:

是否存在软件漏洞

约束限制:

不涉及

取值范围:

  • true:是。

  • false:否。

默认取值:

不涉及

severity_level

String

参数解释

镜像风险程度,在镜像扫描完成后展示

约束限制

不涉及

取值范围

  • Security : 安全。

  • Low : 低危。

  • Medium : 中危

  • High : 高危。

默认取值:

不涉及

risky

Boolean

参数解释:

有安全风险

约束限制:

不涉及

取值范围:

  • true:是。

  • false:否。

默认取值:

不涉及

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

用户Token,包含了用户的身份、权限等信息,在调用API接口时,可通过Token进行身份认证。获取方式请参见获取用户Token

约束限制:

不涉及

取值范围:

字符长度1-32768位

默认取值:

不涉及

响应参数

状态码:200

表4 响应Body参数

参数

参数类型

描述

total_num

Integer

参数解释:

cicd镜像总数

取值范围:

最小值0,最大值2147483547

data_list

Array of CICDImageResponseInfo objects

参数解释:

cicd镜像列表

取值范围:

最小值0,最大值200

表5 CICDImageResponseInfo

参数

参数类型

描述

image_id

String

参数解释:

cicd镜像标识

取值范围:

字符长度0-128位

cicd_name

String

参数解释:

cicd名称

取值范围:

字符长度0-128位

namespace

String

参数解释:

命名空间

取值范围:

字符长度0-64位

image_name

String

参数解释:

镜像名称

取值范围:

字符长度0-128位

image_digest

String

参数解释:

镜像digest

取值范围:

字符长度0-128位

image_version

String

参数解释:

镜像版本

取值范围:

字符长度0-64位

registry_name

String

参数解释:

镜像仓库名称

取值范围:

字符长度1-128位

image_type

String

参数解释

镜像类型

取值范围

  • cicd :cicd镜像。

registry_type

String

参数解释

镜像仓库类型

取值范围

  • cicd :cicd镜像。

latest_version

Boolean

参数解释:

是否是最新版本

取值范围:

  • true:是。

  • false:否。

scan_status

String

参数解释:

扫描状态

取值范围:

  • unscan :未扫描。

  • success :扫描完成。

  • scanning :正在扫描。

  • failed :扫描失败。

  • download_failed :下载失败。

  • image_oversized :镜像超大。

  • waiting_for_scan :等待扫描。

scan_failed_desc

String

参数解释:

扫描失败原因,包含如下16种。

  • 未知错误

  • 认证失败

  • 镜像下载失败。请向技术人员寻求帮助。

  • 镜像大小超限,不支持扫描。建议精简镜像。

  • 获取镜像详细信息失败,镜像仓中可能已经不存在此镜像。请重新同步最新镜像。

  • 镜像层数超限,不支持扫描。建议精简镜像。

  • 漏洞扫描失败

  • 文件扫描失败

  • 软件扫描失败

  • 敏感信息核查失败

  • 基线检查失败

  • 软件合规检查失败

  • 基础镜像信息查询失败

  • 响应超时

  • 数据库错误

  • 发送扫描请求失败

取值范围:

字符长度0-128位

scan_failed_code

String

参数解释:

扫描失败原因code,包含如下16种。

  • "unknown_error"

  • "authentication_failed"

  • "download_failed"

  • "image_over_sized"

  • "get_detail_info_not_found"

  • "image_layer_over_sized"

  • "failed_to_scan_vulnerability"

  • "failed_to_scan_file"

  • "failed_to_scan_software"

  • "failed_to_check_sensitive_information"

  • "failed_to_check_baseline"

  • "failed_to_check_software_compliance"

  • "failed_to_query_basic_image_information"

  • "response_timed_out"

  • "database_error"

  • "failed_to_send_the_scan_request"

取值范围:

字符长度0-64位

image_size

Long

参数解释:

镜像大小

取值范围:

最小值0,最大值2147483547

latest_update_time

Long

参数解释:

镜像版本最后更新时间,时间单位 毫秒(ms)

取值范围:

最小值0,最大值9223372036854775807

latest_scan_time

Long

参数解释:

最近扫描时间,时间单位 毫秒(ms)

取值范围:

最小值0,最大值9223372036854775807

vul_num

Integer

参数解释:

漏洞个数

取值范围:

最小值0,最大值2147483647

unsafe_setting_num

Integer

参数解释:

基线扫描未通过数

取值范围:

最小值0,最大值2147483647

malicious_file_num

Integer

参数解释:

恶意文件数

取值范围:

最小值0,最大值2147483647

severity_level

String

参数解释:

镜像风险程度,在镜像扫描完成后展示

取值范围:

  • Security:安全。

  • Low:低危。

  • Medium:中危。

  • High:高危。

请求示例

响应示例

状态码:200

请求已成功

{
  "total_num" : 1,
  "data_list" : {
    "image_digest" : "sha256:cebcdacde18091448a5040dc55bb1a9f6540b093db8XXXXXX",
    "image_id" : "cebcdacde18091448a5040dc55bb1a9f6540b093db8XXXXXX",
    "image_name" : "centos7",
    "image_size" : "1000 单位(Bytes)",
    "image_type" : "cicd",
    "image_version" : "common",
    "latest_scan_time" : 1691748641788,
    "latest_update_time" : 1687664346000,
    "latest_version" : false,
    "malicious_file_num" : 0,
    "namespace" : "aaa",
    "scan_status" : "success",
    "unsafe_setting_num" : 1,
    "vul_num" : 111
  }
}

SDK代码示例

SDK代码示例如下。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.hss.v5.region.HssRegion;
import com.huaweicloud.sdk.hss.v5.*;
import com.huaweicloud.sdk.hss.v5.model.*;


public class ListCicdImagesSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");
        String projectId = "{project_id}";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        HssClient client = HssClient.newBuilder()
                .withCredential(auth)
                .withRegion(HssRegion.valueOf("<YOUR REGION>"))
                .build();
        ListCicdImagesRequest request = new ListCicdImagesRequest();
        try {
            ListCicdImagesResponse response = client.listCicdImages(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkhss.v5.region.hss_region import HssRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkhss.v5 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]
    projectId = "{project_id}"

    credentials = BasicCredentials(ak, sk, projectId)

    client = HssClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(HssRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListCicdImagesRequest()
        response = client.list_cicd_images(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    hss "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")
    projectId := "{project_id}"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := hss.NewHssClient(
        hss.HssClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListCicdImagesRequest{}
	response, err := client.ListCicdImages(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

请求已成功

错误码

请参见错误码

相关文档