SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
Contributing within OCA projects
Alexandre Fayolle
2014-06-04
2/24www.camptocamp.com / 2014-06-04
Introductions
■ Alexandre Fayolle aka @gurneyalex (twitter, GitHub)
aka agurney (irc, Bitbucket)
■ OCA : OpenERP / Odoo Community Association
○ http://odoo-community-association.org/
2014-06-04
3/24www.camptocamp.com / 2014-06-04
OCA goals
■ Help and promote the collaborative software development of Odoo;
■ Encourage the development of Odoo and its features while
coordinating and organizing the collaborative work on the software;
■ Assist the community while defending its interests and the
sustainability of its developments;
■ Promote the use of the Odoo solution;
■ Facilitate synergies, collaborations and fund raising efforts;
■ Actively collaborate on the definition of the road maps of new
versions of the tool and their implementation.
2014-06-04
4/24www.camptocamp.com / 2014-06-04
OCA Projects : addons and teams
■ Projects are organized around special interest teams
■ Currently 48 teams on launchpad
○ Reduction / simplification under discussion as part of
GitHub migration
■ Likely migration plan: use GitHub for v8 and later,
keep launchpad for v7 and earlier
○ Maybe a readonly mirror of v7 branches on GitHub
2014-06-04
5/24www.camptocamp.com / 2014-06-04
OCA Topics (1/2)
■ Addons families:
○ Accounting, Banking, Human Resource, E-commerce,
Finance, Manufacturing, CRM & Sales, Logistics, Purchases,
Product, Projects & Services...
■ Verticalization teams:
○ Hotel, Medical, ISP, Construction...
■ Integration teams:
○ Sage, LIMS...
2014-06-04
6/24www.camptocamp.com / 2014-06-04
OCA Topics (2/2)
■ Server side tools
○ Reporting tools, environment-based configurations...
■ Web client extensions
○ Widgets, default sorting...
■ Community Backports (OCB)
2014-06-04
7/24www.camptocamp.com / 2014-06-04
OCB: Odoo Community Backports
■ Specific version of Odoo where bug fixes pending
merge by the editor tend to get merged faster
■ On Launchpad, 3 projects
○ ocb-server, ocb-addons, ocb-web
○ Support for 6.1 and 7.0
■ On GitHub: not there yet (nothing to backport!)
2014-06-04
8/24www.camptocamp.com / 2014-06-04
Contributing
■ Bug reports
■ Bug fixes
■ New features
■ Reviews of MP (and PR)
○ Code reviews
○ Manual testing
○ Functional reviews
2014-06-04
9/24www.camptocamp.com / 2014-06-04
Launchpad and bzr tips (1/3)
Use bzr init-repo <projectname>
○ Repositories share information between the branches which are
created inside
○ Fast branching
○ Lower disk consumption
○ With a symlink, you can have a poor man's in place branch
switch
○ You can have branches from different (remote) projects in the
same local repository → useful when working on OCB
2014-06-04
10/24www.camptocamp.com / 2014-06-04
Launchpad and bzr tips (2/3)
Never use bound branches
Never use bzr checkout
○ These will push your changes to the source as soon as
you commit
2014-06-04
11/24www.camptocamp.com / 2014-06-04
Launchpad and bzr tips (3/3)
Use bzr commit --fixes lp:bugnumber
○ Automatic linking of branch to bug report when code is
pushed to launchpad
2014-06-04
12/24www.camptocamp.com / 2014-06-04
Workflow: setup environment to work on an
OCA project
export project=account-invoicing
bzr init-repo ${project}
cd ${project}
bzr branch lp:${project}/7.0
2014-06-04
13/24www.camptocamp.com / 2014-06-04
Workflow: proposing a bugfix
Assuming my launchpad account is “afe” and the bug is #123456
export project=account-invoicing
cd ${project}
bzr branch 7.0 7.0-123456-afe
# fix the bug, run tests
bzr commit --fixes lp:123456 
-m “[FIX] explain the fix”
bzr push lp:~afe/${project}/7.0-123456-afe
# open branch in web browser
bzr lp-open lp:~afe/${project}/7.0-123456-afe
# submit MP using the web interface
# describe what the change does please
2014-06-04
14/24www.camptocamp.com / 2014-06-04
2014-06-04
15/24www.camptocamp.com / 2014-06-04
2014-06-04
16/24www.camptocamp.com / 2014-06-04
2014-06-04
17/24www.camptocamp.com / 2014-06-04
Workflow: proposing a fix to OCB
■ OCB MP follow almost the same workflow as OCA Addons
○ Bug report is mandatory
○ Fix must be proposed on both official and OCB branch
○ Technical limitation forces to make 2 separate branches, and 2 separate MP
■ My way:
○ I create 3 repositories: server, addons and web
○ Inside each I branch the official stable branch and the ocb branch
○ I get from lp (or I create) the bugfix branch
○ I create an ocb branch for the fix and cherry pick the fix from the official
branch using bzr merge
2014-06-04
18/24www.camptocamp.com / 2014-06-04
Workflow: OCB work environment setup
bzr init-repo server
cd server
bzr branch lp:openobject-server/7.0
bzr branch lp:ocb-server/7.0 ocb-7.0
# repeat for addons and web
2014-06-04
19/24www.camptocamp.com / 2014-06-04
Workflow: Proposing a fix to OCB
cd server
bzr branch 7.0 7.0-fix_123456-afe
cd 7.0-fix_123456-afe
# fix, commit, TEST, push, propose for merge as before
cd ..
# port the fix to OCB branch
bzr branch ocb-7.0 ocb-7.0-fix_123456-afe
cd ocb-7.0-fix_123456-afe
# cherry pick fix from official branch
bzr merge -r rev1..rev2 ../7.0-fix_123456-afe
bzr commit --author orig_author --fixes lp:123456
# TEST, push, propose for merge as before.
# you should point to official MP in the OCB MP
2014-06-04
20/24www.camptocamp.com / 2014-06-04
Git migration
■ Very new, not everything is decided
○ Stay tuned on the mailing list, read the archives
○ No established ways of working for now with GitHub (reviews,
PR handling...)
○ We will reuse an existing widely used process
■ Be sure to read
○ https://github.com/odoo/odoo/blob/master/doc/git.rst
○ http://ndpsoftware.com/git-cheatsheet.html
2014-06-04
21/24www.camptocamp.com / 2014-06-04
Communication channels
■ Mailing list
○ currently https://launchpad.net/~openerp-community
■ IRC
○ Friday is “MP Day” on #openobject (freenode.net)
■ Twitter
○ @OdooCommunity
2014-06-04
22/24www.camptocamp.com / 2014-06-04
Other OCA related events during community
days
■ The Future of Odoo Community Association
○ June 4, 2014 at 17h
■ General Assembly
○ June 5, 2014 at 17h50
2014-06-04
23/24www.camptocamp.com / 2014-06-04
Time for Q&A!
Contributing within OCA projects

Más contenido relacionado

Destacado

geOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDIgeOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDICamptocamp
 
3D webservices - where do we stand? (ENG)
3D webservices - where do we stand? (ENG)3D webservices - where do we stand? (ENG)
3D webservices - where do we stand? (ENG)Camptocamp
 
Odoo verticalization for NGO
Odoo verticalization for NGOOdoo verticalization for NGO
Odoo verticalization for NGOCamptocamp
 
MapFish Print 3
MapFish Print 3MapFish Print 3
MapFish Print 3Camptocamp
 
MapFish Print 3 : Printing maps like a boss
MapFish Print 3 : Printing maps like a bossMapFish Print 3 : Printing maps like a boss
MapFish Print 3 : Printing maps like a bossCamptocamp
 
A jobs queue for processing tasks asynchronously
A jobs queue for processing tasks asynchronouslyA jobs queue for processing tasks asynchronously
A jobs queue for processing tasks asynchronouslyCamptocamp
 
Odoo Connector (formerly OpenERP Connector)
Odoo Connector (formerly OpenERP Connector)Odoo Connector (formerly OpenERP Connector)
Odoo Connector (formerly OpenERP Connector)Camptocamp
 
Contributing to the Odoo Community Association (OCA)
Contributing to the Odoo Community Association (OCA)Contributing to the Odoo Community Association (OCA)
Contributing to the Odoo Community Association (OCA)Camptocamp
 
OpenERP7, 2014 community days : banking framework talk
OpenERP7, 2014 community days : banking framework talkOpenERP7, 2014 community days : banking framework talk
OpenERP7, 2014 community days : banking framework talkCamptocamp
 
