# -*- 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=[ 'cluster_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=[ 'cluster_abort_transaction_cmd.cpp', 'cluster_add_shard_cmd.cpp', 'cluster_add_shard_to_zone_cmd.cpp', 'cluster_available_query_options_cmd.cpp', 'cluster_build_info.cpp', 'cluster_coll_stats_cmd.cpp', 'cluster_collection_mod_cmd.cpp', 'cluster_commit_transaction_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_cmd.cpp', 'cluster_drop_database_cmd.cpp', 'cluster_drop_indexes_cmd.cpp', 'cluster_enable_sharding_cmd.cpp', 'cluster_explain.cpp', 'cluster_explain_cmd.cpp', 'cluster_filemd5_cmd.cpp', 'cluster_find_and_modify_cmd.cpp', 'cluster_find_cmd.cpp', 'cluster_flush_router_config_cmd.cpp', 'cluster_fsync_cmd.cpp', 'cluster_ftdc_commands.cpp', 'cluster_get_last_error_cmd.cpp', 'cluster_get_prev_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_is_master_cmd.cpp', 'cluster_kill_op.cpp', 'cluster_killcursors_cmd.cpp', 'cluster_list_databases_cmd.cpp', 'cluster_list_shards_cmd.cpp', 'cluster_map_reduce_cmd.cpp', 'cluster_merge_chunks_cmd.cpp', 'cluster_move_chunk_cmd.cpp', 'cluster_move_primary_cmd.cpp', 'cluster_multicast.cpp', 'cluster_netstat_cmd.cpp', 'cluster_pipeline_cmd.cpp', 'cluster_plan_cache_cmd.cpp', 'cluster_profile_cmd.cpp', 'cluster_remove_shard_cmd.cpp', 'cluster_remove_shard_from_zone_cmd.cpp', 'cluster_repl_set_get_status_cmd.cpp', 'cluster_reset_error_cmd.cpp', 'cluster_restart_catalog_command.cpp', 'cluster_set_feature_compatibility_version_cmd.cpp', 'cluster_set_free_monitoring.cpp' if get_option("enable-free-mon") == 'on' else [], '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_whats_my_uri_cmd.cpp', 'cluster_write_cmd.cpp', 'commands_public.cpp', 'kill_sessions_remote.cpp', 'strategy.cpp', env.Idlc('cluster_multicast.idl')[0], ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/db/audit', '$BUILD_DIR/mongo/db/auth/auth', '$BUILD_DIR/mongo/db/auth/role_graph', '$BUILD_DIR/mongo/db/auth/saslauth', '$BUILD_DIR/mongo/db/commands/core', '$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/profile_common', '$BUILD_DIR/mongo/db/commands/servers', '$BUILD_DIR/mongo/db/commands/test_commands_enabled', '$BUILD_DIR/mongo/db/commands/write_commands_common', '$BUILD_DIR/mongo/db/ftdc/ftdc_server', '$BUILD_DIR/mongo/db/shared_request_handling', '$BUILD_DIR/mongo/db/logical_session_cache_impl', '$BUILD_DIR/mongo/db/pipeline/aggregation', '$BUILD_DIR/mongo/db/stats/counters', '$BUILD_DIR/mongo/db/views/views', '$BUILD_DIR/mongo/executor/async_multicaster', '$BUILD_DIR/mongo/rpc/client_metadata', '$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_legacy_api', '$BUILD_DIR/mongo/s/sharding_router_api', '$BUILD_DIR/mongo/s/write_ops/cluster_write_op_conversion', '$BUILD_DIR/mongo/transport/message_compressor', '$BUILD_DIR/mongo/transport/transport_layer_common', 'shared_cluster_commands', ] ) env.Library( target='cluster_command_test_fixture', source=[ 'cluster_command_test_fixture.cpp', ], LIBDEPS=[ 'cluster_commands', '$BUILD_DIR/mongo/s/catalog_cache_test_fixture', ] ) env.CppUnitTest( target="cluster_commands_test", source=[ "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", ], LIBDEPS=[ 'cluster_commands', 'cluster_command_test_fixture', '$BUILD_DIR/mongo/db/auth/authmocks', '$BUILD_DIR/mongo/db/auth/saslauth', ], )