55 lines
1.6 KiB
Python
55 lines
1.6 KiB
Python
#!/usr/bin/env python3
|
|
|
|
import sys
|
|
import subprocess
|
|
import argparse
|
|
import platform
|
|
import distro
|
|
|
|
pyv=platform.python_version_tuple()
|
|
|
|
if pyv[0]!='3':
|
|
print('Need python 3 for execute this script')
|
|
sys.exit(1)
|
|
|
|
parser = argparse.ArgumentParser(description='Script for create a new mariadb server.')
|
|
|
|
parser.add_argument('--password', help='The password of the new server', required=True)
|
|
|
|
args = parser.parse_args()
|
|
|
|
linux_distro=distro.id()
|
|
|
|
#Dash, the default debian stretch shell, don't support <<<
|
|
|
|
#sudo debconf-set-selections <<< 'mariadb-server mariadb-server/root_password password your_password'
|
|
#sudo debconf-set-selections <<< 'mariadb-server mariadb-server/root_password_again password your_password'
|
|
|
|
print('Installing MariaDB...')
|
|
|
|
if linux_distro=='debian':
|
|
|
|
if subprocess.call("sudo DEBIAN_FRONTEND=noninteractive apt-get -y --force-yes install mariadb-server", shell=True) > 0:
|
|
print('Error, cannot install MariaDB...')
|
|
sys.exit(1)
|
|
elif linux_distro=='arch':
|
|
if call("sudo pacman -S --noconfirm mariadb", shell=True) > 0:
|
|
print('Error, cannot install MariaDB...')
|
|
exit(1)
|
|
|
|
print('Setting the password...')
|
|
|
|
if subprocess.call("sudo mysqladmin -u root password "+args.password, shell=True) > 0:
|
|
print('Error, cannot set the MariaDB Root password')
|
|
sys.exit(1)
|
|
else:
|
|
print('Mariadb installed successfully')
|
|
sys.exit(0)
|
|
|
|
"""
|
|
if subprocess.call("sudo echo 'mariadb-server mariadb-server/root_password_again password "+args.password+"' | sudo debconf-set-selections", shell=True) > 0:
|
|
print('Error, cannot set the password again')
|
|
sys.exit(1)
|
|
"""
|
|
|
|
print('Setted the password')
|