Other helper functions and utilities¶
-
exception
conu.utils.
CommandDoesNotExistException
¶ Requested command is not present on the system
-
conu.utils.
are_we_root
()¶ is uid of current process 0?
Returns: True if root, else otherwise
-
conu.utils.
check_buildah_command_works
()¶ Verify that buildah binary works fine by calling buildah version
Returns: bool, True if all is good, otherwise ConuException or CommandDoesNotExistException is thrown
-
conu.utils.
check_docker_command_works
()¶ Verify that dockerd and docker binary works fine. This is performed by calling docker version, which also checks server API version.
Returns: bool, True if all is good, otherwise ConuException or CommandDoesNotExistException is thrown
-
conu.utils.
check_podman_command_works
()¶ Verify that podman binary works fine by calling podman version
Returns: bool, True if all is good, otherwise ConuException or CommandDoesNotExistException is thrown
-
conu.utils.
check_port
(port, host, timeout=10)¶ connect to port on host and return True on success
Parameters: - port – int, port to check
- host – string, host address
- timeout – int, number of seconds spent trying
Returns: bool
-
conu.utils.
command_exists
(command, noop_invocation, exc_msg)¶ Verify that the provided command exists. Raise CommandDoesNotExistException in case of an error or if the command does not exist.
Parameters: - command – str, command to check (python 3 only)
- noop_invocation – list of str, command to check (python 2 only)
- exc_msg – str, message of exception when command does not exist
Returns: bool, True if everything’s all right (otherwise exception is thrown)
-
conu.utils.
convert_kv_to_dict
(data)¶ convert text values in format: key1=value1 key2=value2 to dict {‘key1’:’value1’, ‘key2’:’value2’}
Parameters: data – string containing lines with these values Returns: dict
-
conu.utils.
export_docker_container_to_directory
(client, container, path)¶ take selected docker container, create an archive out of it and unpack it to a selected location
Parameters: - client – instance of docker.APIClient
- container – instance of DockerContainer
- path – str, path to a directory, doesn’t need to exist
Returns: None
-
conu.utils.
get_oc_api_token
()¶ Get token of user logged in OpenShift cluster :return: str, API token
-
conu.utils.
get_selinux_status
()¶ get SELinux status of host
Returns: string, one of Enforced, Permissive, Disabled
-
conu.utils.
graceful_get
(d, *args, default=None)¶ Obtain values from dicts and lists gracefully. Example:
print(graceful_get({"a": [{1: 2}, {"b": "c"}]}, "a", "b")) c
Parameters: - d – collection (usually a dict or list)
- args – list of keys which are used as a lookup
- default – default value to return in case of an axc
Returns: the value from your collection
-
conu.utils.
is_oc_cluster_running
()¶ Check status of OpenShift cluster :return: bool, True if cluster is running otherwise False
-
conu.utils.
is_selinux_disabled
()¶ check if SELinux is disabled
Returns: bool, True if disabled, False otherwise
-
conu.utils.
mkdtemp
()¶ calls tempfile.mkdtemp, the temporary directory is prefixed with ‘conu-’
Returns: str, path to the directory
-
conu.utils.
mkstemp
(dir=None)¶ calls tempfile.mkstemp, the temporary file is prefixed with ‘conu-’
Parameters: dir – str, path to dir where the temporary file should be created Returns: tuple, (fd, filename)
-
conu.utils.
parse_reference
(reference)¶ parse provided image reference into <image_repository>:<tag>
Parameters: reference – str, e.g. (registry.fedoraproject.org/fedora:27) Returns: collection (tuple or list), (“registry.fedoraproject.org/fedora”, “27”)
-
conu.utils.
random_str
(size=10)¶ create random string of selected size
Parameters: size – int, length of the string Returns: the string
-
conu.utils.
random_tmp_filename
()¶ generate string which can be used as a filename for temporary file
-
conu.utils.
run_cmd
(cmd, return_output=False, ignore_status=False, log_output=True, **kwargs)¶ run provided command on host system using the same user as you invoked this code, raises subprocess.CalledProcessError if it fails
Parameters: - cmd – list of str
- return_output – bool, return output of the command
- ignore_status – bool, do not fail in case nonzero return code
- log_output – bool, if True, log output to debug log
- kwargs – pass keyword arguments to subprocess.check_* functions; for more info, please check help(subprocess.Popen)
Returns: None or str