def update_southbound_relations(rid=None): rids = [rid] if rid else relation_ids("contrail-controller") if not rids: return # controller_ips/data_ips are already dumped json ip_list = leader_get("controller_ip_list") data_ip_list = leader_get("controller_data_ip_list") if len(common_utils.json_loads(leader_get("controller_ip_list"), list())) < config.get("min-cluster-size"): ip_list = '[]' data_ip_list = '[]' settings = { "maintenance": config.get("maintenance"), "analytics-server": json.dumps(utils.get_analytics_list()), "analyticsdb_enabled": utils.analyticsdb_enabled(), "auth-mode": config.get("auth-mode"), "auth-info": config.get("auth_info"), "orchestrator-info": config.get("orchestrator_info"), "agents-info": config.get("agents-info"), "ssl-enabled": config.get("ssl_enabled") and common_utils.is_config_analytics_ssl_available(), # base64 encoded ca-cert "ca-cert": config.get("ca_cert"), "controller_ips": ip_list, "controller_data_ips": data_ip_list, "issu_controller_ips": config.get("issu_controller_ips"), "issu_controller_data_ips": config.get("issu_controller_data_ips"), "issu_analytics_ips": config.get("issu_analytics_ips"), "rabbitmq_connection_details": json.dumps(utils.get_rabbitmq_connection_details()), "cassandra_connection_details": json.dumps(utils.get_cassandra_connection_details()), "zookeeper_connection_details": json.dumps(utils.get_zookeeper_connection_details()), } for rid in rids: relation_set(relation_id=rid, relation_settings=settings)
def update_southbound_relations(rid=None): # controller_ips/data_ips are already dumped json settings = { "maintenance": config.get("maintenance"), "analytics-server": json.dumps(utils.get_analytics_list()), "auth-mode": config.get("auth-mode"), "auth-info": config.get("auth_info"), "orchestrator-info": config.get("orchestrator_info"), "agents-info": config.get("agents-info"), "ssl-enabled": config.get("ssl_enabled") and config.get("config_analytics_ssl_available"), # base64 encoded ca-cert "ca-cert": config.get("ca_cert"), "controller_ips": leader_get("controller_ip_list"), "controller_data_ips": leader_get("controller_data_ip_list"), "issu_controller_ips": config.get("issu_controller_ips"), "issu_controller_data_ips": config.get("issu_controller_data_ips"), "issu_analytics_ips": config.get("issu_analytics_ips"), "rabbitmq_connection_details": json.dumps(utils.get_rabbitmq_connection_details()), "cassandra_connection_details": json.dumps(utils.get_cassandra_connection_details()), "zookeeper_connection_details": json.dumps(utils.get_zookeeper_connection_details()), } for rid in ([rid] if rid else relation_ids("contrail-controller")): relation_set(relation_id=rid, relation_settings=settings)