// create data image by file private static void CreateDataImage(ImsClient imsV1Client) { CreateDataImageRequest createDataImageReq = new CreateDataImageRequest { Body = new CreateDataImageRequestBody() { Name = "dataImageTest", ImageUrl = "obs-494b:test.qcow2", MinDisk = 40, OsType = CreateDataImageRequestBody.OsTypeEnum.LINUX } }; try { var exportImsResponse = imsV1Client.CreateDataImage(createDataImageReq); Console.WriteLine(exportImsResponse.JobId); } catch (RequestTimeoutException requestTimeoutException) { Console.WriteLine(requestTimeoutException.ErrorMessage); } catch (ServiceResponseException clientRequestException) { Console.WriteLine(clientRequestException.HttpStatusCode); Console.WriteLine(clientRequestException.ErrorCode); Console.WriteLine(clientRequestException.ErrorMsg); } catch (ConnectionException connectionException) { Console.WriteLine(connectionException.ErrorMessage); } }
/// <summary> /// 使用外部镜像文件制作数据镜像 /// </summary> public CreateDataImageResponse CreateDataImage(CreateDataImageRequest createDataImageRequest) { Dictionary <string, string> urlParam = new Dictionary <string, string>(); string urlPath = HttpUtils.AddUrlPath("/v1/cloudimages/dataimages/action", urlParam); SdkRequest request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", createDataImageRequest); HttpResponseMessage response = DoHttpRequestSync("POST", request); return(JsonUtils.DeSerialize <CreateDataImageResponse>(response)); }