# -*- mode: python -*- Import("env") Import("get_option") env = env.Clone() # These commands are linked both in MongoS and MongoD env.Library( target='shared_cluster_commands', source=[ 'flush_router_config_cmd.cpp', 'get_shard_map_cmd.cpp', ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/db/commands', '$BUILD_DIR/mongo/s/grid', ] ) # These commands are linked in MongoS only env.Library( target='cluster_commands', source=[ 'batch_downconvert.cpp', 'cluster_abort_transaction_cmd.cpp', 'cluster_add_shard_cmd.cpp', 'cluster_add_shard_to_zone_cmd.cpp', 'cluster_available_query_options_cmd.cpp', 'cluster_balancer_collection_status_cmd.cpp', 'cluster_build_info.cpp', 'cluster_abort_reshard_collection_cmd.cpp', 'cluster_cleanup_reshard_collection_cmd.cpp', 'cluster_clear_jumbo_flag_cmd.cpp', 'cluster_coll_stats_cmd.cpp', 'cluster_collection_mod_cmd.cpp', 'cluster_commit_transaction_cmd.cpp', 'cluster_commit_reshard_collection_cmd.cpp', 'cluster_compact_cmd.cpp', 'cluster_control_balancer_cmd.cpp', 'cluster_count_cmd.cpp', 'cluster_create_cmd.cpp', 'cluster_create_indexes_cmd.cpp', 'cluster_current_op.cpp', 'cluster_data_size_cmd.cpp', 'cluster_db_stats_cmd.cpp', 'cluster_distinct_cmd.cpp', 'cluster_drop_collection_cmd.cpp', 'cluster_drop_database_cmd.cpp', 'cluster_drop_indexes_cmd.cpp', 'cluster_enable_sharding_cmd.cpp', 'cluster_explain_cmd.cpp', 'cluster_explain.cpp', 'cluster_filemd5_cmd.cpp', 'cluster_find_and_modify_cmd.cpp', 'cluster_find_cmd.cpp', 'cluster_fsync_cmd.cpp', 'cluster_ftdc_commands.cpp', 'cluster_get_last_error_cmd.cpp', 'cluster_get_shard_version_cmd.cpp', 'cluster_getmore_cmd.cpp', 'cluster_index_filter_cmd.cpp', 'cluster_is_db_grid_cmd.cpp', 'cluster_hello_cmd.cpp', 'cluster_kill_op.cpp', 'cluster_killcursors_cmd.cpp', 'cluster_killoperations_cmd.cpp', 'cluster_list_collections_cmd.cpp', 'cluster_list_databases_cmd.cpp', 'cluster_list_indexes_cmd.cpp', 'cluster_list_shards_cmd.cpp', 'cluster_map_reduce_agg.cpp', 'cluster_map_reduce_cmd.cpp', 'cluster_merge_chunks_cmd.cpp', 'cluster_move_chunk_cmd.cpp', 'cluster_move_primary_cmd.cpp', 'cluster_multicast_cmd.cpp', 'cluster_netstat_cmd.cpp', 'cluster_passthrough_commands.cpp', 'cluster_pipeline_cmd.cpp', 'cluster_plan_cache_clear_cmd.cpp', 'cluster_profile_cmd.cpp', 'cluster_refine_collection_shard_key_cmd.cpp', 'cluster_remove_shard_cmd.cpp', 'cluster_remove_shard_from_zone_cmd.cpp', 'cluster_rename_collection_cmd.cpp', 'cluster_repair_sharded_collection_chunks_history_cmd.cpp', 'cluster_repl_set_get_status_cmd.cpp', 'cluster_reshard_collection_cmd.cpp', 'cluster_rwc_defaults_commands.cpp', 'cluster_set_allow_migrations_cmd.cpp', 'cluster_set_feature_compatibility_version_cmd.cpp', 'cluster_set_free_monitoring_cmd.cpp' if get_option("enable-free-mon") == 'on' else [], 'cluster_set_index_commit_quorum_cmd.cpp', 'cluster_shard_collection_cmd.cpp', 'cluster_shutdown_cmd.cpp', 'cluster_split_cmd.cpp', 'cluster_update_zone_key_range_cmd.cpp', 'cluster_user_management_commands.cpp', 'cluster_validate_cmd.cpp', 'cluster_validate_db_metadata_cmd.cpp', 'cluster_whats_my_uri_cmd.cpp', 'cluster_write_cmd.cpp', 'document_shard_key_update_util.cpp', 'kill_sessions_remote.cpp', 's_read_write_concern_defaults_server_status.cpp', 'strategy.cpp', 'cluster_commands.idl', ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/db/api_parameters', '$BUILD_DIR/mongo/db/audit', '$BUILD_DIR/mongo/db/auth/address_restriction', '$BUILD_DIR/mongo/db/auth/auth', '$BUILD_DIR/mongo/db/auth/auth_checks', '$BUILD_DIR/mongo/db/auth/builtin_roles', '$BUILD_DIR/mongo/db/auth/saslauth', '$BUILD_DIR/mongo/db/commands', '$BUILD_DIR/mongo/db/commands/core', '$BUILD_DIR/mongo/db/commands/create_command', '$BUILD_DIR/mongo/db/commands/current_op_common', '$BUILD_DIR/mongo/db/commands/feature_compatibility_parsers', '$BUILD_DIR/mongo/db/commands/kill_common', '$BUILD_DIR/mongo/db/commands/list_databases_command', '$BUILD_DIR/mongo/db/commands/map_reduce_parser', '$BUILD_DIR/mongo/db/commands/profile_common', '$BUILD_DIR/mongo/db/commands/rename_collection_idl', '$BUILD_DIR/mongo/db/commands/rwc_defaults_commands', '$BUILD_DIR/mongo/db/commands/server_status', '$BUILD_DIR/mongo/db/commands/servers', '$BUILD_DIR/mongo/db/commands/set_feature_compatibility_version_idl', '$BUILD_DIR/mongo/db/commands/set_index_commit_quorum_idl', '$BUILD_DIR/mongo/db/commands/shutdown_idl', '$BUILD_DIR/mongo/db/commands/test_commands_enabled', '$BUILD_DIR/mongo/db/commands/validate_db_metadata_command', '$BUILD_DIR/mongo/db/create_indexes_idl', '$BUILD_DIR/mongo/db/ftdc/ftdc_server', '$BUILD_DIR/mongo/db/initialize_api_parameters', '$BUILD_DIR/mongo/db/logical_session_cache_impl', '$BUILD_DIR/mongo/db/pipeline/aggregation', '$BUILD_DIR/mongo/db/query/command_request_response', '$BUILD_DIR/mongo/db/query/cursor_response_idl', '$BUILD_DIR/mongo/db/query/map_reduce_output_format', '$BUILD_DIR/mongo/db/read_write_concern_defaults', '$BUILD_DIR/mongo/db/repl/hello_auth', '$BUILD_DIR/mongo/db/repl/hello_command', '$BUILD_DIR/mongo/db/repl/repl_server_parameters', '$BUILD_DIR/mongo/db/shared_request_handling', '$BUILD_DIR/mongo/db/stats/api_version_metrics', '$BUILD_DIR/mongo/db/stats/counters', '$BUILD_DIR/mongo/db/timeseries/timeseries_commands_conversion_helper', '$BUILD_DIR/mongo/db/views/views', '$BUILD_DIR/mongo/executor/async_multicaster', '$BUILD_DIR/mongo/executor/async_request_executor', '$BUILD_DIR/mongo/idl/server_parameter', '$BUILD_DIR/mongo/rpc/client_metadata', '$BUILD_DIR/mongo/rpc/rewrite_state_change_errors', '$BUILD_DIR/mongo/s/cluster_last_error_info', '$BUILD_DIR/mongo/s/mongos_topology_coordinator', '$BUILD_DIR/mongo/s/query/cluster_aggregate', '$BUILD_DIR/mongo/s/query/cluster_client_cursor', '$BUILD_DIR/mongo/s/sharding_api', '$BUILD_DIR/mongo/s/sharding_router_api', '$BUILD_DIR/mongo/s/vector_clock_mongos', '$BUILD_DIR/mongo/transport/message_compressor', '$BUILD_DIR/mongo/transport/transport_layer_common', 'shared_cluster_commands', ] ) env.CppUnitTest( target="s_commands_test", source=[ "cluster_aggregate_test.cpp", "cluster_command_test_fixture.cpp", "cluster_delete_test.cpp", "cluster_distinct_test.cpp", "cluster_find_and_modify_test.cpp", "cluster_find_test.cpp", "cluster_insert_test.cpp", "cluster_update_test.cpp", "cluster_validate_db_metadata_cmd_test.cpp", "document_shard_key_update_test.cpp", ], LIBDEPS=[ '$BUILD_DIR/mongo/db/auth/authmocks', '$BUILD_DIR/mongo/db/auth/saslauth', '$BUILD_DIR/mongo/db/pipeline/process_interface/mongos_process_interface_factory', '$BUILD_DIR/mongo/db/read_write_concern_defaults_mock', '$BUILD_DIR/mongo/s/query/cluster_aggregate', '$BUILD_DIR/mongo/s/sharding_router_test_fixture', 'cluster_commands', ], )