Cesium : Virtueller 3D Globus im Web
Cesium : Virtueller 3D Globus im WebCesium : Virtueller 3D Globus im Web
Cesium : Virtueller 3D Globus im WebCamptocamp
 
OpenLayers 3 & Google Closure Compiler
OpenLayers 3 & Google Closure CompilerOpenLayers 3 & Google Closure Compiler
OpenLayers 3 & Google Closure CompilerCamptocamp
 
Mapfish print-v3
Mapfish print-v3Mapfish print-v3
Mapfish print-v3Camptocamp
 
GeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISGeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISCamptocamp
 
QGIS et WebSIG(s), la convergence ?
QGIS et WebSIG(s), la convergence ?QGIS et WebSIG(s), la convergence ?
QGIS et WebSIG(s), la convergence ?Camptocamp
 
Pourquoi intégrer Odoo, l'ERP de dernière génération full web, au sein de son...
Pourquoi intégrer Odoo, l'ERP de dernière génération full web, au sein de son...Pourquoi intégrer Odoo, l'ERP de dernière génération full web, au sein de son...
Pourquoi intégrer Odoo, l'ERP de dernière génération full web, au sein de son...Camptocamp
 
georchestra SDI: Project Status Report
georchestra SDI: Project Status Reportgeorchestra SDI: Project Status Report
georchestra SDI: Project Status ReportCamptocamp
 
E-commerce: the new Magento - OpenERP Connector: a generic connector to any a...
E-commerce: the new Magento - OpenERP Connector: a generic connector to any a...E-commerce: the new Magento - OpenERP Connector: a generic connector to any a...
E-commerce: the new Magento - OpenERP Connector: a generic connector to any a...Odoo
 
FOSSGIS 2014: geOrchestra
FOSSGIS 2014: geOrchestraFOSSGIS 2014: geOrchestra
FOSSGIS 2014: geOrchestraCamptocamp
 

Destacado (20)

geOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDIgeOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDI
 
3D webservices - where do we stand? (ENG)
3D webservices - where do we stand? (ENG)3D webservices - where do we stand? (ENG)
3D webservices - where do we stand? (ENG)
 
Odoo verticalization for NGO
Odoo verticalization for NGOOdoo verticalization for NGO
Odoo verticalization for NGO
 
MapFish Print 3
MapFish Print 3MapFish Print 3
MapFish Print 3
 
MapFish Print 3 : Printing maps like a boss
MapFish Print 3 : Printing maps like a bossMapFish Print 3 : Printing maps like a boss
MapFish Print 3 : Printing maps like a boss
 
A jobs queue for processing tasks asynchronously
A jobs queue for processing tasks asynchronouslyA jobs queue for processing tasks asynchronously
A jobs queue for processing tasks asynchronously
 
Odoo Connector (formerly OpenERP Connector)
Odoo Connector (formerly OpenERP Connector)Odoo Connector (formerly OpenERP Connector)
Odoo Connector (formerly OpenERP Connector)
 
Contributing to the Odoo Community Association (OCA)
Contributing to the Odoo Community Association (OCA)Contributing to the Odoo Community Association (OCA)
Contributing to the Odoo Community Association (OCA)
 
OpenERP7, 2014 community days : banking framework talk
OpenERP7, 2014 community days : banking framework talkOpenERP7, 2014 community days : banking framework talk
OpenERP7, 2014 community days : banking framework talk
 
OpenLayers 3
OpenLayers 3OpenLayers 3
OpenLayers 3
 
Cesium : Virtueller 3D Globus im Web
Cesium : Virtueller 3D Globus im WebCesium : Virtueller 3D Globus im Web
Cesium : Virtueller 3D Globus im Web
 
OpenLayers 3 & Google Closure Compiler
OpenLayers 3 & Google Closure CompilerOpenLayers 3 & Google Closure Compiler
OpenLayers 3 & Google Closure Compiler
 
Mapfish print-v3
Mapfish print-v3Mapfish print-v3
Mapfish print-v3
 
GeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISGeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGIS
 
QGIS et WebSIG(s), la convergence ?
QGIS et WebSIG(s), la convergence ?QGIS et WebSIG(s), la convergence ?
QGIS et WebSIG(s), la convergence ?
 
OpenLayers 3
OpenLayers 3OpenLayers 3
OpenLayers 3
 
