Merge pull request #25030 from stevvooe/allow-cancellation-propagation

swarm/controller: allow cancellation to propagate
This commit is contained in:
Tibor Vass 2016-07-25 19:50:32 -07:00 коммит произвёл GitHub
Родитель afac3361dc d99c6b837f
Коммит a6a261261d
2 изменённых файлов: 10 добавлений и 1 удалений

Просмотреть файл

@ -87,6 +87,11 @@ func (r *controller) Prepare(ctx context.Context) error {
if os.Getenv("DOCKER_SERVICE_PREFER_OFFLINE_IMAGE") != "1" {
if err := r.adapter.pullImage(ctx); err != nil {
cause := errors.Cause(err)
if cause == context.Canceled || cause == context.DeadlineExceeded {
return err
}
// NOTE(stevvooe): We always try to pull the image to make sure we have
// the most up to date version. This will return an error, but we only
// log it. If the image truly doesn't exist, the create below will

Просмотреть файл

@ -40,7 +40,11 @@ type fallbackError struct {
// Error renders the FallbackError as a string.
func (f fallbackError) Error() string {
return f.err.Error()
return f.Cause().Error()
}
func (f fallbackError) Cause() error {
return f.err
}
// shouldV2Fallback returns true if this error is a reason to fall back to v1.