mirror of https://github.com/portainer/portainer
chore(edgejobs): clean up EE-4850 (#8259)
parent
2fc518f221
commit
3d28a6f877
|
@ -188,7 +188,7 @@ func (handler *Handler) createEdgeJobFromFile(w http.ResponseWriter, r *http.Req
|
||||||
func (handler *Handler) createEdgeJobObjectFromFilePayload(payload *edgeJobCreateFromFilePayload) *portainer.EdgeJob {
|
func (handler *Handler) createEdgeJobObjectFromFilePayload(payload *edgeJobCreateFromFilePayload) *portainer.EdgeJob {
|
||||||
edgeJobIdentifier := portainer.EdgeJobID(handler.DataStore.EdgeJob().GetNextIdentifier())
|
edgeJobIdentifier := portainer.EdgeJobID(handler.DataStore.EdgeJob().GetNextIdentifier())
|
||||||
|
|
||||||
endpoints := handler.convertEndpointsToMetaObject(payload.Endpoints)
|
endpoints := convertEndpointsToMetaObject(payload.Endpoints)
|
||||||
|
|
||||||
edgeJob := &portainer.EdgeJob{
|
edgeJob := &portainer.EdgeJob{
|
||||||
ID: edgeJobIdentifier,
|
ID: edgeJobIdentifier,
|
||||||
|
@ -208,7 +208,7 @@ func (handler *Handler) createEdgeJobObjectFromFilePayload(payload *edgeJobCreat
|
||||||
func (handler *Handler) createEdgeJobObjectFromFileContentPayload(payload *edgeJobCreateFromFileContentPayload) *portainer.EdgeJob {
|
func (handler *Handler) createEdgeJobObjectFromFileContentPayload(payload *edgeJobCreateFromFileContentPayload) *portainer.EdgeJob {
|
||||||
edgeJobIdentifier := portainer.EdgeJobID(handler.DataStore.EdgeJob().GetNextIdentifier())
|
edgeJobIdentifier := portainer.EdgeJobID(handler.DataStore.EdgeJob().GetNextIdentifier())
|
||||||
|
|
||||||
endpoints := handler.convertEndpointsToMetaObject(payload.Endpoints)
|
endpoints := convertEndpointsToMetaObject(payload.Endpoints)
|
||||||
|
|
||||||
edgeJob := &portainer.EdgeJob{
|
edgeJob := &portainer.EdgeJob{
|
||||||
ID: edgeJobIdentifier,
|
ID: edgeJobIdentifier,
|
||||||
|
@ -251,7 +251,7 @@ func (handler *Handler) addAndPersistEdgeJob(edgeJob *portainer.EdgeJob, file []
|
||||||
|
|
||||||
var endpointsMap map[portainer.EndpointID]portainer.EdgeJobEndpointMeta
|
var endpointsMap map[portainer.EndpointID]portainer.EdgeJobEndpointMeta
|
||||||
if len(endpointsFromGroups) > 0 {
|
if len(endpointsFromGroups) > 0 {
|
||||||
endpointsMap = handler.convertEndpointsToMetaObject(endpointsFromGroups)
|
endpointsMap = convertEndpointsToMetaObject(endpointsFromGroups)
|
||||||
|
|
||||||
for ID := range endpointsMap {
|
for ID := range endpointsMap {
|
||||||
endpoint, err := handler.DataStore.Endpoint().Endpoint(ID)
|
endpoint, err := handler.DataStore.Endpoint().Endpoint(ID)
|
||||||
|
|
|
@ -52,7 +52,7 @@ func (handler *Handler) edgeJobDelete(w http.ResponseWriter, r *http.Request) *h
|
||||||
return httperror.InternalServerError("Unable to get Endpoints from EdgeGroups", err)
|
return httperror.InternalServerError("Unable to get Endpoints from EdgeGroups", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
endpointsMap = handler.convertEndpointsToMetaObject(endpoints)
|
endpointsMap = convertEndpointsToMetaObject(endpoints)
|
||||||
maps.Copy(endpointsMap, edgeJob.Endpoints)
|
maps.Copy(endpointsMap, edgeJob.Endpoints)
|
||||||
} else {
|
} else {
|
||||||
endpointsMap = edgeJob.Endpoints
|
endpointsMap = edgeJob.Endpoints
|
||||||
|
|
|
@ -40,15 +40,12 @@ func (handler *Handler) edgeJobInspect(w http.ResponseWriter, r *http.Request) *
|
||||||
return httperror.InternalServerError("Unable to find an Edge job with the specified identifier inside the database", err)
|
return httperror.InternalServerError("Unable to find an Edge job with the specified identifier inside the database", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
endpointIDs := []portainer.EndpointID{}
|
|
||||||
|
|
||||||
for endpointID := range edgeJob.Endpoints {
|
|
||||||
endpointIDs = append(endpointIDs, endpointID)
|
|
||||||
}
|
|
||||||
|
|
||||||
responseObj := edgeJobInspectResponse{
|
responseObj := edgeJobInspectResponse{
|
||||||
EdgeJob: edgeJob,
|
EdgeJob: edgeJob,
|
||||||
Endpoints: endpointIDs,
|
}
|
||||||
|
|
||||||
|
for endpointID := range edgeJob.Endpoints {
|
||||||
|
responseObj.Endpoints = append(responseObj.Endpoints, endpointID)
|
||||||
}
|
}
|
||||||
|
|
||||||
return response.JSON(w, responseObj)
|
return response.JSON(w, responseObj)
|
||||||
|
|
|
@ -45,5 +45,3 @@ func (handler *Handler) edgeJobTaskLogsInspect(w http.ResponseWriter, r *http.Re
|
||||||
|
|
||||||
return response.JSON(w, &fileResponse{FileContent: string(logFileContent)})
|
return response.JSON(w, &fileResponse{FileContent: string(logFileContent)})
|
||||||
}
|
}
|
||||||
|
|
||||||
// fmt.Sprintf("/tmp/edge_jobs/%s/logs_%s", edgeJobID, taskID)
|
|
||||||
|
|
|
@ -53,20 +53,18 @@ func (handler *Handler) edgeJobTasksList(w http.ResponseWriter, r *http.Request)
|
||||||
return httperror.InternalServerError("Unable to get Endpoints from EdgeGroups", err)
|
return httperror.InternalServerError("Unable to get Endpoints from EdgeGroups", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
endpointsMap = handler.convertEndpointsToMetaObject(endpoints)
|
endpointsMap = convertEndpointsToMetaObject(endpoints)
|
||||||
maps.Copy(endpointsMap, edgeJob.GroupLogsCollection)
|
maps.Copy(endpointsMap, edgeJob.GroupLogsCollection)
|
||||||
}
|
}
|
||||||
|
|
||||||
maps.Copy(endpointsMap, edgeJob.Endpoints)
|
maps.Copy(endpointsMap, edgeJob.Endpoints)
|
||||||
|
|
||||||
for endpointID, meta := range endpointsMap {
|
for endpointID, meta := range endpointsMap {
|
||||||
cronTask := taskContainer{
|
tasks = append(tasks, taskContainer{
|
||||||
ID: fmt.Sprintf("edgejob_task_%d_%d", edgeJob.ID, endpointID),
|
ID: fmt.Sprintf("edgejob_task_%d_%d", edgeJob.ID, endpointID),
|
||||||
EndpointID: endpointID,
|
EndpointID: endpointID,
|
||||||
LogsStatus: meta.LogsStatus,
|
LogsStatus: meta.LogsStatus,
|
||||||
}
|
})
|
||||||
|
|
||||||
tasks = append(tasks, cronTask)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return response.JSON(w, tasks)
|
return response.JSON(w, tasks)
|
||||||
|
|
|
@ -152,7 +152,7 @@ func (handler *Handler) updateEdgeSchedule(edgeJob *portainer.EdgeJob, payload *
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return errors.New("unable to get endpoints from edge groups")
|
return errors.New("unable to get endpoints from edge groups")
|
||||||
}
|
}
|
||||||
endpointsFromGroupsToAddMap = handler.convertEndpointsToMetaObject(endpointsFromGroupsToAdd)
|
endpointsFromGroupsToAddMap = convertEndpointsToMetaObject(endpointsFromGroupsToAdd)
|
||||||
|
|
||||||
for endpointID := range endpointsFromGroupsToAddMap {
|
for endpointID := range endpointsFromGroupsToAddMap {
|
||||||
endpointsToAdd[endpointID] = true
|
endpointsToAdd[endpointID] = true
|
||||||
|
@ -170,7 +170,7 @@ func (handler *Handler) updateEdgeSchedule(edgeJob *portainer.EdgeJob, payload *
|
||||||
return errors.New("unable to get endpoints from edge groups")
|
return errors.New("unable to get endpoints from edge groups")
|
||||||
}
|
}
|
||||||
|
|
||||||
endpointsToRemoveMap := handler.convertEndpointsToMetaObject(endpointsFromGroupsToRemove)
|
endpointsToRemoveMap := convertEndpointsToMetaObject(endpointsFromGroupsToRemove)
|
||||||
|
|
||||||
for endpointID := range endpointsToRemoveMap {
|
for endpointID := range endpointsToRemoveMap {
|
||||||
endpointsToRemove[endpointID] = true
|
endpointsToRemove[endpointID] = true
|
||||||
|
|
|
@ -47,7 +47,7 @@ func NewHandler(bouncer *security.RequestBouncer) *Handler {
|
||||||
return h
|
return h
|
||||||
}
|
}
|
||||||
|
|
||||||
func (handler *Handler) convertEndpointsToMetaObject(endpoints []portainer.EndpointID) map[portainer.EndpointID]portainer.EdgeJobEndpointMeta {
|
func convertEndpointsToMetaObject(endpoints []portainer.EndpointID) map[portainer.EndpointID]portainer.EdgeJobEndpointMeta {
|
||||||
endpointsMap := map[portainer.EndpointID]portainer.EdgeJobEndpointMeta{}
|
endpointsMap := map[portainer.EndpointID]portainer.EdgeJobEndpointMeta{}
|
||||||
|
|
||||||
for _, endpointID := range endpoints {
|
for _, endpointID := range endpoints {
|
||||||
|
|
Loading…
Reference in New Issue