Citat:
CoyoteKG: Ovo pitanje nije vezano trenutno ni za test ni produkciju, nego generealno bas u tom slucaju, za eto "neku situaciju".
Recimo šta ako umesto WAMPa obezbedim dev server, a ne želim da dam root access tom serveru, nego da dozvolim useru osnovne komande poput git, zip/unzip, cp i slično...
Svakako da kad mi zatreba da ce ici kompletno CI/CD resenje.
Za sada znam da koristim AWS alate poput CodeDeploy i CodePipeline,
Pa mi je plan da prilikom merge na master branch, automatski se spuste fajlovi na produkciju. Pre toga na neki testni server. Jedino još nisam shvatio šta u slučaju da treba da se nešto i na bazi menja, osim da upucam skripte sa CodeDeploy "AfterInstall", ali sta onda za roll-back na prethodnu verziju što se tiče baze?... Jedino sa BeforeInstall dump baze kao backup koji bi se koristio za rollback...
Naravno, shell access za developere, posebno na test infra, ima smisla. Skroz OK, sve dok je tehnicki izvodljivo, za nuzdu bar. Tako da, nemam ja nista protiv, samo pojasnjavam (jer ovo je forum, a ne nas dvojica koji pricamo telefonom :) ) - da u produkcionom okruzenju mora da postoji deploy, a moze da postoji i ovo, za nuzdu. Problem je kad infra postane autoscaling, onda je to mnogo komplikovanije, ali, bar na testu, ovo je skoro uvek moguce i ima smisla. Zato ja volim OpenShift, na primer - mozes developeru da das shell i u kontejner, sto zna da bude zgodno kod debug-a.
Sto se tice rollback-a baze, to malo teze ide. Dump baze zvuci kao zanimljivo resenje, samo sto nije kad baza ima fazon 1TB. :) Onda ti dump+import traje ceo dan. U sustini, idealan odgovor je da se :
- Ako moze, pravi nedestruktivni change na bazi, pa onda ne mora roll back. Stvari tipa "alter table add column", ako je na kraj, ne bole. Dodavanje tabele ne boli. Brisanje slogova se ionako ne radi u normalnoj bazi.... Moguce je.
- Ako mora rollback, mozda moze neki green-blue pattern da se koristi, mada tu moze da bude problem ako ima izmena korisnicki generisane date. Mada to moze da se nadogradi, ali trazi vreme za implementaciju.
Please do not feed the Trolls!
Blasphemy? How can I blaspheme? I'm a god!'