Merge pull request #3 from ERPLibre/release/1.0.1

Release/1.0.1
This commit is contained in:
Mathieu Benoit 2020-07-14 22:21:31 -04:00 committed by GitHub
commit 72a48f830f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
35 changed files with 755 additions and 113 deletions

View file

@ -11,8 +11,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed
- Update to Odoo Community 12.0
## [1.0.1] - 2020-07-14
### Added
- Improve documentation with development and production environment
- Improve documentation with git repo
- Move default.xml manifest to root, the default location
- Support default.stage.xml to update prod with dev
- Feature to show diff between manifest, between repo of different manifest
- Update manifest
- Muk theme in erplibre_base
- Add draft account invoice approbation in portal
- New module sale_fix_update_price_unit_when_update_qty
- New module account_invoice_approbation
- New module sale_margin_editor
### Fixed
- Web module display
- Production installation with git_repo
## [1.0.0] - 2020-07-04
### Added
@ -41,7 +55,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Fixed
- Support only python3.6 and python3.7, python3.8 causes error in runtime.
[Unreleased]: http://git.erplibre.ca/ERPLibre/compare/v1.0.0...HEAD
[Unreleased]: http://git.erplibre.ca/ERPLibre/compare/v1.0.1...HEAD
[1.0.1]: http://git.erplibre.ca/ERPLibre/compare/v1.0.0...v1.0.1
[1.0.0]: http://git.erplibre.ca/ERPLibre/compare/v0.1.1...v1.0.0
[0.1.1]: http://git.erplibre.ca/ERPLibre/compare/v0.1.0...v0.1.1
[0.1.0]: http://git.erplibre.ca/ERPLibre/releases/tag/v0.1.0

View file

@ -1,6 +1,27 @@
# ERPLibre documentation
Select a guide to install your environment!
## Easy way to run locally
Clone the project
```bash
git clone http://git.erplibre.ca/ERPLibre.git
cd ERPLibre
```
Support Ubuntu 18.04 and OSX
```bash
./script/install_dev.sh
./script/install_locally_prod.sh
```
Update your configuration if you need to run somehere than 127.0.0.1, file config.conf
```
#xmlrpc_interface = 127.0.0.1
#netrpc_interface = 127.0.0.1
```
Run
```bash
./run.sh
```
## Discover guide
[Guide to run ERPLibre in discover to learn it](./doc/DISCOVER.md).

View file

@ -22,7 +22,7 @@
<project name="account-financial-tools.git" path="addons/OCA_account-financial-tools" remote="OCA" revision="9721abd4c9db653e1d009f8a023e9f750523989f" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="account-fiscal-rule.git" path="addons/OCA_account-fiscal-rule" remote="OCA" revision="f396ba6a2e2acebaaff579f0e6991b669812d64d" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="account-invoice-reporting.git" path="addons/OCA_account-invoice-reporting" remote="OCA" revision="320dd9fce4d212b2dcf5dc4447494964ad1e246d" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="account-invoicing.git" path="addons/OCA_account-invoicing" remote="OCA" revision="9db1c104341f422b8545c3f2906d83bcb69d46ac" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="account-invoicing.git" path="addons/OCA_account-invoicing" remote="OCA" revision="12c270d5ddeb72e0dee250289d24e3a8af4b26b3" upstream="12.0_account_invoice_approbation" dest-branch="12.0_account_invoice_approbation" groups="addons"/>
<project name="account-payment.git" path="addons/OCA_account-payment" remote="OCA" revision="888debebd8e42c1ee5107577ca2f3bc5f38d72e1" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="account-reconcile.git" path="addons/OCA_account-reconcile" remote="OCA" revision="0390b112def3d362d95232d382317511616ee6dd" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="apps-store.git" path="addons/OCA_apps-store" remote="OCA" revision="022d24db4c6463f38b9f4452fe03c9fb8b3a44ce" upstream="12.0" dest-branch="12.0" groups="addons"/>
@ -37,35 +37,35 @@
<project name="credit-control.git" path="addons/OCA_credit-control" remote="OCA" revision="a97496a829cadc0d9be07d7825e93062417ab670" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="currency.git" path="addons/OCA_currency" remote="OCA" revision="5c0d54e37789ecc24bebbe53fa56a92a492575bb" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="data-protection.git" path="addons/OCA_data-protection" remote="OCA" revision="ce4f334a1077b5c15d457f22daaa48b9f639409e" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="development.git" path="addons/MathBenTech_development" remote="MathBenTech" revision="097a5002dd6ec91512406f3add8bb7cad5372218" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="donation.git" path="addons/OCA_donation" remote="OCA" revision="aa6478a72c9673ad6458de19aa2362397c613fae" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="development.git" path="addons/MathBenTech_development" remote="MathBenTech" revision="1f023cdf2a03b8b3fbb176b45657bae2db1c0e3d" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="donation.git" path="addons/OCA_donation" remote="OCA" revision="aa6478a72c9673ad6458de19aa2362397c613fae" upstream="12.0_module_donation_website" dest-branch="12.0_module_donation_website" groups="addons"/>
<project name="e-commerce.git" path="addons/OCA_e-commerce" remote="OCA" revision="d7c99e565f25b495b3c0d252f181d8df4490a757" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="edi.git" path="addons/OCA_edi" remote="OCA" revision="742b1316773f8a1b224e42c65c3c3a7685481a30" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="erplibre_addons.git" path="addons/ERPLibre_erplibre_addons" revision="e68263793556cc0ec0af91be612421613b5cf7a2" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="erplibre_addons.git" path="addons/ERPLibre_erplibre_addons" revision="d66e9b4c9c026c02446664537b9d9a7e63cce002" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="event.git" path="addons/OCA_event" remote="OCA" revision="e2bdf12c61e9967eeb9abc618c79ca43b464ea7f" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="helpdesk.git" path="addons/OCA_helpdesk" remote="OCA" revision="6b84f81c81ff3184526c0ca86ced7bbcdcc4c0b3" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="helpdesk.git" path="addons/OCA_helpdesk" remote="OCA" revision="74da6d49a9493be6ea39eb6da0654e81aca65619" upstream="12.0_dev" dest-branch="12.0_dev" groups="addons"/>
<project name="hr.git" path="addons/OCA_hr" remote="OCA" revision="4743acf7ab796ea3738743a44c62cd516126ec53" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="knowledge.git" path="addons/OCA_knowledge" remote="OCA" revision="9ae45f798bbefa854b03f612e22291ac1b95568d" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="l10n-canada.git" path="addons/OCA_l10n-canada" remote="OCA" revision="5680b485cdfa0b6f1c2f4e32356b5938a9752c00" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="maintenance.git" path="addons/OCA_maintenance" remote="OCA" revision="4e521ec35f6e8b66f86a62db644dadc9206b476e" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="management-system.git" path="addons/OCA_management-system" remote="OCA" revision="479afcc65ee29530e2bcaa7342f93b6783d14d97" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="manufacture.git" path="addons/OCA_manufacture" remote="OCA" revision="ce36844281754a75b527c4ace21837c8a16b75ab" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="margin-analysis.git" path="addons/OCA_margin-analysis" remote="OCA" revision="4a50437ecfa591a72e12255448d38d0fb1037a42" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="margin-analysis.git" path="addons/OCA_margin-analysis" remote="OCA" revision="22907c7ee34dba85085d9459704e38592f00e0b2" upstream="12.0_sale_margin_editor" dest-branch="12.0_sale_margin_editor" groups="addons"/>
<project name="mis-builder.git" path="addons/OCA_mis-builder" remote="OCA" revision="5d7697296ad90794599373940e6fc6cead8ca1a2" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="muk_base.git" path="addons/muk-it_muk_base" remote="muk-it" revision="d888c9695292295a732fcdd4a7b9820978df5e7f" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="muk_dms.git" path="addons/muk-it_muk_dms" remote="muk-it" revision="020e604d635a229c09a07e839d95f8e37706606a" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="muk_docs.git" path="addons/muk-it_muk_docs" remote="muk-it" revision="a8ea02b9f00ae9fe5d2ea25ac43d23532cc11d45" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="muk_misc.git" path="addons/muk-it_muk_misc" remote="muk-it" revision="37b9d6dc20fa686a323057b160015bfc2c2c8143" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="muk_quality.git" path="addons/muk-it_muk_quality" remote="muk-it" revision="1a4c6f25c5e4fe0029d406d6283555bd23a44d27" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="muk_web.git" path="addons/muk-it_muk_web" remote="muk-it" revision="431d86d6694e846b407c84f00a31a10f0cf5b83b" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="muk_website.git" path="addons/muk-it_muk_website" remote="muk-it" revision="c1e6c1755d09562f66247832bd01a0d580c43e23" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="muk_web.git" path="addons/muk-it_muk_web" remote="muk-it" revision="431d86d6694e846b407c84f00a31a10f0cf5b83b" upstream="12.0_fix_web_conflict_menu" dest-branch="12.0_fix_web_conflict_menu" groups="addons"/>
<project name="muk_website.git" path="addons/muk-it_muk_website" remote="muk-it" revision="c1e6c1755d09562f66247832bd01a0d580c43e23" upstream="12.0_remove_autoinstall" dest-branch="12.0_remove_autoinstall" groups="addons"/>
<project name="multi-company.git" path="addons/OCA_multi-company" remote="OCA" revision="fdb4d255b6a3b51925f8a226bfebf2eccabd2786" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo-base-addons.git" path="addons/Numigi_odoo-base-addons" remote="Numigi" revision="60bc1e5414ff3bf81a6d72831da2eaad94ccbcb2" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo-business-spending-management-quebec-canada.git" path="addons/MathBenTech_odoo-business-spending-management-quebec-canada" remote="MathBenTech" revision="745cb2ec3df909e6f3622b4ef19971e6e83b46b5" upstream="stable_prod_12.0" dest-branch="stable_prod_12.0" groups="addons"/>
<project name="odoo-business-spending-management-quebec-canada.git" path="addons/MathBenTech_odoo-business-spending-management-quebec-canada" remote="MathBenTech" revision="822d2e018554119fa63f79ac91625473ec54b9fe" upstream="12.0_sale_order_line_timesheet_attribution" dest-branch="12.0_sale_order_line_timesheet_attribution" groups="addons"/>
<project name="odoo-entertainment-addons.git" path="addons/Numigi_odoo-entertainment-addons" remote="Numigi" revision="82c33255261eff361a91da13b28e4e68a95b25dd" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo-git-addons.git" path="addons/Numigi_odoo-git-addons" remote="Numigi" revision="96db417669a631877c1439f617ac8c0cc6edfff9" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo-hr-addons.git" path="addons/Numigi_odoo-hr-addons" remote="Numigi" revision="0034395bcdb38c02749644607f43ccac760dfb49" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo-partner-addons.git" path="addons/Numigi_odoo-partner-addons" remote="Numigi" revision="f0c54ffb3409cd8e748ae5db19077c7c966cd57f" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo-partner-addons.git" path="addons/Numigi_odoo-partner-addons" remote="Numigi" revision="f0c54ffb3409cd8e748ae5db19077c7c966cd57f" upstream="12.0_partner_no_vat_improve_no_vat" dest-branch="12.0_partner_no_vat_improve_no_vat" groups="addons"/>
<project name="odoo-product-addons.git" path="addons/Numigi_odoo-product-addons" remote="Numigi" revision="36751bd3c6baced6a0b3f5ddb675d87cb04a745c" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo-project-addons.git" path="addons/Numigi_odoo-project-addons" remote="Numigi" revision="4388a4ca61b87032e2c3783dc2740b299cd31b6f" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo-purchase-addons.git" path="addons/Numigi_odoo-purchase-addons" remote="Numigi" revision="5d226ca3887c77e31467a192a0fbe4066bf7842c" upstream="12.0" dest-branch="12.0" groups="addons"/>
@ -73,8 +73,8 @@
<project name="odoo-survey-addons.git" path="addons/Numigi_odoo-survey-addons" remote="Numigi" revision="9e897bae38ff0d6d3180296a552d994bb10c0eff" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo-timesheet-addons.git" path="addons/Numigi_odoo-timesheet-addons" remote="Numigi" revision="d2bbb19dc8f917272694ff0a6231275083fb7e74" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo-web-addons.git" path="addons/Numigi_odoo-web-addons" remote="Numigi" revision="3a4aa46439a794429d5939cff561f42c4f312a99" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo.git" path="odoo" remote="odoo" revision="94bcbc92e5e5a6fd3de7267e3c01f8c11fb045f4" upstream="12.0_feature_5_star_CRM" dest-branch="12.0_feature_5_star_CRM" groups="odoo" clone-depth="1"/>
<project name="odoo_addons.git" path="addons/Smile-SA_odoo_addons" remote="Smile-SA" revision="2be318c18ac5b0fe2129cc61d86419033ff07d5f" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="odoo.git" path="odoo" remote="odoo" revision="0e0213c487041d9969444e312430c23e994ed778" upstream="ERPLibre/12.0" dest-branch="ERPLibre/12.0" clone-depth="10" groups="odoo"/>
<project name="odoo_addons.git" path="addons/Smile-SA_odoo_addons" remote="Smile-SA" revision="2be318c18ac5b0fe2129cc61d86419033ff07d5f" upstream="12.0_remote_autoinstall" dest-branch="12.0_remote_autoinstall" groups="addons"/>
<project name="openeducat_erp.git" path="addons/openeducat_openeducat_erp" remote="openeducat" revision="4a2a1d930d88a127959fd39af22f7d818e08663d" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="partner-contact.git" path="addons/OCA_partner-contact" remote="OCA" revision="a79e57685caad7d0dec9318378fdd46862e31be4" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="pos.git" path="addons/OCA_pos" remote="OCA" revision="6a922b3d87491d59128a097f286be1e3f3fc11df" upstream="12.0" dest-branch="12.0" groups="addons"/>
@ -82,11 +82,11 @@
<project name="product-pack.git" path="addons/OCA_product-pack" remote="OCA" revision="b9eccbdb9ae0fdd3ed1138270c3eff3142a015c3" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="product-variant.git" path="addons/OCA_product-variant" remote="OCA" revision="fb4f4042b3ca0ee6cde6ab0625e2c914b96b174f" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="project-reporting.git" path="addons/OCA_project-reporting" remote="OCA" revision="7f71f086dd732170e7605dfdf80e6cc4969a711e" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="project.git" path="addons/OCA_project" remote="OCA" revision="4390f1ffa9f00058b0d1aa7fae27fb74bbefb83b" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="project.git" path="addons/OCA_project" remote="OCA" revision="4390f1ffa9f00058b0d1aa7fae27fb74bbefb83b" upstream="12.0_fix_conflict_project_key" dest-branch="12.0_fix_conflict_project_key" groups="addons"/>
<project name="purchase-workflow.git" path="addons/OCA_purchase-workflow" remote="OCA" revision="d17436791bcfbe0985af137163564af3fe90bbe1" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="queue.git" path="addons/OCA_queue" remote="OCA" revision="0b71a3951b583f154f170adacf4920e6d7138329" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="reporting-engine.git" path="addons/OCA_reporting-engine" remote="OCA" revision="14fba657a0dbda1258edcf3c92886866e7cecf67" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="sale-workflow.git" path="addons/OCA_sale-workflow" remote="OCA" revision="4b200358312689d944aaaf012c5723bb2bc9cb77" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="sale-workflow.git" path="addons/OCA_sale-workflow" remote="OCA" revision="4b200358312689d944aaaf012c5723bb2bc9cb77" upstream="12.0_modules_sale_order_line" dest-branch="12.0_modules_sale_order_line" groups="addons"/>
<project name="santelibre_addons.git" path="addons/SanteLibre_santelibre_addons" remote="SanteLibre" revision="ee94058aecee418b3652864f23b54a86ba0f92f4" upstream="master" dest-branch="master" groups="addons"/>
<project name="scrummer.git" path="addons/MathBenTech_scrummer" remote="MathBenTech" revision="38c04c8f7b7fe897d166ded74dda9d8d76f7f4c4" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="server-auth.git" path="addons/OCA_server-auth" remote="OCA" revision="f911c9f31a064cca3012431b70e60a7b89448138" upstream="12.0" dest-branch="12.0" groups="addons"/>
@ -96,8 +96,8 @@
<project name="server-ux.git" path="addons/OCA_server-ux" remote="OCA" revision="655b3cc291a7e3718371a45ebe6f2e0952896adf" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="social.git" path="addons/OCA_social" remote="OCA" revision="7b0836bf7a5c40db332dd90d5ebef619234060ac" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="stock-logistics-warehouse.git" path="addons/OCA_stock-logistics-warehouse" remote="OCA" revision="a591de15150f7b16c1ef23d2fc30c814874dea27" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="timesheet.git" path="addons/OCA_timesheet" remote="OCA" revision="8625e65414801780c91e91bf93b2ed32567f8117" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="timesheet.git" path="addons/OCA_timesheet" remote="OCA" revision="8625e65414801780c91e91bf93b2ed32567f8117" upstream="12.0_support_project_agile_timesheet" dest-branch="12.0_support_project_agile_timesheet" groups="addons"/>
<project name="web.git" path="addons/OCA_web" remote="OCA" revision="b65c492f4011fe4e9dac8c0a26eeef8c43cb1c39" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="website.git" path="addons/OCA_website" remote="OCA" revision="603a44d53a2e7a457560a0f99bdcc95780399ee5" upstream="12.0" dest-branch="12.0" groups="addons"/>
<project name="website.git" path="addons/OCA_website" remote="OCA" revision="603a44d53a2e7a457560a0f99bdcc95780399ee5" upstream="12.0_dev" dest-branch="12.0_dev" groups="addons"/>
<project name="wms.git" path="addons/OCA_wms" remote="OCA" revision="e7a1541f8c513cf755bd82780c6c035d2fafc2ce" upstream="12.0" dest-branch="12.0" groups="addons"/>
</manifest>

View file

@ -19,12 +19,23 @@ cd ERPLibre
./run.sh
```
## Develop in Odoo repository
You need to remove
> clone-depth="1"
from
> ./manifest/default.dev.xml
file to be able to commit and push.
Commit temporary and regenerate with
> ./script/install_locally_dev.sh
## Fork project to create a new project independent of ERPLibre (deprecated)
ERPLibre was created by this script. It's now deprecated.
Use this script when you need to fork directly from the original source.
Don't use this script if you want to update from ERPLibre and follow mainstream development.
```bash
./venv/bin/python ./script/fork_project.py --github_token GITHUB_KEY --organization NAME
./script/fork_project.py --github_token GITHUB_KEY --organization NAME
```
# Fork all repo for you own organization
@ -32,7 +43,7 @@ Go to your github account and generate a token to access fork option with your u
This command will fork all repos and ERPLibre to your own organization. It keeps track to ERPLibre.
```bash
./venv/bin/python ./script/fork_project_ERPLibre.py --github_token GITHUB_KEY --organization NAME
./script/fork_project_ERPLibre.py --github_token GITHUB_KEY --organization NAME
```
## Generate manifest from csv repo
@ -40,7 +51,7 @@ Add repo in file [./source_repo_addons.csv](./source_repo_addons.csv)
Execute to generate manifest of Repo
```bash
./venv/bin/python ./script/fork_project_ERPLibre.py --skip_fork
./script/fork_project_ERPLibre.py --skip_fork
```
## Move database prod to dev
@ -52,25 +63,31 @@ Run:
# TODO
```bash
./venv/bin/python ./script/git_change_remote.py
./script/git_change_remote.py
```
## Change git url https to git
This will update all urls in git format:
```bash
./venv/bin/python ./script/git_change_remote_https_to_git.py
./script/git_change_remote_https_to_git.py
```
## Diff repo with another project
Tools to display the differences between the repo and another project.
```bash
./venv/bin/python ./script/list_repo_diff.py --sync_to /path/to/project/erplibre --dyr_sync
./script/git_change_remote.py --sync_to /path/to/project/erplibre --dry_sync
```
## Sync repo with another project
Tools to synchronise the repo with another project. This will show differences and try to checkout on the same commit in all repo.
```bash
./venv/bin/python ./script/git_change_remote.py --sync_to /path/to/project/erplibre
./script/git_change_remote.py --sync_to /path/to/project/erplibre
```
## Diff code between manifest
To show diff between commits in different manifest
```bash
./script/git_diff_repo_manifest.py --input1 ./manifest/MANIFEST1.xml --input2 ./manifest/MANIFEST2.xml
```
## Add repo
@ -78,10 +95,17 @@ Access to a new repo, add your URL to file [source_repo_addons.csv](../source_re
Fork the repo to be able to push new code:
```bash
./venv/bin/python ./script/fork_project_ERPLibre.py
./script/fork_project_ERPLibre.py
```
To regenerate only manifest.xml.
```bash
./venv/bin/python ./script/fork_project_ERPLibre.py --skip_fork
./script/fork_project_ERPLibre.py --skip_fork
```
# Coding
## Create module scaffold (run in the venv)
```bash
source ./venv/bin/activate
python odoo/odoo-bin scaffold MODULE_NAME addons/REPO_NAME/
```

View file

@ -24,8 +24,9 @@ Access to a new repo, add your URL to file [source_repo_addons.csv](../source_re
Execute script:
```bash
./venv/bin/python ./script/git_repo_manifest.py
./script/install_locally_dev.sh
./script/git_repo_manifest.py
git checkout -b new_branch
git commit -am "Add new repo"
./script/install_locally_dev.sh
```
[Update your repo.](./GIT_REPO.md)

View file

@ -10,7 +10,7 @@ curl https://storage.googleapis.com/git-repo-downloads/repo > ./venv/repo
## prod
```bash
./venv/repo init -u http://git.erplibre.ca/ERPLibre -b 12.0_repo
./venv/repo init -u http://git.erplibre.ca/ERPLibre -b master
./venv/repo sync
```
@ -37,13 +37,25 @@ Freezes all repo, from dev to prod.
This will add revision git hash in the Manifest.
```bash
./venv/repo manifest -r -o ./manifest/default.xml
./venv/repo manifest -r -o ./default.xml
```
Do your commit.
```bash
git commit -am "[#ticket] subject: short sentence"
```
### Mix prod and dev to do a stage
When dev contain specific revision with default revision, you want to replace default revision by prod revision and keep specific version, do:
```bash
./script/git_merge_repo_manifest.py --input1 ./manifest/default.dev.xml --input2 ./default.xml --output ./manifest/default.staged.xml
git commit -am "Updated manifest/default.staged.xml"
git daemon --base-path=. --export-all --reuseaddr --informative-errors --verbose &
./venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --abbrev-ref HEAD) -m ./manifest/default.staged.xml
./venv/repo sync -m ./manifest/default.staged.xml
./venv/repo manifest -r -o ./default.xml
```
## Create a dev version
```bash
./venv/repo manifest -o ./manifest/default.dev.xml
@ -51,4 +63,26 @@ git commit -am "[#ticket] subject: short sentence"
Do your commit.
```bash
git commit -am "[#ticket] subject: short sentence"
```
## Useful command
### Search all repo with specific branch name
```bash
./venv/repo forall -pc "git branch -a|grep BRANCH"
```
### Search missing branch in all repo
```bash
./venv/repo forall -pc 'git branch -a|(grep /BRANCH$||echo "no match")|grep "no match"'
```
### Search change file in all repo
```bash
./venv/repo forall -pc "git status -s"
```
### Clean all
Maybe, some version diverge from your manifest. Simply clean all and relaunch your installation.
```bash
./script/clean_repo_manifest.sh
```

