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})')