Merge "Clean up dib-python symlink"

This commit is contained in:
Zuul 2018-03-29 05:33:51 +00:00 committed by Gerrit Code Review
commit e444de83e6
2 changed files with 29 additions and 11 deletions

View File

@ -2,23 +2,29 @@
dib-python
==========
Adds a symlink to `/usr/local/bin/dib-python` which points at either a
`python2` or `python3` executable as appropriate.
Adds a symlink to ``/usr/local/bin/dib-python`` which points at either a
``python2`` or ``python3`` executable as appropriate.
In-chroot scripts should use this as their interpreter
(`#!/usr/local/bin/dib-python`) to make scripts that are compatible
with both `python2` and `python3`. We can not assume
`/usr/bin/python` exists, as some platforms have started shipping with
(``#!/usr/local/bin/dib-python``) to make scripts that are compatible
with both ``python2`` and ``python3``. We can not assume
``/usr/bin/python`` exists, as some platforms have started shipping with
only Python 3.
`DIB_PYTHON` will be exported as the python interpreter. You should
use this instead of `python script.py` (e.g. `${DIB_PYTHON}
script.py`). Note you can also call `/usr/local/bin/dib-python
script.py` but in some circumstances, such as creating a `virtualenv`,
it can create somewhat confusing references to `dib-python` that
``DIB_PYTHON`` will be exported as the python interpreter. You should
use this instead of ``python script.py`` (e.g. ``${DIB_PYTHON}
script.py``). Note you can also call ``/usr/local/bin/dib-python
script.py`` but in some circumstances, such as creating a ``virtualenv``,
it can create somewhat confusing references to ``dib-python`` that
remain in the built image.
This does not install a python if one does not exist, and instead fails.
This also exports a variable `DIB_PYTHON_VERSION` which will either be
This also exports a variable ``DIB_PYTHON_VERSION`` which will either be
'2' or '3' depending on the python version which dib-python points to.
.. note::
The ``dib-python`` interpreter will be removed in ``cleanup.d``. It
is only intended for build scripts.

View File

@ -0,0 +1,12 @@
#!/bin/bash
if [ ${DIB_DEBUG_TRACE:-0} -gt 0 ]; then
set -x
fi
set -eu
set -o pipefail
# Remove dib-python wrapper. Nothing else should be running in chroot
# and required this any more.
sudo unlink $TARGET_ROOT/usr/local/bin/dib-python # dib-lint: safe_sudo