Sunday, September 8, 2019¶
How to install getlino on the new server for The Lino framework? We definitively don’t want to install a new environment for every site, so it is not a real production server. It is a demo server.
A demo server has a list of “demo projects” that it serves in a set of “versions”. For example:
projects = 'a', 'b', 'c'
versions = 'master', 'stable'
There will be six sites on that server:
a.master.example.com
a.stable.example.com
b.master.example.com
...
I guess that this will need yet another little change in getlino: At the moment
we have a single --local-prefix
and a single --shared-env
.
But we need a mapping:
subdomain
local_prefix
shared virtual_env
master
master_sites
/usr/local/lino/envs/master
stable
stable_sites
/usr/local/lino/envs/stable
Does it make sense to use a demo server also for serving documentation? Each “version” or “subdomain” on the server might also feature a build of a set of doctrees. But let’s rather try to delegate documentation to readthedocs.org, after all it is their speciality.
In a first step a mapping to local_prefix is not needed to differentiate between master and stable. We can use different site names for each combination of (app, branch, front_end). I wrote installation instructions (Set up a public demo server).
Code changes:
New option –shared-env for startsite. When used with startsite, it overrides the value specified during configure.
Renamed the –contrib option to –clone because it is also used when
configuring a demo server. It means “clone all known repositories to the
–repos-base and install them to the shared env using pip -e
.”
The configure command now supports –clone without specifying a –repos-base. In that case it uses the repositories subdir of the shared-env.