Last active
August 10, 2019 23:07
-
-
Save aljaxus/65948446c8bd55db865e3f8ea1835d76 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
function wait () { | |
echo "" | |
echo "" | |
if [ ! -z "$1" ] | |
then | |
echo "Finished: $1" | |
fi | |
if [ ! -z "$2" ] | |
then | |
echo "Up next: $2" | |
fi | |
echo "Waiting 5 seconds ..." | |
sleep 5 | |
} | |
cmsuserPwd=$(python3 -c 'from cmscommon import crypto; print(crypto.get_hex_random_key())') | |
sed -i "s|peer|trust|g" /etc/postgresql/10/main/pg_hba.conf | |
systemctl restart postgresql | |
echo "$cmsuserPwd" | |
sudo -u postgres createuser --username=postgres cmsuser | |
sudo -u postgres createdb --username=postgres --owner=cmsuser cmsdb | |
sudo -u postgres psql --username=postgres --dbname=cmsdb --command="ALTER USER cmsuser WITH PASSWORD '$cmsuserPwd'" | |
sudo -u postgres psql --username=postgres --dbname=cmsdb --command='ALTER SCHEMA public OWNER TO cmsuser' | |
sudo -u postgres psql --username=postgres --dbname=cmsdb --command='GRANT SELECT ON pg_largeobject TO cmsuser' | |
wait "PostgreSql setup" "CMS config setup" | |
cp config/cms.conf.sample /etc/cms.conf | |
cmsToken=$(python3 -c 'from cmscommon import crypto; print(crypto.get_hex_random_key())') | |
sed -i "s|postgresql+psycopg2://cmsuser:your_password_here@localhost:5432/cmsdb|postgresql+psycopg2://cmsuser:$cmsuserPwd@localhost:5432/cmsdb|g" /etc/cms.conf | |
sed -i "s|8e045a51e4b102ea803c06f92841a1fb|$cmsToken|g" /etc/cms.conf | |
wait "CMS config setup" "CMS database initialization" | |
cmsInitDB | |
wait "CMS database initialization" "Setting up the CMS service" | |
mkdir /var/local/log/ | |
mkdir /var/local/cache/ | |
touch /etc/systemd/system/cmsresource.service | |
echo " | |
[Unit] | |
Description=CMS resource server | |
After=network.target | |
[Service] | |
ExecStart=/usr/local/bin/cmsResourceService -a | |
Restart=on-failure | |
RestartSec=20s | |
Type=idle | |
[Install] | |
WantedBy=multi-user.target | |
" > /etc/systemd/system/cmsresource.service | |
touch /etc/systemd/system/cmsadminpanel.service | |
echo " | |
[Unit] | |
Description=CMS admin panel server | |
After=network.target | |
[Service] | |
ExecStart=/usr/local/bin/cmsAdminWebServer | |
Restart=on-failure | |
RestartSec=20s | |
Type=idle | |
[Install] | |
WantedBy=multi-user.target | |
" > /etc/systemd/system/cmsadminpanel.service | |
systemctl enable cmsadminpanel.service | |
systemctl start cmsadminpanel.service | |
systemctl status cmsadminpanel.service | |
systemctl enable cmsresource.service | |
systemctl start cmsresource.service | |
systemctl status cmsresource.service | |
wait "Setup CMS service" "Setup the admin account" | |
cmsAddAdminOut=$(cmsAddAdmin admin) | |
cmsAdminPass=$(echo "$cmsAddAdminOut" | awk '{print $NF}') | |
wait "" "Print system information" | |
echo "" | |
echo "" | |
echo "System info" | |
echo "|_ PostgreSql users" | |
echo " |_ cmsuser account => cmsuser : $cmsuserPwd" | |
echo "|_ CMS" | |
echo " |_ secret token => $cmsToken" | |
echo " |_ admin password => admin : $cmsAdminPass" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment