Discontinue OS packages of client tools in favor of pypi/rubygems only
End users generally install from PyPi or Rubygems instead of using OS packages for client tools. This is because the OS packages have more friction: they require setting up the Arvados package repository and being root in order to install.
Meanwhile, building client packages for older OS versions with older Python/Ruby interpreters is a hassle. For example, a Python dependency drops support for an out-of-support Python (e.g. 3.6) then we have to pin an older version, fork the package, or resolve it some other way.
This is less of a problem for services -- we don't have any services that use Python, and our installer installs a specific Ruby version using rvm.
Specifically, this includes
- python3-arvados-user-activity (I don't think this one is on PyPi yet)
- python3-cwltest (IDK why we are packaging this in the first place)
- Announce that the client OS packages will no longer be published
- Remove them from the build scripts
- Update the documentation to only provide instructions to install from PyPi
Updated by Brett Smith 4 months ago
What is the plan for installing shell nodes after this ticket is done? If these tools get installed via pip/gem there now too, how do the tools get into users'
What about arvados-docker-cleaner? That's a Python service, installed on compute nodes.