""" List sites around specific IDs to see what exists """ import sys from pathlib import Path sys.path.insert(0, str(Path(__file__).parent.parent)) from src.database.session import db_manager from src.database.models import SiteDeployment def list_sites_around_ids(target_ids): """List sites around the target IDs""" db_manager.initialize() session = db_manager.get_session() try: # Get the min and max IDs to check min_id = min(target_ids) - 5 max_id = max(target_ids) + 5 sites = session.query(SiteDeployment).filter( SiteDeployment.id >= min_id, SiteDeployment.id <= max_id ).order_by(SiteDeployment.id).all() print(f"\nSites with IDs between {min_id} and {max_id}:") print(f"{'ID':<5} {'Site Name':<35} {'Hostname':<40} {'Storage':<10}") print("-" * 100) for site in sites: hostname = site.custom_hostname or site.pull_zone_bcdn_hostname print(f"{site.id:<5} {site.site_name:<35} {hostname:<40} {site.storage_provider:<10}") print(f"\nTotal: {len(sites)} sites") # Check specifically for the target IDs print(f"\nChecking target IDs: {target_ids}") for site_id in target_ids: site = session.query(SiteDeployment).filter(SiteDeployment.id == site_id).first() if site: print(f" Site {site_id}: EXISTS - {site.site_name}") else: print(f" Site {site_id}: NOT FOUND") except Exception as e: print(f"Error: {e}") import traceback traceback.print_exc() finally: session.close() if __name__ == "__main__": target_ids = [568, 569, 570] list_sites_around_ids(target_ids)