cb4e875ae1
The majority of the start.sh code is identical. This removes that duplicate code while still maintaining the ability to call code in a specific container. The start.sh is moved into /usr/local/bin/kolla_start in the container The extend_start.sh script is called by the kolla_start script at the location /usr/local/bin/kolla_extend_start . It always exists because we create a noop kolla_extend_start in the base directory. We override it with extend_start.sh in a specific image should we need to. Of note, the neutron-agents container is exempt from this new structure due to it being a fat container. Additionally, we fix the inconsistent permissions throughout. 644 for repo files and the scripts are set to 755 via a Docker RUN command to ensure someones local perm change won't break upstream containers. Change-Id: I7da8d19965463ad30ee522a71183e3f092e0d6ad Closes-Bug: #1501295
43 lines
1.3 KiB
Bash
43 lines
1.3 KiB
Bash
#!/bin/bash
|
|
|
|
function bootstrap_db {
|
|
mysqld_safe --wsrep-new-cluster &
|
|
|
|
# Waiting for deamon
|
|
sleep 10
|
|
expect -c '
|
|
set timeout 10
|
|
spawn mysql_secure_installation
|
|
expect "Enter current password for root (enter for none):"
|
|
send "\r"
|
|
expect "Set root password?"
|
|
send "y\r"
|
|
expect "New password:"
|
|
send "'"${DB_ROOT_PASSWORD}"'\r"
|
|
expect "Re-enter new password:"
|
|
send "'"${DB_ROOT_PASSWORD}"'\r"
|
|
expect "Remove anonymous users?"
|
|
send "y\r"
|
|
expect "Disallow root login remotely?"
|
|
send "n\r"
|
|
expect "Remove test database and access to it?"
|
|
send "y\r"
|
|
expect "Reload privilege tables now?"
|
|
send "y\r"
|
|
expect eof'
|
|
|
|
mysql -u root --password="${DB_ROOT_PASSWORD}" -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '${DB_ROOT_PASSWORD}' WITH GRANT OPTION;"
|
|
mysql -u root --password="${DB_ROOT_PASSWORD}" -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '${DB_ROOT_PASSWORD}' WITH GRANT OPTION;"
|
|
mysqladmin -p"${DB_ROOT_PASSWORD}" shutdown
|
|
}
|
|
|
|
chown mysql: /var/lib/mysql
|
|
|
|
# This catches all cases of the BOOTSTRAP variable being set, including empty
|
|
if [[ "${!KOLLA_BOOTSTRAP[@]}" ]] && [[ ! -e /var/lib/mysql/cluster.exists ]]; then
|
|
ARGS="--wsrep-new-cluster"
|
|
touch /var/lib/mysql/cluster.exists
|
|
mysql_install_db --user=mysql
|
|
bootstrap_db
|
|
fi
|