def computer_list(all_entries, raw): """List all available computers.""" from aiida.orm import Computer, User if not raw: echo.echo_info('List of configured computers') echo.echo_info( "Use 'verdi computer show COMPUTERLABEL' to display more detailed information" ) computers = Computer.objects.all() user = User.objects.get_default() if not computers: echo.echo_info( "No computers configured yet. Use 'verdi computer setup'") sort = lambda computer: computer.label highlight = lambda comp: comp.is_user_configured( user) and comp.is_user_enabled(user) hide = lambda comp: not (comp.is_user_configured(user) and comp. is_user_enabled(user)) and not all_entries echo.echo_formatted_list(computers, ['label'], sort=sort, highlight=highlight, hide=hide)
def profile_list(): """Display a list of all available profiles.""" try: config = get_config() except (exceptions.MissingConfigurationError, exceptions.ConfigurationError) as exception: # This can happen for a fresh install and the `verdi setup` has not yet been run. In this case it is still nice # to be able to see the configuration directory, for instance for those who have set `AIIDA_PATH`. This way # they can at least verify that it is correctly set. from aiida.manage.configuration.settings import AIIDA_CONFIG_FOLDER echo.echo_info('configuration folder: {}'.format(AIIDA_CONFIG_FOLDER)) echo.echo_critical(str(exception)) else: echo.echo_info('configuration folder: {}'.format(config.dirpath)) if not config.profiles: echo.echo_warning( 'no profiles configured: run `verdi setup` to create one') else: sort = lambda profile: profile.name highlight = lambda profile: profile.name == config.default_profile_name echo.echo_formatted_list(config.profiles, ['name'], sort=sort, highlight=highlight)
def user_list(): """Show a list of all users.""" from aiida.orm import User default_user = User.objects.get_default() if default_user is None: echo.echo_warning('no default user has been configured') attributes = ['email', 'first_name', 'last_name'] sort = lambda user: user.email highlight = lambda x: x.email == default_user.email if default_user else None echo.echo_formatted_list(User.objects.all(), attributes, sort=sort, highlight=highlight)