github.com/pingcap/tiflow@v0.0.0-20240520035814-5bf52d54e205/dm/tests/dmctl_advance/run.sh (about)

     1  #!/bin/bash
     2  
     3  set -eu
     4  
     5  cur=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
     6  source $cur/../_utils/test_prepare
     7  WORK_DIR=$TEST_DIR/$TEST_NAME
     8  TASK_CONF=$cur/conf/dm-task.yaml
     9  TASK_NAME="test"
    10  WORKER1_CONF=$cur/conf/dm-worker1.toml
    11  SQL_RESULT_FILE="$TEST_DIR/sql_res.$TEST_NAME.txt"
    12  
    13  # used to coverage wrong usage of dmctl command
    14  function usage_and_arg_test() {
    15  	#    migrate_relay_wrong_arg
    16  	#    migrate_relay_without_worker
    17  
    18  	#    switch_relay_master_wrong_arg
    19  	#    switch_relay_master_without_worker
    20  
    21  	unlock_ddl_lock_wrong_arg
    22  	unlock_ddl_lock_invalid_force_remove
    23  
    24  	handle_error_wrong_arg
    25  	handle_error_invalid_binlogpos
    26  	handle_error_invalid_sqls
    27  	handle_error_invalid_op
    28  
    29  	binlog_empty_arg
    30  	binlog_invalid_binlogpos
    31  	binlog_invalid_sqls_by_replace
    32  	binlog_invalid_sqls_by_inject
    33  	binlog_invalid_list_op
    34  	binlog_invalid_op
    35  
    36  	source_table_schema_empty_arg
    37  	source_table_schema_lack_arguments
    38  
    39  	# TODO: check SQLs error test
    40  }
    41  
    42  function run() {
    43  	cd $cur
    44  	for file in "check_list"/*; do
    45  		source $file
    46  	done
    47  	cd -
    48  
    49  	run_dm_master $WORK_DIR/master $MASTER_PORT $cur/conf/dm-master.toml
    50  	check_rpc_alive $cur/../bin/check_master_online 127.0.0.1:$MASTER_PORT
    51  	usage_and_arg_test
    52  }
    53  
    54  cleanup_data dmctl_advance
    55  # also cleanup dm processes in case of last run failed
    56  cleanup_process $*
    57  run $*
    58  cleanup_process $*
    59  
    60  echo "[$(date)] <<<<<< test case $TEST_NAME success! >>>>>>"