software/ors-amarisoft: Do not recreate slaptapX-* on every idempotent `slapos node instance` run
EDIT See !1508 (comment 199617) for updated description.
original description:
To run tapsplit we use plone.recipe.command with both command and
update-command set to tapsplit ...
. But tapsplit, when run, fully
recreates and reinitializes subtap interfaces, which leads to
interfering with running enb because subtap interfaces, that enb
started to use, are removed. This is not desirable behaviour.
What we need:
- create subtap interfaces only once and keep them stable
- until configuration changes which should lead to
- subtaps recreated, and
- enb restarted
Carefully reading plone.recipe.command documentation shows:
command
Command to run when the buildout part is installed.
update-command
Command to run when the buildout part is updated. This happens when
buildout is run BUT THE CONFIGURATION FOR THIS BUILDOUT PART HAS NOT
CHANGED.
(emphasis mine)
So the fix looks to be to make update-command noop - this fulfills requirement "1". For "2" - I've verified that when configuration changes, e.g. number of RU changes, buildout reinstalls [vtap] section from scratch, and it also should restart enb, because generated enb.cfg changes.
So the fix is fully correct because it satifies all needed requirements.
Amends 49ce8ef5 (software/ors-amarisoft: Provide dedicated TAP interface for each Radio Unit)
/cc @jhuge, @lu.xu, @tomo, @xavier_thompson, @Daetalus