diff --git a/cmd/climc/shell/servers.go b/cmd/climc/shell/servers.go index 856edd1d75..3e739b8c36 100644 --- a/cmd/climc/shell/servers.go +++ b/cmd/climc/shell/servers.go @@ -102,13 +102,13 @@ func init() { if e != nil { return e } - var params *jsonutils.JSONDict + + params := jsonutils.NewDict() if len(opts.Key) > 0 { privateKey, e := ioutil.ReadFile(opts.Key) if e != nil { return e } - params = jsonutils.NewDict() params.Add(jsonutils.NewString(string(privateKey)), "private_key") } diff --git a/pkg/compute/models/quotas.go b/pkg/compute/models/quotas.go index ad73a7a1c9..43f9d92247 100644 --- a/pkg/compute/models/quotas.go +++ b/pkg/compute/models/quotas.go @@ -278,7 +278,7 @@ func (self *SQuota) Exceed(request quotas.IQuota, quota quotas.IQuota) error { if sreq.IsolatedDevice > 0 && self.IsolatedDevice > squota.IsolatedDevice { return ErrOutOfIsolatedDevice } - if self.Snapshot > squota.Snapshot { + if sreq.Snapshot > 0 && self.Snapshot > squota.Snapshot { return ErrOutOfSnapshot } return nil diff --git a/pkg/mcclient/modules/mod_servers.go b/pkg/mcclient/modules/mod_servers.go index b73b986178..d13fec5aaf 100644 --- a/pkg/mcclient/modules/mod_servers.go +++ b/pkg/mcclient/modules/mod_servers.go @@ -7,6 +7,7 @@ import ( "yunion.io/x/onecloud/pkg/mcclient" "yunion.io/x/pkg/utils" "yunion.io/x/onecloud/pkg/util/seclib2" + "yunion.io/x/pkg/gotypes" ) type ServerManager struct { @@ -25,7 +26,7 @@ func (this *ServerManager) GetLoginInfo(s *mcclient.ClientSession, id string, pa } var privateKey string - if params != nil { + if params != nil && ! gotypes.IsNil(params) { privateKey, _ = params.GetString("private_key") } diff --git a/pkg/util/cloudinit/cloudconfig.go b/pkg/util/cloudinit/cloudconfig.go index f0c7d99597..1345e06f54 100644 --- a/pkg/util/cloudinit/cloudconfig.go +++ b/pkg/util/cloudinit/cloudconfig.go @@ -4,10 +4,10 @@ import ( "bytes" "encoding/base64" - "github.com/yunionio/jsonutils" "golang.org/x/crypto/bcrypt" "yunion.io/x/log" + "yunion.io/x/jsonutils" "strings" "fmt" "yunion.io/x/pkg/utils" diff --git a/pkg/util/cloudinit/cloudconfig_test.go b/pkg/util/cloudinit/cloudconfig_test.go index 26dd45734a..69e43a4667 100644 --- a/pkg/util/cloudinit/cloudconfig_test.go +++ b/pkg/util/cloudinit/cloudconfig_test.go @@ -17,7 +17,7 @@ func TestSCloudConfig_UserData(t *testing.T) { usr1, usr2, }, - WireFiles: []SWriteFile{ + WriteFiles: []SWriteFile{ file1, file2, },