diff --git a/.github/tests/mix-public.yaml b/.github/tests/mix-public.yaml index 9f75aa72a..ed656fff0 100644 --- a/.github/tests/mix-public.yaml +++ b/.github/tests/mix-public.yaml @@ -40,8 +40,6 @@ additional_services: - dora - prometheus - grafana - - custom_flood - - blobscan - dugtrio - erpc - apache diff --git a/.github/tests/mix-with-tools.yaml b/.github/tests/mix-with-tools.yaml index 16a2f557d..23c751864 100644 --- a/.github/tests/mix-with-tools.yaml +++ b/.github/tests/mix-with-tools.yaml @@ -19,8 +19,6 @@ additional_services: - dora - prometheus - grafana - - custom_flood - - blobscan - dugtrio - erpc - apache diff --git a/README.md b/README.md index 7683b9b7f..df7832853 100644 --- a/README.md +++ b/README.md @@ -490,6 +490,10 @@ participants: # Defaults null and then set to default global keymanager_enabled (false) keymanager_enabled: null + # Per-participant override for checkpoint sync. If set, this will override the global checkpoint_sync_enabled flag for this participant. + # Defaults to null (uses global checkpoint_sync_enabled setting) + checkpoint_sync_enabled: null + # Participants matrix creates a participant for each combination of EL, CL and VC clients # Each EL/CL/VC item can provide the same parameters as a standard participant participants_matrix: {} @@ -1173,6 +1177,7 @@ global_node_selectors: {} keymanager_enabled: false # Global flag to enable checkpoint sync across the network +# Default to false checkpoint_sync_enabled: false # Global flag to set checkpoint sync url diff --git a/src/cl/cl_launcher.star b/src/cl/cl_launcher.star index 535791522..7d884d570 100644 --- a/src/cl/cl_launcher.star +++ b/src/cl/cl_launcher.star @@ -181,7 +181,11 @@ def launch( ) ) checkpoint_sync_url = args_with_right_defaults.checkpoint_sync_url - if args_with_right_defaults.checkpoint_sync_enabled: + # Use participant-level checkpoint_sync_enabled if set, otherwise use global + checkpoint_sync_enabled = args_with_right_defaults.checkpoint_sync_enabled + if participant.checkpoint_sync_enabled != None: + checkpoint_sync_enabled = participant.checkpoint_sync_enabled + if checkpoint_sync_enabled: if args_with_right_defaults.checkpoint_sync_url == "": if ( network_params.network in constants.PUBLIC_NETWORKS @@ -218,7 +222,7 @@ def launch( persistent, tolerations, node_selectors, - args_with_right_defaults.checkpoint_sync_enabled, + checkpoint_sync_enabled, checkpoint_sync_url, args_with_right_defaults.port_publisher, index, @@ -268,7 +272,7 @@ def launch( persistent, tolerations, node_selectors, - args_with_right_defaults.checkpoint_sync_enabled, + checkpoint_sync_enabled, checkpoint_sync_url, args_with_right_defaults.port_publisher, index, diff --git a/src/package_io/input_parser.star b/src/package_io/input_parser.star index 9f5bbfd0a..d43c18c8f 100644 --- a/src/package_io/input_parser.star +++ b/src/package_io/input_parser.star @@ -423,6 +423,7 @@ def input_parser(plan, input_args): blobber_image=participant["blobber_image"], keymanager_enabled=participant["keymanager_enabled"], vc_beacon_node_indices=participant["vc_beacon_node_indices"], + checkpoint_sync_enabled=participant["checkpoint_sync_enabled"], ) for participant in result["participants"] ], @@ -1402,6 +1403,7 @@ def default_participant(): "builder_network_params": None, "keymanager_enabled": None, "vc_beacon_node_indices": None, + "checkpoint_sync_enabled": None, } diff --git a/src/package_io/sanity_check.star b/src/package_io/sanity_check.star index 0ce8812a0..eb7a2fae2 100644 --- a/src/package_io/sanity_check.star +++ b/src/package_io/sanity_check.star @@ -65,6 +65,7 @@ PARTICIPANT_CATEGORIES = { "builder_network_params", "keymanager_enabled", "vc_beacon_node_indices", + "checkpoint_sync_enabled", ], } @@ -116,6 +117,7 @@ PARTICIPANT_MATRIX_PARAMS = { "count", "supernode", "vc_beacon_node_indices", + "checkpoint_sync_enabled", ], "vc": [ "vc_type",