From dbf24af4057d4f7415569191ceef84c35ba9fc1e Mon Sep 17 00:00:00 2001 From: Qiu Jian Date: Fri, 15 Feb 2019 13:29:50 +0800 Subject: [PATCH] implement sysdisk interface for openstack and huawei driver --- pkg/compute/guestdrivers/huawei.go | 8 ++++++++ pkg/compute/guestdrivers/openstack.go | 9 +++++++++ pkg/compute/models/storages.go | 3 +++ 3 files changed, 20 insertions(+) diff --git a/pkg/compute/guestdrivers/huawei.go b/pkg/compute/guestdrivers/huawei.go index 3ae730af55..813286d1df 100644 --- a/pkg/compute/guestdrivers/huawei.go +++ b/pkg/compute/guestdrivers/huawei.go @@ -25,6 +25,14 @@ func (self *SHuaweiGuestDriver) GetHypervisor() string { return models.HYPERVISOR_HUAWEI } +func (self *SHuaweiGuestDriver) GetDefaultSysDiskBackend() string { + return models.STORAGE_HUAWEI_SATA +} + +func (self *SHuaweiGuestDriver) GetMinimalSysDiskSizeGb() int { + return 10 +} + func (self *SHuaweiGuestDriver) ChooseHostStorage(host *models.SHost, backend string) *models.SStorage { storages := host.GetAttachedStorages("") for i := 0; i < len(storages); i += 1 { diff --git a/pkg/compute/guestdrivers/openstack.go b/pkg/compute/guestdrivers/openstack.go index 98775e6f70..d406986358 100644 --- a/pkg/compute/guestdrivers/openstack.go +++ b/pkg/compute/guestdrivers/openstack.go @@ -2,6 +2,7 @@ package guestdrivers import ( "yunion.io/x/onecloud/pkg/compute/models" + "yunion.io/x/onecloud/pkg/compute/options" ) type SOpenStackGuestDriver struct { @@ -16,3 +17,11 @@ func init() { func (self *SOpenStackGuestDriver) GetHypervisor() string { return models.HYPERVISOR_OPENSTACK } + +func (self *SOpenStackGuestDriver) GetDefaultSysDiskBackend() string { + return models.STORAGE_OPENSTACK_ISCSI +} + +func (self *SOpenStackGuestDriver) GetMinimalSysDiskSizeGb() int { + return options.Options.DefaultDiskSizeMB / 1024 +} diff --git a/pkg/compute/models/storages.go b/pkg/compute/models/storages.go index 47c5f0a44e..cddb93bcf0 100644 --- a/pkg/compute/models/storages.go +++ b/pkg/compute/models/storages.go @@ -62,6 +62,9 @@ const ( STORAGE_HUAWEI_SSD = "SSD" // 超高IO云硬盘 STORAGE_HUAWEI_SAS = "SAS" // 高IO云硬盘 STORAGE_HUAWEI_SATA = "SATA" // 普通IO云硬盘 + + // openstack + STORAGE_OPENSTACK_ISCSI = "iscsi" ) const (