Skip to content
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

[Ubuntu 24.04] Remove needrestart package from image #9956

Closed
wants to merge 1 commit into from

Conversation

MichaIng
Copy link

Description

This removes the needrestart package from image, since it triggers a restart of all systemd services, including the runner-provisioner, crashing the workflow, whenever packages from the OpenSSL/LibSSL package source are upgraded.

Solves: #9937

Related issue:

Check list

  • Related issue / work item is attached
  • Tests are written (if applicable)
  • Documentation is updated (if applicable)
  • Changes are tested and related VM images are successfully generated

since it triggers a restart of all systemd services, including the `runner-provisioner`, crashing the workflow, whenever packages from the OpenSSL/LibSSL package source are upgraded.

Solves: actions#9937

Signed-off-by: MichaIng <[email protected]>
MichaIng added a commit to motioneye-project/motioneye that referenced this pull request May 29, 2024
but purge needrestart package which triggers these systemd restarts: actions/runner-images#9956

Signed-off-by: MichaIng <[email protected]>
Silverlan added a commit to Silverlan/pragma that referenced this pull request Jun 2, 2024
@vszakats
Copy link

vszakats commented Jun 2, 2024

This fixes the issue where the runner is shutting down after installing libssl-dev.

MichaIng added a commit to MichaIng/DietPi that referenced this pull request Jun 2, 2024
- CI | Quartz64: Purge needrestart package from Ubuntu Noble GitHub runner, which causes a restart of the runner-provider service, terminating the workflow run: actions/runner-images#9956
@erik-bershel
Copy link
Contributor

Hey @MichaIng!

needrestart package is an essential component and should not be removed. The problem will resolve itself by updating the image.

@MichaIng
Copy link
Author

MichaIng commented Jun 3, 2024

It is not "essential", but "optional":

root@micha:~# apt show needrestart
Package: needrestart
Version: 3.6-8
Priority: optional

Stock Debian does not ship with needrestart, and generally, there is no problem for services to keep running (in memory), even when the underlying binary or shared library has changed (on disk). Else one can trigger a restart manually.

needrestart is mostly an informational package, to tell end users when it time to restart their system because of a kernel upgrade etc. Of course you do not need such info within and do not want to have the runner rebooting when this is done.

The problem will resolve itself by updating the image.

Yes, and it will re-appear as fast as any next OpenSSL upgrade is pushed to APT servers. So every once in a while all GitHub Actions workflows will fail until you push a new runner image. This isn't an acceptable situation.

@vszakats
Copy link

vszakats commented Jun 3, 2024

@erik-bershel I'm confused, you say this will resolve itself when the libssl-dev 1 update gets merged
into the image. So far so good, but this problem will reappear when they inevitably go out of sync on the
next libssl-dev update, breaking the image again for a few weeks?

What is the point of auto-rebooting a transient runner machine? Esp. when rebooting in this case means:
shutting down with a failure.

Footnotes

  1. or any other package that would trigger a machine reboot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants