DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   Web Hosting, web serveri i operativni sistemi (http://www.devprotalk.com/forumdisplay.php?f=11)
-   -   Idealna dev organizacija projekata (SVN, serveri, deployment, itd.) ? (http://www.devprotalk.com/showthread.php?t=7871)

ivanhoe 16. 09. 2009. 11:24

Idealna dev organizacija projekata (SVN, serveri, deployment, itd.) ?
 
Podseti me blues sa svojom SVN related temom na nesto sto sam odavno hteo da pitam: koja je po vama idealna organizacija rada za web development projekte na kojima radi veci broj ljudi, uz upotrebu SVN-a ?

Znaci imamo sledecu situaciju:
  • Veci broj developera i dizajnera, dobar deo njih na windowsu, vecina se onesvesti na pomen shell-a
  • Dev server na kome je svn server i sve ostalo sto treba, i na kome se radi razvoj koda (da bi svi imali isto okruzenje, bazu, memcached i sl.), kao i testiranje
  • Production server - na njemu je zivi sajt i alpha testing sajt

Kako u sto manje koraka organizovati da ljudi mogu da rade od kuce, da probaju to sto rade na dev serveru (svako na svom vhostu), da se onda to sve shutne na testiranje i onda na kraju iskopira na production server?

Glavni problem na koji ja nailazim mi je kako da windows korisnicima koji su navikli na kliktanje omogucim da koriste recimo tortoiseSVN, a da pritom kod edituju direktno na serveru. Idealo bi bilo kad bi mogli da mapiraju drajv na dev serveru na svoje windowse, pa da onda iz tortoiseSVN mogu samo da kliknu commit, ali to bi zahtevalo VPN, ili gresim?

Mi to resavamo seljacki, ljudi u sustini sve rade u lokalu na svojim masinama, pa tek onda iskopiraju na dev i tamo isprobaju, ali to je ok za obicne sajtove, kad u pricu udju dodatni servisi tipa memcache, gettext i sl. onda nastanu problemi da svako pojedinacno mora to sve da namesta u lokalu, gubi se bas puno vremena na tu vrstu supporta i razne side-efekte zbog razicitog okruzenja.

kako ste vi organizovani oko toga?

zira 16. 09. 2009. 13:10

Koristio sam WebDrive (http://www.webdrive.com/products/webdrive/index.html) na Win za ovo sto opisujes.

dejanr 16. 09. 2009. 16:02

Za deployment : capistrano + svn (git)

Ono sto trebas da imas za ovakav nacin deploy-a je, ruby na lokalnom kompu sa capistrano bibliotekama. Na serveru (serverima) ssh pristup. I svn ili git SCM.

Napises taskove u capistranu za deploy, i podesis vise stage-ova (beta, prod), meni je beta default stage za deployment. Obicno imam beta.sajt.com i www.sajt.com. Evo par taskova koje ja koristim svakodnevno, koji se pokrecu iz komandne linije:

Kôd:

cap deploy, update-uje workingcopy na beti
cap prod deploy, update-uje workingcopy na production-u
cap db:migrate, migrira bazu na beti (koristim doctrine, migracije su slicne kao u RoR-u)
cap prod db:migrate, isto to na production-u

Stim sto db:migrate i deploy koristim u kombinaciji

cap prod db:sync, importujem podatke sa production sajta na localhost

etc ...

Ovo mozes koristiti za bilo koji projekat u java-i, php-u, ruby-u, python-u.
Taskove pises sa pozivom system capistrano funkcije koja izvrsava komande putem ssh-a. Znaci i sa iole slabijim poznavanjem ruby-a i unix-a moguce je napisati taskove, pa cak i kombinovati par, za jako jednostavan deployment.

Ako nekom treba upload-ovacu svoju konfiguraciju capistrano konfiguracionih fajlova.

robi-bobi 16. 09. 2009. 16:10

svn
trac sa svn afterupdate hook (updejtuje i zatvara tickets)
na production serveru apache je knfigurisan da ne servira .svn, tako da samo uradim svn update
sto se tice baze, SQL-i idu u jedan folder, odatle se obradjuju PHP-om i pustaju samo novi

dejanr 16. 09. 2009. 16:19

Citat:

Originalno napisao robi-bobi (Napišite 73301)
svn
trac sa svn afterupdate hook (updejtuje i zatvara tickets)
na production serveru apache je knfigurisan da ne servira .svn, tako da samo uradim svn update
sto se tice baze, SQL-i idu u jedan folder, odatle se obradjuju PHP-om i pustaju samo novi

Isto kao kod mene bez trac-a, samo mislim da je moj nacin elegantniji. Jedna komanda umesto 5+.

cap deploy = ssh server.com, cd /var/www/workingcopy, svn update, db migrate


Vreme je GMT +2. Trenutno vreme je 01:59.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.