province abbreviation patch - issue 724
[civicrm-core.git] / bin / setup.lib.sh
1 function _mysql_vars() {
2 # someone might want to use empty password for development,
3 # let's make it possible - we asked before.
4 if [ -z $DBPASS ]; then # password still empty
5 PASSWDSECTION=""
6 else
7 PASSWDSECTION="-p$DBPASS"
8 fi
9
10 HOSTSECTTION=""
11 if [ ! -z "$DBHOST" ]; then
12 HOSTSECTION="-h $DBHOST"
13 fi
14
15 PORTSECTION=""
16 if [ ! -z "$DBPORT" ]; then
17 PORTSECTION="-P $DBPORT"
18 fi
19 }
20
21 function mysql_cmd() {
22 _mysql_vars
23 echo "mysql -u$DBUSER $PASSWDSECTION $HOSTSECTION $PORTSECTION $DBARGS $DBNAME"
24 }
25
26 function mysqladmin_cmd() {
27 _mysql_vars
28 echo "mysqladmin -u$DBUSER $PASSWDSECTION $HOSTSECTION $PORTSECTION $DBARGS"
29 }
30
31 function mysqldump_cmd() {
32 _mysql_vars
33 echo "mysqldump -u$DBUSER $PASSWDSECTION $HOSTSECTION $PORTSECTION $DBARGS"
34 }
35
36 ## Pick the first available command. If none, then abort.
37 ## example: COMPOSER=$(pickcmd composer composer.phar)
38 function pickcmd() {
39 for name in "$@" ; do
40 if which $name >> /dev/null ; then
41 echo $name
42 return
43 fi
44 done
45 echo "ERROR: Failed to find any of these commands: $@"
46 exit 1
47 }
48
49 ## usage: has_commands <cmd1> <cmd2> ...
50 function has_commands() {
51 for cmd in "$@" ; do
52 if ! which $cmd >> /dev/null ; then
53 return 1
54 fi
55 done
56 return 0
57 }
58
59 ## Execute some PHP within CMS context
60 ## usage: cms_eval '<php-code>'
61 function cms_eval() {
62 case "$GENCODE_CMS" in
63 [Dd]rupal*|[Bb]ackdrop)
64 drush ev "$1"
65 ;;
66 [Ww]ordPress*)
67 wp eval "$1"
68 ;;
69 *)
70 echo "Cannot boot (GENCODE_CMS=$GENCODE_CMS)" > /dev/stderr
71 exit 1
72 ;;
73 esac
74 }