X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;ds=sidebyside;f=etc%2Fnginx%2Fsite.d%2Fdavical%2Flocal.sh;fp=etc%2Fnginx%2Fsite.d%2Fdavical%2Flocal.sh;h=548c72a31a59d30bb199fdc357077e8769330e5c;hb=e2ae547ef85e29f3f9c9dfe31feffdac2653df06;hp=0000000000000000000000000000000000000000;hpb=d210d4efb0016a3ea2425af9f601bfe908161499;p=lhc%2Fateliers.git diff --git a/etc/nginx/site.d/davical/local.sh b/etc/nginx/site.d/davical/local.sh new file mode 100644 index 0000000..548c72a --- /dev/null +++ b/etc/nginx/site.d/davical/local.sh @@ -0,0 +1,82 @@ +pool=davical +sudo adduser php5_"$pool" www-"$site" +sudo adduser www-"$site"-tls www-"$site" +sudo adduser php5_"$pool" postgres-data + +sudo install -m 640 -o root -g postgres /dev/stdin \ + /etc/davical/administration.yml <<-EOF + admin_db_host: /run/postgresql + admin_db_name: davical + admin_db_user: davical_dba + app_db_user: davical_app + EOF + +sudo sv start postgres +while ! sudo -u postgres psql &1 + sudo -u postgres psql -qXAt ${DBA} -f "${AWLDIR}/dba/schema-management.sql" "${DBNAME}" 2>&1 + # Load the DAViCal tables + sudo -u postgres psql -qXAt ${DBA} -f "${DBADIR}/davical.sql" "${DBNAME}" 2>&1 + fi + +sudo -u postgres psql -AqtX "$pool" <<-EOF + \set ON_ERROR_STOP on + GRANT $pool TO $AWL_DBAUSER; + GRANT USAGE ON SCHEMA pg_catalog TO $AWL_DBAUSER; + GRANT $pool TO $AWL_APPUSER; + GRANT CONNECT ON DATABASE $pool TO $AWL_APPUSER; + GRANT USAGE ON SCHEMA pg_catalog TO $AWL_APPUSER; + GRANT SELECT ON pg_catalog.pg_attribute TO $AWL_APPUSER; + GRANT SELECT ON pg_catalog.pg_class TO $AWL_APPUSER; + GRANT SELECT ON pg_catalog.pg_type TO $AWL_APPUSER; + EOF + +# Set permissions for the application DB user on the database +sudo -u postgres ${DBADIR}/update-davical-database \ + --appuser "${AWL_APPUSER}" \ + --dbname "${DBNAME}" \ + --nopatch \ + --owner "${AWL_DBAUSER}" + +# Load the required base data +test 1 = "$(sudo -u postgres psql -AqtX -U davical_dba davical \ + -c "SELECT role_no FROM roles WHERE role_no = 1;")" || +sudo -u postgres psql -qXAt ${DBA} -f "${DBADIR}/base-data.sql" "${DBNAME}" +sudo -u postgres psql -qX ${DBA} -c "UPDATE usr SET password = '**${ADMINPW}' WHERE user_no = 1;" "${DBNAME}" + +eval home="~www-$pool" +sudo install -m 640 -o root -g php5_"$pool" \ + "$tool"/etc/davical/davical."$local_domainname"-conf.php \ + /etc/davical/davical."$local_domainname"-conf.php