View file

@ -1,3 +1,3 @@
# HOW TO
## Update changelog
Please, read documentation (keepachangelog.com)[https://keepachangelog.com]
Please, read documentation [keepachangelog.com](https://keepachangelog.com)

View file

@ -4,18 +4,46 @@
### 1. Clone the project:
```bash
git clone https://git.erplibre.ca/ERPLibre.git
git clone http://git.erplibre.ca/ERPLibre.git
cd ERPLibre
```
### 2. Modify the parameters
Modify the file env_var.sh for production installation.
### 3. Execute the script:
Support Ubuntu 18.04 server
```bash
cd ERPLibre
./script/install_dev.sh
./script/install_production.sh
```
A service is running by systemd, you can access with the DNS name, found it in env_var.sh
### 4. SSL:
Generate a ssl certificat
```bash
sudo certbot --nginx
```
## Watch log
```bash
sudo systemctl -feu [EL_USER]
```
## Run by address ip
Comment following line in /[EL_USER]/erplibre/config.conf
```
#xmlrpc_interface = 127.0.0.1
#netrpc_interface = 127.0.0.1
#proxy_mode = True
```
Add your address ip in nginx config at server_name in /etc/nginx/sites-available/[EL_WEBSITE_NAME]
Restart daemon:
```bash
sudo systemctl restart nginx
sudo systemctl restart [EL_USER]
```
## Production execution
```bash
@ -24,9 +52,14 @@ cd /[EL_USER]/erplibre
```
## Move database prod to dev
When moving database prod to your dev environment, you want to remove email servers, and install user test to test the database.
Run:
```bash
./run.sh --stop-after-init -i user_test,disable_mail_server --dev all -d DATABASE
```
## Update production
Simply update all feature.
```bash
./run.sh --limit-time-real 99999 --stop-after-init -u all -d DATABASE
```

View file

@ -3,7 +3,7 @@ A guide on how to do a release.
## Generate new prod
```bash
./venv/repo manifest -r -o ./manifest/default.xml
./venv/repo manifest -r -o ./default.xml
```
Do your commit.
```bash
@ -11,11 +11,25 @@ git commit -am "[#ticket] subject: short sentence"
```
## Merge release
Merge your feature to master. Generate a new tag. Fill CHANGELOG.md
When ready to make a release, create a branch release/#.#.# and create a pull request to master.
Update file CHANGELOG.md and create a section with new version.
Merge it when maintener accept it.
Add a tag on the commit on branch master with your release. When adding tag, be sure to update default.xml
```bash
git tag v#.#.#
# Push your tags
git push --tags
# Add tags for all repo
./venv/repo forall -pc "git tag ERPLibre/v#.#.#"
./venv/repo forall -pc "git push ERPLibre --tags"
# Get all difference between a tag and HEAD, to update the CHANGELOG.md
./venv/repo forall -pc "git diff ERPLibre/v#.#.#..HEAD"
```
# TIPS
## Compare diff repo with another ERPLibre project
To generate a list of differences between repo git commit, do
```bash
./venv/bin/python ./script/git_change_remote.py --sync_to /path/to/directory
./script/git_change_remote.py --sync_to /path/to/directory
```

View file

@ -20,22 +20,30 @@ With arguments
### Method 2
Execute your own python script:
```bash
source ./venv/bin/activate
python odoo/odoo-bin -c config.conf --log-level debug
./run.sh --log-level debug
```
### Update all
Great idea to run it when updating Odoo, it updates database of each modules.
```bash
python odoo/odoo-bin -c config.conf -d [DATABASE] -u all --log-level debug
./run.sh -d [DATABASE] -u all --log-level debug
```
### Update module
```bash
python odoo/odoo-bin -c config.conf -d [DATABASE] -u [module] --log-level debug
./run.sh -d [DATABASE] -u [module] --log-level debug
```
### Test
First execution, install you requirements, choose a new database.
```bash
python odoo/odoo-bin -c config.conf -d [DATABASE] -i [module to test] --test-enable --stop-after-init --log-level=test --test-tags [module_name][tags]
./run.sh -d [DATABASE] -i [module to test] --test-enable --stop-after-init --log-level=test
```
Execute your test on specific module.
```bash
./run.sh -d [DATABASE] -u [module to test] --test-enable --stop-after-init --log-level=test
```
Execute your test on specific module with tags.
```bash
./run.sh -d [DATABASE] -u [module to test] --test-enable --stop-after-init --log-level=test --test-tags [module_name][tags]
```

View file

@ -19,5 +19,6 @@ EL_INSTALL_NGINX="True"
# Set the website name
EL_WEBSITE_NAME="_"
EL_GITHUB_TOKEN=""
EL_MANIFEST_PROD="./manifest/default.xml"
EL_MANIFEST_PROD="./default.xml"
EL_MANIFEST_DEV="./manifest/default.dev.xml"
EL_MANIFEST_EXP="./manifest/default.experimental.xml"

View file

@ -22,7 +22,7 @@
<project name="account-financial-tools.git" path="addons/OCA_account-financial-tools" remote="OCA" groups="addons"/>
<project name="account-fiscal-rule.git" path="addons/OCA_account-fiscal-rule" remote="OCA" groups="addons"/>
<project name="account-invoice-reporting.git" path="addons/OCA_account-invoice-reporting" remote="OCA" groups="addons"/>
<project name="account-invoicing.git" path="addons/OCA_account-invoicing" remote="OCA" groups="addons"/>
<project name="account-invoicing.git" path="addons/OCA_account-invoicing" remote="OCA" revision="12.0_account_invoice_approbation" groups="addons"/>
<project name="account-payment.git" path="addons/OCA_account-payment" remote="OCA" groups="addons"/>
<project name="account-reconcile.git" path="addons/OCA_account-reconcile" remote="OCA" groups="addons"/>
<project name="apps-store.git" path="addons/OCA_apps-store" remote="OCA" groups="addons"/>
@ -37,35 +37,35 @@
<project name="credit-control.git" path="addons/OCA_credit-control" remote="OCA" groups="addons"/>
<project name="currency.git" path="addons/OCA_currency" remote="OCA" groups="addons"/>
<project name="data-protection.git" path="addons/OCA_data-protection" remote="OCA" groups="addons"/>
<project name="development.git" path="addons/MathBenTech_development" remote="MathBenTech" groups="addons"/>
<project name="donation.git" path="addons/OCA_donation" remote="OCA" groups="addons"/>
<project name="development.git" path="addons/MathBenTech_development" remote="MathBenTech" revision="12.0" groups="addons"/>
<project name="donation.git" path="addons/OCA_donation" remote="OCA" revision="12.0_module_donation_website" groups="addons"/>
<project name="e-commerce.git" path="addons/OCA_e-commerce" remote="OCA" groups="addons"/>
<project name="edi.git" path="addons/OCA_edi" remote="OCA" groups="addons"/>
<project name="erplibre_addons.git" path="addons/ERPLibre_erplibre_addons" remote="ERPLibre" groups="addons"/>
<project name="erplibre_addons.git" path="addons/ERPLibre_erplibre_addons" remote="ERPLibre" revision="12.0" groups="addons"/>
<project name="event.git" path="addons/OCA_event" remote="OCA" groups="addons"/>
<project name="helpdesk.git" path="addons/OCA_helpdesk" remote="OCA" groups="addons"/>
<project name="helpdesk.git" path="addons/OCA_helpdesk" remote="OCA" revision="12.0_dev" groups="addons"/>
<project name="hr.git" path="addons/OCA_hr" remote="OCA" groups="addons"/>
<project name="knowledge.git" path="addons/OCA_knowledge" remote="OCA" groups="addons"/>
<project name="l10n-canada.git" path="addons/OCA_l10n-canada" remote="OCA" groups="addons"/>
<project name="maintenance.git" path="addons/OCA_maintenance" remote="OCA" groups="addons"/>
<project name="management-system.git" path="addons/OCA_management-system" remote="OCA" groups="addons"/>
<project name="manufacture.git" path="addons/OCA_manufacture" remote="OCA" groups="addons"/>
<project name="margin-analysis.git" path="addons/OCA_margin-analysis" remote="OCA" groups="addons"/>
<project name="margin-analysis.git" path="addons/OCA_margin-analysis" remote="OCA" revision="12.0_sale_margin_editor" groups="addons"/>
<project name="mis-builder.git" path="addons/OCA_mis-builder" remote="OCA" groups="addons"/>
<project name="muk_base.git" path="addons/muk-it_muk_base" remote="muk-it" groups="addons"/>
<project name="muk_dms.git" path="addons/muk-it_muk_dms" remote="muk-it" groups="addons"/>
<project name="muk_docs.git" path="addons/muk-it_muk_docs" remote="muk-it" groups="addons"/>
<project name="muk_misc.git" path="addons/muk-it_muk_misc" remote="muk-it" groups="addons"/>
<project name="muk_quality.git" path="addons/muk-it_muk_quality" remote="muk-it" groups="addons"/>
<project name="muk_web.git" path="addons/muk-it_muk_web" remote="muk-it" groups="addons"/>
<project name="muk_website.git" path="addons/muk-it_muk_website" remote="muk-it" groups="addons"/>
<project name="muk_web.git" path="addons/muk-it_muk_web" remote="muk-it" revision="12.0_fix_web_conflict_menu" groups="addons"/>
<project name="muk_website.git" path="addons/muk-it_muk_website" remote="muk-it" revision="12.0_remove_autoinstall" groups="addons"/>
<project name="multi-company.git" path="addons/OCA_multi-company" remote="OCA" groups="addons"/>
<project name="odoo-base-addons.git" path="addons/Numigi_odoo-base-addons" remote="Numigi" groups="addons"/>
<project name="odoo-business-spending-management-quebec-canada.git" path="addons/MathBenTech_odoo-business-spending-management-quebec-canada" remote="MathBenTech" revision="stable_prod_12.0" groups="addons"/>
<project name="odoo-business-spending-management-quebec-canada.git" path="addons/MathBenTech_odoo-business-spending-management-quebec-canada" remote="MathBenTech" revision="12.0_sale_order_line_timesheet_attribution" groups="addons"/>
<project name="odoo-entertainment-addons.git" path="addons/Numigi_odoo-entertainment-addons" remote="Numigi" groups="addons"/>
<project name="odoo-git-addons.git" path="addons/Numigi_odoo-git-addons" remote="Numigi" groups="addons"/>
<project name="odoo-hr-addons.git" path="addons/Numigi_odoo-hr-addons" remote="Numigi" groups="addons"/>
<project name="odoo-partner-addons.git" path="addons/Numigi_odoo-partner-addons" remote="Numigi" groups="addons"/>
<project name="odoo-partner-addons.git" path="addons/Numigi_odoo-partner-addons" remote="Numigi" revision="12.0_partner_no_vat_improve_no_vat" groups="addons"/>
<project name="odoo-product-addons.git" path="addons/Numigi_odoo-product-addons" remote="Numigi" groups="addons"/>
<project name="odoo-project-addons.git" path="addons/Numigi_odoo-project-addons" remote="Numigi" groups="addons"/>
<project name="odoo-purchase-addons.git" path="addons/Numigi_odoo-purchase-addons" remote="Numigi" groups="addons"/>
@ -73,8 +73,8 @@
<project name="odoo-survey-addons.git" path="addons/Numigi_odoo-survey-addons" remote="Numigi" groups="addons"/>
<project name="odoo-timesheet-addons.git" path="addons/Numigi_odoo-timesheet-addons" remote="Numigi" groups="addons"/>
<project name="odoo-web-addons.git" path="addons/Numigi_odoo-web-addons" remote="Numigi" groups="addons"/>
<project name="odoo.git" path="odoo" remote="odoo" revision="12.0_feature_5_star_CRM" clone-depth="1" groups="odoo"/>
<project name="odoo_addons.git" path="addons/Smile-SA_odoo_addons" remote="Smile-SA" groups="addons"/>
<project name="odoo.git" path="odoo" remote="odoo" revision="ERPLibre/12.0" clone-depth="10" groups="odoo"/>
<project name="odoo_addons.git" path="addons/Smile-SA_odoo_addons" remote="Smile-SA" revision="12.0_remote_autoinstall" groups="addons"/>
<project name="openeducat_erp.git" path="addons/openeducat_openeducat_erp" remote="openeducat" groups="addons"/>
<project name="partner-contact.git" path="addons/OCA_partner-contact" remote="OCA" groups="addons"/>
<project name="pos.git" path="addons/OCA_pos" remote="OCA" groups="addons"/>
@ -82,11 +82,11 @@
<project name="product-pack.git" path="addons/OCA_product-pack" remote="OCA" groups="addons"/>
<project name="product-variant.git" path="addons/OCA_product-variant" remote="OCA" groups="addons"/>
<project name="project-reporting.git" path="addons/OCA_project-reporting" remote="OCA" groups="addons"/>
<project name="project.git" path="addons/OCA_project" remote="OCA" groups="addons"/>
<project name="project.git" path="addons/OCA_project" remote="OCA" revision="12.0_fix_conflict_project_key" groups="addons"/>
<project name="purchase-workflow.git" path="addons/OCA_purchase-workflow" remote="OCA" groups="addons"/>
<project name="queue.git" path="addons/OCA_queue" remote="OCA" groups="addons"/>
<project name="reporting-engine.git" path="addons/OCA_reporting-engine" remote="OCA" groups="addons"/>
<project name="sale-workflow.git" path="addons/OCA_sale-workflow" remote="OCA" groups="addons"/>
<project name="sale-workflow.git" path="addons/OCA_sale-workflow" remote="OCA" revision="12.0_modules_sale_order_line" groups="addons"/>
<project name="santelibre_addons.git" path="addons/SanteLibre_santelibre_addons" remote="SanteLibre" revision="master" groups="addons"/>
<project name="scrummer.git" path="addons/MathBenTech_scrummer" remote="MathBenTech" groups="addons"/>
<project name="server-auth.git" path="addons/OCA_server-auth" remote="OCA" groups="addons"/>
@ -96,8 +96,8 @@
<project name="server-ux.git" path="addons/OCA_server-ux" remote="OCA" groups="addons"/>
<project name="social.git" path="addons/OCA_social" remote="OCA" groups="addons"/>
<project name="stock-logistics-warehouse.git" path="addons/OCA_stock-logistics-warehouse" remote="OCA" groups="addons"/>
<project name="timesheet.git" path="addons/OCA_timesheet" remote="OCA" groups="addons"/>
<project name="timesheet.git" path="addons/OCA_timesheet" remote="OCA" revision="12.0_support_project_agile_timesheet" groups="addons"/>
<project name="web.git" path="addons/OCA_web" remote="OCA" groups="addons"/>
<project name="website.git" path="addons/OCA_website" remote="OCA" groups="addons"/>
<project name="website.git" path="addons/OCA_website" remote="OCA" revision="12.0_dev" groups="addons"/>
<project name="wms.git" path="addons/OCA_wms" remote="OCA" groups="addons"/>
</manifest>

View file

@ -0,0 +1,103 @@
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="ERPLibre" fetch="https://github.com/ERPLibre/"/>
<remote name="MathBenTech" fetch="https://github.com/ERPLibre/"/>
<remote name="Numigi" fetch="https://github.com/ERPLibre/"/>
<remote name="OCA" fetch="https://github.com/ERPLibre/"/>
<remote name="SanteLibre" fetch="https://github.com/ERPLibre/"/>
<remote name="Smile-SA" fetch="https://github.com/ERPLibre/"/>
<remote name="muk-it" fetch="https://github.com/ERPLibre/"/>
<remote name="odoo" fetch="https://github.com/ERPLibre/"/>
<remote name="odooaktiv" fetch="https://github.com/ERPLibre/"/>
<remote name="openeducat" fetch="https://github.com/ERPLibre/"/>
<default remote="ERPLibre" revision="12.0" sync-j="4" sync-c="true"/>
<project name="QuotationRevision.git" path="addons/odooaktiv_QuotationRevision" remote="odooaktiv" groups="addons"/>
<project name="account-analytic.git" path="addons/OCA_account-analytic" remote="OCA" groups="addons"/>
<project name="account-budgeting.git" path="addons/OCA_account-budgeting" remote="OCA" groups="addons"/>
<project name="account-closing.git" path="addons/OCA_account-closing" remote="OCA" groups="addons"/>
<project name="account-consolidation.git" path="addons/OCA_account-consolidation" remote="OCA" groups="addons"/>
<project name="account-financial-reporting.git" path="addons/OCA_account-financial-reporting" remote="OCA" groups="addons"/>
<project name="account-financial-tools.git" path="addons/OCA_account-financial-tools" remote="OCA" groups="addons"/>
<project name="account-fiscal-rule.git" path="addons/OCA_account-fiscal-rule" remote="OCA" groups="addons"/>
<project name="account-invoice-reporting.git" path="addons/OCA_account-invoice-reporting" remote="OCA" groups="addons"/>
<project name="account-invoicing.git" path="addons/OCA_account-invoicing" remote="OCA" groups="addons"/>
<project name="account-payment.git" path="addons/OCA_account-payment" remote="OCA" groups="addons"/>
<project name="account-reconcile.git" path="addons/OCA_account-reconcile" remote="OCA" groups="addons"/>
<project name="apps-store.git" path="addons/OCA_apps-store" remote="OCA" groups="addons"/>
<project name="bank-payment.git" path="addons/OCA_bank-payment" remote="OCA" groups="addons"/>
<project name="bank-statement-import.git" path="addons/OCA_bank-statement-import" remote="OCA" groups="addons"/>
<project name="brand.git" path="addons/OCA_brand" remote="OCA" groups="addons"/>
<project name="business-requirement.git" path="addons/OCA_business-requirement" remote="OCA" groups="addons"/>
<project name="commission.git" path="addons/OCA_commission" remote="OCA" groups="addons"/>
<project name="community-data-files.git" path="addons/OCA_community-data-files" remote="OCA" groups="addons"/>
<project name="connector-telephony.git" path="addons/OCA_connector-telephony" remote="OCA" groups="addons"/>
<project name="contract.git" path="addons/OCA_contract" remote="OCA" groups="addons"/>
<project name="credit-control.git" path="addons/OCA_credit-control" remote="OCA" groups="addons"/>
<project name="currency.git" path="addons/OCA_currency" remote="OCA" groups="addons"/>
<project name="data-protection.git" path="addons/OCA_data-protection" remote="OCA" groups="addons"/>
<project name="development.git" path="addons/MathBenTech_development" remote="MathBenTech" groups="addons"/>
<project name="donation.git" path="addons/OCA_donation" remote="OCA" groups="addons"/>
<project name="e-commerce.git" path="addons/OCA_e-commerce" remote="OCA" groups="addons"/>
<project name="edi.git" path="addons/OCA_edi" remote="OCA" groups="addons"/>
<project name="erplibre_addons.git" path="addons/ERPLibre_erplibre_addons" remote="ERPLibre" groups="addons"/>
<project name="event.git" path="addons/OCA_event" remote="OCA" groups="addons"/>
<project name="helpdesk.git" path="addons/OCA_helpdesk" remote="OCA" groups="addons"/>
<project name="hr.git" path="addons/OCA_hr" remote="OCA" groups="addons"/>
<project name="knowledge.git" path="addons/OCA_knowledge" remote="OCA" groups="addons"/>
<project name="l10n-canada.git" path="addons/OCA_l10n-canada" remote="OCA" groups="addons"/>
<project name="maintenance.git" path="addons/OCA_maintenance" remote="OCA" groups="addons"/>
<project name="management-system.git" path="addons/OCA_management-system" remote="OCA" groups="addons"/>
<project name="manufacture.git" path="addons/OCA_manufacture" remote="OCA" groups="addons"/>
<project name="margin-analysis.git" path="addons/OCA_margin-analysis" remote="OCA" groups="addons"/>
<project name="mis-builder.git" path="addons/OCA_mis-builder" remote="OCA" groups="addons"/>
<project name="muk_base.git" path="addons/muk-it_muk_base" remote="muk-it" groups="addons"/>
<project name="muk_dms.git" path="addons/muk-it_muk_dms" remote="muk-it" groups="addons"/>
<project name="muk_docs.git" path="addons/muk-it_muk_docs" remote="muk-it" groups="addons"/>
<project name="muk_misc.git" path="addons/muk-it_muk_misc" remote="muk-it" groups="addons"/>
<project name="muk_quality.git" path="addons/muk-it_muk_quality" remote="muk-it" groups="addons"/>
<project name="muk_web.git" path="addons/muk-it_muk_web" remote="muk-it" groups="addons"/>
<project name="muk_website.git" path="addons/muk-it_muk_website" remote="muk-it" groups="addons"/>
<project name="multi-company.git" path="addons/OCA_multi-company" remote="OCA" groups="addons"/>
<project name="odoo-base-addons.git" path="addons/Numigi_odoo-base-addons" remote="Numigi" groups="addons"/>
<project name="odoo-business-spending-management-quebec-canada.git" path="addons/MathBenTech_odoo-business-spending-management-quebec-canada" remote="MathBenTech" groups="addons"/>
<project name="odoo-entertainment-addons.git" path="addons/Numigi_odoo-entertainment-addons" remote="Numigi" groups="addons"/>
<project name="odoo-git-addons.git" path="addons/Numigi_odoo-git-addons" remote="Numigi" groups="addons"/>
<project name="odoo-hr-addons.git" path="addons/Numigi_odoo-hr-addons" remote="Numigi" groups="addons"/>
<project name="odoo-partner-addons.git" path="addons/Numigi_odoo-partner-addons" remote="Numigi" groups="addons"/>
<project name="odoo-product-addons.git" path="addons/Numigi_odoo-product-addons" remote="Numigi" groups="addons"/>
<project name="odoo-project-addons.git" path="addons/Numigi_odoo-project-addons" remote="Numigi" groups="addons"/>
<project name="odoo-purchase-addons.git" path="addons/Numigi_odoo-purchase-addons" remote="Numigi" groups="addons"/>
<project name="odoo-stock-addons.git" path="addons/Numigi_odoo-stock-addons" remote="Numigi" groups="addons"/>
<project name="odoo-survey-addons.git" path="addons/Numigi_odoo-survey-addons" remote="Numigi" groups="addons"/>
<project name="odoo-timesheet-addons.git" path="addons/Numigi_odoo-timesheet-addons" remote="Numigi" groups="addons"/>
<project name="odoo-web-addons.git" path="addons/Numigi_odoo-web-addons" remote="Numigi" groups="addons"/>
<project name="odoo.git" path="odoo" remote="odoo" groups="odoo"/>
<project name="odoo_addons.git" path="addons/Smile-SA_odoo_addons" remote="Smile-SA" groups="addons"/>
<project name="openeducat_erp.git" path="addons/openeducat_openeducat_erp" remote="openeducat" groups="addons"/>
<project name="partner-contact.git" path="addons/OCA_partner-contact" remote="OCA" groups="addons"/>
<project name="pos.git" path="addons/OCA_pos" remote="OCA" groups="addons"/>
<project name="product-attribute.git" path="addons/OCA_product-attribute" remote="OCA" groups="addons"/>
<project name="product-pack.git" path="addons/OCA_product-pack" remote="OCA" groups="addons"/>
<project name="product-variant.git" path="addons/OCA_product-variant" remote="OCA" groups="addons"/>
<project name="project-reporting.git" path="addons/OCA_project-reporting" remote="OCA" groups="addons"/>
<project name="project.git" path="addons/OCA_project" remote="OCA" groups="addons"/>
<project name="purchase-workflow.git" path="addons/OCA_purchase-workflow" remote="OCA" groups="addons"/>
<project name="queue.git" path="addons/OCA_queue" remote="OCA" groups="addons"/>
<project name="reporting-engine.git" path="addons/OCA_reporting-engine" remote="OCA" groups="addons"/>
<project name="sale-workflow.git" path="addons/OCA_sale-workflow" remote="OCA" groups="addons"/>
<project name="santelibre_addons.git" path="addons/SanteLibre_santelibre_addons" remote="SanteLibre" revision="master" groups="addons"/>
<project name="scrummer.git" path="addons/MathBenTech_scrummer" remote="MathBenTech" groups="addons"/>
<project name="server-auth.git" path="addons/OCA_server-auth" remote="OCA" groups="addons"/>
<project name="server-brand.git" path="addons/OCA_server-brand" remote="OCA" groups="addons"/>
<project name="server-env.git" path="addons/OCA_server-env" remote="OCA" groups="addons"/>
<project name="server-tools.git" path="addons/OCA_server-tools" remote="OCA" groups="addons"/>
<project name="server-ux.git" path="addons/OCA_server-ux" remote="OCA" groups="addons"/>
<project name="social.git" path="addons/OCA_social" remote="OCA" groups="addons"/>
<project name="stock-logistics-warehouse.git" path="addons/OCA_stock-logistics-warehouse" remote="OCA" groups="addons"/>
<project name="timesheet.git" path="addons/OCA_timesheet" remote="OCA" groups="addons"/>
<project name="web.git" path="addons/OCA_web" remote="OCA" groups="addons"/>
<project name="website.git" path="addons/OCA_website" remote="OCA" groups="addons"/>
<project name="wms.git" path="addons/OCA_wms" remote="OCA" groups="addons"/>
</manifest>

103
manifest/default.staged.xml Normal file
View file

@ -0,0 +1,103 @@
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="ERPLibre" fetch="https://github.com/ERPLibre/"/>
<remote name="MathBenTech" fetch="https://github.com/ERPLibre/"/>
<remote name="Numigi" fetch="https://github.com/ERPLibre/"/>
<remote name="OCA" fetch="https://github.com/ERPLibre/"/>
<remote name="SanteLibre" fetch="https://github.com/ERPLibre/"/>
<remote name="Smile-SA" fetch="https://github.com/ERPLibre/"/>
<remote name="muk-it" fetch="https://github.com/ERPLibre/"/>
<remote name="odoo" fetch="https://github.com/ERPLibre/"/>
<remote name="odooaktiv" fetch="https://github.com/ERPLibre/"/>
<remote name="openeducat" fetch="https://github.com/ERPLibre/"/>
<default remote="ERPLibre" revision="12.0" sync-j="4" sync-c="true"/>
<project name="QuotationRevision.git" path="addons/odooaktiv_QuotationRevision" remote="odooaktiv" revision="701438f9c59bd657de516d9ef4de1ba6167bf30b" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="account-analytic.git" path="addons/OCA_account-analytic" remote="OCA" revision="7ce9fe25a7c977c5338001bc32d58b1cadffe51e" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="account-budgeting.git" path="addons/OCA_account-budgeting" remote="OCA" revision="e175ffa84fb61f70de67a2732292e43bd490cefd" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="account-closing.git" path="addons/OCA_account-closing" remote="OCA" revision="40d40c73574bf65c91c879e0607b4ac455df06b2" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="account-consolidation.git" path="addons/OCA_account-consolidation" remote="OCA" revision="741fc50366bd70fceb88a2a3fcb0449b2582ed31" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="account-financial-reporting.git" path="addons/OCA_account-financial-reporting" remote="OCA" revision="1e0f8301ca015b3c4c456401bc30c5f211ccae3f" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="account-financial-tools.git" path="addons/OCA_account-financial-tools" remote="OCA" revision="9721abd4c9db653e1d009f8a023e9f750523989f" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="account-fiscal-rule.git" path="addons/OCA_account-fiscal-rule" remote="OCA" revision="f396ba6a2e2acebaaff579f0e6991b669812d64d" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="account-invoice-reporting.git" path="addons/OCA_account-invoice-reporting" remote="OCA" revision="320dd9fce4d212b2dcf5dc4447494964ad1e246d" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="account-invoicing.git" path="addons/OCA_account-invoicing" remote="OCA" revision="12.0_account_invoice_approbation" groups="addons" upstream="12.0_account_invoice_approbation" dest-branch="12.0_account_invoice_approbation"/>
<project name="account-payment.git" path="addons/OCA_account-payment" remote="OCA" revision="888debebd8e42c1ee5107577ca2f3bc5f38d72e1" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="account-reconcile.git" path="addons/OCA_account-reconcile" remote="OCA" revision="0390b112def3d362d95232d382317511616ee6dd" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="apps-store.git" path="addons/OCA_apps-store" remote="OCA" revision="022d24db4c6463f38b9f4452fe03c9fb8b3a44ce" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="bank-payment.git" path="addons/OCA_bank-payment" remote="OCA" revision="7e0e572fb4772c8ebacfe52d58c396bdbd9e01f9" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="bank-statement-import.git" path="addons/OCA_bank-statement-import" remote="OCA" revision="198306503b51371c8603fd8defef65fcd82bf954" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="brand.git" path="addons/OCA_brand" remote="OCA" revision="601a8c5c741b3035000f2337feab16325e6b9a49" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="business-requirement.git" path="addons/OCA_business-requirement" remote="OCA" revision="dd74e74583861b44c6120473ba0b56c90b887334" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="commission.git" path="addons/OCA_commission" remote="OCA" revision="e679120a6d8f910cba81d949ecddd7b89f48fc01" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="community-data-files.git" path="addons/OCA_community-data-files" remote="OCA" revision="2b17e5567d1bcb8ca377268615f209fdd57dc66e" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="connector-telephony.git" path="addons/OCA_connector-telephony" remote="OCA" revision="6d9df1037a97dbf791a7f0a717846a63144174bb" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="contract.git" path="addons/OCA_contract" remote="OCA" revision="3e531348cb51aeb2cc16c16ab8a2b693756ba47f" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="credit-control.git" path="addons/OCA_credit-control" remote="OCA" revision="a97496a829cadc0d9be07d7825e93062417ab670" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="currency.git" path="addons/OCA_currency" remote="OCA" revision="5c0d54e37789ecc24bebbe53fa56a92a492575bb" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="data-protection.git" path="addons/OCA_data-protection" remote="OCA" revision="ce4f334a1077b5c15d457f22daaa48b9f639409e" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="development.git" path="addons/MathBenTech_development" remote="MathBenTech" revision="12.0" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="donation.git" path="addons/OCA_donation" remote="OCA" revision="12.0_module_donation_website" groups="addons" upstream="12.0_module_donation_website" dest-branch="12.0_module_donation_website"/>
<project name="e-commerce.git" path="addons/OCA_e-commerce" remote="OCA" revision="d7c99e565f25b495b3c0d252f181d8df4490a757" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="edi.git" path="addons/OCA_edi" remote="OCA" revision="742b1316773f8a1b224e42c65c3c3a7685481a30" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="erplibre_addons.git" path="addons/ERPLibre_erplibre_addons" revision="12.0" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="event.git" path="addons/OCA_event" remote="OCA" revision="e2bdf12c61e9967eeb9abc618c79ca43b464ea7f" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="helpdesk.git" path="addons/OCA_helpdesk" remote="OCA" revision="12.0_dev" groups="addons" upstream="12.0_dev" dest-branch="12.0_dev"/>
<project name="hr.git" path="addons/OCA_hr" remote="OCA" revision="4743acf7ab796ea3738743a44c62cd516126ec53" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="knowledge.git" path="addons/OCA_knowledge" remote="OCA" revision="9ae45f798bbefa854b03f612e22291ac1b95568d" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="l10n-canada.git" path="addons/OCA_l10n-canada" remote="OCA" revision="5680b485cdfa0b6f1c2f4e32356b5938a9752c00" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="maintenance.git" path="addons/OCA_maintenance" remote="OCA" revision="4e521ec35f6e8b66f86a62db644dadc9206b476e" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="management-system.git" path="addons/OCA_management-system" remote="OCA" revision="479afcc65ee29530e2bcaa7342f93b6783d14d97" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="manufacture.git" path="addons/OCA_manufacture" remote="OCA" revision="ce36844281754a75b527c4ace21837c8a16b75ab" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="margin-analysis.git" path="addons/OCA_margin-analysis" remote="OCA" revision="12.0_sale_margin_editor" groups="addons" upstream="12.0_sale_margin_editor" dest-branch="12.0_sale_margin_editor"/>
<project name="mis-builder.git" path="addons/OCA_mis-builder" remote="OCA" revision="5d7697296ad90794599373940e6fc6cead8ca1a2" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="muk_base.git" path="addons/muk-it_muk_base" remote="muk-it" revision="d888c9695292295a732fcdd4a7b9820978df5e7f" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="muk_dms.git" path="addons/muk-it_muk_dms" remote="muk-it" revision="020e604d635a229c09a07e839d95f8e37706606a" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="muk_docs.git" path="addons/muk-it_muk_docs" remote="muk-it" revision="a8ea02b9f00ae9fe5d2ea25ac43d23532cc11d45" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="muk_misc.git" path="addons/muk-it_muk_misc" remote="muk-it" revision="37b9d6dc20fa686a323057b160015bfc2c2c8143" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="muk_quality.git" path="addons/muk-it_muk_quality" remote="muk-it" revision="1a4c6f25c5e4fe0029d406d6283555bd23a44d27" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="muk_web.git" path="addons/muk-it_muk_web" remote="muk-it" revision="12.0_fix_web_conflict_menu" groups="addons" upstream="12.0_fix_web_conflict_menu" dest-branch="12.0_fix_web_conflict_menu"/>
<project name="muk_website.git" path="addons/muk-it_muk_website" remote="muk-it" revision="12.0_remove_autoinstall" groups="addons" upstream="12.0_remove_autoinstall" dest-branch="12.0_remove_autoinstall"/>
<project name="multi-company.git" path="addons/OCA_multi-company" remote="OCA" revision="fdb4d255b6a3b51925f8a226bfebf2eccabd2786" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-base-addons.git" path="addons/Numigi_odoo-base-addons" remote="Numigi" revision="60bc1e5414ff3bf81a6d72831da2eaad94ccbcb2" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-business-spending-management-quebec-canada.git" path="addons/MathBenTech_odoo-business-spending-management-quebec-canada" remote="MathBenTech" revision="12.0_sale_order_line_timesheet_attribution" groups="addons" upstream="12.0_sale_order_line_timesheet_attribution" dest-branch="12.0_sale_order_line_timesheet_attribution"/>
<project name="odoo-entertainment-addons.git" path="addons/Numigi_odoo-entertainment-addons" remote="Numigi" revision="82c33255261eff361a91da13b28e4e68a95b25dd" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-git-addons.git" path="addons/Numigi_odoo-git-addons" remote="Numigi" revision="96db417669a631877c1439f617ac8c0cc6edfff9" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-hr-addons.git" path="addons/Numigi_odoo-hr-addons" remote="Numigi" revision="0034395bcdb38c02749644607f43ccac760dfb49" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-partner-addons.git" path="addons/Numigi_odoo-partner-addons" remote="Numigi" revision="12.0_partner_no_vat_improve_no_vat" groups="addons" upstream="12.0_partner_no_vat_improve_no_vat" dest-branch="12.0_partner_no_vat_improve_no_vat"/>
<project name="odoo-product-addons.git" path="addons/Numigi_odoo-product-addons" remote="Numigi" revision="36751bd3c6baced6a0b3f5ddb675d87cb04a745c" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-project-addons.git" path="addons/Numigi_odoo-project-addons" remote="Numigi" revision="4388a4ca61b87032e2c3783dc2740b299cd31b6f" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-purchase-addons.git" path="addons/Numigi_odoo-purchase-addons" remote="Numigi" revision="5d226ca3887c77e31467a192a0fbe4066bf7842c" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-stock-addons.git" path="addons/Numigi_odoo-stock-addons" remote="Numigi" revision="3fe57c3cad122d5a448239b46fda8bf76ea32493" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-survey-addons.git" path="addons/Numigi_odoo-survey-addons" remote="Numigi" revision="9e897bae38ff0d6d3180296a552d994bb10c0eff" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-timesheet-addons.git" path="addons/Numigi_odoo-timesheet-addons" remote="Numigi" revision="d2bbb19dc8f917272694ff0a6231275083fb7e74" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo-web-addons.git" path="addons/Numigi_odoo-web-addons" remote="Numigi" revision="3a4aa46439a794429d5939cff561f42c4f312a99" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="odoo.git" path="odoo" remote="odoo" revision="ERPLibre/12.0" clone-depth="10" groups="odoo" upstream="ERPLibre/12.0" dest-branch="ERPLibre/12.0"/>
<project name="odoo_addons.git" path="addons/Smile-SA_odoo_addons" remote="Smile-SA" revision="12.0_remote_autoinstall" groups="addons" upstream="12.0_remote_autoinstall" dest-branch="12.0_remote_autoinstall"/>
<project name="openeducat_erp.git" path="addons/openeducat_openeducat_erp" remote="openeducat" revision="4a2a1d930d88a127959fd39af22f7d818e08663d" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="partner-contact.git" path="addons/OCA_partner-contact" remote="OCA" revision="a79e57685caad7d0dec9318378fdd46862e31be4" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="pos.git" path="addons/OCA_pos" remote="OCA" revision="6a922b3d87491d59128a097f286be1e3f3fc11df" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="product-attribute.git" path="addons/OCA_product-attribute" remote="OCA" revision="ea48097094462e67d7e1558b333da78c6038b89c" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="product-pack.git" path="addons/OCA_product-pack" remote="OCA" revision="b9eccbdb9ae0fdd3ed1138270c3eff3142a015c3" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="product-variant.git" path="addons/OCA_product-variant" remote="OCA" revision="fb4f4042b3ca0ee6cde6ab0625e2c914b96b174f" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="project-reporting.git" path="addons/OCA_project-reporting" remote="OCA" revision="7f71f086dd732170e7605dfdf80e6cc4969a711e" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="project.git" path="addons/OCA_project" remote="OCA" revision="12.0_fix_conflict_project_key" groups="addons" upstream="12.0_fix_conflict_project_key" dest-branch="12.0_fix_conflict_project_key"/>
<project name="purchase-workflow.git" path="addons/OCA_purchase-workflow" remote="OCA" revision="d17436791bcfbe0985af137163564af3fe90bbe1" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="queue.git" path="addons/OCA_queue" remote="OCA" revision="0b71a3951b583f154f170adacf4920e6d7138329" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="reporting-engine.git" path="addons/OCA_reporting-engine" remote="OCA" revision="14fba657a0dbda1258edcf3c92886866e7cecf67" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="sale-workflow.git" path="addons/OCA_sale-workflow" remote="OCA" revision="12.0_modules_sale_order_line" groups="addons" upstream="12.0_modules_sale_order_line" dest-branch="12.0_modules_sale_order_line"/>
<project name="santelibre_addons.git" path="addons/SanteLibre_santelibre_addons" remote="SanteLibre" revision="master" groups="addons" upstream="master" dest-branch="master"/>
<project name="scrummer.git" path="addons/MathBenTech_scrummer" remote="MathBenTech" revision="38c04c8f7b7fe897d166ded74dda9d8d76f7f4c4" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="server-auth.git" path="addons/OCA_server-auth" remote="OCA" revision="f911c9f31a064cca3012431b70e60a7b89448138" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="server-brand.git" path="addons/OCA_server-brand" remote="OCA" revision="d8f27b04475d3cc74a7bebb1e086f647f5e01569" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="server-env.git" path="addons/OCA_server-env" remote="OCA" revision="19af535b3aedd5c1fdfbe911dacfc43ae31edb71" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="server-tools.git" path="addons/OCA_server-tools" remote="OCA" revision="d97aaa9fa2f01f64ebf7100668e0901fde35d42f" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="server-ux.git" path="addons/OCA_server-ux" remote="OCA" revision="655b3cc291a7e3718371a45ebe6f2e0952896adf" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="social.git" path="addons/OCA_social" remote="OCA" revision="7b0836bf7a5c40db332dd90d5ebef619234060ac" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="stock-logistics-warehouse.git" path="addons/OCA_stock-logistics-warehouse" remote="OCA" revision="a591de15150f7b16c1ef23d2fc30c814874dea27" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="timesheet.git" path="addons/OCA_timesheet" remote="OCA" revision="12.0_support_project_agile_timesheet" groups="addons" upstream="12.0_support_project_agile_timesheet" dest-branch="12.0_support_project_agile_timesheet"/>
<project name="web.git" path="addons/OCA_web" remote="OCA" revision="b65c492f4011fe4e9dac8c0a26eeef8c43cb1c39" groups="addons" upstream="12.0" dest-branch="12.0"/>
<project name="website.git" path="addons/OCA_website" remote="OCA" revision="12.0_dev" groups="addons" upstream="12.0_dev" dest-branch="12.0_dev"/>
<project name="wms.git" path="addons/OCA_wms" remote="OCA" revision="e7a1541f8c513cf755bd82780c6c035d2fafc2ce" groups="addons" upstream="12.0" dest-branch="12.0"/>
</manifest>

3
run.sh
View file

@ -1,2 +1,3 @@
#!/usr/bin/env bash
./venv/bin/python ./odoo/odoo-bin -c ./config.conf $@
source ./venv/bin/activate
python3 ./odoo/odoo-bin -c ./config.conf --limit-time-real 99999 --limit-time-cpu 99999 $@

4
script/clean_repo_manifest.sh Executable file
View file

@ -0,0 +1,4 @@
#!/usr/bin/env bash
rm -rf ./odoo ./addons/*
mkdir -p addons/addons

View file

@ -1,4 +1,4 @@
#!/usr/bin/env python
#!./venv/bin/python
import os
import sys
import argparse

View file

@ -1,4 +1,4 @@
#!/usr/bin/env python
#!./venv/bin/python
import os
import sys
import argparse
@ -127,7 +127,8 @@ def main():
# Update origin to new repo
# git_tool.generate_git_modules(lst_repo_organization, repo_path=config.dir)
git_tool.generate_repo_manifest(lst_repo_organization, repo_path=config.dir)
git_tool.generate_repo_manifest(lst_repo_organization,
output=f"{config.dir}manifest/default.dev.xml")
git_tool.generate_install_locally()

View file

@ -1,4 +1,4 @@
#!/usr/bin/env python
#!./venv/bin/python
import os
import sys
import argparse

View file

@ -1,4 +1,4 @@
#!/usr/bin/env python
#!./venv/bin/python
# © 2020 TechnoLibre (http://www.technolibre.ca)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

View file

@ -0,0 +1,95 @@
#!./venv/bin/python
import os
import sys
import argparse
import logging
from git import Repo
new_path = os.path.normpath(os.path.join(os.path.dirname(__file__), '..'))
sys.path.append(new_path)
from script.git_tool import GitTool
_logger = logging.getLogger(__name__)
def get_config():
"""Parse command line arguments, extracting the config file name,
returning the union of config file and command line arguments
:return: dict of config file settings and command line arguments
"""
# TODO update description
parser = argparse.ArgumentParser(
formatter_class=argparse.RawDescriptionHelpFormatter,
description="""Get git diff between manifest repo revision,
diff revision input1 to input2 """,
epilog='''\
'''
)
parser.add_argument('--input1', required=True,
help="Compare input1 to input2. Input1 is older config.")
parser.add_argument('--input2', required=True,
help="Compare input1 to input2. Input2 is newer config.")
# parser.add_argument('--clear', action="store_true",
# help="Create a new manifest and clear old configuration.")
args = parser.parse_args()
return args
def main():
config = get_config()
git_tool = GitTool()
dct_remote_1, dct_project_1, default_remote_1 = git_tool.get_manifest_xml_info(
filename=config.input1, add_root=True)
dct_remote_2, dct_project_2, default_remote_2 = git_tool.get_manifest_xml_info(
filename=config.input2, add_root=True)
set_project_1 = set(dct_project_1.keys())
set_project_2 = set(dct_project_2.keys())
lst_same_name_normalize = set_project_1.intersection(set_project_2)
lst_missing_name_normalize = set_project_2.difference(set_project_1)
lst_over_name_normalize = set_project_1.difference(set_project_2)
i = 0
total = len(lst_same_name_normalize)
for key in lst_missing_name_normalize:
i += 1
print(f"{i}/{total} - {key} from input1 not in input2.")
i = 0
total = len(lst_over_name_normalize)
for key in lst_over_name_normalize:
i += 1
print(f"{i}/{total} - {key} from input2 not in input1.")
i = 0
total = len(lst_same_name_normalize)
for key in lst_same_name_normalize:
value1 = dct_project_1.get(key)
value2 = dct_project_2.get(key)
old_revision = value1.get("@revision", git_tool.default_branch)
new_revision = value2.get("@revision", git_tool.default_branch)
path1 = value1.get("@path")
path2 = value2.get("@path")
if path1 != path2:
print(f"WARNING id {i}, path of git are different. "
f"Input1 {path1}, input2 {path2}")
continue
i += 1
result = "same" if old_revision == new_revision else "diff"
print(f"{i}/{total} - {result} - "
f"{path1} {key} old {old_revision} new {new_revision}")
default_arg = [f"{old_revision}..{new_revision}"]
if old_revision != new_revision:
# get git diff
repo = Repo(path1)
status = repo.git.diff(*default_arg)
print(status)
if __name__ == '__main__':
main()

View file

@ -0,0 +1,68 @@
#!./venv/bin/python
import os
import sys
import argparse
import logging
import copy
new_path = os.path.normpath(os.path.join(os.path.dirname(__file__), '..'))
sys.path.append(new_path)
from script.git_tool import GitTool
_logger = logging.getLogger(__name__)
def get_config():
"""Parse command line arguments, extracting the config file name,
returning the union of config file and command line arguments
:return: dict of config file settings and command line arguments
"""
# TODO update description
parser = argparse.ArgumentParser(
formatter_class=argparse.RawDescriptionHelpFormatter,
description="""Replace revision field in input2 from input1 if existing, create an output of new manifest.""",
epilog='''\
'''
)
parser.add_argument('--input1', required=True,
help="First manifest to merge into input2.")
parser.add_argument('--input2', required=True,
help="Second manifest, overwrite by input1.")
parser.add_argument('--output', required=True,
help="Output of new manifest")
# parser.add_argument('--clear', action="store_true",
# help="Create a new manifest and clear old configuration.")
args = parser.parse_args()
return args
def main():
config = get_config()
git_tool = GitTool()
dct_remote_1, dct_project_1, default_remote_1 = git_tool.get_manifest_xml_info(
filename=config.input1, add_root=True)
dct_remote_2, dct_project_2, default_remote_2 = git_tool.get_manifest_xml_info(
filename=config.input2, add_root=True)
dct_remote_3 = copy.deepcopy(dct_remote_2)
dct_project_3 = copy.deepcopy(dct_project_2)
for key, value in dct_project_1.items():
revision = value.get("@revision")
if revision:
dct_project_3[key]["@revision"] = revision
else:
dct_project_3[key]["@upstream"] = "12.0"
dct_project_3[key]["@dest-branch"] = "12.0"
# Update origin to new repo
git_tool.generate_repo_manifest(dct_remote=dct_remote_3, dct_project=dct_project_3,
output=config.output,
default_remote=default_remote_2)
if __name__ == '__main__':
main()

9
script/git_repo_manifest.py Normal file → Executable file
View file

@ -1,4 +1,4 @@
#!/usr/bin/env python
#!./venv/bin/python
import os
import sys
import argparse
@ -47,12 +47,13 @@ def main():
# Update origin to new repo
if not config.clear:
dct_remote, dct_project = git_tool.get_manifest_xml_info(repo_path=config.dir,
add_root=True)
dct_remote, dct_project, _ = git_tool.get_manifest_xml_info(
repo_path=config.dir, add_root=True)
else:
dct_remote = {}
dct_project = {}
git_tool.generate_repo_manifest(lst_repo_organization, repo_path=config.dir,
git_tool.generate_repo_manifest(lst_repo_organization,
output=f"{config.dir}manifest/default.dev.xml",
dct_remote=dct_remote, dct_project=dct_project)
git_tool.generate_install_locally()

View file

@ -1,4 +1,4 @@
#!/usr/bin/env python
#!./venv/bin/python
# © 2020 TechnoLibre (http://www.technolibre.ca)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
import os
@ -15,6 +15,10 @@ from typing import List
CST_FILE_SOURCE_REPO_ADDONS = "source_repo_addons.csv"
CST_EL_GITHUB_TOKEN = "EL_GITHUB_TOKEN"
DEFAULT_PROJECT_NAME = "ERPLibre"
DEFAULT_WEBSITE = "erplibre.ca"
DEFAULT_REMOTE_URL = "https://github.com/ERPLibre/ERPLibre.git"
DEFAULT_BRANCH = "12.0"
class Struct(object):
@ -23,6 +27,22 @@ class Struct(object):
class GitTool:
@property
def default_project_name(self):
return DEFAULT_PROJECT_NAME
@property
def default_website(self):
return DEFAULT_WEBSITE
@property
def default_remote_url(self):
return DEFAULT_REMOTE_URL
@property
def default_branch(self):
return DEFAULT_BRANCH
@staticmethod
def get_url(url: str) -> object:
"""
@ -125,7 +145,6 @@ class GitTool:
Get information about submodule from repo_path
:param repo_path: path of repo to get information about submodule
:param add_root: add information about root repository
:param upstream: Use this upstream of root
:return:
[{
"url": original_url,
@ -254,7 +273,13 @@ class GitTool:
if add_root:
repo_root = Repo(repo_path)
url = repo_root.git.remote("get-url", "origin")
try:
url = repo_root.git.remote("get-url", "origin")
except Exception as e:
print(f"WARNING: Missing origin remote, use default url "
f"{DEFAULT_REMOTE_URL}. Suggest to add a remote origin: \n"
f"> git remote add origin {DEFAULT_REMOTE_URL}")
url = DEFAULT_REMOTE_URL
url, url_https, url_git = self.get_url(url)
data = {
@ -269,17 +294,19 @@ class GitTool:
lst_repo = sorted(lst_repo, key=lambda k: k.get("name"))
return lst_repo
def get_manifest_xml_info(self, repo_path: str = "./",
def get_manifest_xml_info(self, repo_path: str = "./", filename=None,
add_root: bool = False) -> list:
"""
Get contain of manifest
:param repo_path: path of repo to get information about submodule
:param filename: manifest filename. Default none, or use this instead use repo_path
:param add_root: add information about root repository
:return: dct_remote, dct_project
:return: dct_remote, dct_project, default_remote
"""
manifest_file = self.get_manifest_file(repo_path=repo_path)
filename = f"{repo_path}/manifest/{manifest_file}"
if filename is None:
manifest_file = self.get_manifest_file(repo_path=repo_path)
filename = f"{repo_path}/{manifest_file}"
with open(filename) as xml:
xml_as_string = xml.read()
xml_dict = xmltodict.parse(xml_as_string, dict_constructor=dict)
@ -289,7 +316,7 @@ class GitTool:
lst_project = dct_manifest.get("project")
dct_remote = {a.get("@name"): a for a in lst_remote}
dct_project = {a.get("@name"): a for a in lst_project}
return dct_remote, dct_project
return dct_remote, dct_project, default_remote
@staticmethod
def get_project_config(repo_path="./"):
@ -362,8 +389,19 @@ class GitTool:
def str_insert(source_str, insert_str, pos):
return source_str[:pos] + insert_str + source_str[pos:]
def generate_repo_manifest(self, lst_repo: List[Struct], repo_path: str = "./",
dct_remote={}, dct_project={}):
def generate_repo_manifest(self, lst_repo: List[Struct] = [], output: str = "",
dct_remote={}, dct_project={}, default_remote=None):
"""
Generate repo manifest
:param lst_repo: optional, update manifest with list_repo
:param output: filename to write output
:param dct_remote: dict of remote information
:param dct_project: dict of project information
:param default_remote: name of default remote, optional
:return:
"""
if not output:
raise Exception("Cannot generate manifest with missing output filename.")
lst_remote = []
lst_remote_name = []
lst_project = []
@ -381,14 +419,20 @@ class GitTool:
lst_project_info = [
('@name', dct_value.get("@name")),
('@path', dct_value.get("@path")),
('@remote', dct_value.get("@remote"))
]
if "@remote" in dct_value.keys():
lst_project_info.append(('@remote', dct_value.get("@remote")))
if "@revision" in dct_value.keys():
lst_project_info.append(('@revision', dct_value.get("@revision")))
if "@clone-depth" in dct_value.keys():
lst_project_info.append(('@clone-depth', dct_value.get("@clone-depth")))
if "@groups" in dct_value.keys():
lst_project_info.append(('@groups', dct_value.get("@groups")))
if "@upstream" in dct_value.keys():
lst_project_info.append(('@upstream', dct_value.get("@upstream")))
if "@dest-branch" in dct_value.keys():
lst_project_info.append(('@dest-branch', dct_value.get("@dest-branch")))
lst_project.append(OrderedDict(lst_project_info))
lst_project_name.append(dct_value.get("@name"))
@ -400,7 +444,7 @@ class GitTool:
"Validate why 2 or more is not submodule.")
lst_default.append(OrderedDict([
('@remote', repo.original_organization),
('@revision', "12.0"),
('@revision', DEFAULT_BRANCH),
('@sync-j', "4"),
('@sync-c', "true"),
]))
@ -430,6 +474,14 @@ class GitTool:
lst_project_info.append(('@groups', "odoo"))
lst_project.append(OrderedDict(lst_project_info))
if default_remote and not lst_default:
lst_default.append(OrderedDict([
('@remote', default_remote),
('@revision', DEFAULT_BRANCH),
('@sync-j', "4"),
('@sync-c', "true"),
]))
# Order in alphabetic
lst_order_remote = sorted(lst_remote, key=lambda key: key.get("@name"))
lst_order_default = sorted(lst_default, key=lambda key: key.get("@remote"))
@ -444,14 +496,14 @@ class GitTool:
str_xml_text = xmltodict.unparse(dct_repo, pretty=True)
pos_insert = str_xml_text.rfind("</remote>")
if pos_insert:
if pos_insert >= 0:
pos_insert += len("</remote>")
str_xml_text = self.str_insert(str_xml_text, "\n ", pos_insert)
pos_insert = str_xml_text.rfind("</default>")
if pos_insert:
if pos_insert >= 0:
pos_insert += len("</default>")
str_xml_text = self.str_insert(str_xml_text, "\n ", pos_insert)
str_xml_text = self.str_insert(str_xml_text, "\n ", pos_insert)
# pos_insert = str_xml_text.rfind("</project>")
# if pos_insert:
@ -465,7 +517,7 @@ class GitTool:
str_xml_text = str_xml_text.replace("\t", " ")
# create file
with open(f"{repo_path}manifest/default.dev.xml", mode="w") as file:
with open(output, mode="w") as file:
file.writelines(str_xml_text + "\n")
def generate_git_modules(self, lst_repo: List[Struct], repo_path: str = "./"):
@ -523,7 +575,10 @@ class GitTool:
for line in all_lines:
# Separate information with path in tuple
line_split = line[:-1].split(',')
line = line.strip()
if not line:
continue
line_split = line.split(',')
if len(line_split) != 4:
print(f"Error with line {line}, suppose to have only 4 ','.")
exit(1)

View file

@ -52,7 +52,7 @@ cat <<EOF > /tmp/${EL_USER}run.sh
#!/usr/bin/env bash
cd ${EL_HOME_ERPLIBRE}
source ./venv/bin/activate
python3 ${EL_HOME_ERPLIBRE}/odoo/odoo-bin -c ${EL_HOME_ERPLIBRE}/config.conf $@
python3 ${EL_HOME_ERPLIBRE}/odoo/odoo-bin -c ${EL_HOME_ERPLIBRE}/config.conf --limit-time-real 99999 --limit-time-cpu 99999 $@
EOF
echo -e "* Security Run File"

View file

@ -19,7 +19,7 @@ WKHTMLTOX_X32=https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.
echo -e "\n---- Update Server ----"
# add-apt-repository can install add-apt-repository Ubuntu 18.x
sudo apt-get install software-properties-common -y
sudo apt-get install software-properties-common curl -y
# universe package is for Ubuntu 18.x
sudo add-apt-repository universe
# libpng12-0 dependency for wkhtmltopdf

View file

@ -129,7 +129,7 @@ if [[ $EL_MINIMAL_ADDONS = "False" ]]; then
fi
printf "\n" >> ${EL_CONFIG_FILE}
printf "workers = 0\n" >> ${EL_CONFIG_FILE}
printf "workers = 2\n" >> ${EL_CONFIG_FILE}
printf "max_cron_threads = 2\n" >> ${EL_CONFIG_FILE}
if [ ${EL_INSTALL_NGINX} = "True" ]; then

View file

@ -19,13 +19,7 @@ EL_CONFIG_FILE="${EL_HOME}/config.conf"
./script/install_locally.sh
# Update git-repo
git daemon --base-path=. --export-all --reuseaddr --informative-errors --verbose &
DAEMON_PID=$!
./venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --abbrev-ref HEAD) -m ${EL_MANIFEST_DEV}
./venv/repo sync -m ${EL_MANIFEST_DEV}
kill ${DAEMON_PID}
./script/update_manifest_local_dev.sh
echo -e "\n---- Install python packages/requirements ----"
${EL_HOME}/venv/bin/pip3 install --upgrade pip

View file

@ -19,9 +19,7 @@ EL_CONFIG_FILE="${EL_HOME}/config.conf"
./script/install_locally.sh
# Update git-repo
./venv/repo init -u http://git.erplibre.ca/ERPLibre -b 12.0_repo
#./venv/repo sync --force-sync
./venv/repo sync
./script/update_manifest_prod.sh
echo -e "\n---- Install python packages/requirements ----"
${EL_HOME}/venv/bin/pip3 install --upgrade pip

11
script/update_manifest_dev.sh Executable file
View file

@ -0,0 +1,11 @@
#!/usr/bin/env bash
. ./env_var.sh
#EL_MANIFEST_PROD="./default.xml"
#EL_MANIFEST_DEV="./manifest/default.dev.xml"
# Update git-repo
./venv/repo init -u http://git.erplibre.ca/ERPLibre -b $(git rev-parse --abbrev-ref HEAD) -m ${EL_MANIFEST_DEV}
#./venv/repo sync --force-sync
./venv/repo sync --force-sync -v

View file

@ -0,0 +1,15 @@
#!/usr/bin/env bash
. ./env_var.sh
#EL_MANIFEST_PROD="./default.xml"
#EL_MANIFEST_DEV="./manifest/default.dev.xml"
# Update git-repo
git daemon --base-path=. --export-all --reuseaddr --informative-errors --verbose &
DAEMON_PID=$!
./venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --abbrev-ref HEAD) -m ${EL_MANIFEST_DEV}
./venv/repo sync -v --force-sync -m ${EL_MANIFEST_DEV}
kill ${DAEMON_PID}

View file

@ -0,0 +1,16 @@
#!/usr/bin/env bash
. ./env_var.sh
#EL_MANIFEST_PROD="./default.xml"
#EL_MANIFEST_DEV="./manifest/default.dev.xml"
#EL_MANIFEST_EXP="./manifest/default.experimental.xml"
# Update git-repo
git daemon --base-path=. --export-all --reuseaddr --informative-errors --verbose &
DAEMON_PID=$!
./venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --abbrev-ref HEAD) -m ${EL_MANIFEST_EXP}
./venv/repo sync -v --force-sync -m ${EL_MANIFEST_EXP}
kill ${DAEMON_PID}

View file

@ -0,0 +1,15 @@
#!/usr/bin/env bash
. ./env_var.sh
#EL_MANIFEST_PROD="./default.xml"
#EL_MANIFEST_DEV="./manifest/default.dev.xml"
# Update git-repo
git daemon --base-path=. --export-all --reuseaddr --informative-errors --verbose &
DAEMON_PID=$!
./venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --abbrev-ref HEAD) -m ${EL_MANIFEST_PROD}
./venv/repo sync -v -m ${EL_MANIFEST_PROD}
kill ${DAEMON_PID}

11
script/update_manifest_prod.sh Executable file
View file

@ -0,0 +1,11 @@
#!/usr/bin/env bash
. ./env_var.sh
#EL_MANIFEST_PROD="./default.xml"
#EL_MANIFEST_DEV="./manifest/default.dev.xml"
# Update git-repo
./venv/repo init -u http://git.erplibre.ca/ERPLibre -b $(git rev-parse --abbrev-ref HEAD)
#./venv/repo sync --force-sync
./venv/repo sync -v

View file

@ -1,20 +1,20 @@
url,path,revision,clone-depth
https://github.com/ERPLibre/erplibre_addons.git,addons,,
https://github.com/MathBenTech/development.git,addons,,
https://github.com/MathBenTech/odoo-business-spending-management-quebec-canada.git,addons,stable_prod_12.0,
https://github.com/MathBenTech/odoo-business-spending-management-quebec-canada.git,addons,12.0_sale_order_line_timesheet_attribution,
https://github.com/MathBenTech/scrummer.git,addons,,
https://github.com/muk-it/muk_base.git,addons,,
https://github.com/muk-it/muk_dms.git,addons,,
https://github.com/muk-it/muk_docs.git,addons,,
https://github.com/muk-it/muk_misc.git,addons,,
https://github.com/muk-it/muk_quality.git,addons,,
https://github.com/muk-it/muk_web.git,addons,,
https://github.com/muk-it/muk_website.git,addons,,
https://github.com/muk-it/muk_web.git,addons,12.0_fix_web_conflict_menu,
https://github.com/muk-it/muk_website.git,addons,12.0_remove_autoinstall,
https://github.com/Numigi/odoo-base-addons.git,addons,,
https://github.com/Numigi/odoo-entertainment-addons.git,addons,,
https://github.com/Numigi/odoo-git-addons.git,addons,,
https://github.com/Numigi/odoo-hr-addons.git,addons,,
https://github.com/Numigi/odoo-partner-addons.git,addons,,
https://github.com/Numigi/odoo-partner-addons.git,addons,12.0_partner_no_vat_improve_no_vat,
https://github.com/Numigi/odoo-product-addons.git,addons,,
https://github.com/Numigi/odoo-project-addons.git,addons,,
https://github.com/Numigi/odoo-purchase-addons.git,addons,,
@ -29,7 +29,7 @@ https://github.com/OCA/account-consolidation.git,addons,,
https://github.com/OCA/account-financial-reporting.git,addons,,
https://github.com/OCA/account-financial-tools.git,addons,,
https://github.com/OCA/account-fiscal-rule.git,addons,,
https://github.com/OCA/account-invoicing.git,addons,,
https://github.com/OCA/account-invoicing.git,addons,12.0_account_invoice_approbation,
https://github.com/OCA/account-invoice-reporting.git,addons,,
https://github.com/OCA/account-payment.git,addons,,
https://github.com/OCA/account-reconcile.git,addons,,
@ -45,18 +45,18 @@ https://github.com/OCA/contract.git,addons,,
https://github.com/OCA/credit-control.git,addons,,
https://github.com/OCA/currency.git,addons,,
https://github.com/OCA/data-protection.git,addons,,
https://github.com/OCA/donation.git,addons,,
https://github.com/OCA/donation.git,addons,12.0_module_donation_website,
https://github.com/OCA/e-commerce.git,addons,,
https://github.com/OCA/edi.git,addons,,
https://github.com/OCA/event.git,addons,,
https://github.com/OCA/helpdesk.git,addons,,
https://github.com/OCA/helpdesk.git,addons,12.0_dev,
https://github.com/OCA/hr.git,addons,,
https://github.com/OCA/knowledge.git,addons,,
https://github.com/OCA/l10n-canada.git,addons,,
https://github.com/OCA/maintenance.git,addons,,
https://github.com/OCA/management-system.git,addons,,
https://github.com/OCA/manufacture.git,addons,,
https://github.com/OCA/margin-analysis.git,addons,,
https://github.com/OCA/margin-analysis.git,addons,12.0_sale_margin_editor,
https://github.com/OCA/mis-builder.git,addons,,
https://github.com/OCA/multi-company.git,addons,,
https://github.com/OCA/partner-contact.git,addons,,
@ -64,12 +64,12 @@ https://github.com/OCA/pos.git,addons,,
https://github.com/OCA/product-attribute.git,addons,,
https://github.com/OCA/product-pack.git,addons,,
https://github.com/OCA/product-variant.git,addons,,
https://github.com/OCA/project.git,addons,,
https://github.com/OCA/project.git,addons,12.0_fix_conflict_project_key,
https://github.com/OCA/project-reporting.git,addons,,
https://github.com/OCA/purchase-workflow.git,addons,,
https://github.com/OCA/queue.git,addons,,
https://github.com/OCA/reporting-engine.git,addons,,
https://github.com/OCA/sale-workflow.git,addons,,
https://github.com/OCA/sale-workflow.git,addons,12.0_modules_sale_order_line,
https://github.com/OCA/server-auth.git,addons,,
https://github.com/OCA/server-brand.git,addons,,
https://github.com/OCA/server-env.git,addons,,
@ -77,12 +77,12 @@ https://github.com/OCA/server-tools.git,addons,,
https://github.com/OCA/server-ux.git,addons,,
https://github.com/OCA/social.git,addons,,
https://github.com/OCA/stock-logistics-warehouse.git,addons,,
https://github.com/OCA/timesheet.git,addons,,
https://github.com/OCA/timesheet.git,addons,12.0_support_project_agile_timesheet,
https://github.com/OCA/web.git,addons,,
https://github.com/OCA/website.git,addons,,
https://github.com/OCA/website.git,addons,12.0_dev,
https://github.com/OCA/wms.git,addons,,
https://github.com/odoo/odoo.git,.,12.0_feature_5_star_CRM,1
https://github.com/odooaktiv/QuotationRevision.git,addons,,
https://github.com/openeducat/openeducat_erp.git,addons,,
https://github.com/SanteLibre/santelibre_addons.git,addons,master,
https://github.com/Smile-SA/odoo_addons.git,addons,,
https://github.com/Smile-SA/odoo_addons.git,addons,12.0_remote_autoinstall,

1 url path revision clone-depth
2 https://github.com/ERPLibre/erplibre_addons.git addons
3 https://github.com/MathBenTech/development.git addons
4 https://github.com/MathBenTech/odoo-business-spending-management-quebec-canada.git addons stable_prod_12.0 12.0_sale_order_line_timesheet_attribution
5 https://github.com/MathBenTech/scrummer.git addons
6 https://github.com/muk-it/muk_base.git addons
7 https://github.com/muk-it/muk_dms.git addons
8 https://github.com/muk-it/muk_docs.git addons
9 https://github.com/muk-it/muk_misc.git addons
10 https://github.com/muk-it/muk_quality.git addons
11 https://github.com/muk-it/muk_web.git addons 12.0_fix_web_conflict_menu
12 https://github.com/muk-it/muk_website.git addons 12.0_remove_autoinstall
13 https://github.com/Numigi/odoo-base-addons.git addons
14 https://github.com/Numigi/odoo-entertainment-addons.git addons
15 https://github.com/Numigi/odoo-git-addons.git addons
16 https://github.com/Numigi/odoo-hr-addons.git addons
17 https://github.com/Numigi/odoo-partner-addons.git addons 12.0_partner_no_vat_improve_no_vat
18 https://github.com/Numigi/odoo-product-addons.git addons
19 https://github.com/Numigi/odoo-project-addons.git addons
20 https://github.com/Numigi/odoo-purchase-addons.git addons
29 https://github.com/OCA/account-financial-reporting.git addons
30 https://github.com/OCA/account-financial-tools.git addons
31 https://github.com/OCA/account-fiscal-rule.git addons
32 https://github.com/OCA/account-invoicing.git addons 12.0_account_invoice_approbation
33 https://github.com/OCA/account-invoice-reporting.git addons
34 https://github.com/OCA/account-payment.git addons
35 https://github.com/OCA/account-reconcile.git addons
45 https://github.com/OCA/credit-control.git addons
46 https://github.com/OCA/currency.git addons
47 https://github.com/OCA/data-protection.git addons
48 https://github.com/OCA/donation.git addons 12.0_module_donation_website
49 https://github.com/OCA/e-commerce.git addons
50 https://github.com/OCA/edi.git addons
51 https://github.com/OCA/event.git addons
52 https://github.com/OCA/helpdesk.git addons 12.0_dev
53 https://github.com/OCA/hr.git addons
54 https://github.com/OCA/knowledge.git addons
55 https://github.com/OCA/l10n-canada.git addons
56 https://github.com/OCA/maintenance.git addons
57 https://github.com/OCA/management-system.git addons
58 https://github.com/OCA/manufacture.git addons
59 https://github.com/OCA/margin-analysis.git addons 12.0_sale_margin_editor
60 https://github.com/OCA/mis-builder.git addons
61 https://github.com/OCA/multi-company.git addons
62 https://github.com/OCA/partner-contact.git addons
64 https://github.com/OCA/product-attribute.git addons
65 https://github.com/OCA/product-pack.git addons
66 https://github.com/OCA/product-variant.git addons
67 https://github.com/OCA/project.git addons 12.0_fix_conflict_project_key
68 https://github.com/OCA/project-reporting.git addons
69 https://github.com/OCA/purchase-workflow.git addons
70 https://github.com/OCA/queue.git addons
71 https://github.com/OCA/reporting-engine.git addons
72 https://github.com/OCA/sale-workflow.git addons 12.0_modules_sale_order_line
73 https://github.com/OCA/server-auth.git addons
74 https://github.com/OCA/server-brand.git addons
75 https://github.com/OCA/server-env.git addons
77 https://github.com/OCA/server-ux.git addons
78 https://github.com/OCA/social.git addons
79 https://github.com/OCA/stock-logistics-warehouse.git addons
80 https://github.com/OCA/timesheet.git addons 12.0_support_project_agile_timesheet
81 https://github.com/OCA/web.git addons
82 https://github.com/OCA/website.git addons 12.0_dev
83 https://github.com/OCA/wms.git addons
84 https://github.com/odoo/odoo.git . 12.0_feature_5_star_CRM 1
85 https://github.com/odooaktiv/QuotationRevision.git addons
86 https://github.com/openeducat/openeducat_erp.git addons
87 https://github.com/SanteLibre/santelibre_addons.git addons master
88 https://github.com/Smile-SA/odoo_addons.git addons 12.0_remote_autoinstall