From 99a10db949d80155dba0b830498f2bcef2774e37 Mon Sep 17 00:00:00 2001 From: Qiu Jian Date: Tue, 19 Mar 2019 22:14:01 +0800 Subject: [PATCH] fix: separate private cloud & on-premise --- pkg/cloudprovider/cloudprovider.go | 2 +- pkg/compute/models/cloudaccounts.go | 2 +- pkg/compute/models/cloudproviders.go | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/cloudprovider/cloudprovider.go b/pkg/cloudprovider/cloudprovider.go index 63bbd2f482..5f3503b4bd 100644 --- a/pkg/cloudprovider/cloudprovider.go +++ b/pkg/cloudprovider/cloudprovider.go @@ -140,7 +140,7 @@ func GetPublicProviders() []string { func GetPrivateProviders() []string { providers := make([]string, 0) for p, d := range providerTable { - if !d.IsPublicCloud() { + if !d.IsPublicCloud() && !d.IsOnPremise() { providers = append(providers, p) } } diff --git a/pkg/compute/models/cloudaccounts.go b/pkg/compute/models/cloudaccounts.go index d3da154f1a..f54e29b23d 100644 --- a/pkg/compute/models/cloudaccounts.go +++ b/pkg/compute/models/cloudaccounts.go @@ -889,7 +889,7 @@ func (manager *SCloudaccountManager) ListItemFilter(ctx context.Context, q *sqlc } if jsonutils.QueryBoolean(query, "private_cloud", false) { - q = q.IsFalse("is_public_cloud") + q = q.IsFalse("is_public_cloud").IsFalse("is_on_premise") } if jsonutils.QueryBoolean(query, "is_on_premise", false) { diff --git a/pkg/compute/models/cloudproviders.go b/pkg/compute/models/cloudproviders.go index 02a02245b1..c7653e1578 100644 --- a/pkg/compute/models/cloudproviders.go +++ b/pkg/compute/models/cloudproviders.go @@ -840,6 +840,7 @@ func (manager *SCloudproviderManager) ListItemFilter(ctx context.Context, q *sql cloudaccounts := CloudaccountManager.Query().SubQuery() q = q.Join(cloudaccounts, sqlchemy.Equals(cloudaccounts.Field("id"), q.Field("cloudaccount_id"))) q = q.Filter(sqlchemy.IsFalse(cloudaccounts.Field("is_public_cloud"))) + q = q.Filter(sqlchemy.IsFalse(cloudaccounts.Field("is_on_premise"))) } if jsonutils.QueryBoolean(query, "is_on_premise", false) {