mirror of https://github.com/portainer/portainer
fix(docker): log cleanup errors during endpointforceupdate [EE-7055] (#11762)
parent
6b5a402962
commit
e73b1aa49c
|
@ -11,6 +11,7 @@ import (
|
||||||
httperror "github.com/portainer/portainer/pkg/libhttp/error"
|
httperror "github.com/portainer/portainer/pkg/libhttp/error"
|
||||||
"github.com/portainer/portainer/pkg/libhttp/request"
|
"github.com/portainer/portainer/pkg/libhttp/request"
|
||||||
"github.com/portainer/portainer/pkg/libhttp/response"
|
"github.com/portainer/portainer/pkg/libhttp/response"
|
||||||
|
"github.com/rs/zerolog/log"
|
||||||
|
|
||||||
dockertypes "github.com/docker/docker/api/types"
|
dockertypes "github.com/docker/docker/api/types"
|
||||||
"github.com/docker/docker/api/types/container"
|
"github.com/docker/docker/api/types/container"
|
||||||
|
@ -94,10 +95,14 @@ func (handler *Handler) endpointForceUpdateService(w http.ResponseWriter, r *htt
|
||||||
go func() {
|
go func() {
|
||||||
images.EvictImageStatus(payload.ServiceID)
|
images.EvictImageStatus(payload.ServiceID)
|
||||||
images.EvictImageStatus(service.Spec.Labels[consts.SwarmStackNameLabel])
|
images.EvictImageStatus(service.Spec.Labels[consts.SwarmStackNameLabel])
|
||||||
containers, _ := dockerClient.ContainerList(context.TODO(), container.ListOptions{
|
// ignore errors from this cleanup function, log them instead
|
||||||
|
containers, err := dockerClient.ContainerList(context.TODO(), container.ListOptions{
|
||||||
All: true,
|
All: true,
|
||||||
Filters: filters.NewArgs(filters.Arg("label", consts.SwarmServiceIdLabel+"="+payload.ServiceID)),
|
Filters: filters.NewArgs(filters.Arg("label", consts.SwarmServiceIdLabel+"="+payload.ServiceID)),
|
||||||
})
|
})
|
||||||
|
if err != nil {
|
||||||
|
log.Warn().Err(err).Str("Environment", endpoint.Name).Msg("Error listing containers")
|
||||||
|
}
|
||||||
|
|
||||||
for _, container := range containers {
|
for _, container := range containers {
|
||||||
images.EvictImageStatus(container.ID)
|
images.EvictImageStatus(container.ID)
|
||||||
|
|
|
@ -77,7 +77,6 @@ func (handler *Handler) createSwarmStackFromFileContent(w http.ResponseWriter, r
|
||||||
payload.Name = handler.SwarmStackManager.NormalizeStackName(payload.Name)
|
payload.Name = handler.SwarmStackManager.NormalizeStackName(payload.Name)
|
||||||
|
|
||||||
isUnique, err := handler.checkUniqueStackNameInDocker(endpoint, payload.Name, 0, true)
|
isUnique, err := handler.checkUniqueStackNameInDocker(endpoint, payload.Name, 0, true)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return httperror.InternalServerError("Unable to check for name collision", err)
|
return httperror.InternalServerError("Unable to check for name collision", err)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue