Skip to content

Commit

Permalink
Merge pull request #485 from inno-cloudbarista/hotfix/openstackerrorc…
Browse files Browse the repository at this point in the history
…ontext

[bugfix]드라이버 핸들러 에러 코드라인 표시
  • Loading branch information
powerkimhub authored Oct 21, 2021
2 parents 9f8547a + 4a7a7e2 commit 09a44d0
Show file tree
Hide file tree
Showing 26 changed files with 342 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ func InitLog() {
}

func LoggingError(hiscallInfo call.CLOUDLOGSCHEMA, err error) {
cblogger.Error(err.Error())
hiscallInfo.ErrorMSG = err.Error()
calllogger.Info(call.String(hiscallInfo))
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,7 @@ func (imageHandler *AzureImageHandler) ListImage() ([]*irs.ImageInfo, error) {

publishers, err := imageHandler.VMImageClient.ListPublishers(context.TODO(), imageHandler.Region.Region)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return nil, err
}
Expand Down Expand Up @@ -194,6 +195,7 @@ func (imageHandler *AzureImageHandler) GetImage(imageIID irs.IID) (irs.ImageInfo
// 이미지 URN 형식 검사
if len(imageArr) != 4 {
formatErr := errors.New("invalid format for image ID, imageId=" + imageIID.NameId)
cblogger.Error(formatErr.Error())
LoggingError(hiscallInfo, formatErr)
return irs.ImageInfo{}, formatErr
}
Expand Down Expand Up @@ -233,6 +235,7 @@ func (imageHandler *AzureImageHandler) GetImage(imageIID irs.IID) (irs.ImageInfo
start := call.Start()
vmImage, err := imageHandler.VMImageClient.Get(imageHandler.Ctx, imageHandler.Region.Region, imageArr[0], imageArr[1], imageArr[2], imageArr[3])
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.ImageInfo{}, err
}
Expand All @@ -249,13 +252,15 @@ func (imageHandler *AzureImageHandler) DeleteImage(imageIID irs.IID) (bool, erro
start := call.Start()
future, err := imageHandler.Client.Delete(imageHandler.Ctx, imageHandler.Region.ResourceGroup, imageIID.NameId)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return false, err
}
LoggingInfo(hiscallInfo, start)

err = future.WaitForCompletionRef(imageHandler.Ctx, imageHandler.Client.Client)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return false, err
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ func (securityHandler *AzureSecurityHandler) CreateSecurity(securityReqInfo irs.
security, _ := securityHandler.Client.Get(securityHandler.Ctx, securityHandler.Region.ResourceGroup, securityReqInfo.IId.NameId, "")
if security.ID != nil {
createErr := errors.New(fmt.Sprintf("Security Group with name %s already exist", securityReqInfo.IId.NameId))
cblogger.Error(createErr.Error())
LoggingError(hiscallInfo, createErr)
return irs.SecurityInfo{}, createErr
}
Expand Down Expand Up @@ -120,20 +121,23 @@ func (securityHandler *AzureSecurityHandler) CreateSecurity(securityReqInfo irs.
start := call.Start()
future, err := securityHandler.Client.CreateOrUpdate(securityHandler.Ctx, securityHandler.Region.ResourceGroup, securityReqInfo.IId.NameId, createOpts)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.SecurityInfo{}, err
}
LoggingInfo(hiscallInfo, start)

err = future.WaitForCompletionRef(securityHandler.Ctx, securityHandler.Client.Client)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.SecurityInfo{}, err
}

// 생성된 SecurityGroup 정보 리턴
securityInfo, err := securityHandler.GetSecurity(securityReqInfo.IId)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.SecurityInfo{}, err
}
Expand All @@ -148,6 +152,7 @@ func (securityHandler *AzureSecurityHandler) ListSecurity() ([]*irs.SecurityInfo
start := call.Start()
result, err := securityHandler.Client.List(securityHandler.Ctx, securityHandler.Region.ResourceGroup)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return nil, err
}
Expand All @@ -168,6 +173,7 @@ func (securityHandler *AzureSecurityHandler) GetSecurity(securityIID irs.IID) (i
start := call.Start()
security, err := securityHandler.Client.Get(securityHandler.Ctx, securityHandler.Region.ResourceGroup, securityIID.NameId, "")
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.SecurityInfo{}, err
}
Expand All @@ -184,11 +190,13 @@ func (securityHandler *AzureSecurityHandler) DeleteSecurity(securityIID irs.IID)
start := call.Start()
future, err := securityHandler.Client.Delete(securityHandler.Ctx, securityHandler.Region.ResourceGroup, securityIID.NameId)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return false, err
}
err = future.WaitForCompletionRef(securityHandler.Ctx, securityHandler.Client.Client)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return false, err
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,15 @@ func (vmHandler *AzureVMHandler) StartVM(vmReqInfo irs.VMReqInfo) (irs.VMInfo, e
vm, err := vmHandler.Client.Get(vmHandler.Ctx, vmHandler.Region.ResourceGroup, vmReqInfo.IId.NameId, compute.InstanceViewTypesInstanceView)
if vm.ID != nil {
createErr := errors.New(fmt.Sprintf("virtualMachine with name %s already exist", vmReqInfo.IId.NameId))
cblogger.Error(createErr.Error())
LoggingError(hiscallInfo, createErr)
return irs.VMInfo{}, createErr
}

// Check login method (keypair, password)
if vmReqInfo.VMUserPasswd != "" && vmReqInfo.KeyPairIID.NameId != "" {
createErr := errors.New("specify one login method, Password or Keypair")
cblogger.Error(createErr.Error())
LoggingError(hiscallInfo, createErr)
return irs.VMInfo{}, createErr
}
Expand All @@ -65,6 +67,7 @@ func (vmHandler *AzureVMHandler) StartVM(vmReqInfo irs.VMReqInfo) (irs.VMInfo, e
// PublicIP 생성
publicIPIId, err := CreatePublicIP(vmHandler, vmReqInfo)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.VMInfo{}, err
}
Expand All @@ -73,6 +76,7 @@ func (vmHandler *AzureVMHandler) StartVM(vmReqInfo irs.VMReqInfo) (irs.VMInfo, e
// VNic 생성
vNicIId, err := CreateVNic(vmHandler, vmReqInfo, publicIPIId)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.VMInfo{}, err
}
Expand Down Expand Up @@ -126,6 +130,7 @@ func (vmHandler *AzureVMHandler) StartVM(vmReqInfo irs.VMReqInfo) (irs.VMInfo, e
if vmReqInfo.KeyPairIID.NameId != "" {
publicKey, err := GetPublicKey(vmHandler.CredentialInfo, vmReqInfo.KeyPairIID.NameId)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.VMInfo{}, err
}
Expand Down Expand Up @@ -154,19 +159,22 @@ func (vmHandler *AzureVMHandler) StartVM(vmReqInfo irs.VMReqInfo) (irs.VMInfo, e
start := call.Start()
future, err := vmHandler.Client.CreateOrUpdate(vmHandler.Ctx, vmHandler.Region.ResourceGroup, vmReqInfo.IId.NameId, vmOpts)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.VMInfo{}, err
}
LoggingInfo(hiscallInfo, start)

err = future.WaitForCompletionRef(vmHandler.Ctx, vmHandler.Client.Client)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.VMInfo{}, err
}

vm, err = vmHandler.Client.Get(vmHandler.Ctx, vmHandler.Region.ResourceGroup, vmReqInfo.IId.NameId, compute.InstanceViewTypesInstanceView)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
}

