Merge pull request #4 in ~QIUJIAN/onecloud from ~LIZEXI/onecloud:feature/lzx-sched-resource-type to feature/qj-vm-resource-pooling

* commit '4df0c08db849e94c3b36bff077c4c48cc5f11ff5':
  fix: scheduler not mark prepaid host dirty
This commit is contained in:
邱剑
2018-12-08 09:39:17 +08:00
2 changed files with 4 additions and 2 deletions
@@ -35,7 +35,7 @@ func (p *ResourceTypePredicate) Execute(u *core.Unit, c core.Candidater) (bool,
h.Exclude2("resource_type", hostResType, reqResType)
}
if reqResType == models.HostResourceTypePrepaidRecycle {
if hostResType == models.HostResourceTypePrepaidRecycle {
if c.GetGuestCount() == 0 {
h.SetCapacity(1)
} else {
+3 -1
View File
@@ -13,6 +13,7 @@ import (
o "yunion.io/x/onecloud/cmd/scheduler/options"
"yunion.io/x/onecloud/pkg/compute/baremetal"
"yunion.io/x/onecloud/pkg/compute/models"
)
type Meta map[string]string
@@ -268,7 +269,8 @@ func (s *SchedData) reviseSchedType(sjson *simplejson.Json) error {
}
func (d *SchedData) SkipDirtyMarkHost() bool {
skipByHypervisor := d.IsPublicCloudProvider() || d.IsContainer || d.Hypervisor == SchedTypeContainer
isSharePublicCloudProvider := d.IsPublicCloudProvider() && (d.ResourceType == "" || d.ResourceType == models.HostResourceTypeShared)
skipByHypervisor := isSharePublicCloudProvider || d.IsContainer || d.Hypervisor == SchedTypeContainer
skipByBackup := d.Backup
return skipByHypervisor || skipByBackup
}