def _verify_pip_is_installed(): """Verify that pip is installed. Raises: ImportError. Error importing pip. """ try: python_utils.PRINT('Checking if pip is installed on the local machine') # Importing pip just to check if its installed. import pip #pylint: disable=unused-variable except ImportError as e: common.print_each_string_after_two_new_lines([ 'Pip is required to install Oppia dependencies, but pip wasn\'t ' 'found on your local machine.', 'Please see \'Installing Oppia\' on the Oppia developers\' wiki ' 'page:']) if common.is_mac_os(): python_utils.PRINT( 'https://github.com/oppia/oppia/wiki/Installing-Oppia-%28Mac-' 'OS%29') elif common.is_linux_os(): python_utils.PRINT( 'https://github.com/oppia/oppia/wiki/Installing-Oppia-%28Linux' '%29') else: python_utils.PRINT( 'https://github.com/oppia/oppia/wiki/Installing-Oppia-%28' 'Windows%29') raise ImportError('Error importing pip: %s' % e)
def create_managed_web_browser(port): """Returns a context manager for a web browser targeting the given port on localhost. If a web browser cannot be opened on the current system by Oppia, then returns None instead. Args: port: int. The port number to open in the web browser. Returns: context manager|None. The context manager to a web browser window, or None if the current operating system does not support web browsers. """ url = 'http://localhost:%s/' % port human_readable_name = 'Web Browser' if common.is_linux_os(): if any(re.match('.*VBOX.*', d) for d in os.listdir('/dev/disk/by-id/')): return None else: return managed_process( ['xdg-open', url], human_readable_name=human_readable_name) elif common.is_mac_os(): return managed_process( ['open', url], human_readable_name=human_readable_name) else: return None
def verify_pip_is_installed(): """Verify that pip is installed. Raises: ImportError. Error importing pip. """ python_utils.PRINT('Checking if pip is installed on the local machine') try: import pip except ImportError as e: common.print_each_string_after_two_new_lines([ 'Pip is required to install Oppia dependencies, but pip wasn\'t ' 'found on your local machine.', 'Please see \'Installing Oppia\' on the Oppia developers\' wiki ' 'page:' ]) if common.is_mac_os(): python_utils.PRINT( 'https://github.com/oppia/oppia/wiki/Installing-Oppia-%28Mac-' 'OS%29') elif common.is_linux_os(): python_utils.PRINT( 'https://github.com/oppia/oppia/wiki/Installing-Oppia-%28Linux' '%29') else: python_utils.PRINT( 'https://github.com/oppia/oppia/wiki/Installing-Oppia-%28' 'Windows%29') raise ImportError('Error importing pip: %s' % e) else: if pip.__version__ != OPPIA_REQUIRED_PIP_VERSION: common.print_each_string_after_two_new_lines([ 'Oppia requires pip==%s, but you have pip==%s installed.' % (OPPIA_REQUIRED_PIP_VERSION, pip.__version__), 'Upgrading pip on your behalf...', ]) _run_pip_command( ['install', 'pip==%s' % OPPIA_REQUIRED_PIP_VERSION])