def METHOD_NAME():
    """
    Retrieve bootstrap public IP and master node private IPs running in aws
    Raises:
        NodeNotFoundError: If we are unable to find the bootstrap node or IP
    Returns:
        dict: bootstrap and master node IP data
    """
    session = boto3.Session()
    credentials = session.get_credentials().get_frozen_credentials()
    ec2_driver = get_driver(Provider.EC2)
    driver = ec2_driver(
        credentials.access_key, credentials.secret_key, region=config.ENV_DATA["region"]
    )
    cluster_path = config.ENV_DATA["cluster_path"]
    infra_id = get_infra_id(cluster_path)
    bootstrap_name = f"{infra_id}-bootstrap"
    master_pattern = f"{infra_id}-master"
    data = dict()
    try:
        bootstrap_node = [
            node for node in driver.list_nodes() if bootstrap_name == node.name
        ][0]
        bootstrap_ip = bootstrap_node.public_ips[0]
        logger.info("Found bootstrap node %s with IP %s", bootstrap_name, bootstrap_ip)
        data["bootstrap_ip"] = bootstrap_ip
    except IndexError:
        raise NodeNotFoundError(
            f"Unable to find bootstrap node with name {bootstrap_name}"
        )
    master_nodes = [node for node in driver.list_nodes() if master_pattern in node.name]
    master_ips = [master.private_ips[0] for master in master_nodes]
    data["master_ips"] = [ip for ip in master_ips if ip is not None]
    if len(data["master_ips"]) < config.ENV_DATA["master_replicas"]:
        logger.warning("IP data was not found for all master nodes")
    logger.debug(data)
    return data