summaryrefslogtreecommitdiff
path: root/wordpress
diff options
context:
space:
mode:
authorroot <root@vps-18a7a2b7.vps.ovh.ca>2023-05-24 09:20:57 -0400
committerroot <root@vps-18a7a2b7.vps.ovh.ca>2023-05-24 09:20:57 -0400
commit3a5d8c9385a288b284e591ec09df74dda13bc454 (patch)
treec31ae047d205472f7df9b6313c405a90eae641e4 /wordpress
parentdae155afd1dd2bed4d1bab1f6137b27d4a767d54 (diff)
rename
Diffstat (limited to 'wordpress')
-rwxr-xr-xwordpress/wordpress-create-new-site63
1 files changed, 63 insertions, 0 deletions
diff --git a/wordpress/wordpress-create-new-site b/wordpress/wordpress-create-new-site
new file mode 100755
index 0000000..13fa33a
--- /dev/null
+++ b/wordpress/wordpress-create-new-site
@@ -0,0 +1,63 @@
1#!/bin/bash
2TEMPLATE=ichimisushiandgrill.com
3OUTPUT=${1:-ichimisushi-thai.com}
4SANITIZED=${OUTPUT//[-.]/_}
5DB_USER=$SANITIZED
6DB_NAME=wordpress_$SANITIZED
7
8PATH=$PWD:$PATH
9
10have_database()
11{
12 mysql -ss -e "show databases like '${1//\'/\'\'}'" | (read match && [ "$match" ])
13}
14
15set -ex
16[ "$OUTPUT" != "$TEMPLATE" ]
17
18create_apache_vhost()
19{
20 if [ ! -e /etc/apache2/sites-enabled/$OUTPUT.conf ]
21 then
22 [ -e /etc/apache2/sites-available/$TEMPLATE.conf ]
23 mkdir /srv/$OUTPUT /srv/$OUTPUT/public_html /srv/$OUTPUT/logs
24 cd /etc/apache2/sites-available/
25 sed -e "s/$TEMPLATE/$OUTPUT/g" < "$TEMPLATE".conf > "$OUTPUT".conf
26 a2ensite $OUTPUT
27 systemctl reload apache2
28 fi
29}
30
31# Install wordpress content to apache htdocs directory
32install_wordpress_documents()
33{
34 if [ ! -e /srv/"$OUTPUT"/public_html/wordpress/wp-config.php ]
35 then
36 (
37 cd /srv/"$OUTPUT"/public_html
38 curl https://wordpress.org/latest.tar.gz | tar -zx
39 cd wordpress
40 wp-conf.sh "$DB_NAME" "$DB_USER" > wp-config.php
41 chown www-data.www-data -R .
42 chown nobody.nogroup wp-config.php
43 )
44 fi
45}
46
47create_database()
48{
49 # Set up database
50 if ! have_database "$DB_NAME"
51 then
52 pwline=$(grep DB_PASSWORD /srv/$OUTPUT/public_html/wordpress/wp-config.php)
53 DB_PASSWORD=$(php -r "$pwline echo DB_PASSWORD;")
54 mysqladmin create "$DB_NAME"
55 mysql "$DB_NAME" <<END
56grant all privileges on \`$DB_NAME\`.* to "$DB_USER" identified by "$DB_PASSWORD";
57END
58 fi
59}
60
61create_apache_vhost
62install_wordpress_documents
63create_database