Support python provided by a part that does not need install
With shared builds, it's now possible that the [python2.7] part that is providing executable for this buildout does not need to install any part and makes the interpreter available since recipe initialisation.
This is causing an error during the overriden method computing part signature, because parts are not installed yet:
An internal error occurred due to a bug in either zc.buildout or in a
recipe being used:
Traceback (most recent call last):
File "zc/buildout/buildout.py", line 2242, in main
getattr(buildout, command)(args)
File "zc/buildout/buildout.py", line 638, in install
self._install_parts(install_args)
File "zc/buildout/buildout.py", line 704, in _install_parts
self._compute_part_signatures(install_parts)
File "slapos/rebootstrap/__init__.py", line 37, in wrapper
return getattr(self, attr)(*args, **kw)
File "slapos/rebootstrap/__init__.py", line 95, in _compute_part_signatures
installed_part_options[part]['__buildout_signature__']
KeyError: 'already_installed_python'
To support that case, tolerate that parts are can be not installed yet at this point.