actions / runner-images

GitHub Actions runner images
MIT License
10.24k stars 3.08k forks source link

Disable man-db dpkg trigger #10977

Open lengau opened 1 week ago

lengau commented 1 week ago

Description

This isn't necessarily a bug - more a performance enhancement request, but there's no category for that.

When running apt install commands on Ubuntu hosted runners, the runners spend about 45 seconds just processing man-db triggers:

image

However, in very few cases are these runners ever going to actually use these man-db changes, so this is close to a minute of wasted time for each run.

Adding the following commands to the setup of each runner image would disable this trigger:

echo "set man-db/auto-update false" | debconf-communicate
dpkg-reconfigure man-db

Platforms affected

Runner images affected

Image version and build link

Fri, 15 Nov 2024 17:03:46 GMT
Runner Image
Fri, 15 Nov 2024 17:03:46 GMT   Image: ubuntu-24.04
Fri, 15 Nov 2024 17:03:46 GMT   Version: 20241112.1.0
Fri, 15 Nov 2024 17:03:46 GMT   Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20241112.1/images/ubuntu/Ubuntu2404-Readme.md
Fri, 15 Nov 2024 17:03:46 GMT   Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20241112.1

Relevant step: https://github.com/canonical/starflow/actions/runs/11860374887/job/33055486302?pr=23#step:2:88

Is it regression?

no

Expected behavior

man-db triggers don't get run on apt-get install

Actual behavior

man-db triggers do get run

Repro steps

Run the following workflow, note that it takes tends to timeout during the trigger processing.

name: Self-tests for scanners

on:
  push:
    branches:
      - main
  pull_request:

jobs:
  man-db:
    steps:
      - run: |
          sudo apt-get update
          timeout 30s sudo apt-get --yes install python3-build
vidyasagarnimmagaddi commented 1 week ago

Hi @lengau , we're looking into this issue , we will update on it ASAP. thank you !

lengau commented 1 week ago

Huh, so I can't reproduce this in a fresh repository (see: https://github.com/lengau/playground/actions/runs/11861145621/job/33057884286) on any Ubuntu version - it might vary depending on how much disk access is occurring in the background or something too?

subir0071 commented 6 days ago

Preliminary investigation looks okay to waive the auto-update of man-db in the runner setup. Will update once we complete our analysis on the same.