Expand All @@ -181,18 +189,21 @@ func (vmHandler *AzureVMHandler) SuspendVM(vmIID irs.IID) (irs.VMStatus, error)
start := call.Start()
future, err := vmHandler.Client.PowerOff(vmHandler.Ctx, vmHandler.Region.ResourceGroup, vmIID.NameId, to.BoolPtr(false))
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}
err = future.WaitForCompletionRef(vmHandler.Ctx, vmHandler.Client.Client)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}

// Get VM Status
vmStatus, err := vmHandler.GetVMStatus(vmIID)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}
Expand All @@ -209,11 +220,13 @@ func (vmHandler *AzureVMHandler) ResumeVM(vmIID irs.IID) (irs.VMStatus, error) {
start := call.Start()
future, err := vmHandler.Client.Start(vmHandler.Ctx, vmHandler.Region.ResourceGroup, vmIID.NameId)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}
err = future.WaitForCompletionRef(vmHandler.Ctx, vmHandler.Client.Client)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}
Expand All @@ -230,11 +243,13 @@ func (vmHandler *AzureVMHandler) RebootVM(vmIID irs.IID) (irs.VMStatus, error) {
start := call.Start()
future, err := vmHandler.Client.Restart(vmHandler.Ctx, vmHandler.Region.ResourceGroup, vmIID.NameId)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}
err = future.WaitForCompletionRef(vmHandler.Ctx, vmHandler.Client.Client)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}
Expand All @@ -252,6 +267,7 @@ func (vmHandler *AzureVMHandler) TerminateVM(vmIID irs.IID) (irs.VMStatus, error
// VM OSDisk 이름 가져오기
vmInfo, err := vmHandler.GetVM(vmIID)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}
Expand All @@ -270,13 +286,15 @@ func (vmHandler *AzureVMHandler) TerminateVM(vmIID irs.IID) (irs.VMStatus, error
start := call.Start()
future, err := vmHandler.Client.Delete(vmHandler.Ctx, vmHandler.Region.ResourceGroup, vmIID.NameId, to.BoolPtr(false))
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}
LoggingInfo(hiscallInfo, start)