Pourquoi intégrer Odoo, l'ERP de dernière génération full web, au sein de son...
Pourquoi intégrer Odoo, l'ERP de dernière génération full web, au sein de son...Pourquoi intégrer Odoo, l'ERP de dernière génération full web, au sein de son...
Pourquoi intégrer Odoo, l'ERP de dernière génération full web, au sein de son...
 
georchestra SDI: Project Status Report
georchestra SDI: Project Status Reportgeorchestra SDI: Project Status Report
georchestra SDI: Project Status Report
 
E-commerce: the new Magento - OpenERP Connector: a generic connector to any a...
E-commerce: the new Magento - OpenERP Connector: a generic connector to any a...E-commerce: the new Magento - OpenERP Connector: a generic connector to any a...
E-commerce: the new Magento - OpenERP Connector: a generic connector to any a...
 
FOSSGIS 2014: geOrchestra
FOSSGIS 2014: geOrchestraFOSSGIS 2014: geOrchestra
FOSSGIS 2014: geOrchestra
 

Similar a Contributing within OCA projects

Contributing to the Odoo Community Association
Contributing to the Odoo Community AssociationContributing to the Odoo Community Association
Contributing to the Odoo Community Associationafayolle
 
Unicon July 2015 IAM Briefing
Unicon July 2015 IAM BriefingUnicon July 2015 IAM Briefing
Unicon July 2015 IAM BriefingJohn Gasper
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntfUlrich Krause
 
Lessons Learned: Using Concourse In Production
Lessons Learned: Using Concourse In ProductionLessons Learned: Using Concourse In Production
Lessons Learned: Using Concourse In ProductionShingo Omura
 
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13Dominopoint - Italian Lotus User Group
 
Hands-on Lab: Red Hat Container Development & OpenShift
Hands-on Lab: Red Hat Container Development & OpenShiftHands-on Lab: Red Hat Container Development & OpenShift
Hands-on Lab: Red Hat Container Development & OpenShiftAmazon Web Services
 
CHIP: "The World's First $9 Computer"
CHIP: "The World's First $9 Computer"CHIP: "The World's First $9 Computer"
CHIP: "The World's First $9 Computer"Drew Fustini
 
Data Science in the Cloud @StitchFix
Data Science in the Cloud @StitchFixData Science in the Cloud @StitchFix
Data Science in the Cloud @StitchFixC4Media
 
OpenNebula in a Multiuser Environment
OpenNebula in a Multiuser EnvironmentOpenNebula in a Multiuser Environment
OpenNebula in a Multiuser EnvironmentNETWAYS
 
Doctrine Project
Doctrine ProjectDoctrine Project
Doctrine ProjectDaniel Lima
 
Project libre1.5 - Lesson 2 - Installation requirements
Project libre1.5 - Lesson 2 - Installation requirementsProject libre1.5 - Lesson 2 - Installation requirements
Project libre1.5 - Lesson 2 - Installation requirementsHezequias Vasconcelos
 
Neural Network File Format for Inference Framework
Neural Network File Format for Inference FrameworkNeural Network File Format for Inference Framework
Neural Network File Format for Inference FrameworkKobe Yu
 
What is new in visual studio "14"
What is new in visual studio "14"What is new in visual studio "14"
What is new in visual studio "14"Praveen Nair
 
Snowflake Automated Deployments / CI/CD Pipelines
Snowflake Automated Deployments / CI/CD PipelinesSnowflake Automated Deployments / CI/CD Pipelines
Snowflake Automated Deployments / CI/CD PipelinesDrew Hansen
 
S1: Side Labs & Alfresco Webinar
S1: Side Labs & Alfresco WebinarS1: Side Labs & Alfresco Webinar
S1: Side Labs & Alfresco WebinarJCK
 
LCU14 303- Toolchain Collaboration
LCU14 303- Toolchain CollaborationLCU14 303- Toolchain Collaboration
LCU14 303- Toolchain CollaborationLinaro
 
Bootstrap4XPages
Bootstrap4XPagesBootstrap4XPages
Bootstrap4XPagesTeamstudio
 
Munich MulesSoft Meetup - Germany 08 Feb 2023
Munich MulesSoft Meetup - Germany 08 Feb 2023Munich MulesSoft Meetup - Germany 08 Feb 2023
Munich MulesSoft Meetup - Germany 08 Feb 2023MulesoftMunichMeetup
 

Similar a Contributing within OCA projects (20)

Contributing to the Odoo Community Association
Contributing to the Odoo Community AssociationContributing to the Odoo Community Association
Contributing to the Odoo Community Association
 
Unicon July 2015 IAM Briefing
Unicon July 2015 IAM BriefingUnicon July 2015 IAM Briefing
Unicon July 2015 IAM Briefing
 
OBS in numbers
OBS in numbersOBS in numbers
OBS in numbers
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
 
Lessons Learned: Using Concourse In Production
Lessons Learned: Using Concourse In ProductionLessons Learned: Using Concourse In Production
Lessons Learned: Using Concourse In Production
 
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
 
Hands-on Lab: Red Hat Container Development & OpenShift
Hands-on Lab: Red Hat Container Development & OpenShiftHands-on Lab: Red Hat Container Development & OpenShift
Hands-on Lab: Red Hat Container Development & OpenShift
 
CHIP: "The World's First $9 Computer"
CHIP: "The World's First $9 Computer"CHIP: "The World's First $9 Computer"
CHIP: "The World's First $9 Computer"
 
Data Science in the Cloud @StitchFix
Data Science in the Cloud @StitchFixData Science in the Cloud @StitchFix
Data Science in the Cloud @StitchFix
 
OpenNebula in a Multiuser Environment
OpenNebula in a Multiuser EnvironmentOpenNebula in a Multiuser Environment
OpenNebula in a Multiuser Environment
 
Doctrine Project
Doctrine ProjectDoctrine Project
Doctrine Project
 
Project libre1.5 - Lesson 2 - Installation requirements
Project libre1.5 - Lesson 2 - Installation requirementsProject libre1.5 - Lesson 2 - Installation requirements
Project libre1.5 - Lesson 2 - Installation requirements
 
Neural Network File Format for Inference Framework
Neural Network File Format for Inference FrameworkNeural Network File Format for Inference Framework
Neural Network File Format for Inference Framework
 
What is new in visual studio "14"
What is new in visual studio "14"What is new in visual studio "14"
What is new in visual studio "14"
 
Snowflake Automated Deployments / CI/CD Pipelines
Snowflake Automated Deployments / CI/CD PipelinesSnowflake Automated Deployments / CI/CD Pipelines
Snowflake Automated Deployments / CI/CD Pipelines
 
S1: Side Labs & Alfresco Webinar
S1: Side Labs & Alfresco WebinarS1: Side Labs & Alfresco Webinar
S1: Side Labs & Alfresco Webinar
 
Hot deploy
Hot deployHot deploy
Hot deploy
 
LCU14 303- Toolchain Collaboration
LCU14 303- Toolchain CollaborationLCU14 303- Toolchain Collaboration
LCU14 303- Toolchain Collaboration
 
Bootstrap4XPages
Bootstrap4XPagesBootstrap4XPages
Bootstrap4XPages
 
Munich MulesSoft Meetup - Germany 08 Feb 2023
Munich MulesSoft Meetup - Germany 08 Feb 2023Munich MulesSoft Meetup - Germany 08 Feb 2023
Munich MulesSoft Meetup - Germany 08 Feb 2023
 

Más de Camptocamp

ERP et customisation : comment éviter l’usine à gaz ?
ERP et customisation : comment éviter l’usine à gaz ?ERP et customisation : comment éviter l’usine à gaz ?
ERP et customisation : comment éviter l’usine à gaz ?Camptocamp
 
10 points-clés incontournables pour réussir votre projet ERP
10 points-clés incontournables pour réussir votre projet ERP10 points-clés incontournables pour réussir votre projet ERP
10 points-clés incontournables pour réussir votre projet ERPCamptocamp
 
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...Camptocamp
 
Geo mapfish 2_foss4g-eu_2017
Geo mapfish 2_foss4g-eu_2017Geo mapfish 2_foss4g-eu_2017
Geo mapfish 2_foss4g-eu_2017Camptocamp
 
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017Camptocamp
 
Data processing qgis3_foss4g-eu_2017
Data processing qgis3_foss4g-eu_2017Data processing qgis3_foss4g-eu_2017
Data processing qgis3_foss4g-eu_2017Camptocamp
 
AGIT 2017: GeoMapFish_2.2, the open source WebGIS
AGIT 2017: GeoMapFish_2.2, the open source WebGISAGIT 2017: GeoMapFish_2.2, the open source WebGIS
AGIT 2017: GeoMapFish_2.2, the open source WebGISCamptocamp
 
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map Engine
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map EngineAGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map Engine
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map EngineCamptocamp
 
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDI
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDIAGIT 2017: geOrchestra 16.12, the open source INSPIRE SDI
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDICamptocamp
 
