2021-11-14 07:57:02 +00:00
|
|
|
|
#!/usr/bin/expect -f
|
|
|
|
|
|
2022-07-02 09:05:52 +00:00
|
|
|
|
set basedir [file dirname $argv0]
|
|
|
|
|
set basename [file tail $argv0]
|
2024-03-23 16:52:26 +00:00
|
|
|
|
if {[info exists env(CLICKHOUSE_TMP)]} {
|
|
|
|
|
set CLICKHOUSE_TMP $env(CLICKHOUSE_TMP)
|
|
|
|
|
} else {
|
|
|
|
|
set CLICKHOUSE_TMP "."
|
|
|
|
|
}
|
|
|
|
|
exp_internal -f $CLICKHOUSE_TMP/$basename.debuglog 0
|
|
|
|
|
set history_file $CLICKHOUSE_TMP/$basename.history
|
2022-07-02 09:05:52 +00:00
|
|
|
|
|
2021-11-14 07:57:02 +00:00
|
|
|
|
log_user 0
|
|
|
|
|
set timeout 60
|
|
|
|
|
match_max 100000
|
|
|
|
|
|
|
|
|
|
expect_after {
|
2021-12-28 18:16:04 +00:00
|
|
|
|
# Do not ignore eof from expect
|
2023-02-20 14:50:15 +00:00
|
|
|
|
-i $any_spawn_id eof { exp_continue }
|
2021-12-28 18:16:04 +00:00
|
|
|
|
# A default timeout action is to do nothing, change it to fail
|
2023-02-20 14:50:15 +00:00
|
|
|
|
-i $any_spawn_id timeout { exit 1 }
|
2021-11-14 07:57:02 +00:00
|
|
|
|
}
|
|
|
|
|
|
2023-02-20 12:55:42 +00:00
|
|
|
|
spawn bash -c "source $basedir/../shell_config.sh ; \$CLICKHOUSE_CLIENT_BINARY \$CLICKHOUSE_CLIENT_OPT --disable_suggestion --history_file=$history_file"
|
2021-11-14 07:57:02 +00:00
|
|
|
|
|
2023-02-26 06:35:38 +00:00
|
|
|
|
# (?n) - Do not match new lines
|
|
|
|
|
expect -re "(?n)ClickHouse client version \[\\d\]{2}\.\[\\d\]{1,2}\.\[\\d\]{1,2}\.\[\\d\]{1,}.*\r"
|
|
|
|
|
expect -re "(?n)Connecting to database .* at localhost:9000 as user default\.\r"
|
2023-12-02 15:32:34 +00:00
|
|
|
|
expect -re "(?n)Connected to ClickHouse server version \[\\d\]{2}\.\[\\d\]{1,2}\.\[\\d\]{1,2}\.\r"
|
2021-11-14 07:57:02 +00:00
|
|
|
|
expect ":) "
|
|
|
|
|
|
|
|
|
|
send -- ""
|
|
|
|
|
expect eof
|