Skip to Content
Odoo Meny
  • Sign in
  • Prova gratis
  • Appar
    Finanstjänster
    • Bokföring
    • Fakturering
    • Utgifter
    • Kalkylark (Affärsanalyser)
    • Dokument
    • Underskrifter
    Försäljning
    • CRM
    • Försäljning
    • Kassasystem Butik
    • Kassasystem Restaurang
    • Prenumerationer
    • Uthyrning
    Hemsidor
    • Hemsidesverktyg
    • E-handel
    • Blogg
    • Forum
    • Livechatt
    • Utbildning
    Försörjningskedja
    • Lager
    • Produktion
    • Produktens livscykel (PLM)
    • Inköp
    • Underhåll
    • Kvalitet
    HR
    • Anställda
    • Rekrytering
    • Ledighet
    • Utvärderingar
    • Rekommendationer
    • Fordon
    Marknadsföring
    • Sociala medier
    • E-postmarknadsföring
    • Sms-marknadsföring
    • Evenemang
    • Automatiserad marknadsföring
    • Enkäter
    Tjänster
    • Projekt
    • Tidrapporter
    • Fältservice
    • Kundtjänst
    • Planering
    • Tidsbokningar
    Produktivitet
    • Diskutera
    • Godkännanden
    • IoT
    • VoIP
    • Kunskap
    • WhatsApp
    Community-appar Odoo Studio Odoo Cloud
  • Branscher
    Butiker
    • Bokaffärer
    • Klädbutiker
    • Möbelaffärer
    • Mataffärer
    • Byggvaruhus
    • Leksaksaffärer
    Restaurang & Hotell
    • Barer och pubar
    • Gourmetrestauranger
    • Snabbmatsrestauranger
    • Gästhus
    • Dryckesdistributörer
    • Hotell
    Fastigheter
    • Fastighetsbyråer
    • Arkitektfirmor
    • Byggföretag
    • Fastighetsägare
    • Trädgårdsmästare
    • Bostadsrättsföreningar
    Hitta en konsult
    • Redovisningsbyrå
    • Odoo Partner
    • Reklambyråer
    • Advokatbyråer
    • Rekrytering
    • Revisioner och certifieringar
    Produktion
    • Textilproduktion
    • Metallproduktion
    • Möbelproduktion
    • Livsmedelsproduktion
    • Bryggerier
    • Företagsgåvor
    Hälsa & Fitness
    • Sportklubbar
    • Optiker
    • Träningscenter
    • Hälsovård
    • Apotek
    • Frisörsalonger
    Hantverk
    • Hantverkare
    • IT-utrustning och kundtjänst
    • Solenergi
    • Skomakare
    • Städtjänster
    • VVS-tjänster
    Övrigt
    • Ideella föreningar
    • Miljöförvaltningar
    • Uthyrning av reklamtavlor
    • Fotografer
    • Cykeluthyrning
    • Återförsäljare av mjukvara
    Upptäck alla Branscher
  • Community
    Utbildning
    • Instruktionsvideor
    • Dokumentation
    • Certifiering
    • Utbildningar
    • Blogg
    • Podcast
    Lär dig med oss
    • Workshops
    • Företagsspelet Scale Up!
    • Studiebesök hos Odoo
    Mjukvaran
    • Ladda ner
    • Jämför utgåvor
    • Tidigare versioner
    Samverkan
    • GitHub
    • Forum
    • Evenemang
    • Översättningar
    • Bli en partner
    • Partnertjänster
    • Registrera din redovisningsbyrå
    Våra tjänster
    • Partners
    • Revisorer
    • Träffa en rådgivare
    • Implementering
    • Kundrecensioner
    • Kundtjänst
    • Uppgraderingar
    GitHub Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Boka en demo
  • Priser
  • Hjälp
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
Help

Development / Production

Subscribe

Get notified when there's activity on this post

This question has been flagged
developmentserver
4 Replies
16020 Views
Avatar
Dave Ellison

I have been thinking about the development of an OpenERP instance. What I want to do, is to have two databases. One is development database, I will duplicate that for live initially.

That part is easy, but what I want to do is to develop on the seperate database, but push changes over to the product server automatically, where possible. Has anyone tried a dev/prod environment before? If so, how were the changes push across?

Or do most people just document the changes and do the same on the PROD server?

3
Avatar
Discard
Avatar
agb80
Best Answer

Personally I don't have tried this https://pypi.python.org/pypi/oerpenv/1.7.61 but seems to me as the most promising option for make exactly what you want: easy setup of diferent environments with diferent/same databases.

2
Avatar
Discard
Dave Ellison
Author

Ah, that sounds like the tool that might do the job.

Brendan Clune

From what I can tell, oerpenv creates different versions of servers, but not necessarily databases. It doesn't look like it can pull database changes from a test db to production.

Martin

Also, I see no way to tell it to use V7 or V6.1, without digging into the Python code.

