[virt-tools-list] [virt-bootstrap] [PATCH 1/3] utils: Add is_installed function

Cedric Bosdonnat cbosdonnat at suse.com
Tue Nov 21 10:37:37 UTC 2017


On Wed, 2017-11-01 at 00:19 +0000, Radostin Stoyanov wrote:
> Add utility function to check whether an executable is available in
> the PATH env variable.
> ---
>  src/virtBootstrap/utils.py | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/src/virtBootstrap/utils.py b/src/virtBootstrap/utils.py
> index 84d1629..2bd7873 100644
> --- a/src/virtBootstrap/utils.py
> +++ b/src/virtBootstrap/utils.py
> @@ -32,6 +32,7 @@ import subprocess
>  import sys
>  import tempfile
>  import logging
> +from distutils.spawn import find_executable
>  

What annoys me with this approach is that it will add a runtime dependency
on distutils. as virtBootstrap is not meant to run on a non-linux platform
couldn't we just call the 'which' tool to do the job?

--
Cedric

>  import guestfs
>  import passlib.hosts
> @@ -646,3 +647,12 @@ def mapping_uid_gid(dest, uid_map, gid_map):
>      balance_uid_gid_maps(uid_map, gid_map)
>      for uid, gid in zip(uid_map, gid_map):
>          map_id(dest, uid, gid)
> +
> +
> +def is_installed(executable):
> +    """
> +    Try to find executable listed in the PATH env variable.
> +
> +    Returns the complete filename or None if not found.
> +    """
> +    return find_executable(executable)




More information about the virt-tools-list mailing list