Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 32AFB200D67 for ; Sun, 24 Dec 2017 10:54:09 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 315B5160C1D; Sun, 24 Dec 2017 09:54:09 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 765A3160C0B for ; Sun, 24 Dec 2017 10:54:08 +0100 (CET) Received: (qmail 58914 invoked by uid 500); 24 Dec 2017 09:54:07 -0000 Mailing-List: contact issues-help@cloudstack.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cloudstack.apache.org Delivered-To: mailing list issues@cloudstack.apache.org Received: (qmail 58905 invoked by uid 500); 24 Dec 2017 09:54:07 -0000 Delivered-To: apmail-incubator-cloudstack-issues@incubator.apache.org Received: (qmail 58902 invoked by uid 99); 24 Dec 2017 09:54:07 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 24 Dec 2017 09:54:07 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 27CF9C3746 for ; Sun, 24 Dec 2017 09:54:07 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -99.211 X-Spam-Level: X-Spam-Status: No, score=-99.211 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id zGh1IP8U_u2T for ; Sun, 24 Dec 2017 09:54:04 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTP id 1B86C5F306 for ; Sun, 24 Dec 2017 09:54:04 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 35459E0373 for ; Sun, 24 Dec 2017 09:54:03 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 2F047240DA for ; Sun, 24 Dec 2017 09:54:01 +0000 (UTC) Date: Sun, 24 Dec 2017 09:54:00 +0000 (UTC) From: "ASF GitHub Bot (JIRA)" To: cloudstack-issues@incubator.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CLOUDSTACK-4757) Support OVA files with multiple disks for templates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Sun, 24 Dec 2017 09:54:09 -0000 [ https://issues.apache.org/jira/browse/CLOUDSTACK-4757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16302797#comment-16302797 ] ASF GitHub Bot commented on CLOUDSTACK-4757: -------------------------------------------- rafaelweingartner commented on a change in pull request #2146: CLOUDSTACK-4757: Support OVA files with multiple disks for templates URL: https://github.com/apache/cloudstack/pull/2146#discussion_r158598357 ########## File path: api/src/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java ########## @@ -443,6 +449,37 @@ public String getKeyboard() { return dhcpOptionsMap; } + public Map getDataDiskTemplateToDiskOfferingMap() { + if (diskOfferingId != null && dataDiskTemplateToDiskOfferingList != null) { Review comment: Great. Then, what about changing things a little bit to reduce the number of lines inside an IF statement? You could do `if(CollectionUtils.isEmpty(dataDiskTemplateToDiskOfferingList )){return new HashMap()}` Then, you would not need the `if` statement at line 457. This reduces one level of cyclomatic complexity in this method. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: users@infra.apache.org > Support OVA files with multiple disks for templates > --------------------------------------------------- > > Key: CLOUDSTACK-4757 > URL: https://issues.apache.org/jira/browse/CLOUDSTACK-4757 > Project: CloudStack > Issue Type: New Feature > Security Level: Public(Anyone can view this level - this is the default.) > Components: Storage Controller > Reporter: Likitha Shetty > Assignee: Nicolas Vazquez > Priority: Minor > Fix For: Future > > > CloudStack volumes and templates are one single virtual disk in case of XenServer/XCP and KVM hypervisors since the files used for templates and volumes are virtual disks (VHD, QCOW2). However, VMware volumes and templates are in OVA format, which are archives that can contain a complete VM including multiple VMDKs and other files such as ISOs. And currently, Cloudstack only supports Template creation based on OVA files containing a single disk. If a user creates a template from a OVA file containing more than 1 disk and launches an instance using this template, only the first disk is attached to the new instance and other disks are ignored. > Similarly with uploaded volumes, attaching an uploaded volume that contains multiple disks to a VM will result in only one VMDK to being attached to the VM. > This behavior needs to be improved in VMWare to support OVA files with multiple disks for both uploaded volumes and templates. i.e. If a user creates a template from a OVA file containing more than 1 disk and launches an instance using this template, the first disk should be attached to the new instance as the ROOT disk and volumes should be created based on other VMDK disks in the OVA file and should be attached to the instance. -- This message was sent by Atlassian JIRA (v6.4.14#64029)