mirror of
https://github.com/frappe/frappe_docker.git
synced 2026-06-19 14:45:10 +00:00
adding commands to dbench
This commit is contained in:
parent
0db110f8ed
commit
ab00022d66
1 changed files with 28 additions and 22 deletions
50
dbench → dbench.sh
Executable file → Normal file
50
dbench → dbench.sh
Executable file → Normal file
|
|
@ -1,15 +1,15 @@
|
|||
#!/bin/bash
|
||||
|
||||
display_usage () {
|
||||
echo "$(basename "$0") [-h] [-c \"<command to be executed inside container>\"]"
|
||||
echo "Usage: dbench.sh [-hda [sitename] | --init [-e | -d] [sitename (if not specified, it will default to site1.local)]] [\"<command to be executed on bench inside container>\"]"
|
||||
echo ''
|
||||
echo 'where:'
|
||||
echo ' -h show this help text'
|
||||
echo ' -c execute a command inside docker using docker exec'
|
||||
echo ' -s adds site-names to /etc/hosts file in the container to facilitate multisite access'
|
||||
echo ' init initializes frappe-bench'
|
||||
echo ' init -e initializes frappe-bench and installs erpnext'
|
||||
echo ' init -d initializes frappe-bench and enables developer mode'
|
||||
echo ' -d [sitename] enables developer mode for specified site'
|
||||
echo ' -a adds site-names to /etc/hosts file in the container to facilitate multisite access'
|
||||
echo ' --init [-e | -d] [sitename] initializes frappe-bench'
|
||||
echo ' -e initializes frappe-bench and installs erpnext'
|
||||
echo ' -d initializes frappe-bench and enables developer mode'
|
||||
}
|
||||
|
||||
frappe_installer () {
|
||||
|
|
@ -19,45 +19,51 @@ frappe_installer () {
|
|||
docker exec -it frappe bash -c "mv Procfile_docker Procfile && mv sites/common_site_config_docker.json sites/common_site_config.json"
|
||||
echo "frappe-bench folder setup"
|
||||
docker exec -it -u root frappe bash -c "apt-get install vim -y && apt-get install sudo -y && usermod -aG sudo frappe && printf '# User rules for frappe\nfrappe ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers.d/frappe"
|
||||
echo "adding site1.local"
|
||||
docker exec -it frappe bash -c "bench new-site site1.local"
|
||||
docker exec -i -u root frappe bash -c "echo 127.0.0.1 site1.local >> /etc/hosts"
|
||||
sudo su -c 'echo 127.0.0.1 site1.local >> /etc/hosts'
|
||||
echo "site1.local added"
|
||||
echo "adding $1"
|
||||
docker exec -it frappe bash -c "bench new-site $1"
|
||||
docker exec -i -u root frappe bash -c "echo 127.0.0.1 $1 >> /etc/hosts"
|
||||
sudo su -c 'echo 127.0.0.1 $1 >> /etc/hosts'
|
||||
echo "$1 added"
|
||||
}
|
||||
|
||||
if [[ $# -eq 0 ]]; then
|
||||
docker exec -it frappe bash
|
||||
docker exec -it frappe bash "bench $@"
|
||||
|
||||
elif [[ $1 == 'init' && $2 == '-e' ]]
|
||||
then
|
||||
frappe_installer
|
||||
if ! $3 then
|
||||
set -- "${@:1:2}" "site1.local"
|
||||
fi
|
||||
frappe_installer $3
|
||||
echo "installing erpnext"
|
||||
docker exec -it frappe bash -c "bench get-app erpnext"
|
||||
docker exec -it frappe bash -c "bench --site site1.local install-app erpnext"
|
||||
docker exec -it frappe bash -c "bench --site $3 install-app erpnext"
|
||||
echo "finished"
|
||||
|
||||
elif [[ $1 == 'init' && $2 == '-d' ]]
|
||||
then
|
||||
frappe_installer
|
||||
docker exec -it frappe bash -c "bench set-config \"developer_mode\" 1 && bench clear-cache"
|
||||
if ! $3 then
|
||||
set -- "${@:1:2}" "site1.local"
|
||||
fi
|
||||
frappe_installer $3
|
||||
docker exec -it frappe bash -c "bench --site $3 set-config \"developer_mode\" 1 && bench clear-cache"
|
||||
|
||||
elif [ $1 == 'init' ]
|
||||
then
|
||||
frappe_installer
|
||||
if ! $2 then
|
||||
set -- "${@:1}" "site1.local"
|
||||
fi
|
||||
frappe_installer $2
|
||||
|
||||
else
|
||||
while getopts ':hsc:' option; do
|
||||
while getopts ':hs:' option; do
|
||||
case "$option" in
|
||||
h)
|
||||
display_usage
|
||||
exit
|
||||
;;
|
||||
c)
|
||||
docker exec -it frappe bash -c "bench $OPTARG"
|
||||
;;
|
||||
s)
|
||||
a=$(cd frappe-bench && ls sites/*/site_config.json | grep -o '/.\+/')
|
||||
a=$(docker exec -i frappe bash -c "cd ~/frappe-bench && ls sites/*/site_config.json" | grep -o '/.\+/')
|
||||
a="${a//$'\n'/ }"
|
||||
a=$(echo $a | tr -d / )
|
||||
result="127.0.0.1 ${a}"
|
||||
Loading…
Reference in a new issue