def discover_dashboards()

in cid/helpers/quicksight.py [0:0]


    def discover_dashboards(self, display: bool=False) -> None:
        """ Discover deployed dashboards """
        logger.info('Discovering deployed dashboards')
        deployed_dashboards=self.list_dashboards()
        logger.info(f'Found {len(deployed_dashboards)} deployed dashboards')
        logger.debug(deployed_dashboards)
        with click.progressbar(
            deployed_dashboards,
            label='Discovering deployed dashboards...',
            item_show_func=lambda a: a
        ) as bar:
            for index, dashboard in enumerate(deployed_dashboards, start=1):
                # Discover found dashboards
                dashboardName = dashboard.get('Name')
                dashboardId = dashboard.get('DashboardId')
                # Update progress bar
                bar.update(index, f'"{dashboardName}" ({dashboardId})')
                logger.info(f'Discovering dashboard "{dashboardName}" ({dashboardId})')
                self.discover_dashboard(dashboardId)
                # Update progress bar
                bar.update(index, 'Complete')
        # print('Discovered dashboards:')
        if not display:
            return
        for dashboard in self._dashboards.values():
            if dashboard.health:
                health = 'healthy' 
            else:
                health = 'unhealthy'
            print(f'\t{dashboard.name} ({dashboard.id}, {health}, {dashboard.status})')