import json
from github.env import exit_on_error_and_write_summary, write_github_summary
from actions_logging.app_logging import logger
from build_and_deploy.deploy import collect_deployed_services_data, log_short_svc_stats

def main():
    env_name = "solo"
    try:
        svc_stats, services_failed_to_get_versions = collect_deployed_services_data(env_name=env_name, svc_to_ignore=[], ignore_errors=True)
        summary = log_short_svc_stats(svc_stats, env_name)
        if services_failed_to_get_versions:
            logger.warning(f"Failed to get versions for the following services: {services_failed_to_get_versions}")
            summary += f"\nFailed to get versions for the following services:\n {services_failed_to_get_versions}"
        write_github_summary(summary)
    except Exception as e:
        exit_on_error_and_write_summary(f"failed to fetch deployed service information from solo env due error: {e}")

if __name__ == "__main__":
    main()