We have added two options to devpi-server which might help to reduce the downtime during a devpi-server update.
The first one
--hard-links is for exports. It creates hard-links to
releases and doc zips instead of copying the data. The usual OS specific
things apply. For most OS's the current server status and the export
destination needs to be in the same filesystem. The operation itself is
safe as long as no files in the export are modified, since they point to
the actual files of devpi-server. The export is a lot faster and
obviously needs way less space with that option instead of a regular
export. If the hard linking doesn't work, there will be an error very
early in the export process.
The second option
--no-events is relevant for imports. When used, no
plugin hooks in devpi-web etc are called during import. Instead all the
events will be triggered once the server starts again. This massively
reduces the time needed for import. The downside is, that rendering of
descriptions, unpacking of documentation and the indexing of everything
happens step by step while the server is already running. Until all
events have been processed, the server is usable, but the mentioned
items are only available up to the currently processed event. So for a
while the search won't return everything and the docs won't all be
The import still needs the full space as before. It's not possible to use hard links for the import.
Regards, Florian Schulze