err = future.WaitForCompletionRef(vmHandler.Ctx, vmHandler.Client.Client)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}
Expand All @@ -285,6 +303,7 @@ func (vmHandler *AzureVMHandler) TerminateVM(vmIID irs.IID) (irs.VMStatus, error
// VNic 삭제
vNicStatus, err := DeleteVNic(vmHandler, vmInfo)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return vNicStatus, err
}
Expand All @@ -293,6 +312,7 @@ func (vmHandler *AzureVMHandler) TerminateVM(vmIID irs.IID) (irs.VMStatus, error
// PublicIP 삭제
publicIPStatus, err := DeletePublicIP(vmHandler, vmInfo)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return publicIPStatus, err
}
Expand All @@ -301,6 +321,7 @@ func (vmHandler *AzureVMHandler) TerminateVM(vmIID irs.IID) (irs.VMStatus, error
// OS Disk 삭제
diskStatus, err := DeleteVMDisk(vmHandler, osDiskName)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return diskStatus, err
}
Expand All @@ -316,6 +337,7 @@ func (vmHandler *AzureVMHandler) ListVMStatus() ([]*irs.VMStatusInfo, error) {
start := call.Start()
serverList, err := vmHandler.Client.List(vmHandler.Ctx, vmHandler.Region.ResourceGroup)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return []*irs.VMStatusInfo{}, err
}
Expand Down Expand Up @@ -359,6 +381,7 @@ func (vmHandler *AzureVMHandler) GetVMStatus(vmIID irs.IID) (irs.VMStatus, error
start := call.Start()
instanceView, err := vmHandler.Client.InstanceView(vmHandler.Ctx, vmHandler.Region.ResourceGroup, vmIID.NameId)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.Failed, err
}
Expand All @@ -376,6 +399,7 @@ func (vmHandler *AzureVMHandler) ListVM() ([]*irs.VMInfo, error) {
start := call.Start()
serverList, err := vmHandler.Client.List(vmHandler.Ctx, vmHandler.Region.ResourceGroup)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return []*irs.VMInfo{}, err
}
Expand All @@ -397,6 +421,7 @@ func (vmHandler *AzureVMHandler) GetVM(vmIID irs.IID) (irs.VMInfo, error) {
start := call.Start()
vm, err := vmHandler.Client.Get(vmHandler.Ctx, vmHandler.Region.ResourceGroup, vmIID.NameId, compute.InstanceViewTypesInstanceView)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.VMInfo{}, err
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ func (vmSpecHandler *AzureVmSpecHandler) ListVMSpec(Region string) ([]*irs.VMSpe
start := call.Start()
result, err := vmSpecHandler.Client.List(vmSpecHandler.Ctx, Region)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return nil, err
}
Expand All @@ -62,6 +63,7 @@ func (vmSpecHandler *AzureVmSpecHandler) GetVMSpec(Region string, Name string) (
start := call.Start()
result, err := vmSpecHandler.Client.List(vmSpecHandler.Ctx, Region)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return irs.VMSpecInfo{}, err
}
Expand All @@ -75,6 +77,7 @@ func (vmSpecHandler *AzureVmSpecHandler) GetVMSpec(Region string, Name string) (
}

getErr := errors.New(fmt.Sprintf("failed to get VM spec, err : %s", err))
cblogger.Error(getErr.Error())
LoggingError(hiscallInfo, getErr)
return irs.VMSpecInfo{}, getErr
}
Expand All @@ -86,6 +89,7 @@ func (vmSpecHandler *AzureVmSpecHandler) ListOrgVMSpec(Region string) (string, e
start := call.Start()
result, err := vmSpecHandler.Client.List(vmSpecHandler.Ctx, Region)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return "", err
}
Expand All @@ -97,6 +101,7 @@ func (vmSpecHandler *AzureVmSpecHandler) ListOrgVMSpec(Region string) (string, e
jsonResult.Result = *result.Value
jsonBytes, err := json.Marshal(jsonResult)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return "", err
}
Expand All @@ -112,6 +117,7 @@ func (vmSpecHandler *AzureVmSpecHandler) GetOrgVMSpec(Region string, Name string
start := call.Start()
result, err := vmSpecHandler.Client.List(vmSpecHandler.Ctx, Region)
if err != nil {
cblogger.Error(err.Error())
LoggingError(hiscallInfo, err)
return "", err
}
Expand All @@ -122,6 +128,7 @@ func (vmSpecHandler *AzureVmSpecHandler) GetOrgVMSpec(Region string, Name string
jsonBytes, err := json.Marshal(spec)
if err != nil {
getErr := errors.New(fmt.Sprintf("failed to get VM spec, err : %s", err))
cblogger.Error(getErr.Error())
LoggingError(hiscallInfo, getErr)
return "", err
}
Expand All @@ -132,6 +139,7 @@ func (vmSpecHandler *AzureVmSpecHandler) GetOrgVMSpec(Region string, Name string
}

notFoundErr := errors.New("failed to get VM spec")
cblogger.Error(notFoundErr.Error())
LoggingError(hiscallInfo, notFoundErr)
return "", notFoundErr
}
Loading

0 comments on commit 09a44d0

Please sign in to comment.