37d44444d7
Currently, there are arbitrary wait for mariadb service startup. However, this leads to nondeterministic results in the current workflow. This patch tries to make the workflow more deterministic. Change-Id: I3c6245cce93c7ff0d3d57cb2ae065a1ed1487769 Closes-Bug: #1491782
59 lines
1.9 KiB
Plaintext
59 lines
1.9 KiB
Plaintext
#!/usr/bin/expect -f
|
|
|
|
set timeout 10
|
|
spawn mysql_secure_installation
|
|
expect {
|
|
timeout { send_user "\nFailed to get 'Enter current password for root (enter for none):' prompt\n"; exit 1 }
|
|
eof { send_user "\nFailed to get 'Enter current password for root (enter for none):' prompt\n"; exit 1 }
|
|
"Enter current password for root (enter for none):"
|
|
}
|
|
send "\r"
|
|
expect {
|
|
timeout { send_user "\nFailed to get 'Set root password?' prompt\n"; exit 1 }
|
|
eof { send_user "\nFailed to get 'Set root password?' prompt\n"; exit 1 }
|
|
"Set root password?"
|
|
}
|
|
send "y\r"
|
|
expect {
|
|
timeout { send_user "\nFailed to get 'New password:' prompt\n"; exit 1 }
|
|
eof { send_user "\nFailed to get 'New password:' prompt\n"; exit 1 }
|
|
"New password:"
|
|
}
|
|
send "$env(DB_ROOT_PASSWORD)\r"
|
|
|
|
expect {
|
|
timeout { send_user "\nFailed to get 'Re-enter new password:' prompt\n"; exit 1 }
|
|
eof { send_user "\nFailed to get 'Re-enter new password:' prompt\n"; exit 1 }
|
|
"Re-enter new password:"
|
|
}
|
|
send "$env(DB_ROOT_PASSWORD)\r"
|
|
|
|
expect {
|
|
timeout { send_user "\nFailed to get 'Remove anonymous users?' prompt\n"; exit 1 }
|
|
eof { send_user "\nFailed to get 'Remove anonymous users?' prompt\n"; exit 1 }
|
|
"Remove anonymous users?"
|
|
}
|
|
send "y\r"
|
|
|
|
expect {
|
|
timeout { send_user "\nFailed to get 'Disallow root login remotely?' prompt\n"; exit 1 }
|
|
eof { send_user "\nFailed to get 'Disallow root login remotely?' prompt\n"; exit 1 }
|
|
"Disallow root login remotely?"
|
|
}
|
|
send "n\r"
|
|
|
|
expect {
|
|
timeout { send_user "\nFailed to get 'Remove test database and access to it?' prompt\n"; exit 1 }
|
|
eof { send_user "\nFailed to get 'Remove test database and access to it?' prompt\n"; exit 1 }
|
|
"Remove test database and access to it?"
|
|
}
|
|
send "y\r"
|
|
|
|
expect {
|
|
timeout { send_user "\nFailed to get 'Reload privilege tables now?' prompt\n"; exit 1 }
|
|
eof { send_user "\nFailed to get 'Reload privilege tables now?' prompt\n"; exit 1 }
|
|
"Reload privilege tables now?"
|
|
}
|
|
send "y\r"
|
|
expect eof
|