#!/bin/bash file_env() { local var="$1" local fileVar="${var}_FILE" local def="${2:-}" if [ "${!var:-}" ] && [ "${!fileVar:-}" ]; then echo >&2 "error: both $var and $fileVar are set (but are exclusive)" exit 1 fi local val="$def" if [ "${!var:-}" ]; then val="${!var}" elif [ "${!fileVar:-}" ]; then val="$(< "${!fileVar}")" fi export "$var"="$val" unset "$fileVar" } file_env "WORDPRESS_DB_PASS" file_env "CIVICRM_DB_PASS" file_env "CIVICRM_SITE_KEY" file_env "CIVICRM_CRED_KEYS" file_env "SMTP_PASSWORD" export APACHE_SITES_AVAILABLE_CONF_VERSION=v1 export CIVICRM_SETTINGS_PHP_VERSION=v1 export ENTRYPOINT_VERSION=v1 change_password(){ echo "Changing password for $1" su civicrm -c "wp user update $1 --user_pass=$2" } install_extensions(){ install_apps="$@" if [ -z "$install_apps" ] then install_apps=$CIVICRM_EXTENSIONS fi for app in $install_apps do echo "Installing $app" cv ext:download "$app" cv ext:enable "$app" done cv ext:upgrade-db } # install_custom_extension org.civicrm.shoreditch https://github.com/civicrm/org.civicrm.shoreditch install_custom_extension(){ apt update && apt install -y git git clone "$2" /var/www/html/wp-content/uploads/civicrm/ext/"$1" cv ext:enable "$1" }