Magento Ontwikkeling/ Test/ Productie omgeving(en)

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • -DarkShadow-
  • Registratie: December 2001
  • Niet online
Ik ben met één andere ontwikkelaar aan een Magento installatie aan het werken. Aan de volgende zaken wordt tijdens ontwikkeling gewerkt:
  • Instellingen die in de database en in XML bestanden worden opgeslagen.
  • Aan de template wordt gewerkt en in verschillende PHP bestanden wordt gewerkt.
Magento is een open source webwinkel systeem, dus in productie worden er klanten/ orders/ producten toegevoegd.

Ik zou graag een ontwikkelomgeving+productieomgeving opzetten waarbij er zonder zorgen aan de database en aan de code gewerkt kan worden en waarbij de veranderingen snel gereleased kunnen worden naar productie. Het moet solide en veilig zijn, maar mag weinig overhead kosten.

Ik zat zelf te denken aan:
1. Ontwikkelaar trekt laatste versie broncode uit repository
2. Ontwikkelaar werkt aan broncode
3. Ontwikkelaar test aangepaste deel handmatig/ maakt er een nieuwe Selenium test voor aan in ontwikkelomgeving.
4. Selenium tests worden gedraaid in ontwikkelomgeving.
5. Ontwikkelaar pusht aanpassingen naar repository.
6. Bij weinig verkeer wordt de productieomgeving afgesloten voor verkeer en de laatste versie uit de repository wordt naar productie gekopieerd. Selenium tests worden gedraaid -> Pass? -> Productie weer open voor verkeer. Fail? -> Vorige versie terug.

Is dit een goed idee?

Hoe pak ik de aanpassingen in de database aan?

Specialist in:
Soldeerstations
Oscilloscoop


Acties:
  • 0 Henk 'm!

  • Peedy
  • Registratie: Februari 2002
  • Laatst online: 06-11-2024
Zo doen wij het altijd;
- Kopie van productieomgeving naar dev server (zowel files als db, core bestanden uiteraard laten staan)
- Knutselen aan files
- Productiesite dicht (vaak 's nachts dus)
- DB overzetten van productie naar dev
- Testen
- Alles van dev naar productie
- Volgende dag alles monitoren

Dit alles met file-backups, db-backups en Git uiteraard.

Tenzij je veel met externe modules gaat werken zullen de aanpassingen in de database minimaal zijn. Don't hack core!

[ Voor 13% gewijzigd door Peedy op 28-04-2011 20:58 ]


Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 13-07 01:14
Wat je natuurlijk ook kunt doen als je een hekel hebt aan downtime is twee identieke productieservers opzetten. Week 1 is server 1 productie, server 2 test / acceptatie. Als de software op server 2 geaccepteerd wordt, druk je op een knop en worden alle requests naar server 2 gestuurd.

Mbt database, dat is een redelijk eenvoudige instelling die je omzet bij het omzetten van acceptatie naar productie.

Resultaat: Geen downtime.

Mbt het overzetten van de DB naar dev, je zou kunnen kijken naar replicatie oid. Geen ervaring mee, echter.

Acties:
  • 0 Henk 'm!

  • -DarkShadow-
  • Registratie: December 2001
  • Niet online
's nachts een klein uurtje downtime is geen probleem. Misschien is het statische deel van de site zelfs nog in de lucht te houden met Varnish?

Specialist in:
Soldeerstations
Oscilloscoop