def configure_data_engine_service_pip()

in infrastructure-provisioning/src/general/lib/os/fab.py [0:0]


def configure_data_engine_service_pip(hostname, os_user, keyfile, emr=False):
    try:
        init_datalab_connection(hostname, os_user, keyfile)
        # datalab.common_lib.manage_pkg('-y install', 'remote', 'python3-pip')
        if not exists(conn, '/usr/bin/pip3') and conn.sudo("python3.9 -V 2>/dev/null | awk '{print $2}'").stdout:
            conn.sudo('ln -s /usr/bin/pip-3.9 /usr/bin/pip3')
        elif not exists(conn, '/usr/bin/pip3') and conn.sudo("python3.8 -V 2>/dev/null | awk '{print $2}'").stdout:
            conn.sudo('ln -s /usr/bin/pip-3.8 /usr/bin/pip3')
        elif not exists(conn, '/usr/bin/pip3') and conn.sudo("python3.7 -V 2>/dev/null | awk '{print $2}'").stdout:
            conn.sudo('ln -s /usr/bin/pip-3.7 /usr/bin/pip3')
        elif not exists(conn, '/usr/bin/pip3') and conn.sudo("python3.6 -V 2>/dev/null | awk '{print $2}'").stdout:
            conn.sudo('ln -s /usr/bin/pip-3.6 /usr/bin/pip3')
        elif not exists(conn, '/usr/bin/pip3') and conn.sudo("python3.5 -V 2>/dev/null | awk '{print $2}'").stdout:
            conn.sudo('ln -s /usr/bin/pip-3.5 /usr/bin/pip3')
        if emr:
            conn.sudo('pip3 install -U pip=={}'.format(os.environ['conf_pip_version']))
            conn.sudo('ln -s /usr/local/bin/pip3.7 /bin/pip3.7')
        conn.sudo('''bash -c -l 'echo "export PATH=$PATH:/usr/local/bin" >> /etc/profile' ''')
        conn.sudo('bash -c -l "source /etc/profile"')
        conn.run('bash -c -l "source /etc/profile"')
        conn.close()
    except Exception as err:
        logging.error('Function configure_data_engine_service_pip error:', str(err))
        traceback.print_exc()
        sys.exit(1)