diff --git a/models/cloudbrain.go b/models/cloudbrain.go index 9c8d08291..97fc9649f 100755 --- a/models/cloudbrain.go +++ b/models/cloudbrain.go @@ -119,7 +119,12 @@ type GetJobResult struct { type GetImagesResult struct { Code string `json:"code"` Msg string `json:"msg"` - Payload map[string]*ImageInfo `json:"payload"` + Payload GetImagesPayload `json:"payload"` +} + +type GetImagesPayload struct { + Count int `json:"count"` + ImageInfo []*ImageInfo `json:"rows"` } type CloudbrainsOptions struct { @@ -255,6 +260,7 @@ type ImageInfo struct { Provider string `json:"provider"` Createtime string `json:"createtime"` Remark string `json:"remark"` + IsPublic int `json:"isPublic"` PlaceView string } diff --git a/modules/modelarts/modelarts.go b/modules/modelarts/modelarts.go index 3cae0f2c6..63434d5ef 100755 --- a/modules/modelarts/modelarts.go +++ b/modules/modelarts/modelarts.go @@ -55,7 +55,6 @@ func GenerateTask(ctx *context.Context, jobName, uuid string) error { RepoID: ctx.Repo.Repository.ID, JobID: jobResult.ID, JobName: jobName, - SubTaskName: subTaskName, JobType: string(models.JobTypeDebug), Type: models.TypeCloudBrainTwo, }) diff --git a/modules/modelarts/resty.go b/modules/modelarts/resty.go index b8be5ec6d..0399a2ad7 100755 --- a/modules/modelarts/resty.go +++ b/modules/modelarts/resty.go @@ -2,6 +2,7 @@ package modelarts import ( "code.gitea.io/gitea/modules/log" + "crypto/tls" "fmt" "net/http" @@ -21,11 +22,12 @@ const ( urlGetToken = "/v3/auth/tokens" urlNotebook = "/demanager/instances" - urlQuaryNotebook = "/demanager/instances" + urlQueryNotebook = "/demanager/instances" ) func getRestyClient() *resty.Client { if restyClient == nil { restyClient = resty.New() + restyClient.SetTLSClientConfig(&tls.Config{InsecureSkipVerify: true}) } return restyClient } @@ -67,10 +69,13 @@ func getToken() error { }, } + log.Info("params:", params) + res, err := client.R(). SetHeader("Content-Type", "application/json"). SetBody(params). - Post(HOST + urlGetToken) + Post(setting.IamHost + urlGetToken) + log.Info("", res.Request.Body) if err != nil { return fmt.Errorf("resty getToken: %s", err) } @@ -80,6 +85,7 @@ func getToken() error { } TOKEN = res.Header().Get("X-Subject-Token") + log.Info(TOKEN) return nil } diff --git a/modules/setting/setting.go b/modules/setting/setting.go index 3d8d19498..3e71804ab 100755 --- a/modules/setting/setting.go +++ b/modules/setting/setting.go @@ -459,6 +459,7 @@ var ( //modelarts config ModelArtsHost string + IamHost string ProjectID string ProjectName string ModelArtsUsername string @@ -1159,6 +1160,7 @@ func NewContext() { sec = Cfg.Section("modelarts") ModelArtsHost = sec.Key("ENDPOINT").MustString("112.95.163.80") + IamHost = sec.Key("IAMHOST").MustString("112.95.163.80") ProjectID = sec.Key("PROJECT_ID").MustString("") ProjectName = sec.Key("PROJECT_NAME").MustString("") ModelArtsUsername = sec.Key("USERNAME").MustString("") diff --git a/routers/api/v1/api.go b/routers/api/v1/api.go old mode 100644 new mode 100755 index 064540a8c..bf4d6d464 --- a/routers/api/v1/api.go +++ b/routers/api/v1/api.go @@ -852,6 +852,9 @@ func RegisterRoutes(m *macaron.Macaron) { m.Group("/cloudbrain", func() { m.Get("/:jobid", repo.GetCloudbrainTask) }, reqRepoReader(models.UnitTypeCloudBrain)) + m.Group("/modelarts", func() { + m.Get("/:jobid", repo.GetModelArtsTask) + }, reqRepoReader(models.UnitTypeCloudBrain)) }, repoAssignment()) }) diff --git a/routers/api/v1/repo/modelarts.go b/routers/api/v1/repo/modelarts.go new file mode 100755 index 000000000..52f8e8e58 --- /dev/null +++ b/routers/api/v1/repo/modelarts.go @@ -0,0 +1,40 @@ +// Copyright 2016 The Gogs Authors. All rights reserved. +// Copyright 2018 The Gitea Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package repo + +import ( + "code.gitea.io/gitea/models" + "code.gitea.io/gitea/modules/context" + "code.gitea.io/gitea/modules/modelarts" +) + +func GetModelArtsTask(ctx *context.APIContext) { + var ( + err error + ) + + jobID := ctx.Params(":jobid") + repoID := ctx.Repo.Repository.ID + _, err = models.GetRepoCloudBrainByJobID(repoID, jobID) + if err != nil { + ctx.NotFound(err) + return + } + _, err = modelarts.GetJob(jobID) + if err != nil { + ctx.NotFound(err) + return + } + + //ctx.JSON(http.StatusOK, map[string]interface{}{ + // "JobID": result.Config.JobID, + // "JobStatus": result.JobStatus.State, + // "SubState": result.JobStatus.SubState, + // "CreatedTime": time.Unix(result.JobStatus.CreatedTime/1000, 0).Format("2006-01-02 15:04:05"), + // "CompletedTime": time.Unix(result.JobStatus.CompletedTime/1000, 0).Format("2006-01-02 15:04:05"), + //}) + +} diff --git a/routers/repo/cloudbrain.go b/routers/repo/cloudbrain.go index 7ebc0a44c..3f60284a0 100755 --- a/routers/repo/cloudbrain.go +++ b/routers/repo/cloudbrain.go @@ -88,17 +88,18 @@ func CloudBrainNew(ctx *context.Context) { result, err := cloudbrain.GetImages() if err != nil { ctx.Data["error"] = err.Error() + log.Error("cloudbrain.GetImages failed:", err.Error()) } - for i, payload := range result.Payload { - if strings.HasPrefix(result.Payload[i].Place, "192.168") { - result.Payload[i].PlaceView = payload.Place[strings.Index(payload.Place, "/"):len(payload.Place)] + for i, payload := range result.Payload.ImageInfo { + if strings.HasPrefix(result.Payload.ImageInfo[i].Place, "192.168") { + result.Payload.ImageInfo[i].PlaceView = payload.Place[strings.Index(payload.Place, "/"):len(payload.Place)] } else { - result.Payload[i].PlaceView = payload.Place + result.Payload.ImageInfo[i].PlaceView = payload.Place } } - ctx.Data["images"] = result.Payload + ctx.Data["images"] = result.Payload.ImageInfo attachs, err := models.GetAllUserAttachments(ctx.User.ID) if err != nil { diff --git a/templates/repo/modelarts/index.tmpl b/templates/repo/modelarts/index.tmpl index e65f554d1..8536dd897 100755 --- a/templates/repo/modelarts/index.tmpl +++ b/templates/repo/modelarts/index.tmpl @@ -266,15 +266,6 @@ - -