Updating an Image
Function
This API is used to update image information.
Only active images can be updated.
URI
PATCH /v2/cloudimages/{image_id}
Table 1 lists the parameters in the URI.
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
image_id |
Yes |
String |
Private image ID For details about how to obtain the image ID, see Querying Images. |
Request
- Request parameters
Parameter
Mandatory
Type
Description
[Array]
Yes
Array of objects
For details, see Table 2.
Table 2 Data structure description of the [Array] field Parameter
Mandatory
Type
Description
op
Yes
String
Specifies the operation. The value can be add, replace, or remove.
path
Yes
String
Specifies the name of the attribute to be updated. / needs to be added in front of it.
You can update the following attributes:
- name: specifies the image name.
- __description: specifies the image description.
- __support_kvm: KVM is supported.
- __support_xen: Xen is supported.
- __support_largememory: Ultra-large memory is supported. If the image supports large-memory ECSs, the value is true. Otherwise, this parameter is not required.
- __support_diskintensive: Intensive storage is supported.
- __support_highperformance: High-performance computing (HPC) is supported.
- __support_xen_gpu_type: GPU-accelerated ECSs that use Xen for virtualization are supported.
- __support_kvm_gpu_type: GPU-accelerated ECSs that use KVM for virtualization are supported.
- __support_xen_hana: HANA ECSs that use Xen for virtualization are supported. If the image supports such ECSs, the value is true. Otherwise, this parameter is not required. This attribute cannot co-exist with __support_xen and __support_kvm.
- __is_config_init: specifies whether initialization is complete.
- enterprise_project_id: specifies the enterprise project ID.
- min_ram: specifies the minimum memory (MB) of the image. You can set this parameter based on the ECS specifications. Generally, you do not need to set this parameter.
- max_ram: specifies the maximum memory (MB) of the image. You can set this parameter based on the ECS specifications. Generally, you do not need to set this parameter.
- hw_vif_multiqueue_enabled: NIC multi-queue is supported.
- hw_firmware_type: specifies the boot mode. The value can be bios or uefi.
- __support_kvm_infiniband: ECSs with InfiniBand NICs and running on the KVM platform are supported. If such ECSs are supported, the value is true. Otherwise, this parameter is not required. This attribute cannot co-exist with __support_xen.
- __support_fc_inject: specifies whether the image supports password/private key injection using Cloud-Init. If the value is set to true, the injection is not supported. Otherwise, it is supported.
- __support_amd: specifies whether the image uses AMD's x86 architecture. The value can be true or false.
- __support_kvm_hi1822_hisriov: SR-IOV is supported. If it is supported, the value is true. Otherwise, this parameter is not required.
- __support_kvm_hi1822_hivirtionet: Virtio-Net is supported. If it is supported, the value is true. Otherwise, this parameter is not required.
You can add or delete extension attributes.
NOTE:Extension attribute names cannot contain uppercase letters.
value
Yes
String
Specifies the new value of the attribute. For detailed description, see Image Attributes.
Example Request
Changing an image name to ims_test
1 2 3 4 5 6 7 8 |
PATCH https://{Endpoint}/v2/cloudimages/33ad552d-1149-471c-8190-ff6776174a00 [ { "op": "replace", "path": "/name", "value": "ims_test" } ] |
Response
- Response parameters
Parameter
Type
Description
file
String
Specifies the URL for uploading and downloading the image file.
owner
String
Specifies the tenant to which the image belongs.
id
String
Specifies the image ID.
size
Long
This parameter is unavailable currently.
self
String
Specifies the image URL.
schema
String
Specifies the image schema.
status
String
Specifies the image status. The value can be one of the following:
- queued: indicates that the image metadata has already been created, and it is ready for the image file to upload.
- saving: indicates that the image file is being uploaded to the backend storage.
- deleted: indicates that the image has been deleted.
- killed: indicates that an error occurs on the image uploading.
- active: indicates that the image is available for use.
tags
Array of strings
Specifies tags of the image, through which you can manage private images in your own way. You can use the image tag API to add different tags to each image and filter images by tag.
visibility
String
Specifies whether the image is available to other tenants. The value can be one of the following:
- private: private image
- public: public image
- shared: shared image
name
String
Specifies the image name. For details, see Image Attributes.
checksum
String
This parameter is unavailable currently.
protected
Boolean
Specifies whether the image is protected. A protected image cannot be deleted. The value can be true or false.
container_format
String
Specifies the container type.
min_ram
Integer
Specifies the minimum memory size (MB) required for running the image. The parameter value depends on the ECS specifications. The default value is 0.
max_ram
String
Specifies the maximum memory (MB) of the image. The parameter value depends on the ECS specifications and is not configured by default.
updated_at
String
Specifies the time when the image was updated. The value is in UTC format.
__os_bit
String
Specifies the OS architecture, 32 bit or 64 bit.
__os_version
String
Specifies the OS version.
__description
String
Provides supplementary information about the image. For detailed description, see Image Attributes.
disk_format
String
Specifies the image format. The value can be zvhd2, vhd, zvhd, raw, iso, or qcow2. The default value is zvhd2 for a non-ISO image.
__isregistered
String
Specifies whether the image has been registered. The value can be true or false.
__platform
String
Specifies the image platform type. The value can be Windows, Ubuntu, Red Hat, SUSE, CentOS, Debian, OpenSUSE, Oracle Linux, Fedora, Other, CoreOS, or EulerOS.
__os_type
String
Specifies the OS type. The value can be Linux, Windows, or Other.
__system__cmkid
String
Specifies the ID of the key used to encrypt the image.
min_disk
Integer
Specifies the minimum disk space (GB) required for running the image. For Linux, the value ranges from 10 GB to 1,024 GB. For Windows, the value ranges from 20 GB to 1,024 GB.
virtual_env_type
String
Specifies the environment where the image is used. The value can be FusionCompute, Ironic, DataImage, or IsoImage.
- For an ECS image (system disk image), the value is FusionCompute.
- For a data disk image, the value is DataImage.
- For a BMS image, the value is Ironic.
- For an ISO image, the value is IsoImage.
__image_source_type
String
Specifies the backend storage of the image. Only UDS is supported currently.
__imagetype
String
Specifies the image type. The following types are supported:
- Public image: The value is gold.
- Private image: The value is private.
- Shared image: The value is shared.
- KooGallery image: The value is market.
created_at
String
Specifies the time when the image was created. The value is in UTC format.
__image_displayname
String
Specifies the image name.
virtual_size
Integer
This parameter is unavailable currently.
__originalimagename
String
Specifies the parent image ID.
If the image is a public image or created from an image file, this value is left empty.
__backup_id
String
Specifies the backup ID. If the image is created from a backup, set the value to the backup ID. Otherwise, this parameter is not required.
__productcode
String
Specifies the product ID of a KooGallery image.
__image_size
String
Specifies the size (bytes) of the image file. The value must be greater than 0.
__data_origin
String
Specifies the image source.
If the image is a public image, this parameter is left empty.
__root_origin
String
Specifies that the image is created from an external image file. Value: file
__lazyloading
String
Specifies whether the image supports lazy loading. The value can be true, false, True, or False.
active_at
String
Specifies the time when the image status became active.
__os_feature_list
String
Specifies additional attributes of the image. The value is a list (in JSON format) of advanced features supported by the image.
__account_code
String
Specifies the charging identifier for the image.
hw_firmware_type
String
Specifies the ECS boot mode. The following values are supported:
- bios indicates the BIOS boot mode. This value will be used by fault if this parameter does not exist in the response.
- uefi indicates the UEFI boot mode.
hw_vif_multiqueue_enabled
String
Specifies whether the image supports NIC multi-queue. The value can be true or false.
__support_kvm
String
Specifies whether the image supports KVM. If yes, the value is true. Otherwise, this parameter is not required.
__support_xen
String
Specifies whether the image supports Xen. If yes, the value is true. Otherwise, this parameter is not required.
__support_largememory
String
Specifies whether the image can be used to create large-memory ECSs. If the image supports large-memory ECSs, the value is true. Otherwise, this parameter is not required.
For the supported OSs, see OSs Supported by Different Types of ECSs.
__support_diskintensive
String
Specifies whether the image can be used to create disk-intensive ECSs. If the image supports disk-intensive ECSs, the value is true. Otherwise, this parameter is not required.
__support_highperformance
String
Specifies whether the image can be used to create high-performance ECSs. If the image supports high-performance ECSs, the value is true. Otherwise, this parameter is not required.
__support_xen_gpu_type
String
Specifies whether the image supports GPU-accelerated ECSs on the Xen platform. See Table 2 for its value. If the image does not support GPU-accelerated ECSs on the Xen platform, this parameter is not required. This attribute cannot co-exist with __support_xen and __support_kvm.
__support_kvm_gpu_type
String
Specifies whether the image supports GPU-accelerated ECSs on the KVM platform. See Table 3 for its value.
If the image does not support GPU-accelerated ECSs on the KVM platform, this parameter is not required. This attribute cannot co-exist with __support_xen and __support_kvm.
__support_xen_hana
String
Specifies whether the image supports HANA ECSs on the Xen platform. If yes, the value is true. Otherwise, this parameter is not required.
This attribute cannot co-exist with __support_xen and __support_kvm.
__support_kvm_infiniband
String
Specifies whether the image supports ECSs with InfiniBand NICs on the KVM platform. If yes, the value is true. Otherwise, this parameter is not required.
This attribute cannot co-exist with __support_xen.
__system_support_market
Boolean
Specifies whether the image can be published in KooGallery.
- true: The image can be published in KooGallery.
- false: The image cannot be published in KooGallery.
__is_offshelved
String
Specifies whether the KooGallery image has been taken offline.
- true: The image has been taken offline.
- false: The image has not been taken offline.
enterprise_project_id
String
Specifies the enterprise project that the image belongs to.
- If the value is 0 or left blank, the image belongs to the default enterprise project.
- If the value is a UUID, the image belongs to the enterprise project corresponding to the UUID.
For more information about enterprise projects, see Enterprise Center.
__sequence_num
String
Specifies the ECS system disk slot number of the image.
This parameter is unavailable currently.
__support_fc_inject
String
Specifies whether the image supports password/private key injection using Cloud-Init.
If the value is set to true, the injection is not supported. Otherwise, it is supported.
NOTE:This parameter is valid only for ECS system disk images.
__support_arm
String
Specifies whether the image uses the Arm architecture. The value can be true or false.
__support_agent_list
String
Specifies the agents configured for the image.
- hss: server security
- ces: The host monitoring agent is configured for the image.
Example value:
"__support_agent_list": "hss,ces"
NOTE:If the response does not contain this field, the HSS or host monitoring agents are not configured for the image.
__support_amd
String
Specifies whether the image uses AMD's x86 architecture. The value can be true or false.
__support_kvm_hi1822_hisriov
String
Specifies whether SR-IOV is supported. If it is, the value is true. Otherwise, this parameter is not required.
__support_kvm_hi1822_hivirtionet
String
Specifies whether Virtio-Net is supported. If it is, the value is true. Otherwise, this parameter is not required.
- Example response
STATUS CODE 200
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
{ "file": "/v2/images/33ad552d-1149-471c-8190-ff6776174a00/file", "owner": "0b1e494e2660441a957313163095fe5c", "id": "33ad552d-1149-471c-8190-ff6776174a00", "size": 2, "self": "/v2/images/33ad552d-1149-471c-8190-ff6776174a00", "schema": "/v2/schemas/image", "status": "active", "tags": [], "visibility": "private", "name": "ims_test", "checksum": "99914b932bd37a50b983c5e7c90ae93b", "hw_vif_multiqueue_enabled": "true", "protected": false, "container_format": "bare", "min_ram": 0, "updated_at": "2015-12-08T02:30:49Z", "__os_bit": "64", "__os_version": "Ubuntu 14.04 server 64bit", "__description": "ims test", "disk_format": "vhd", "__isregistered": "true", "__platform": "Ubuntu", "__os_type": "Linux", "min_disk": 40, "virtual_env_type": "FusionCompute", "__image_source_type": "uds", "__imagetype": "private", "created_at": "2015-12-04T09:45:33Z", "virtual_size": 0, "__originalimagename": "33ad552d-1149-471c-8190-ff6776174a00", "__backup_id": "", "__productcode": "", "__image_size": "449261568", "__support_fc_inject":"true", "__data_origin": null, "hw_firmware_type": "bios" }
Returned Values
- Normal
- Abnormal
Returned Value
Description
400 Bad Request
Request error. For details about the returned error code, see Error Codes.
401 Unauthorized
Authentication failed.
403 Forbidden
You do not have the rights to perform the operation.
404 Not Found
The requested resource was not found.
500 Internal Server Error
Internal service error.
503 Service Unavailable
The service is unavailable.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot