X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=lib%2Fagent%2Fapiv1-version.go;h=ada785e0e719299e8483c164612c9ce341505def;hb=a2cc38902ff7528870822110c4f04329a3918564;hp=c2387c1324d31e0c210c49afdad69ab42dff0d0e;hpb=97ca1f277dc8b6973d6fa67add5593a9c395ce60;p=src%2Fxds%2Fxds-agent.git diff --git a/lib/agent/apiv1-version.go b/lib/agent/apiv1-version.go index c2387c1..ada785e 100644 --- a/lib/agent/apiv1-version.go +++ b/lib/agent/apiv1-version.go @@ -1,28 +1,34 @@ +/* + * Copyright (C) 2017-2018 "IoT.bzh" + * Author Sebastien Douheret + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package agent import ( + "fmt" "net/http" + "gerrit.automotivelinux.org/gerrit/src/xds/xds-agent/lib/xaapiv1" "github.com/gin-gonic/gin" - common "github.com/iotbzh/xds-common/golib" ) -type version struct { - ID string `json:"id"` - Version string `json:"version"` - APIVersion string `json:"apiVersion"` - VersionGitTag string `json:"gitTag"` -} - -type apiVersion struct { - Client version `json:"client"` - Server []version `json:"servers"` -} - // getInfo : return various information about server func (s *APIService) getVersion(c *gin.Context) { - response := apiVersion{ - Client: version{ + response := xaapiv1.XDSVersion{ + Client: xaapiv1.VersionData{ ID: "", Version: s.Config.Version, APIVersion: s.Config.APIVersion, @@ -30,12 +36,14 @@ func (s *APIService) getVersion(c *gin.Context) { }, } - svrVer := []version{} + svrVer := []xaapiv1.VersionData{} for _, svr := range s.xdsServers { - res := version{} - if err := svr.HTTPGet("/version", &res); err != nil { - common.APIError(c, "Cannot retrieve version of XDS server ID %s : %v", svr.ID, err.Error()) - return + res := xaapiv1.VersionData{} + if err := svr.GetVersion(&res); err != nil { + errMsg := fmt.Sprintf("Cannot retrieve version of XDS server ID %s : %v", svr.ID, err.Error()) + s.Log.Warning(errMsg) + res.ID = svr.ID + res.Version = errMsg } svrVer = append(svrVer, res) }