New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to graceful shutdown one/all workers? #3429

Closed
PunChaFeng opened this Issue Jul 10, 2017 · 2 comments

Comments

Projects
None yet
4 participants
@PunChaFeng
Contributor

PunChaFeng commented Jul 10, 2017

In previous version, like 0.8.7, there is way to graceful shutdown one workers through web UI, but in v0.9.8, I didn't find the button. Is it not implemented or removed?

The core functionality is here but not yet mapped to data API / UI.
A similar functionality is the stop build/cancel buildrequest #1656

  • It is about adding 2 actions to the worker endpoint.
  • In order to make multi-master work, those actions should send a message to the mq
  • Then a button should be added to the UI

Work is ongoing. Remaining tasks:

  • DB model and API for status of worker (add paused status, shutdown status, connected status, while we are at it to avoid check for the master worker table)
  • Data API for status of worker (map status db api, send mq updates about them)
  • UI for reflecting worker status

(edited by @tardyp)

@Frodox

This comment has been minimized.

Show comment
Hide comment
@Frodox

Frodox Jul 10, 2017

Member

I vote +1 for idea of graceful shutdown workers from cli (needed for some massive update/upgrade/host reboot/shutdown).

Currently I see only one way to gracefully stop worker - configure it to wait for special file update or sighup.

Looks like buildbot-worker stop just kills it.

And yes, there is note in docs

A worker may also be gracefully shutdown from the web UI. This is useful to shutdown a worker without interrupting any current builds. The buildmaster will wait until the worker is finished all its current builds, and will then tell the worker to shutdown.

and looks like it is really outdated/not implemented for 0.9

Member

Frodox commented Jul 10, 2017

I vote +1 for idea of graceful shutdown workers from cli (needed for some massive update/upgrade/host reboot/shutdown).

Currently I see only one way to gracefully stop worker - configure it to wait for special file update or sighup.

Looks like buildbot-worker stop just kills it.

And yes, there is note in docs

A worker may also be gracefully shutdown from the web UI. This is useful to shutdown a worker without interrupting any current builds. The buildmaster will wait until the worker is finished all its current builds, and will then tell the worker to shutdown.

and looks like it is really outdated/not implemented for 0.9

@aj062

This comment has been minimized.

Show comment
Hide comment
@aj062

aj062 Jul 10, 2017

I also vote +1 for graceful shutdown feature. It was a useful feature in 0.8. I do not see this feature in 0.9.

Same for "Pause Slave" feature.

aj062 commented Jul 10, 2017

I also vote +1 for graceful shutdown feature. It was a useful feature in 0.8. I do not see this feature in 0.9.

Same for "Pause Slave" feature.

@tardyp tardyp added this to the 1.0.0 milestone Jul 10, 2017

@tardyp tardyp referenced this issue Nov 8, 2017

Merged

WIP: Worker control #3745

1 of 7 tasks complete

@tardyp tardyp closed this in #3856 Jan 2, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment