This commit is contained in:
hoangvv 2025-01-07 23:14:39 +07:00
parent 917a3ef73a
commit 729b7bd6f3
6 changed files with 13 additions and 66 deletions

View File

@ -40,12 +40,9 @@ run_server_docker:
cd ${DEPLOY_PATH} &&\
${DOCKER_COMPOSE_CMD} up -d
restore_database:
@if [ ! -f ${DEPLOY_PATH}/backup/backup.zip ]; then \
echo "Backup file does not exist. Skipping restoration."; \
else \
echo "Restoring database from backup..."; \
sudo docker exec ${CONTAINER_ID} odoo db --config=/etc/odoo/${CONFIG} load new_db ${DEPLOY_PATH}/backup/backup.zip; \
fi
echo "Restoring database from backup..."; \
sudo docker exec ${CONTAINER_ID} odoo db --config=/etc/odoo/${CONFIG} load new_db /etc/odoo/backup/backup.zip; \
stop_server_docker:
@if ! docker ps | grep -q "${CONTAINER_ID}"; then \
echo "Container not found. Skipping"; \

View File

@ -19,6 +19,7 @@ services:
- ${ENTRYPOINT:-./entrypoint.sh}:/entrypoint.sh # use for install additional package (Optional)
- ${ODOO_ADDONS:-./addons}:/mnt/extra-addons
- ${ODOO_CONFIG:-./etc}:/etc/odoo
- ${ODOO_BACKUP:-./backup/ce}:/etc/odoo/backup
restart: always
db:
image: postgres:16

View File

@ -7,6 +7,7 @@ ODOO_CONTAINER=
# ODOO_CHAT_PORT=
ODOO_ADDONS=./addons
ODOO_CONFIG=./etc
ODOO_BACKUP=./backup/ce
#Database
PG_PORT=
PG_DB=

View File

@ -1,59 +0,0 @@
#!/usr/bin/bash
export PATH=/usr/sbin:$PATH
export DEBIAN_FRONTEND=noninteractive
set -euo pipefail
readonly COLOUR_RESET='\e[0m'
readonly aCOLOUR=(
'\e[38;5;154m' # green | Lines, bullets and separators
'\e[1m' # Bold white | Main descriptions
'\e[90m' # Grey | Credits
'\e[91m' # Red | Update notifications Alert
'\e[33m' # Yellow | Emphasis
)
trap 'onCtrlC' INT
onCtrlC() {
echo -e "${COLOUR_RESET}"
exit 1
}
Show() {
# OK
if (($1 == 0)); then
echo -e "${aCOLOUR[2]}[$COLOUR_RESET${aCOLOUR[0]} OK $COLOUR_RESET${aCOLOUR[2]}]$COLOUR_RESET $2"
# FAILED
elif (($1 == 1)); then
echo -e "${aCOLOUR[2]}[$COLOUR_RESET${aCOLOUR[3]}FAILED$COLOUR_RESET${aCOLOUR[2]}]$COLOUR_RESET $2"
exit 1
# INFO
elif (($1 == 2)); then
echo -e "${aCOLOUR[2]}[$COLOUR_RESET${aCOLOUR[0]} INFO $COLOUR_RESET${aCOLOUR[2]}]$COLOUR_RESET $2"
# NOTICE
elif (($1 == 3)); then
echo -e "${aCOLOUR[2]}[$COLOUR_RESET${aCOLOUR[4]}NOTICE$COLOUR_RESET${aCOLOUR[2]}]$COLOUR_RESET $2"
fi
}
Warn() {
echo -e "${aCOLOUR[3]}$1$COLOUR_RESET"
}
GreyStart() {
echo -e "${aCOLOUR[2]}\c"
}
ColorReset() {
echo -e "$COLOUR_RESET\c"
}
stop_test_db() {
cd "$(pwd)/testing_env"
Show 2 "Stopping containers..."
docker-compose down
rm -f "$(find . -type f \( -name "*.yml" -o -name "*.template" \) -not -name "docker-compose.yml" -not -name "env.template" )"
Show 0 "Test Server is offline"
}
stop_test_db

View File

@ -44,6 +44,7 @@ def main():
parser.add_argument('--addons', type=str, help='')
parser.add_argument('--config', type=str, help='')
parser.add_argument('--container', type=str, help='')
parser.add_argument('--backup', type=str, help='')
args = parser.parse_args()
db_port = args.db_port
db_pass = "smartyourlife"
@ -56,6 +57,7 @@ def main():
addons=args.addons
config_path=args.config
app_port = 10017
backup = args.backup
# Copy template files
os.makedirs(f"{base_dir}/etc", exist_ok=True)
color_log.Show(3,f"Copy {base_dir}/odoo.conf.template to {base_dir}/etc/odoo.conf")
@ -88,5 +90,9 @@ def main():
set_key(dotenv_path=env_file_path, key_to_set="ODOO_IMAGE", value_to_set=image,quote_mode="never")
set_key(dotenv_path=env_file_path, key_to_set="ODOO_TAG", value_to_set=tag,quote_mode="never")
set_key(dotenv_path=env_file_path, key_to_set="ODOO_CONTAINER", value_to_set=container,quote_mode="never")
if (backup == 'community'):
set_key(dotenv_path=env_file_path, key_to_set="ODOO_BACKUP", value_to_set=f'{base_dir}/backup/ce',quote_mode="never")
if (backup == 'enterprise'):
set_key(dotenv_path=env_file_path, key_to_set="ODOO_BACKUP", value_to_set=f'{base_dir}/backup/enterprise',quote_mode="never")
if __name__ == "__main__":
main()

View File

@ -92,7 +92,8 @@ Generate_Config(){
cp "${DEPLOY_PATH}/env.template" "${DEPLOY_PATH}/.env"
fi
python "$SETUP_PATH/gen-config.py" --db_port 5432 --db_user $PG_USER --deploy_path "$DEPLOY_PATH" \
--db ${PG_DB:=odoo} --image "${ODOO_IMAGE}" --container "${ODOO_CONTAINER}" --tag "${ODOO_TAG:=latest}" --addons "${ODOO_ADDONS}" --config "${ODOO_CONFIG}"
--db ${PG_DB:=odoo} --image "${ODOO_IMAGE}" --container "${ODOO_CONTAINER}" --tag "${ODOO_TAG:=latest}" \
--addons "${ODOO_ADDONS}" --config "${ODOO_CONFIG}" --backup community
Show 0 " Generate Config Complete"
}