[FIX] script pycharm_configuration: support odoo workspace different version

This commit is contained in:
Mathieu Benoit 2025-11-07 01:06:00 -05:00
parent 5277fc1a81
commit f4dec8a73a
2 changed files with 12 additions and 0 deletions

View file

@ -1,6 +1,7 @@
name,script_path,parameters,folder,default
run,./odoo/odoo-bin,--limit-time-real 999999 -c config.conf,run,True
run_parallel_test,./script/test/run_parallel_test.py,,test,
robotlibre_devops_update,./odoo/odoo-bin,--limit-time-real 999999 --no-http -c config.conf --stop-after-init --dev cg -d robotlibre -u erplibre_devops,devops,
cg_cg,./odoo/odoo-bin,--limit-time-real 999999 --no-http -c config.conf --stop-after-init --dev cg -d code_generator -i code_generator_code_generator,code_generator,
cg_cg_template,./odoo/odoo-bin,--limit-time-real 999999 --no-http -c config.conf --stop-after-init --dev cg -d template -i code_generator_template_code_generator,code_generator_template,
code_generator_auto_backup,./odoo/odoo-bin,--limit-time-real 999999 --no-http -c config.conf --stop-after-init --dev cg -d code_generator -i code_generator_auto_backup,code_generator,

1 name script_path parameters folder default
2 run ./odoo/odoo-bin --limit-time-real 999999 -c config.conf run True
3 run_parallel_test ./script/test/run_parallel_test.py test
4 robotlibre_devops_update ./odoo/odoo-bin --limit-time-real 999999 --no-http -c config.conf --stop-after-init --dev cg -d robotlibre -u erplibre_devops devops
5 cg_cg ./odoo/odoo-bin --limit-time-real 999999 --no-http -c config.conf --stop-after-init --dev cg -d code_generator -i code_generator_code_generator code_generator
6 cg_cg_template ./odoo/odoo-bin --limit-time-real 999999 --no-http -c config.conf --stop-after-init --dev cg -d template -i code_generator_template_code_generator code_generator_template
7 code_generator_auto_backup ./odoo/odoo-bin --limit-time-real 999999 --no-http -c config.conf --stop-after-init --dev cg -d code_generator -i code_generator_auto_backup code_generator

View file

@ -26,6 +26,7 @@ _logger = logging.getLogger(__name__)
PROJECT_NAME = os.path.basename(os.getcwd())
IDEA_PATH = "./.idea"
DEFAULT_ODOO_BIN = "./odoo/odoo-bin" # Will be replaced dynamic
IDEA_MISC = os.path.join(IDEA_PATH, "misc.xml")
IDEA_WORKSPACE = os.path.join(IDEA_PATH, "workspace.xml")
VCS_WORKSPACE = os.path.join(IDEA_PATH, "vcs.xml")
@ -35,6 +36,12 @@ PATH_DEFAULT_CONFIGURATION = "./conf/pycharm_default_configuration.csv"
PATH_DEFAULT_CONFIGURATION_PRIVATE = (
"./private/pycharm_default_configuration.private.csv"
)
if os.path.isfile(".odoo-version"):
with open(".odoo-version") as txt:
odoo_version = txt.read()
DEFAULT_ODOO_BIN_UPDATE = f"./odoo{odoo_version}/odoo/odoo-bin"
else:
DEFAULT_ODOO_BIN_UPDATE = None
def get_config():
@ -342,6 +349,10 @@ def add_configuration(dct_xml, file_name, config):
conf_default = bool(default_conf.get("default"))
if conf_default:
last_default = f"Python.{conf_name}"
if DEFAULT_ODOO_BIN_UPDATE:
conf_script_path = conf_script_path.replace(
DEFAULT_ODOO_BIN, DEFAULT_ODOO_BIN_UPDATE
)
conf_script_path_replace = (
conf_script_path
if not conf_script_path.startswith("./")