Skip to content

Commit

Permalink
fix(region): Fix problems for Auto Scaling
Browse files Browse the repository at this point in the history
1. ScalingPolicyManager and ScalingActivityManager override ResourceScope.
2. Change 'tenant' as 'project_id' before requesting to forcast.
  • Loading branch information
rainzm committed Apr 22, 2020
1 parent 3d70163 commit 4f27908
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 2 deletions.
5 changes: 5 additions & 0 deletions pkg/compute/models/scaling_activity.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ import (
"yunion.io/x/onecloud/pkg/apis/compute"
"yunion.io/x/onecloud/pkg/cloudcommon/db"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/util/rbacutils"
"yunion.io/x/onecloud/pkg/util/stringutils2"
)

Expand Down Expand Up @@ -61,6 +62,10 @@ func init() {
ScalingActivityManager.SetVirtualObject(ScalingActivityManager)
}

func (sam *SScalingActivityManager) ResourceScope() rbacutils.TRbacScope {
return rbacutils.ScopeProject
}

func (sam *SScalingActivityManager) FetchByStatus(ctx context.Context, saIds, status []string, action string) (ids []string, err error) {
q := sam.Query("id").In("id", saIds)
if action == "not" {
Expand Down
5 changes: 5 additions & 0 deletions pkg/compute/models/scaling_policy.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ import (
"yunion.io/x/onecloud/pkg/httperrors"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/util/logclient"
"yunion.io/x/onecloud/pkg/util/rbacutils"
"yunion.io/x/onecloud/pkg/util/stringutils2"
)

Expand Down Expand Up @@ -108,6 +109,10 @@ func (spm *SScalingPolicyManager) ListItemFilter(ctx context.Context, q *sqlchem
return q, nil
}

func (spm *SScalingPolicyManager) ResourceScope() rbacutils.TRbacScope {
return rbacutils.ScopeProject
}

func (spm *SScalingPolicyManager) QueryDistinctExtraField(q *sqlchemy.SQuery, field string) (*sqlchemy.SQuery, error) {
q, err := spm.SStatusStandaloneResourceBaseManager.QueryDistinctExtraField(q, field)
if err == nil {
Expand Down
5 changes: 3 additions & 2 deletions pkg/controller/autoscaling/controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -415,6 +415,7 @@ func (asc *SASController) createInstances(session *mcclient.ClientSession, param
clientErr := err.(*httputils.JSONClientError)
failedList = append(failedList, clientErr.Details)
}
dict.Remove("domain_id")
dict.Remove("count")

if count == 1 {
Expand Down Expand Up @@ -471,8 +472,8 @@ func (asc *SASController) CreateInstances(
// For compatibility
content.Remove("__count__")
// set onwer project and id
content.Set("tenant", jsonutils.NewString(ownerId.GetProjectId()))
content.Set("user", jsonutils.NewString(ownerId.GetUserId()))
content.Set("project_id", jsonutils.NewString(ownerId.GetProjectId()))
content.Set("user_id", jsonutils.NewString(ownerId.GetUserId()))

countPR, requests := asc.countPRAndRequests(num)
log.Debugf("countPR: %d, requests: %d", countPR, requests)
Expand Down

0 comments on commit 4f27908

Please sign in to comment.