1. change glog to klog

2. move types to api package to avoid cyclic import
This commit is contained in:
Jeff
2019-09-16 12:46:53 +08:00
committed by zryfish
parent 79735c4543
commit 97c9a1786a
109 changed files with 1076 additions and 552 deletions

View File

@@ -14,11 +14,12 @@ limitations under the License.
package devops
import (
"kubesphere.io/kubesphere/pkg/api/devops/v1alpha2"
"kubesphere.io/kubesphere/pkg/utils/idutils"
"time"
)
var DevOpsProjectColumns = GetColumnsFromStruct(&DevOpsProject{})
var DevOpsProjectColumns = GetColumnsFromStruct(&v1alpha2.DevOpsProject{})
const (
DevOpsProjectTableName = "project"
@@ -31,33 +32,8 @@ const (
DevOpsProjectCreateTimeColumn = "project.create_time"
)
type PageableDevOpsProject struct {
Items []*DevOpsProject `json:"items"`
TotalCount int `json:"total_count"`
}
type DevOpsProject struct {
ProjectId string `json:"project_id" db:"project_id" description:"ProjectId must be unique within a workspace, it is generated by kubesphere."`
Name string `json:"name" description:"DevOps Projects's Name"`
Description string `json:"description,omitempty" description:"DevOps Projects's Description, used to describe the DevOps Project"`
Creator string `json:"creator" description:"Creator's username"`
CreateTime time.Time `json:"create_time" description:"DevOps Project's Creation time"`
Status string `json:"status" description:"DevOps project's status. e.g. active"`
Visibility string `json:"visibility,omitempty" description:"Deprecated Field"`
Extra string `json:"extra,omitempty" description:"Internal Use"`
Workspace string `json:"workspace" description:"The workspace to which the devops project belongs"`
}
func NewDevOpsProject(name, description, creator, extra, workspace string) *DevOpsProject {
return &DevOpsProject{
func NewDevOpsProject(name, description, creator, extra, workspace string) *v1alpha2.DevOpsProject {
return &v1alpha2.DevOpsProject{
ProjectId: idutils.GetUuid(DevOpsProjectPrefix),
Name: name,
Description: description,

View File

@@ -19,7 +19,7 @@ import (
"github.com/asaskevich/govalidator"
"github.com/emicklei/go-restful"
"github.com/gocraft/dbr"
"github.com/golang/glog"
"k8s.io/klog"
"kubesphere.io/kubesphere/pkg/db"
"kubesphere.io/kubesphere/pkg/gojenkins"
@@ -39,7 +39,7 @@ func CreateProjectCredential(projectId, username string, credentialRequest *Jenk
err = checkJenkinsCredentialExists(projectId, credentialRequest.Domain, credentialRequest.Id)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", err
}
@@ -47,7 +47,7 @@ func CreateProjectCredential(projectId, username string, credentialRequest *Jenk
case CredentialTypeUsernamePassword:
if credentialRequest.UsernamePasswordCredential == nil {
err := fmt.Errorf("usename_password should not be nil")
glog.Error(err)
klog.Error(err)
return "", restful.NewError(http.StatusBadRequest, err.Error())
}
credentialId, err := jenkinsClient.CreateUsernamePasswordCredentialInFolder(credentialRequest.Domain,
@@ -57,19 +57,19 @@ func CreateProjectCredential(projectId, username string, credentialRequest *Jenk
credentialRequest.Description,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
err = insertCredentialToDb(projectId, *credentialId, credentialRequest.Domain, username)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", err
}
return *credentialId, nil
case CredentialTypeSsh:
if credentialRequest.SshCredential == nil {
err := fmt.Errorf("ssh should not be nil")
glog.Error(err)
klog.Error(err)
return "", restful.NewError(http.StatusBadRequest, err.Error())
}
credentialId, err := jenkinsClient.CreateSshCredentialInFolder(credentialRequest.Domain,
@@ -80,20 +80,20 @@ func CreateProjectCredential(projectId, username string, credentialRequest *Jenk
credentialRequest.Description,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
err = insertCredentialToDb(projectId, *credentialId, credentialRequest.Domain, username)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(http.StatusInternalServerError, err.Error())
}
return *credentialId, nil
case CredentialTypeSecretText:
if credentialRequest.SecretTextCredential == nil {
err := fmt.Errorf("secret_text should not be nil")
glog.Error(err)
klog.Error(err)
return "", restful.NewError(http.StatusBadRequest, err.Error())
}
@@ -103,20 +103,20 @@ func CreateProjectCredential(projectId, username string, credentialRequest *Jenk
credentialRequest.Description,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
err = insertCredentialToDb(projectId, *credentialId, credentialRequest.Domain, username)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(http.StatusInternalServerError, err.Error())
}
return *credentialId, nil
case CredentialTypeKubeConfig:
if credentialRequest.KubeconfigCredential == nil {
err := fmt.Errorf("kubeconfig should not be nil")
glog.Error(err)
klog.Error(err)
return "", restful.NewError(http.StatusBadRequest, err.Error())
}
credentialId, err := jenkinsClient.CreateKubeconfigCredentialInFolder(credentialRequest.Domain,
@@ -125,18 +125,18 @@ func CreateProjectCredential(projectId, username string, credentialRequest *Jenk
credentialRequest.Description,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
err = insertCredentialToDb(projectId, *credentialId, credentialRequest.Domain, username)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(http.StatusInternalServerError, err.Error())
}
return *credentialId, nil
default:
err := fmt.Errorf("error unsupport credential type")
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(http.StatusBadRequest, err.Error())
}
@@ -154,7 +154,7 @@ func UpdateProjectCredential(projectId, credentialId string, credentialRequest *
credentialId,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
credentialType := CredentialTypeMap[jenkinsCredential.TypeName]
@@ -162,7 +162,7 @@ func UpdateProjectCredential(projectId, credentialId string, credentialRequest *
case CredentialTypeUsernamePassword:
if credentialRequest.UsernamePasswordCredential == nil {
err := fmt.Errorf("usename_password should not be nil")
glog.Error(err)
klog.Error(err)
return "", restful.NewError(http.StatusBadRequest, err.Error())
}
credentialId, err := jenkinsClient.UpdateUsernamePasswordCredentialInFolder(credentialRequest.Domain,
@@ -172,7 +172,7 @@ func UpdateProjectCredential(projectId, credentialId string, credentialRequest *
credentialRequest.Description,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
@@ -180,7 +180,7 @@ func UpdateProjectCredential(projectId, credentialId string, credentialRequest *
case CredentialTypeSsh:
if credentialRequest.SshCredential == nil {
err := fmt.Errorf("ssh should not be nil")
glog.Error(err)
klog.Error(err)
return "", restful.NewError(http.StatusBadRequest, err.Error())
}
credentialId, err := jenkinsClient.UpdateSshCredentialInFolder(credentialRequest.Domain,
@@ -191,7 +191,7 @@ func UpdateProjectCredential(projectId, credentialId string, credentialRequest *
credentialRequest.Description,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
@@ -199,7 +199,7 @@ func UpdateProjectCredential(projectId, credentialId string, credentialRequest *
case CredentialTypeSecretText:
if credentialRequest.SecretTextCredential == nil {
err := fmt.Errorf("secret_text should not be nil")
glog.Error(err)
klog.Error(err)
return "", restful.NewError(http.StatusBadRequest, err.Error())
}
credentialId, err := jenkinsClient.UpdateSecretTextCredentialInFolder(credentialRequest.Domain,
@@ -208,14 +208,14 @@ func UpdateProjectCredential(projectId, credentialId string, credentialRequest *
credentialRequest.Description,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
return *credentialId, nil
case CredentialTypeKubeConfig:
if credentialRequest.KubeconfigCredential == nil {
err := fmt.Errorf("kubeconfig should not be nil")
glog.Error(err)
klog.Error(err)
return "", restful.NewError(http.StatusBadRequest, err.Error())
}
credentialId, err := jenkinsClient.UpdateKubeconfigCredentialInFolder(credentialRequest.Domain,
@@ -224,13 +224,13 @@ func UpdateProjectCredential(projectId, credentialId string, credentialRequest *
credentialRequest.Description,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
return *credentialId, nil
default:
err := fmt.Errorf("error unsupport credential type")
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(http.StatusBadRequest, err.Error())
}
@@ -253,13 +253,13 @@ func DeleteProjectCredential(projectId, credentialId string, credentialRequest *
credentialId,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
id, err := jenkinsClient.DeleteCredentialInFolder(credentialRequest.Domain, credentialId, projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
@@ -274,7 +274,7 @@ func DeleteProjectCredential(projectId, credentialId string, credentialRequest *
_, err = dbClient.DeleteFrom(ProjectCredentialTableName).
Where(db.And(deleteConditions...)).Exec()
if err != nil && err != db.ErrNotFound {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return "", restful.NewError(http.StatusInternalServerError, err.Error())
}
return *id, nil
@@ -296,7 +296,7 @@ func GetProjectCredential(projectId, credentialId, domain, getContent string) (*
credentialId,
projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return nil, restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
@@ -308,7 +308,7 @@ func GetProjectCredential(projectId, credentialId, domain, getContent string) (*
db.Eq(ProjectCredentialDomainColumn, jenkinsResponse.Domain))).LoadOne(projectCredential)
if err != nil && err != db.ErrNotFound {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return nil, restful.NewError(http.StatusInternalServerError, err.Error())
}
@@ -316,13 +316,13 @@ func GetProjectCredential(projectId, credentialId, domain, getContent string) (*
if getContent != "" {
stringBody, err := jenkinsClient.GetCredentialContentInFolder(jenkinsResponse.Domain, credentialId, projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return nil, restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
stringReader := strings.NewReader(stringBody)
doc, err := goquery.NewDocumentFromReader(stringReader)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return nil, restful.NewError(http.StatusInternalServerError, err.Error())
}
switch response.Type {
@@ -372,7 +372,7 @@ func GetProjectCredentials(projectId, domain string) ([]*JenkinsCredential, erro
}
jenkinsCredentialResponses, err := jenkinsClient.GetCredentialsInFolder(domain, projectId)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return nil, restful.NewError(utils.GetJenkinsStatusCode(err), err.Error())
}
selectCondition := db.Eq(ProjectCredentialProjectIdColumn, projectId)
@@ -383,7 +383,7 @@ func GetProjectCredentials(projectId, domain string) ([]*JenkinsCredential, erro
_, err = dbClient.Select(ProjectCredentialColumns...).
From(ProjectCredentialTableName).Where(selectCondition).Load(&projectCredentials)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return nil, restful.NewError(http.StatusInternalServerError, err.Error())
}
response := formatCredentialsResponse(jenkinsCredentialResponses, projectCredentials)
@@ -400,7 +400,7 @@ func insertCredentialToDb(projectId, credentialId, domain, username string) erro
_, err = dbClient.InsertInto(ProjectCredentialTableName).Columns(ProjectCredentialColumns...).
Record(projectCredential).Exec()
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return restful.NewError(http.StatusInternalServerError, err.Error())
}
return nil
@@ -417,11 +417,11 @@ func checkJenkinsCredentialExists(projectId, domain, credentialId string) error
credential, err := jenkinsClient.GetCredentialInFolder(domain, credentialId, projectId)
if credential != nil {
err := fmt.Errorf("credential id [%s] has been used", credential.Id)
glog.Warning(err.Error())
klog.Warning(err.Error())
return restful.NewError(http.StatusConflict, err.Error())
}
if err != nil && utils.GetJenkinsStatusCode(err) != http.StatusNotFound {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return restful.NewError(http.StatusBadRequest, err.Error())
}

View File

@@ -17,35 +17,36 @@ import (
"github.com/asaskevich/govalidator"
"github.com/emicklei/go-restful"
"github.com/gocraft/dbr"
"github.com/golang/glog"
"k8s.io/klog"
"kubesphere.io/kubesphere/pkg/api/devops/v1alpha2"
"kubesphere.io/kubesphere/pkg/db"
cs "kubesphere.io/kubesphere/pkg/simple/client"
"net/http"
)
func GetProject(projectId string) (*DevOpsProject, error) {
func GetProject(projectId string) (*v1alpha2.DevOpsProject, error) {
dbconn, err := cs.ClientSets().MySQL()
if err != nil {
return nil, err
}
project := &DevOpsProject{}
project := &v1alpha2.DevOpsProject{}
err = dbconn.Select(DevOpsProjectColumns...).
From(DevOpsProjectTableName).
Where(db.Eq(DevOpsProjectIdColumn, projectId)).
LoadOne(project)
if err != nil && err != dbr.ErrNotFound {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return nil, restful.NewError(http.StatusInternalServerError, err.Error())
}
if err == dbr.ErrNotFound {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return nil, restful.NewError(http.StatusNotFound, err.Error())
}
return project, nil
}
func UpdateProject(project *DevOpsProject) (*DevOpsProject, error) {
func UpdateProject(project *v1alpha2.DevOpsProject) (*v1alpha2.DevOpsProject, error) {
dbconn, err := cs.ClientSets().MySQL()
if err != nil {
return nil, err
@@ -66,18 +67,18 @@ func UpdateProject(project *DevOpsProject) (*DevOpsProject, error) {
Where(db.Eq(DevOpsProjectIdColumn, project.ProjectId)).Exec()
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return nil, restful.NewError(http.StatusInternalServerError, err.Error())
}
}
newProject := &DevOpsProject{}
newProject := &v1alpha2.DevOpsProject{}
err = dbconn.Select(DevOpsProjectColumns...).
From(DevOpsProjectTableName).
Where(db.Eq(DevOpsProjectIdColumn, project.ProjectId)).
LoadOne(newProject)
if err != nil {
glog.Errorf("%+v", err)
klog.Errorf("%+v", err)
return nil, restful.NewError(http.StatusInternalServerError, err.Error())
}
return newProject, nil

View File

@@ -23,7 +23,7 @@ import (
"kubesphere.io/kubesphere/pkg/gojenkins"
"kubesphere.io/kubesphere/pkg/gojenkins/utils"
"kubesphere.io/kubesphere/pkg/models"
"kubesphere.io/kubesphere/pkg/params"
"kubesphere.io/kubesphere/pkg/server/params"
cs "kubesphere.io/kubesphere/pkg/simple/client"
)

View File

@@ -16,8 +16,8 @@ package devops
import (
"fmt"
"github.com/beevik/etree"
"github.com/golang/glog"
"github.com/kubesphere/sonargo/sonar"
"k8s.io/klog"
"kubesphere.io/kubesphere/pkg/gojenkins"
"kubesphere.io/kubesphere/pkg/simple/client"
"strconv"
@@ -1093,7 +1093,7 @@ func getBuildSonarResults(build *gojenkins.Build) ([]*SonarStatus, error) {
}
ceTask, _, err := sonarClient.SonarQube().Ce.Task(taskOptions)
if err != nil {
glog.Errorf("get sonar task error [%+v]", err)
klog.Errorf("get sonar task error [%+v]", err)
continue
}
sonarStatus.Task = ceTask
@@ -1104,7 +1104,7 @@ func getBuildSonarResults(build *gojenkins.Build) ([]*SonarStatus, error) {
}
measures, _, err := sonarClient.SonarQube().Measures.Component(measuresComponentOption)
if err != nil {
glog.Errorf("get sonar task error [%+v]", err)
klog.Errorf("get sonar task error [%+v]", err)
continue
}
sonarStatus.Measures = measures