Update regen.sh with new & upcoming core extensions
[civicrm-core.git] / bin / regen.sh
CommitLineData
6a488035 1#!/usr/bin/env /bin/bash
55f7d1ec
TO
2set -e
3set -x
6a488035
TO
4
5source `dirname $0`/setup.conf
55f7d1ec 6source `dirname $0`/setup.lib.sh
6a488035
TO
7
8# someone might want to use empty password for development,
9# let's make it possible - we asked before.
10if [ -z $DBPASS ]; then # password still empty
11 PASSWDSECTION=""
12else
13 PASSWDSECTION="-p$DBPASS"
14fi
15
16pushd .
b8b65506 17cd $CIVISOURCEDIR
8f1445ea 18# svn up .
b8b65506 19cd $CIVISOURCEDIR/bin
6a488035 20./setup.sh
b8b65506 21cd $CIVISOURCEDIR/sql
6a488035
TO
22
23echo; echo "Dropping civicrm_* tables from database $DBNAME"
24# mysqladmin -f -u $DBUSER $PASSWDSECTION $DBARGS drop $DBNAME
55f7d1ec
TO
25MYSQLCMD=$(mysql_cmd)
26MYSQLADMCMD=$(mysqladmin_cmd)
27MYSQLDUMP=$(mysqldump_cmd)
6a488035
TO
28echo "SELECT table_name FROM information_schema.TABLES WHERE TABLE_SCHEMA='${DBNAME}' AND TABLE_TYPE = 'VIEW'" \
29 | $MYSQLCMD \
30 | grep '^\(civicrm_\|log_civicrm_\)' \
31 | awk -v NOFOREIGNCHECK='SET FOREIGN_KEY_CHECKS=0;' 'BEGIN {print NOFOREIGNCHECK}{print "drop view " $1 ";"}' \
32 | $MYSQLCMD
33echo "SELECT table_name FROM information_schema.TABLES WHERE TABLE_SCHEMA='${DBNAME}' AND TABLE_TYPE = 'BASE TABLE'" \
34 | $MYSQLCMD \
35 | grep '^\(civicrm_\|log_civicrm_\)' \
36 | awk -v NOFOREIGNCHECK='SET FOREIGN_KEY_CHECKS=0;' 'BEGIN {print NOFOREIGNCHECK}{print "drop table " $1 ";"}' \
37 | $MYSQLCMD
38
55f7d1ec
TO
39$MYSQLCMD < civicrm.mysql
40$MYSQLCMD < civicrm_data.mysql
41$MYSQLCMD < civicrm_sample.mysql
08b8c7c3 42echo "DROP TABLE IF EXISTS zipcodes" | $MYSQLCMD
55f7d1ec 43$MYSQLCMD < zipcodes.mysql
6a488035 44
27458805
TO
45## For first boot on fresh DB, boot CMS before CRM.
46cms_eval 'civicrm_initialize();'
47
48php GenerateData.php
6a488035 49
27458805 50## Prune local data
4567fc9c 51$MYSQLCMD -e "DROP TABLE zipcodes; DROP TABLE IF EXISTS civicrm_install_canary; DELETE FROM civicrm_cache; DELETE FROM civicrm_setting;"
18b8a7e0 52$MYSQLCMD -e "DELETE FROM civicrm_extension WHERE full_name NOT IN ('sequentialcreditnotes', 'eventcart', 'search', 'flexmailer');"
13864ea6 53TABLENAMES=$( echo "show tables like 'civicrm_%'" | $MYSQLCMD | grep ^civicrm_ | xargs )
6a488035 54
b8b65506 55cd $CIVISOURCEDIR/sql
13864ea6
TO
56
57$MYSQLDUMP -cent --skip-triggers $DBNAME $TABLENAMES > civicrm_generated.mysql
6a488035
TO
58#cat civicrm_sample_report.mysql >> civicrm_generated.mysql
59cat civicrm_sample_custom_data.mysql >> civicrm_generated.mysql
60#cat civicrm_devel_config.mysql >> civicrm_generated.mysql
f078ea51 61cat civicrm_dummy_processor.mysql >> civicrm_generated.mysql
55f7d1ec
TO
62$MYSQLADMCMD -f drop $DBNAME
63$MYSQLADMCMD create $DBNAME
64$MYSQLCMD < civicrm.mysql
65$MYSQLCMD < civicrm_generated.mysql
6a488035 66popd