[Geocom2017] geOrchestra and ngeo
[Geocom2017] geOrchestra and ngeo[Geocom2017] geOrchestra and ngeo
[Geocom2017] geOrchestra and ngeoCamptocamp
 
[Geocom2017] Georchestra & monitoring
[Geocom2017] Georchestra & monitoring[Geocom2017] Georchestra & monitoring
[Geocom2017] Georchestra & monitoringCamptocamp
 
GeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISGeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISCamptocamp
 
NGEO – OpenLayers meets Angular
NGEO – OpenLayers meets AngularNGEO – OpenLayers meets Angular
NGEO – OpenLayers meets AngularCamptocamp
 

Más de Camptocamp (13)

ERP et customisation : comment éviter l’usine à gaz ?
ERP et customisation : comment éviter l’usine à gaz ?ERP et customisation : comment éviter l’usine à gaz ?
ERP et customisation : comment éviter l’usine à gaz ?
 
10 points-clés incontournables pour réussir votre projet ERP
10 points-clés incontournables pour réussir votre projet ERP10 points-clés incontournables pour réussir votre projet ERP
10 points-clés incontournables pour réussir votre projet ERP
 
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...
 
Geo mapfish 2_foss4g-eu_2017
Geo mapfish 2_foss4g-eu_2017Geo mapfish 2_foss4g-eu_2017
Geo mapfish 2_foss4g-eu_2017
 
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017
 
Data processing qgis3_foss4g-eu_2017
Data processing qgis3_foss4g-eu_2017Data processing qgis3_foss4g-eu_2017
Data processing qgis3_foss4g-eu_2017
 
AGIT 2017: GeoMapFish_2.2, the open source WebGIS
AGIT 2017: GeoMapFish_2.2, the open source WebGISAGIT 2017: GeoMapFish_2.2, the open source WebGIS
AGIT 2017: GeoMapFish_2.2, the open source WebGIS
 
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map Engine
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map EngineAGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map Engine
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map Engine
 
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDI
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDIAGIT 2017: geOrchestra 16.12, the open source INSPIRE SDI
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDI
 
[Geocom2017] geOrchestra and ngeo
[Geocom2017] geOrchestra and ngeo[Geocom2017] geOrchestra and ngeo
[Geocom2017] geOrchestra and ngeo
 
[Geocom2017] Georchestra & monitoring
[Geocom2017] Georchestra & monitoring[Geocom2017] Georchestra & monitoring
[Geocom2017] Georchestra & monitoring
 
GeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISGeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGIS
 
NGEO – OpenLayers meets Angular
NGEO – OpenLayers meets AngularNGEO – OpenLayers meets Angular
NGEO – OpenLayers meets Angular
 

Último

PSCC - Capability Statement Presentation
PSCC - Capability Statement PresentationPSCC - Capability Statement Presentation
PSCC - Capability Statement PresentationAnamaria Contreras
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCRashishs7044
 
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607dollysharma2066
 
Financial-Statement-Analysis-of-Coca-cola-Company.pptx
Financial-Statement-Analysis-of-Coca-cola-Company.pptxFinancial-Statement-Analysis-of-Coca-cola-Company.pptx
Financial-Statement-Analysis-of-Coca-cola-Company.pptxsaniyaimamuddin
 
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607dollysharma2066
 
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...ictsugar
 
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCRashishs7044
 
Annual General Meeting Presentation Slides
Annual General Meeting Presentation SlidesAnnual General Meeting Presentation Slides
Annual General Meeting Presentation SlidesKeppelCorporation
 
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdfNewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdfKhaled Al Awadi
 
Innovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdfInnovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdfrichard876048
 
Digital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdfDigital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdfJos Voskuil
 
Cyber Security Training in Office Environment
Cyber Security Training in Office EnvironmentCyber Security Training in Office Environment
Cyber Security Training in Office Environmentelijahj01012
 
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!Doge Mining Website
 
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu MenzaYouth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menzaictsugar
 
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCRashishs7044
 
APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfRbc Rbcua
 
Market Sizes Sample Report - 2024 Edition
Market Sizes Sample Report - 2024 EditionMarket Sizes Sample Report - 2024 Edition
Market Sizes Sample Report - 2024 EditionMintel Group
 
Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Riya Pathan
 
