feat(server/services): add source id and source link to all services
parent
22251a782f
commit
45a981911d
|
@ -108,6 +108,7 @@ func TestServer(t *testing.T) {
|
|||
"links": {
|
||||
"self": "/chronograf/v1/sources/5000",
|
||||
"kapacitors": "/chronograf/v1/sources/5000/kapacitors",
|
||||
"services": "/chronograf/v1/sources/5000/services",
|
||||
"proxy": "/chronograf/v1/sources/5000/proxy",
|
||||
"queries": "/chronograf/v1/sources/5000/queries",
|
||||
"write": "/chronograf/v1/sources/5000/write",
|
||||
|
@ -296,6 +297,7 @@ func TestServer(t *testing.T) {
|
|||
"links": {
|
||||
"self": "/chronograf/v1/sources/5000",
|
||||
"kapacitors": "/chronograf/v1/sources/5000/kapacitors",
|
||||
"services": "/chronograf/v1/sources/5000/services",
|
||||
"proxy": "/chronograf/v1/sources/5000/proxy",
|
||||
"queries": "/chronograf/v1/sources/5000/queries",
|
||||
"write": "/chronograf/v1/sources/5000/write",
|
||||
|
@ -2943,7 +2945,7 @@ func TestServer(t *testing.T) {
|
|||
serverURL := fmt.Sprintf("http://%v:%v%v", host, port, tt.args.path)
|
||||
|
||||
// Wait for the server to come online
|
||||
timeout := time.Now().Add(5 * time.Second)
|
||||
timeout := time.Now().Add(30 * time.Second)
|
||||
for {
|
||||
_, err := http.Get(serverURL + "/swagger.json")
|
||||
if err == nil {
|
||||
|
|
|
@ -45,12 +45,14 @@ func (p *postServiceRequest) Valid(defaultOrgID string) error {
|
|||
}
|
||||
|
||||
type serviceLinks struct {
|
||||
Proxy string `json:"proxy"` // URL location of proxy endpoint for this source
|
||||
Self string `json:"self"` // Self link mapping to this resource
|
||||
Proxy string `json:"proxy"` // URL location of proxy endpoint for this source
|
||||
Self string `json:"self"` // Self link mapping to this resource
|
||||
Source string `json:"source"` // URL location of the parent source
|
||||
}
|
||||
|
||||
type service struct {
|
||||
ID int `json:"id,string"` // Unique identifier representing a service instance.
|
||||
SrcID int `json:"sourceID,string"` // SrcID of the data source
|
||||
Name string `json:"name"` // User facing name of service instance.
|
||||
URL string `json:"url"` // URL for the service backend (e.g. http://localhost:9092)
|
||||
Username string `json:"username,omitempty"` // Username for authentication to service
|
||||
|
@ -118,14 +120,16 @@ func newService(srv chronograf.Server) service {
|
|||
httpAPISrcs := "/chronograf/v1/sources"
|
||||
return service{
|
||||
ID: srv.ID,
|
||||
SrcID: srv.SrcID,
|
||||
Name: srv.Name,
|
||||
Username: srv.Username,
|
||||
URL: srv.URL,
|
||||
InsecureSkipVerify: srv.InsecureSkipVerify,
|
||||
Type: srv.Type,
|
||||
Links: serviceLinks{
|
||||
Self: fmt.Sprintf("%s/%d/services/%d", httpAPISrcs, srv.SrcID, srv.ID),
|
||||
Proxy: fmt.Sprintf("%s/%d/services/%d/proxy", httpAPISrcs, srv.SrcID, srv.ID),
|
||||
Self: fmt.Sprintf("%s/%d/services/%d", httpAPISrcs, srv.SrcID, srv.ID),
|
||||
Source: fmt.Sprintf("%s/%d", httpAPISrcs, srv.SrcID),
|
||||
Proxy: fmt.Sprintf("%s/%d/services/%d/proxy", httpAPISrcs, srv.SrcID, srv.ID),
|
||||
},
|
||||
}
|
||||
}
|
||||
|
|
|
@ -175,6 +175,7 @@ func Test_newSourceResponse(t *testing.T) {
|
|||
},
|
||||
Links: sourceLinks{
|
||||
Self: "/chronograf/v1/sources/1",
|
||||
Services: "/chronograf/v1/sources/1/services",
|
||||
Proxy: "/chronograf/v1/sources/1/proxy",
|
||||
Queries: "/chronograf/v1/sources/1/queries",
|
||||
Write: "/chronograf/v1/sources/1/write",
|
||||
|
@ -201,6 +202,7 @@ func Test_newSourceResponse(t *testing.T) {
|
|||
Links: sourceLinks{
|
||||
Self: "/chronograf/v1/sources/1",
|
||||
Proxy: "/chronograf/v1/sources/1/proxy",
|
||||
Services: "/chronograf/v1/sources/1/services",
|
||||
Queries: "/chronograf/v1/sources/1/queries",
|
||||
Write: "/chronograf/v1/sources/1/write",
|
||||
Kapacitors: "/chronograf/v1/sources/1/kapacitors",
|
||||
|
@ -440,7 +442,7 @@ func TestService_SourcesID(t *testing.T) {
|
|||
ID: "1",
|
||||
wantStatusCode: 200,
|
||||
wantContentType: "application/json",
|
||||
wantBody: `{"id":"1","name":"","url":"","default":false,"telegraf":"telegraf","organization":"","defaultRP":"","links":{"self":"/chronograf/v1/sources/1","kapacitors":"/chronograf/v1/sources/1/kapacitors","proxy":"/chronograf/v1/sources/1/proxy","queries":"/chronograf/v1/sources/1/queries","write":"/chronograf/v1/sources/1/write","permissions":"/chronograf/v1/sources/1/permissions","users":"/chronograf/v1/sources/1/users","databases":"/chronograf/v1/sources/1/dbs","annotations":"/chronograf/v1/sources/1/annotations","health":"/chronograf/v1/sources/1/health"}}
|
||||
wantBody: `{"id":"1","name":"","url":"","default":false,"telegraf":"telegraf","organization":"","defaultRP":"","links":{"self":"/chronograf/v1/sources/1","kapacitors":"/chronograf/v1/sources/1/kapacitors","services":"/chronograf/v1/sources/1/services","proxy":"/chronograf/v1/sources/1/proxy","queries":"/chronograf/v1/sources/1/queries","write":"/chronograf/v1/sources/1/write","permissions":"/chronograf/v1/sources/1/permissions","users":"/chronograf/v1/sources/1/users","databases":"/chronograf/v1/sources/1/dbs","annotations":"/chronograf/v1/sources/1/annotations","health":"/chronograf/v1/sources/1/health"}}
|
||||
`,
|
||||
},
|
||||
}
|
||||
|
@ -530,7 +532,7 @@ func TestService_UpdateSource(t *testing.T) {
|
|||
wantStatusCode: 200,
|
||||
wantContentType: "application/json",
|
||||
wantBody: func(url string) string {
|
||||
return fmt.Sprintf(`{"id":"1","name":"marty","type":"influx","username":"bob","url":"%s","metaUrl":"http://murl","default":false,"telegraf":"murlin","organization":"1337","defaultRP":"pineapple","links":{"self":"/chronograf/v1/sources/1","kapacitors":"/chronograf/v1/sources/1/kapacitors","proxy":"/chronograf/v1/sources/1/proxy","queries":"/chronograf/v1/sources/1/queries","write":"/chronograf/v1/sources/1/write","permissions":"/chronograf/v1/sources/1/permissions","users":"/chronograf/v1/sources/1/users","databases":"/chronograf/v1/sources/1/dbs","annotations":"/chronograf/v1/sources/1/annotations","health":"/chronograf/v1/sources/1/health"}}
|
||||
return fmt.Sprintf(`{"id":"1","name":"marty","type":"influx","username":"bob","url":"%s","metaUrl":"http://murl","default":false,"telegraf":"murlin","organization":"1337","defaultRP":"pineapple","links":{"self":"/chronograf/v1/sources/1","kapacitors":"/chronograf/v1/sources/1/kapacitors","services":"/chronograf/v1/sources/1/services","proxy":"/chronograf/v1/sources/1/proxy","queries":"/chronograf/v1/sources/1/queries","write":"/chronograf/v1/sources/1/write","permissions":"/chronograf/v1/sources/1/permissions","users":"/chronograf/v1/sources/1/users","databases":"/chronograf/v1/sources/1/dbs","annotations":"/chronograf/v1/sources/1/annotations","health":"/chronograf/v1/sources/1/health"}}
|
||||
`, url)
|
||||
},
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue