fix(endpoints): use default edge checkin interval if n/a (#4909)

pull/4666/head
Chaim Lev-Ari 4 years ago committed by GitHub
parent f4dd3067ed
commit dbb9a21384
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -66,6 +66,11 @@ func (handler *Handler) endpointList(w http.ResponseWriter, r *http.Request) *ht
return &httperror.HandlerError{http.StatusInternalServerError, "Unable to retrieve endpoints from the database", err}
}
settings, err := handler.DataStore.Settings().Settings()
if err != nil {
return &httperror.HandlerError{http.StatusInternalServerError, "Unable to retrieve settings from the database", err}
}
securityContext, err := security.RetrieveRestrictedRequestContext(r)
if err != nil {
return &httperror.HandlerError{http.StatusInternalServerError, "Unable to retrieve info from request context", err}
@ -108,6 +113,9 @@ func (handler *Handler) endpointList(w http.ResponseWriter, r *http.Request) *ht
for idx := range paginatedEndpoints {
hideFields(&paginatedEndpoints[idx])
paginatedEndpoints[idx].ComposeSyntaxMaxVersion = handler.ComposeStackManager.ComposeSyntaxMaxVersion()
if paginatedEndpoints[idx].EdgeCheckinInterval == 0 {
paginatedEndpoints[idx].EdgeCheckinInterval = settings.EdgeAgentCheckinInterval
}
}
w.Header().Set("X-Total-Count", strconv.Itoa(filteredEndpointCount))

@ -13,8 +13,7 @@ angular
EndpointProvider,
StateManager,
ModalService,
MotdService,
SettingsService
MotdService
) {
$scope.state = {
connectingToEdgeEndpoint: false,
@ -83,7 +82,7 @@ angular
var groups = data.groups;
EndpointHelper.mapGroupNameToEndpoint(endpoints, groups);
EndpointProvider.setEndpoints(endpoints);
deferred.resolve({ endpoints: decorateEndpoints(endpoints), totalCount: data.endpoints.totalCount });
deferred.resolve({ endpoints: endpoints, totalCount: data.endpoints.totalCount });
})
.catch(function error(err) {
Notifications.error('Failure', err, 'Unable to retrieve endpoint information');
@ -99,15 +98,14 @@ angular
});
try {
const [{ totalCount, endpoints }, tags, settings] = await Promise.all([getPaginatedEndpoints(0, 100), TagService.tags(), SettingsService.settings()]);
const [{ totalCount, endpoints }, tags] = await Promise.all([getPaginatedEndpoints(0, 100), TagService.tags()]);
$scope.tags = tags;
$scope.defaultEdgeCheckInInterval = settings.EdgeAgentCheckinInterval;
$scope.totalCount = totalCount;
if (totalCount > 100) {
$scope.endpoints = [];
} else {
$scope.endpoints = decorateEndpoints(endpoints);
$scope.endpoints = endpoints;
}
} catch (err) {
Notifications.error('Failed loading page data', err);
@ -115,10 +113,4 @@ angular
}
initView();
function decorateEndpoints(endpoints) {
return endpoints.map((endpoint) => {
return { ...endpoint, EdgeCheckinInterval: endpoint.EdgeAgentCheckinInterval || $scope.defaultEdgeCheckInInterval };
});
}
});

Loading…
Cancel
Save