Kenya Coconut Production Presentation by Dr. Lalith Perera
Kenya Coconut Production Presentation by Dr. Lalith PereraKenya Coconut Production Presentation by Dr. Lalith Perera
Kenya Coconut Production Presentation by Dr. Lalith Pereraictsugar
 

Último (20)

PSCC - Capability Statement Presentation
PSCC - Capability Statement PresentationPSCC - Capability Statement Presentation
PSCC - Capability Statement Presentation
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
 
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
 
Financial-Statement-Analysis-of-Coca-cola-Company.pptx
Financial-Statement-Analysis-of-Coca-cola-Company.pptxFinancial-Statement-Analysis-of-Coca-cola-Company.pptx
Financial-Statement-Analysis-of-Coca-cola-Company.pptx
 
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
 
Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)
 
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
 
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
 
Annual General Meeting Presentation Slides
Annual General Meeting Presentation SlidesAnnual General Meeting Presentation Slides
Annual General Meeting Presentation Slides
 
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdfNewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdf
 
Innovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdfInnovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdf
 
Digital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdfDigital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdf
 
Cyber Security Training in Office Environment
Cyber Security Training in Office EnvironmentCyber Security Training in Office Environment
Cyber Security Training in Office Environment
 
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
 
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu MenzaYouth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
 
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR
 
APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdf
 
Market Sizes Sample Report - 2024 Edition
Market Sizes Sample Report - 2024 EditionMarket Sizes Sample Report - 2024 Edition
Market Sizes Sample Report - 2024 Edition
 
Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737
 
Kenya Coconut Production Presentation by Dr. Lalith Perera
Kenya Coconut Production Presentation by Dr. Lalith PereraKenya Coconut Production Presentation by Dr. Lalith Perera
Kenya Coconut Production Presentation by Dr. Lalith Perera
 

