Bug 173871 - [GTK] install-dependencies should (possibly) be run regularly and automatically install missing packages
Summary: [GTK] install-dependencies should (possibly) be run regularly and automatical...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Linux
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-06-27 04:07 PDT by Joanmarie Diggs
Modified: 2017-06-27 09:06 PDT (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joanmarie Diggs 2017-06-27 04:07:21 PDT
A side effect of landing https://trac.webkit.org/changeset/218809 is that a bunch of bots turned red due to libxkbcommon-x11-dev (required by the new jhbuild version of at-spi2-core) not being installed. This new dependency was added to install-dependencies as part of the aforementioned commit, but that did not trigger the bots to install it. As a result, it was necessary to notify the admins of the bots that they need to manually install the packages. Had they not done so, the commit would need to be rolled out until those installations could take place.

Based on this experience, I think it would make sense for install-dependencies to be run regularly and automatically install missing packages. This would require modifying install-dependencies so that it had the smarts to not update all packages listed, possibly causing unexpected regressions in the tests.
Comment 1 Gustavo Noronha (kov) 2017-06-27 04:14:31 PDT
I like the idea. The only thing we need to do to make it reality is adding sudo powers to the buildbot user for running that script, I guess. And make sure our bots are sufficiently isolated from other infrastructure as it will be running a shell script that can be maliciously or not updated to cause harm as root.
Comment 2 Michael Catanzaro 2017-06-27 06:47:17 PDT
Adrian pointed out the side-effect, which is that this would cause random packages to get updated from Debian. That's problematic because it could cause test failures that would blame to particular WebKit revisions that did not introduce those test failures, but were just the first revision to run after the updates were automatically applied.

That can already happen currently, but only when bots are manually updated.

This problem is so rare that I kinda think it would be safer to just deal with it manually when it occurs.
Comment 3 Adrian Perez 2017-06-27 09:06:06 PDT
Here goes my two cents...

(In reply to Michael Catanzaro from comment #2)
> Adrian pointed out the side-effect, which is that this would cause random
> packages to get updated from Debian. That's problematic because it could
> cause test failures that would blame to particular WebKit revisions that did
> not introduce those test failures, but were just the first revision to run
> after the updates were automatically applied.

The approach suggested in the bug title is ”[...] automatically install
**missing** packages” (emphasis mine). That means that packages would not
be upgraded/updated, and the issue you mention would be a non-issue.

TL;DR: Only missing packages would be installed when running the script
automatically in the bots.

> That can already happen currently, but only when bots are manually updated.

We would still manually update the bots for package updates/upgrades.