From 80b4dba5281888fc7f6ccca2904d778eee5c48fa Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Sat, 27 Jul 2019 05:32:40 +0000 Subject: [PATCH 1/4] =?UTF-8?q?yunionconf:=20=E6=94=B9=E6=AD=A3=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E5=A4=B1=E8=B4=A5=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/yunionconf/models/parameters.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkg/yunionconf/models/parameters.go b/pkg/yunionconf/models/parameters.go index 3b58b6b343..866158d1b8 100644 --- a/pkg/yunionconf/models/parameters.go +++ b/pkg/yunionconf/models/parameters.go @@ -59,7 +59,15 @@ type SParameter struct { var ParameterManager *SParameterManager func init() { - ParameterManager = &SParameterManager{SResourceBaseManager: db.NewResourceBaseManager(SParameter{}, "paramters_tbl", "parameter", "parameters")} + ParameterManager = &SParameterManager{ + SResourceBaseManager: db.NewResourceBaseManager( + SParameter{}, + "paramters_tbl", + "parameter", + "parameters", + ), + } + ParameterManager.SetVirtualObject(ParameterManager) } func isAdminQuery(query jsonutils.JSONObject) bool { From 8848a04e0d6e79fc554d7aea81c56775f5091a5c Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Sat, 27 Jul 2019 05:28:03 +0000 Subject: [PATCH 2/4] =?UTF-8?q?modelbase:=20=E8=8B=A5GetIModelManager()?= =?UTF-8?q?=E4=B8=8D=E7=AC=A6=E5=90=88=E9=A2=84=E6=9C=9F=E5=88=99panic?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 便于定位 --- pkg/cloudcommon/db/modelbase.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkg/cloudcommon/db/modelbase.go b/pkg/cloudcommon/db/modelbase.go index 4396b60c4a..d0169ef4d9 100644 --- a/pkg/cloudcommon/db/modelbase.go +++ b/pkg/cloudcommon/db/modelbase.go @@ -17,13 +17,13 @@ package db import ( "context" "database/sql" + "fmt" "net/http" + "time" "yunion.io/x/jsonutils" "yunion.io/x/sqlchemy" - "log" - "time" "yunion.io/x/onecloud/pkg/appsrv" "yunion.io/x/onecloud/pkg/cloudcommon/object" "yunion.io/x/onecloud/pkg/httperrors" @@ -57,9 +57,13 @@ func NewModelBaseManager(model interface{}, tableName string, keyword string, ke func (manager *SModelBaseManager) GetIModelManager() IModelManager { virt := manager.GetVirtualObject() if virt == nil { - log.Fatalf("%s.GetIModelManager got nil!", manager.keywordPlural) + panic(fmt.Sprintf("Forgot to call SetVirtualObject?")) } - return virt.(IModelManager) + r, ok := virt.(IModelManager) + if !ok { + panic(fmt.Sprintf("Cannot convert virtual object to IModelManager: %#v", virt)) + } + return r } func (manager *SModelBaseManager) SetAlias(alias string, aliasPlural string) { From 0f66891af6922df606b6ee6777b7a60d0acd1ac3 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Sat, 27 Jul 2019 05:36:33 +0000 Subject: [PATCH 3/4] =?UTF-8?q?treewide:=20=E6=8C=89=E7=85=A7gofmt?= =?UTF-8?q?=E6=94=B9=E4=BB=A3=E7=A0=81=E9=A3=8E=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/compute/models/cloudproviders.go | 1 - pkg/util/aws/region.go | 12 ++++++------ pkg/util/huawei/client/modules/mod_servers.go | 2 +- pkg/util/huawei/instance.go | 4 ++-- pkg/util/huawei/shell/instance.go | 2 +- 5 files changed, 10 insertions(+), 11 deletions(-) diff --git a/pkg/compute/models/cloudproviders.go b/pkg/compute/models/cloudproviders.go index b9033bdbc3..22723b04fb 100644 --- a/pkg/compute/models/cloudproviders.go +++ b/pkg/compute/models/cloudproviders.go @@ -955,7 +955,6 @@ func (manager *SCloudproviderManager) ListItemFilter(ctx context.Context, q *sql sq = sq.Filter(sqlchemy.In(providers.Field("health_status"), api.CLOUD_PROVIDER_VALID_HEALTH_STATUS)) sq = sq.Filter(sqlchemy.Equals(vpcs.Field("status"), api.VPC_STATUS_AVAILABLE)) - sq2 := providers.Query(sqlchemy.DISTINCT("id", providers.Field("id"))) sq2 = sq2.Join(vpcs, sqlchemy.Equals(vpcs.Field("manager_id"), providers.Field("id"))) sq2 = sq2.Join(wires, sqlchemy.Equals(vpcs.Field("id"), wires.Field("vpc_id"))) diff --git a/pkg/util/aws/region.go b/pkg/util/aws/region.go index 3a01758a1f..880d747fae 100644 --- a/pkg/util/aws/region.go +++ b/pkg/util/aws/region.go @@ -164,12 +164,12 @@ func (self *SRegion) fetchIVpcs() error { } self.ivpcs = append(self.ivpcs, &SVpc{region: self, - CidrBlock: *vpc.CidrBlock, - Tags: tags, - IsDefault: *vpc.IsDefault, - RegionId: self.RegionId, - Status: *vpc.State, - VpcId: *vpc.VpcId, + CidrBlock: *vpc.CidrBlock, + Tags: tags, + IsDefault: *vpc.IsDefault, + RegionId: self.RegionId, + Status: *vpc.State, + VpcId: *vpc.VpcId, InstanceTenancy: *vpc.InstanceTenancy, }) } diff --git a/pkg/util/huawei/client/modules/mod_servers.go b/pkg/util/huawei/client/modules/mod_servers.go index ac7c99c7e6..cf967398b9 100644 --- a/pkg/util/huawei/client/modules/mod_servers.go +++ b/pkg/util/huawei/client/modules/mod_servers.go @@ -121,4 +121,4 @@ func NewServerV2Manager(regionId, projectId string, signer auth.Signer, debug bo ResourceKeyword: "cloudservers", }} -} \ No newline at end of file +} diff --git a/pkg/util/huawei/instance.go b/pkg/util/huawei/instance.go index c3711cfb72..5649fd1ee9 100644 --- a/pkg/util/huawei/instance.go +++ b/pkg/util/huawei/instance.go @@ -31,10 +31,10 @@ import ( billing_api "yunion.io/x/onecloud/pkg/apis/billing" api "yunion.io/x/onecloud/pkg/apis/compute" - "yunion.io/x/onecloud/pkg/util/cloudinit" "yunion.io/x/onecloud/pkg/cloudprovider" "yunion.io/x/onecloud/pkg/multicloud" "yunion.io/x/onecloud/pkg/util/billing" + "yunion.io/x/onecloud/pkg/util/cloudinit" "yunion.io/x/onecloud/pkg/util/huawei/client/modules" ) @@ -1295,4 +1295,4 @@ func updateUserData(userData, username, password string) (string, error) { } return config.UserDataBase64(), nil -} \ No newline at end of file +} diff --git a/pkg/util/huawei/shell/instance.go b/pkg/util/huawei/shell/instance.go index 0ca0a46b86..1e0b81b7cb 100644 --- a/pkg/util/huawei/shell/instance.go +++ b/pkg/util/huawei/shell/instance.go @@ -125,7 +125,7 @@ func init() { shellutils.R(&InstanceRebuildRootOptions{}, "instance-rebuild-root", "Reinstall virtual server system image", func(cli *huawei.SRegion, args *InstanceRebuildRootOptions) error { ctx := context.Background() - jobId, err := cli.ChangeRoot(ctx, args.UserId,args.ID, args.Image, args.Password, args.PublicKey, args.UserData) + jobId, err := cli.ChangeRoot(ctx, args.UserId, args.ID, args.Image, args.Password, args.PublicKey, args.UserData) if err != nil { return err } From f57057975457bd4e6718affc289416bf4d46e7d1 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Sat, 27 Jul 2019 07:48:07 +0000 Subject: [PATCH 4/4] =?UTF-8?q?cloudir:=20=E6=94=B9=E6=AD=A3=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E5=A4=B1=E8=B4=A5=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ```sh find pkg -name 'models' | while read d; do for f in $d/*.go; do case "$f" in */doc.go) ;; */initdb.go) ;; pkg/lbagent/models/*) ;; *) if grep -q 'Manager = ' $f; then grep -q 'SetVirtualObject' $f || echo $f fi ;; esac done done ``` --- pkg/cloudcommon/etcd/models/serviceregistries.go | 1 + 1 file changed, 1 insertion(+) diff --git a/pkg/cloudcommon/etcd/models/serviceregistries.go b/pkg/cloudcommon/etcd/models/serviceregistries.go index 7177b4885d..bd12011a1e 100644 --- a/pkg/cloudcommon/etcd/models/serviceregistries.go +++ b/pkg/cloudcommon/etcd/models/serviceregistries.go @@ -52,6 +52,7 @@ func init() { "service-registries", ), } + ServiceRegistryManager.SetVirtualObject(ServiceRegistryManager) } func (manager *SServiceRegistryManager) Register(ctx context.Context, addr string, port int,