Contributing within OCA projects

  • 1. Contributing within OCA projects Alexandre Fayolle
  • 2. 2014-06-04 2/24www.camptocamp.com / 2014-06-04 Introductions ■ Alexandre Fayolle aka @gurneyalex (twitter, GitHub) aka agurney (irc, Bitbucket) ■ OCA : OpenERP / Odoo Community Association ○ http://odoo-community-association.org/
  • 3. 2014-06-04 3/24www.camptocamp.com / 2014-06-04 OCA goals ■ Help and promote the collaborative software development of Odoo; ■ Encourage the development of Odoo and its features while coordinating and organizing the collaborative work on the software; ■ Assist the community while defending its interests and the sustainability of its developments; ■ Promote the use of the Odoo solution; ■ Facilitate synergies, collaborations and fund raising efforts; ■ Actively collaborate on the definition of the road maps of new versions of the tool and their implementation.
  • 4. 2014-06-04 4/24www.camptocamp.com / 2014-06-04 OCA Projects : addons and teams ■ Projects are organized around special interest teams ■ Currently 48 teams on launchpad ○ Reduction / simplification under discussion as part of GitHub migration ■ Likely migration plan: use GitHub for v8 and later, keep launchpad for v7 and earlier ○ Maybe a readonly mirror of v7 branches on GitHub
  • 5. 2014-06-04 5/24www.camptocamp.com / 2014-06-04 OCA Topics (1/2) ■ Addons families: ○ Accounting, Banking, Human Resource, E-commerce, Finance, Manufacturing, CRM & Sales, Logistics, Purchases, Product, Projects & Services... ■ Verticalization teams: ○ Hotel, Medical, ISP, Construction... ■ Integration teams: ○ Sage, LIMS...
  • 6. 2014-06-04 6/24www.camptocamp.com / 2014-06-04 OCA Topics (2/2) ■ Server side tools ○ Reporting tools, environment-based configurations... ■ Web client extensions ○ Widgets, default sorting... ■ Community Backports (OCB)
  • 7. 2014-06-04 7/24www.camptocamp.com / 2014-06-04 OCB: Odoo Community Backports ■ Specific version of Odoo where bug fixes pending merge by the editor tend to get merged faster ■ On Launchpad, 3 projects ○ ocb-server, ocb-addons, ocb-web ○ Support for 6.1 and 7.0 ■ On GitHub: not there yet (nothing to backport!)
  • 8. 2014-06-04 8/24www.camptocamp.com / 2014-06-04 Contributing ■ Bug reports ■ Bug fixes ■ New features ■ Reviews of MP (and PR) ○ Code reviews ○ Manual testing ○ Functional reviews
  • 9. 2014-06-04 9/24www.camptocamp.com / 2014-06-04 Launchpad and bzr tips (1/3) Use bzr init-repo <projectname> ○ Repositories share information between the branches which are created inside ○ Fast branching ○ Lower disk consumption ○ With a symlink, you can have a poor man's in place branch switch ○ You can have branches from different (remote) projects in the same local repository → useful when working on OCB
  • 10. 2014-06-04 10/24www.camptocamp.com / 2014-06-04 Launchpad and bzr tips (2/3) Never use bound branches Never use bzr checkout ○ These will push your changes to the source as soon as you commit
  • 11. 2014-06-04 11/24www.camptocamp.com / 2014-06-04 Launchpad and bzr tips (3/3) Use bzr commit --fixes lp:bugnumber ○ Automatic linking of branch to bug report when code is pushed to launchpad
  • 12. 2014-06-04 12/24www.camptocamp.com / 2014-06-04 Workflow: setup environment to work on an OCA project export project=account-invoicing bzr init-repo ${project} cd ${project} bzr branch lp:${project}/7.0
  • 13. 2014-06-04 13/24www.camptocamp.com / 2014-06-04 Workflow: proposing a bugfix Assuming my launchpad account is “afe” and the bug is #123456 export project=account-invoicing cd ${project} bzr branch 7.0 7.0-123456-afe # fix the bug, run tests bzr commit --fixes lp:123456 -m “[FIX] explain the fix” bzr push lp:~afe/${project}/7.0-123456-afe # open branch in web browser bzr lp-open lp:~afe/${project}/7.0-123456-afe # submit MP using the web interface # describe what the change does please
  • 17. 2014-06-04 17/24www.camptocamp.com / 2014-06-04 Workflow: proposing a fix to OCB ■ OCB MP follow almost the same workflow as OCA Addons ○ Bug report is mandatory ○ Fix must be proposed on both official and OCB branch ○ Technical limitation forces to make 2 separate branches, and 2 separate MP ■ My way: ○ I create 3 repositories: server, addons and web ○ Inside each I branch the official stable branch and the ocb branch ○ I get from lp (or I create) the bugfix branch ○ I create an ocb branch for the fix and cherry pick the fix from the official branch using bzr merge
  • 18. 2014-06-04 18/24www.camptocamp.com / 2014-06-04 Workflow: OCB work environment setup bzr init-repo server cd server bzr branch lp:openobject-server/7.0 bzr branch lp:ocb-server/7.0 ocb-7.0 # repeat for addons and web
  • 19. 2014-06-04 19/24www.camptocamp.com / 2014-06-04 Workflow: Proposing a fix to OCB cd server bzr branch 7.0 7.0-fix_123456-afe cd 7.0-fix_123456-afe # fix, commit, TEST, push, propose for merge as before cd .. # port the fix to OCB branch bzr branch ocb-7.0 ocb-7.0-fix_123456-afe cd ocb-7.0-fix_123456-afe # cherry pick fix from official branch bzr merge -r rev1..rev2 ../7.0-fix_123456-afe bzr commit --author orig_author --fixes lp:123456 # TEST, push, propose for merge as before. # you should point to official MP in the OCB MP
  • 20. 2014-06-04 20/24www.camptocamp.com / 2014-06-04 Git migration ■ Very new, not everything is decided ○ Stay tuned on the mailing list, read the archives ○ No established ways of working for now with GitHub (reviews, PR handling...) ○ We will reuse an existing widely used process ■ Be sure to read ○ https://github.com/odoo/odoo/blob/master/doc/git.rst ○ http://ndpsoftware.com/git-cheatsheet.html
  • 21. 2014-06-04 21/24www.camptocamp.com / 2014-06-04 Communication channels ■ Mailing list ○ currently https://launchpad.net/~openerp-community ■ IRC ○ Friday is “MP Day” on #openobject (freenode.net) ■ Twitter ○ @OdooCommunity
  • 22. 2014-06-04 22/24www.camptocamp.com / 2014-06-04 Other OCA related events during community days ■ The Future of Odoo Community Association ○ June 4, 2014 at 17h ■ General Assembly ○ June 5, 2014 at 17h50