Files
Odoo-Build/task
T

120 lines
2.2 KiB
Bash
Executable File

#!/bin/zsh
function start() {
docker-compose up -d
}
function stop() {
docker-compose stop
}
function start-db() {
docker-compose up -d db pgadmin
}
function log() {
docker logs odoo -f
}
function venv-init() {
python3 -m venv venv
source venv/bin/activate
}
function activate-venv() {
source ../venv/bin/activate
}
function locale() {
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
}
function install-src() {
cd odoo
activate-venv
pip install setuptools psycopg2-binary watchdog phonenumbers
pip install -r requirements.txt
cd ..
}
function init-db() {
cd odoo
locale
activate-venv && ./odoo-bin --init base,web -d odoo --db_host=localhost -r odoo -w odoo --stop-after-init
cd ..
}
function start-src() {
cd odoo
locale
activate-venv && ./odoo-bin --config=../config/odoo-src.conf --db_host=localhost -r odoo -w odoo --dev=all
cd ..
}
function scaffold-src() {
if test -z "$1"
then
echo "\$1 is empty"
else
cd odoo
python3 odoo-bin scaffold $1 ../addons
cd ..
fi
}
function drop-db() {
if test -z "$1"
then
echo "\$1 is empty"
else
psql postgres://odoo:odoo@localhost/postgres -c "SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = '$1';"
psql postgres://odoo:odoo@localhost/postgres -c "DROP DATABASE $1;"
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
log)
log
;;
start-db)
start-db
;;
venv-init)
venv-init
;;
install-src)
install-src
;;
init-db)
init-db
;;
start-src)
start-src
;;
scaffold-src)
scaffold-src $2
;;
drop-db)
drop-db $2
;;
compile-managed-modules)
./scripts/compile-managed-modules
;;
copy-managed-modules)
./scripts/copy-managed-modules
;;
remove-managed-modules)
./scripts/remove-managed-modules
;;
*)
echo $"Usage: $0 {start||stop|start-db|install-src|init-db|start-src|scaffold-src|drop-db|compile-managed-modules|copy-managed-modules|remove-managed-modules}"
exit 1
esac