g5k: Don't deploy by default, and require an env_name when deploying
The idea is to make things more explicit and reproducible:
-
by default (no
job_type
), we now use the standard Grid'5000 env with sudo-g5k instead of deploying. This is much faster to provision, and matches the Grid'5000 oarsub default when no job type is specified. -
when using the
deploy
job type, we now also require theenv_name
parameter instead of deploying a default env (currentlydebian11-nfs
). This makes sure that the user explicitly chooses an environment to deploy, which is good for reproducibility: the default env chosen by Enoslib tended to evolve over time as new stable Debian releases become available on Grid'5000.
For users that don't specify any job type, they will now end up with a
debian11-std
environment instead of debian11-nfs
. This is very
similar, except that many more software packages are installed ("std" is
equivalent to "big" in [1]).
For backwards compatibility, we automatically add the 'deploy' job type if
the user specifies an env_name
(to account for the previous default of
deploying). However, user code should be updated.
Also for backwards compatibility, if a Kavlan network is used, we
automatically add the 'deploy' job type and set env_name
to
"debian11-nfs" if missing. But again, user code should be updated to be
more explicit and choose an appropriate environment to deploy.
Note that "allow_classic_ssh" is still supported as job type but has no
effect on Grid'5000 and is deprecated (see #130 (closed)). You can get the same
behaviour by just using job_type=[]
or omitting the job type altogether.
This is because of a recent change in the Grid'5000 platform itself that
made allow_classic_ssh the default behaviour.
[1] https://www.grid5000.fr/w/Getting_Started#On_Grid.275000_reference_environments