Hacker News new | ask | show | jobs
by zemo 2025 days ago
each version of the project gets a directory and contains everything the project needs. put all of those into a parent directory. use a symlink to point to the currently active version. E.g.:

    /usr/local/thing/versions/thing-v1.3.7
    /usr/local/thing/versions/thing-v1.4.2
    /usr/local/thing/current -> /usr/local/thing/versions/thing-v1.3.7
2 comments

I mean, sure, I've done this too with a handful of scripts. But is this something you do via .debs? I'm asking specifically about how to handle this with plain Debian/Ubuntu packaging.
I do it similarly. I run multiple versions of a service at once with systemd service files. It gives me the same stuff as containers - cgroups, isolation, logging, service definitions and automation with ansible, but its easier on my feeble psyche.