Community mailing list archives
Re: Usage of multiple modules from many repositoriesby
XOE Corp. SAS, David Arnold
- As long as you are not working with docker, softlinks might work for you.
- For deployment you can use git sparse checkout to match your needs (the mixing part iirc you would need to do by manual copying)
- For OCA modules you can also use wheelhouse.odoo-community.org and install via pip
El mié., 8 jun. 2016 a las 13:13, Gustavo Marino (<email@example.com>) escribió:
On development machines, we use a separate directory, per customer, with a copy of the imported module (manual update to/from the git clone of the original repo).The customer specific addons directory is maintained with git, so it is deployed to production or test using git.This setup allows:
- Many developers working in different machines for the same customer, no conflict on what is installed in customer's server.
- One clear directory with customer addons set, with version control, allowing fast patching of problems found, no need to wait for original source to correct.
- Different customers with different development state on some third party modules (own git repo for heavely customized addons or own common addons)Drawbacks:
- Manual update of modules: you can loose modificationsIn our experience, we found just a few problems with module updates, we gain a lot of flexibility, we experience almost no problem with customer configuration (out of normal development mistakes...) even with multiple developers working for the same customerRegards2016-06-08 14:52 GMT-03:00 Jos De Graeve <firstname.lastname@example.org>:2016-06-08 16:57 GMT+02:00 Giovanni Francesco Capalbo <email@example.com>:Maybe obvious, but relevant. Make soft-links of all of your cloned repos in one directory, and add only that to your cfg file.
Yes, that's also what we do.We have a directory containing all the upstream git repo's and a directory containing the enabled addons.We use ansible to maintain the symlinks and keep the git repo's up to date, so we don't have to do that manually.