refactor: simplify Makefile and update scripts
This commit is contained in:
parent
194ea6558d
commit
6343058ece
60
Makefile
60
Makefile
@ -4,6 +4,9 @@ endif
|
||||
ifneq ("$(wildcard automation/automation.mk)", "")
|
||||
include automation/automation.mk
|
||||
endif
|
||||
ifneq ("$(wildcard utility/utility.mk)", "")
|
||||
include utility/utility.mk
|
||||
endif
|
||||
.SHELLFLAGS += ${SHELLFLAGS} -e
|
||||
PWD = $(shell pwd)
|
||||
UID = $(shell id -u)
|
||||
@ -18,26 +21,23 @@ DOCKER_PUSH=$(DOCKERCMD) push
|
||||
DOCKER_IMAGE=$(DOCKERCMD) image
|
||||
DOCKER_EXEC=$(DOCKERCMD) exec
|
||||
DEPLOY_PATH=${PWD}/deployment
|
||||
SETUP_PATH=${PWD}/setup
|
||||
SCRIPT_PATH=${PWD}/utility/scripts
|
||||
CONFIG=odoo.conf
|
||||
HUB=hub.nextzenos.com
|
||||
CDN=https://cdn.nextzenos.com/CDN/NextERP
|
||||
ORGANIZATION=nexterp
|
||||
PROJECT := odoo18
|
||||
PROJECT := Odoo18-Base
|
||||
ODOO_IMAGE=${HUB}/${ORGANIZATION}/$(PROJECT)
|
||||
TAG := $(shell git rev-parse --abbrev-ref HEAD)
|
||||
CONTAINER_ID=${PROJECT}-${TAG}
|
||||
VERSION := community
|
||||
ADDONS=${PWD}/addons,${PWD}/odoo/addons,${PWD}/extra-addons
|
||||
BACKUP=${CDN}/raw/branch/main/backup/${VERSION}/odoo18-main_2025-01-15_08-05-47.zip
|
||||
|
||||
AUTOMATION_PATH=${PWD}/automation
|
||||
|
||||
########### Automation #########
|
||||
deploy-native:
|
||||
@echo "Not implemented"
|
||||
UPGRADE_SCRIPTS=$(shell cat upgrade_scripts | tr '\n' ',')
|
||||
push_code:
|
||||
$(PYTHON) ${SCRIPT_PATH}/interpreter/gen_commit.py $(GIT_USER) $(GIT_PASS) $(PWD)
|
||||
##### Virtual Environment #####
|
||||
|
||||
check-virtualenv:
|
||||
@if [ "$(VENV)" = "missing" ]; then \
|
||||
echo "Creating virtual environment..."; \
|
||||
@ -52,20 +52,7 @@ install: check-virtualenv
|
||||
sudo apt update -y && \
|
||||
sudo apt install -y python3-pip libldap2-dev libpq-dev libsasl2-dev postgresql-client libreoffice wkhtmltopdf ansible terraform&& \
|
||||
${PIP} install --no-input -r requirements.txt --break-system-packages
|
||||
download_backup:
|
||||
@if [ -z "${LINKDB}" ]; then \
|
||||
LinkDB=${BACKUP}; \
|
||||
read -p "LinkDownload [default: ${BACKUP}]: " InputLinkDB; \
|
||||
LinkDB=$${InputLinkDB:-${BACKUP}}; \
|
||||
else \
|
||||
LinkDB=${LINKDB}; \
|
||||
fi; \
|
||||
Filename=$$(basename $$LinkDB); \
|
||||
echo "Downloading $$Filename from: $$LinkDB"; \
|
||||
${PWD}/setup/download_backup.sh $$LinkDB backup.zip
|
||||
gen_config:
|
||||
$(MAKE) download_backup LINKDB=${BACKUP}
|
||||
${PWD}/setup/init_config.sh --native ${ADDONS} ${DB_USER} ${DB_PASSWORD} ${DB_SERVER} ${DB_PORT}
|
||||
#$(MAKE) download_backup LINKDB=${BACKUP}
|
||||
run_server:
|
||||
${PYTHON} odoo-bin --config=${CONFIG}
|
||||
run_test:
|
||||
@ -82,22 +69,32 @@ scaffold_module:
|
||||
read -p "addons Path[eg:addons, extra-addons, exercise]: " ModulePath; \
|
||||
${PYTHON} odoo-bin scaffold $$ModuleName && \
|
||||
mv $$ModuleName ${PWD}/$$ModulePath;
|
||||
cleanup_addons:
|
||||
@bash ${PWD}/setup/clean_up_addons.sh $(shell echo $(ADDONS) | tr ',' ' ')
|
||||
install_modules:
|
||||
${PYTHON} odoo-bin --config=${CONFIG} -d ${DATABASE} -i ${MODULES} --xmlrpc-port=${PORT}
|
||||
|
||||
upgrade_modules:
|
||||
@for script in $$(cat upgrade_scripts); do \
|
||||
echo "Running upgrade script: $$script"; \
|
||||
${PYTHON} odoo-bin upgrade_code --script $$script --addons-path=${UPGRADE_DIR} || true; \
|
||||
done
|
||||
delete_records:
|
||||
${PYTHON} ${SCRIPT_PATH}/delete_records.py ${DATABASE} ${BASE_MODEL} --force
|
||||
drop_database:
|
||||
${PYTHON} odoo-bin db --config=${CONFIG} drop ${DATABASE}
|
||||
##### Docker Deployment #########
|
||||
run_test_docker:
|
||||
sudo ${DOCKER_EXEC} ${CONTAINER_ID} odoo --test-tags :TestAccountMove.test_out_invoice_auto_post_monthly,TestAccountMove.test_included_tax --log-level=test --test-enable -d testdb-${TAG} --stop-after-init --config=/etc/odoo/${CONFIG} --xmlrpc-port=8071 && \
|
||||
sudo ${DOCKER_EXEC} ${CONTAINER_ID} odoo db --config=/etc/odoo/${CONFIG} drop testdb-${TAG}
|
||||
gen_config_docker:
|
||||
$(MAKE) download_backup LINKDB=${BACKUP}
|
||||
${PWD}/setup/init_config.sh --docker ${ODOO_IMAGE} ${TAG} ${CONTAINER_ID}
|
||||
# $(MAKE) download_backup LINKDB=${BACKUP}
|
||||
build_image:
|
||||
DOCKER_BUILDKIT=1 ${DOCKER_BUILD} . --progress plain --tag ${ODOO_IMAGE}:${TAG}
|
||||
(cd ${DEPLOY_PATH} && \
|
||||
DOCKER_BUILDKIT=1 ${DOCKER_BUILD} . --progress=plain --no-cache --tag $$(echo ${ODOO_IMAGE} | tr A-Z a-z):${TAG}\
|
||||
)
|
||||
build_image_cache:
|
||||
(cd ${DEPLOY_PATH} && \
|
||||
DOCKER_BUILDKIT=1 ${DOCKER_BUILD} . --progress=plain --tag $$(echo ${ODOO_IMAGE} | tr A-Z a-z):${TAG}\
|
||||
)
|
||||
push_image:
|
||||
$(DOCKER_PUSH) ${ODOO_IMAGE}:${TAG}
|
||||
$(DOCKER_PUSH) $(shell echo ${ODOO_IMAGE}| tr A-Z a-z):${TAG}
|
||||
run_server_docker:
|
||||
@if ! docker ps | grep -q "${CONTAINER_ID}"; then \
|
||||
echo "Container not found. Running docker-compose up -d"; \
|
||||
@ -106,8 +103,6 @@ run_server_docker:
|
||||
fi
|
||||
cd ${DEPLOY_PATH} &&\
|
||||
${DOCKER_COMPOSE_CMD} up -d
|
||||
update_tag:
|
||||
${SETUP_PATH}/update_tag.sh $(CURR_BRANCH)
|
||||
restore_database_docker:
|
||||
sudo ${DOCKER_EXEC} ${CONTAINER_ID} odoo db -c /etc/odoo/odoo.conf load backup /var/lib/odoo/backup/backup.zip
|
||||
stop_server_docker:
|
||||
@ -132,6 +127,7 @@ clean_up:
|
||||
! -name "*.template" \
|
||||
! -name "*.py" \
|
||||
! -name "*.yml" \
|
||||
! -name "*.txt" \
|
||||
-print0 | sudo xargs -0 rm -rf {} && \
|
||||
sudo rm -rf ${DEPLOY_PATH}/etc/*
|
||||
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 14084a207829189b12e258ff3d9b71d7a8194de3
|
||||
Subproject commit cc10299c2ebca1fa18fd30017cbab8291bda633b
|
2
utility
2
utility
@ -1 +1 @@
|
||||
Subproject commit 9a1c76e1af73a832f1d44e5c1c41624a8385bdcc
|
||||
Subproject commit 4534f0d1c95856d646e975be0ef669b4127b5d42
|
Loading…
Reference in New Issue
Block a user