Page MenuHomePhabricator

build python-phabricator package for bullseye (and bookworm?)
Closed, InvalidPublic

Description

The Debian package "python-phabricator" is required by Phabricator/Phorge but does not exist for distros newer than bullseye.

This blocks upgrading Phorge servers.

E: Unable to locate package python-phabricator

[apt1001:~] $ sudo -i reprepro ls python-phabricator
python-phabricator | 0.7.0-2~wmf2 | buster-wikimedia | amd64, i386, source

also see: T138689, T142097, T160408, https://phabricator.wikimedia.org/diffusion/ODCH/

Event Timeline

Before we do this the question is: Do phab/phorge servers actually use it?

Because in older tasks linked above that was already asked..

And when I look through the puppet repo with something like " grep -r python-phabricator *" I see it here, but these are other servers.

modules/openldap/files/offboard-user.py:    from phabricator import Phabricator
modules/icinga/files/raid_handler.py:from phabricator import Phabricator

(bonus question: How does it get on the openldap / icinga servers if those are newer than buster? Does it at all?)

We should look through Phabricator deployment repos to check if any Python script does an "import Phabricator".

https://debmonitor.wikimedia.org/packages/python-phabricator

^ so alert* (icinga) and seaborgium (openldap) servers do need it but the answer is those are also still on buster

cc: @Muehlenhoff will be needed for the offboard script at some point when we want to upgrade those machines

(bonus question: How does it get on the openldap / icinga servers if those are newer than buster? Does it at all?)

They're not, they're using python3-phabricator:

$ head -n1 modules/openldap/files/offboard-user.py modules/icinga/files/raid_handler.py
==> modules/openldap/files/offboard-user.py <==
#!/usr/bin/env python3

==> modules/icinga/files/raid_handler.py <==
#!/usr/bin/env python3

Same thing. Same version and both only exist on buster:

[apt1001:~] $ sudo -i reprepro ls python-phabricator
python-phabricator | 0.7.0-2~wmf2 | buster-wikimedia | amd64, i386, source
[apt1001:~] $ sudo -i reprepro ls python3-phabricator
python3-phabricator | 0.7.0-2~wmf2 | buster-wikimedia | amd64, i386
Volans subscribed.

There is no python2 in our setup of bullseye or bookworm. python3-phabricator is on Debian (see https://packages.debian.org/bookworm/python3-phabricator )

Change 974660 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/puppet@production] phabricator: install python3-phabricator if bullseye or newer

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

Change 974660 merged by Dzahn:

[operations/puppet@production] phabricator: install python3-phabricator if bullseye or newer

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

@Volans Thank you. For some reason I never expected this phabricator specific class would be in Debian now. Of course that's the best outcome.