Avatar
Jānis
Best Answer

Use bazaar:

http://bazaar.canonical.com/

4
Avatar
Discard
Dave Ellison
Author

Hi thanks for your response. How I can use Bazaar to push database changes over my existing production server? I understood Bazaar to be a project/version control system?

agb80

Use a versioning system for a database never would be a good idea because at the end you are going to make lot of manual merges.

Daniel Reis

"Use bazaar" + a link is not really an answer.

Avatar
Martin
Best Answer

You might like to take a step back for a minute and consider that there is an entire Information Technology discipline devoted to this kind of problem -- DevOps!

It's goal is to achieve zero delay between completion of a task in development and final deployment in production!! Not achievable in any organization larger than one person of course, but the intention is of vital importance nevertheless.

Tools involved :

  • Continuous Integration (CI) servers, such as Jenkins
  • Functional Integration Testing (FIT) and Behaviour Driven Development (BDD) tools, such as Fitnesse, Cucumber or Freshen
  • Configuration Management Servers (CMS), such as Chef, Puppet and Vagrant
  • Process automation servers, such as RunDeck, Ansible and Salt
  • Browser automation tools like Geb or Selenium
  • Version contol servers like Bazaar/Launchpad and Git/GitHub
  • Server virtualization, like KVM & VirtualBox

Where Brendan (answer above) says . . .

For those changes, manual propagation seems like the best option. For these changes, make them on the development database, create a document showing your changes, and have another developer attempt to recreate the changes on a copy of production.

. . . DevOps would reply . . .

Every development-to-operations task must be described by executable documentation and tested automatically. Manually tasks on a production server are forbidden. The development process must include development, testing and approval of the automation steps. The steps and the tests of the steps must themselves be version controlled as integral parts of the full system.

I agree with Brendan that it doesn't look like oerpenv can pull database changes from a test db to production. That does not mean it would not be a very useful arrow in your DevOps quiver. I was unaware of it and will begin to use it. But, not manually. I'll call it from RunDeck, which allows me to build a library of scenarios of tasks and keeps gives a permanent log of tasks performed.

The real issue is the number of, and scale of, the sites you have to manage. A small operation (like me :-) ) might just automate a few tasks through Rundeck. A medium team might see a need to have Jenkins build the app, execute unit tests and then call RunDeck jobs to apply data transformations. A large organization might have a team of experts just preparing Cucumber tests for delivery to the Jenkins admin, while the operations sysadmins deploy and provision servers with Chef.

Some of the tools above are a bit like the game Othello -- "Minutes to learn. Years to master." -- so be careful.

3
Avatar
Discard
Avatar
Brendan Clune
Best Answer

Keeping database changes in sync is definitely a challenge when developing for OpenERP. Changes made and tested in a development database need to be well documented and manually propagated to production. Of course, this manual propagation is prone to error when documentation doesn't quite line up with actions taken on the development database.

To combat this, our development team makes as many changes as possible in custom modules, which can then be tested on a clean copy of the production database. While this incurs more development overhead, it also results in fewer errors during deployment.

That said, there's still changes to configurations and other data that can't be cleanly captured in a module (or are small enough that module boilerplate doesn't make sense). For those changes, manual propagation seems like the best option. For these changes, make them on the development database, create a document showing your changes, and have another developer attempt to recreate the changes on a copy of production. Any discrepancy between actions and documentation should hopefully show up during this step.

2
Avatar
Discard
Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
How can I reload source code without restarting the OpenERP server?
development server
Avatar
Avatar
Avatar
2
mars 15
13391
display custom form for res.partner subclass when clicking partner internal link
development views server
Avatar
0
juni 24
2415
start server on windows from source
development windows server
Avatar
0
mars 15
4569
Point of Sale Refunds Error
development
Avatar
0
feb. 26
36
sdEuity account in balance sheet reportsd
development
Avatar
0
feb. 26
7
Community
  • Instruktionsvideor
  • Dokumentation
  • Forum
Öppen källkod
  • Ladda ner
  • GitHub
  • Runbot
  • Översättningar
Tjänster
  • Odoo.sh Hosting
  • Kundtjänst
  • Uppgradera
  • Anpassningsbara modifikationer
  • Utbildning
  • Revisorer
  • Partners
  • Bli en partner
Om oss
  • Vårt företag
  • Varumärkestillgångar
  • Kontakta oss
  • Jobb
  • Evenemang
  • Podcast
  • Blogg
  • Kunder
  • Juridiskt • Integritet
  • Säkerhet
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español Svenska ภาษาไทย Türkçe українська Tiếng Việt

Odoo är ett affärssystem med öppen källkod som täcker alla dina företagsbehov: CRM, e-handel, bokföring, lager, kassasystem, projektledning, och så vidare.

Odoos unika värdeförslag är att samtidigt vara väldigt enkel att använda men också helt integrerad.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now