Założenie sklepu Magento to nie tylko kwestia opracowania samodzielnie instalowanych rozszerzeń, ale także wiele operacji „ręcznego wprowadzania”, takich jak tworzenie atrybutów edycji końcowej, kategorii, produktów, stron CMS reguł cenowych itp., Nie wspominając już o wszystkich zmiany w konfiguracji systemu.
Chciałbym, abyś pomógł nakreślić najlepszą strategię, jeśli chodzi o wdrożenie sklepu Magento od środowiska programistycznego po środowisko produkcyjne i produkcyjne.
Jedną z moich strategii jest napisanie „modułu wdrażania”, który programowo tworzy wymienione wyżej podmioty, ale jest to bardzo czasochłonne zadanie i czasem wydaje mi się, że to trochę przesada.
Ostatnio zacząłem używać Selenium IDE do odtwarzania zadań administracyjnych, ale czas potrzebny na skonfigurowanie wszystkich pakietów testowych nie jest daleki od wspomnianego powyżej.
Być może optymalnym rozwiązaniem może być użycie modułu zdolnego do wykonania migawki systemu Magento, pozwalającego wybrać, co wdrożyć.
Więc:
- jaka jest twoja strategia wdrażania?
- czy istnieje moduł zdolny do wykonania migawki systemu Magento, pozwalający wybrać, co wdrożyć?
- jeśli taki moduł nie istnieje i pod warunkiem, że taki moduł jest rozsądnym rozwiązaniem, czy ktoś jest zainteresowany oddaniem swojego / jego wkładu w jego rozwój?
Dziękuję Ci!
Odpowiedzi:
Moim zdaniem jest to wszystko napisać. Zwykle mam podstawowy moduł konfiguracji do wszystkiego, co nie jest bezpośrednio związane z konkretnymi modułami. (na przykład tworzenie niestandardowych przeróbek adresów URL dla poprzedniego adresu URL witryny na nowy adres URL witryny) i dodawanie wszelkich elementów związanych z modułem do własnych skryptów instalacyjnych.
Sposób myślenia jest taki, że jeśli witryna wymaga ponownej instalacji przy użyciu nowej bazy danych, wszystko wraca tak, jak wcześniej. Pomaga to również w tym, że okresowo aktualizuję witrynę uat za pomocą kopii bazy danych na żywo. Moduły w programie uat kontynuują pracę, gdy ponownie wprowadzają swoje konfiguracje.
Zmiany stawek wysyłki, zasad koszyka itp. (W zasadzie rzeczy, którymi klienci administrują się w administracji) są uważane za „niestabilne dane” i nie są skrypty. Obejmuje to dane produktu. Klient ma taką opcję i zachęca się go najpierw do przetestowania nowego importu na stronie UAT.
Klientom zaleca się, aby nie tworzyli atrybutów, a raczej zlecili utworzenie ich za pomocą żądania biletu. To pozwala mi również zbierać informacje na temat tego, jaki jest zamiar klienta dotyczący tego atrybutu, a czasami mam lepszą sugestię lub mogę stworzyć lepszy kod, ponieważ mam kontrolę nad tym, jakie atrybuty istnieją, a także na temat atrybutów wybieranych, aby upewnić się, że dane są czysty.
Tak, skrypty trwają dłużej, ale później ręcznie będzie można ręcznie odtworzyć ustawienia konfiguracji całych witryn. Może to również być krępujące, jeśli zapomnisz coś i sprawisz, że strona nie będzie działała poprawnie, lub gdy uruchomisz nową pracę programistyczną na stronie lokalnej, w której brakuje niektórych kluczowych ustawień konfiguracji.
źródło
Kilka miesięcy temu byłem badaczem. Oto strony, do których możesz się odwoływać.
Podstawowe adresy URL Magento i instalacjedeweloperskie
/ testoweMagento Opracowanie i wdrożenieMagento Przewodnik po Git i narzędzie do szybszego przepływu pracy
Zrzucanie bazy danych Magento MySQL do rozgałęziania
źródło
Chciałbym podziękować wam wszystkim, ponieważ wasze rozważania zainspirowały mnie i skłoniły mnie do opracowania rozszerzenia o nazwie „Mageploy” z zamiarem rozwiązania problemu utrzymywania synchronizacji różnych środowisk.
http://www.mageploy.com
Mageploy wciąż musi być rozbudowany, dobrze udokumentowany i w pełni przetestowany, nawet jeśli już go używam w kilku projektach, które mają pewne zalety.
Jest to oprogramowanie typu open source i każda pomoc lub sugestia będą mile widziane.
pozdrowienia
źródło
Jeśli chodzi o instalowanie skryptów i tworzenie encji, ogólnie uważam, że jeśli jest wymagany lub oczekiwany przez moduł, powinien zostać utworzony jako część skryptu instalacyjnego.
Ostatnio, jeśli chodzi o program / etap / produkcję, używamy strony pośredniej jako głównej kopii bazy danych dla treści, ponieważ oznacza to, że klient może współpracować. W przeszłości prawdopodobnie największym problemem, jaki napotkaliśmy, jest koordynacja wprowadzania treści z klientem, szczególnie w odniesieniu do przesyłania produktów.
Jak myślałeś, że migawka zadziała? Myślę, że w idealnym świecie miałbyś narzędzie, które pokazywałoby różnicę między dwiema bazami danych na poszczególnych typach (produkty, kategorie, CMS itp.) I pozwalało ci łączyć zmiany ze sobą, ale nie jestem świadomy niczego dostępnego, takiego jak że.
źródło
Moim zdaniem tworzenie i edytowanie atrybutów, kategorii, produktów, reguł cenowych nie ma nic wspólnego ze „strategią wdrażania”. Wszystkie te elementy są unikalne dla sklepu, aw większości przypadków wymagają odpowiedniej analizy i badań produktów, które Ty zamierzają sprzedać.
Jeśli tworzysz sklepy „jeden rozmiar dla wszystkich” z podobną konfiguracją wszystkich wymienionych elementów, możesz po prostu wykonać eksport „migawki” bazy danych po wykonaniu wszystkich ustawień niezbędnych dla każdego sklepu.
źródło
Chciałbym dodać dwa doskonałe narzędzia oszczędzające czas:
źródło