//create image metadata(openstack) private static void GlanceCreateImageMetadata(ImsClient glanceV2Client) { var createImageMetadataRequest = new GlanceCreateImageMetadataRequest() { Body = new GlanceCreateImageMetadataRequestBody() { Name = "test", MinDisk = 40, MinRam = 1024, OsVersion = "Ubuntu 14.04 server 64bit", } }; try { var createImageMetadataResponse = glanceV2Client.GlanceCreateImageMetadata(createImageMetadataRequest); Console.WriteLine(createImageMetadataResponse.GetHttpBody()); } 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> /// 创建镜像元数据(OpenStack原生) /// </summary> public GlanceCreateImageMetadataResponse GlanceCreateImageMetadata(GlanceCreateImageMetadataRequest glanceCreateImageMetadataRequest) { Dictionary <string, string> urlParam = new Dictionary <string, string>(); string urlPath = HttpUtils.AddUrlPath("/v2/images", urlParam); SdkRequest request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", glanceCreateImageMetadataRequest); HttpResponseMessage response = DoHttpRequestSync("POST", request); return(JsonUtils.DeSerialize <GlanceCreateImageMetadataResponse>(response)); }