Page MenuHomePhabricator

Tools-exec instances are not running the same software installs
Closed, ResolvedPublic

Description

Author: Beetstra.wiki

Description:
COIBot fails to run on tools-exec-08 because of missing perl-modules (the first it encounters is WWW::Mechanize, but likely the others are missing as well). It has always been running fine on earlier instances, in fact, manually running it on tools-exec-01 does not result in any errors.

Can the tools-exec-## instances please be made all exactly the same so that in case a bot restarts on another instance it does run smoothly?

Thanks.

Dirk Beetstra


Version: unspecified
Severity: blocker

Details

Reference
bz54690

Event Timeline

bzimport raised the priority of this task from to Unbreak Now!.Nov 22 2014, 2:20 AM
bzimport added a project: Toolforge.
bzimport set Reference to bz54690.

Can you tell me what modules exactly you require so I can add them to puppet?

Beetstra.wiki wrote:

I will try to make a list (though, with dependencies .. ).

However, I am not the only one running perl-bots, and I presume there are others. Also, does this have to be repeated when tools-exec-09 is spawned? Is it not easier to have them all the same as the 01 or 02 (COIBot is running on 02 at the moment ..). Also, I presume that for others running bots in other frameworks, similar situations exist.

The problem currently seems to be that some packages were manually apt-get installed on the exec hosts, thus causing problems when new exec nodes are spawned. The 'canonical' way to add packages is to make a patch to the operations/puppet.git repository, listing the name of the package - thus it gets installed on every exec node, present and future.

Solution to this problem is to make sure that all such installs go through puppet, and not through 'ad-hoc' apt-gets.

Until we get a list of missing modules, there is no way to know what to update.

(Hint: dependencies are tracked automatically, we only need the list of directly used modules).

Closing as WFM; feel free to reopen with a list of modules.

Beetstra.wiki wrote:

Finally have some time to work on this - these are the modules my bots use:

BSD::Resource;
Data::Dumper;
Date::Parse qw(str2time);
Date::Parse;
DBI;
DBI;
Encode qw(encode_utf8);
Encode;
HTML::Entities;
HTTP::Status;
List::Util qw(shuffle);
LWP::UserAgent;
POE qw (Component::Client::TCP);
POE qw(Component::IRC Component::IRC::Plugin::BotAddressed Component::Client::TCP);
POE qw(Component::Server::TCP);
POE::Component::IRC::Plugin::BotAddressed;
POE::Component::IRC::Plugin::Connector;
POE::Component::IRC::State;
POE::Component::Server::TCP;
POE;
Socket;
strict;
URI::Escape qw( uri_escape_utf8 );
URI::Escape qw(uri_escape_utf8);
URI::Escape;
utf8;
warnings qw(all);
warnings;
XML::Simple;

All those modules are installed on development and execution hosts. What do you miss?

(In reply to comment #6)

All those modules are installed on development and execution hosts. What do
you miss?

I'm sorry, I should have waited for the query to finish. BSD::Resource isn't installed on tools-exec-07, tools-exec-08 and tools-exec-09.

Beetstra.wiki wrote:

Heh. I only know that the bots tend to crash on some exec-instances, especially the 07, 08, 09 - this bug report / list is mainly to make sure that all are now the same.

Change 104401 had a related patch set uploaded by Tim Landscheidt:
Tools: Install requested packages

https://gerrit.wikimedia.org/r/104401

Change 104401 merged by coren:
Tools: Install requested packages

https://gerrit.wikimedia.org/r/104401

Restricted Application added subscribers: Jay8g, TerraCodes. · View Herald Transcript