Aztán a blog teamcity
Szeretem JetBrains. Termékeiket. Nyilvánvaló, hogy a programozott programozó programozók számára. Kiderült átkozottul kényelmes. És néha nem bánom fizetni érte.
Ma én nem beszélek IntelliJ IDEA, TeamCity és kb. Menj, beszélj, hogy 20 építmények konfigurációk és legfeljebb 3 ügynökök egy csoda ingyenes. Mi általában egy közepes méretű projekt még elég.
TeamCity - egy eszköz Continuous Integration. Ahogy Jenkins (melyik villát Hudson). Sajnos Jenkins - az egyetlen nyílt CI. Megpróbálom elmondani, hogy mi egy zárt TeamCity jobb lehet.
Több éve már használt Jenkins. És akkor egy pár hónapig élvezhetik TeamCity.
Az első dolog, hogy dicsekedni JetBrains -, hogy támogassa a különböző szerelési rendszerek. Sőt, Jenkins kínál nekünk, vagy építeni egy Maven projekt, vagy írjon egy forgatókönyvet (a Bash, Ruby, Python, bármi), hogy meg fog tenni mindent, amire szüksége van.
TeamCity is kínál szilárd válogatott gyűjtők. Ugyanebből a Maven és Ant, közvetlen összeszerelése IntelliJ IDEA projekt Xcode vagy solyushenov Visual Studio. Integráció a kollektor nem csak egyszerűen a konfiguráció, de a „megértés” a része TeamCity építeni haladás, ami megmutatkozik a megfelelő számviteli szerelési időt, és az előrejelzés, és lenyűgöző megjelenítést összeszerelési a magazin, a háttérvilágítás és a hajtogatási hibákat.

Jenkins rendszer verziója az irányítást a kódot, akkor csak ilyen URL-t, ahol lehetőség van a változások nyomon követését, és futtassa a szerelvény, ha szükséges. Nos, akkor is megmutatja a vállalja, hogy hoztak a szerelvény.
TeamCity tisztában van a kód sokkal több. Munka VCS független szerelvények. TeamCity órák az ágak mögött az ágak, amelyre szükség van, a tároló és nyilvántartja az összes módosítást. Láthatjuk egy nagyon szép látszó diff. Nos, ha egy adattár (és ágak) annak köszönhető, hogy a projekt egyes, az is nyilvánvaló, hogy mit épít lépett változásokat. És fordítva: milyen változások szerepelnek épít.

Ez a munka származik a tárolókban a szerver TeamCity, építeni szereket nem itt szó. Transzfer forrást építeni a szer fordul elő két módon. Vagy a szer már konfigurálva munkapéldányban vagy klónozására a raktárba, és TeamCity frissíti a működő példány egy adott változata egy szerelvény. Ez, és csak akkor tudja dolgozni Jenkins. És nem zavarja VCS konfiguráció a szerek, TeamCity szerverről töltse ki a teljes forráskódot a hatóanyag önmagában. Néha hasznos lehet.
A Jenkins, legalábbis nem a harmadik fél plugins van dolgunk, lapos projektek listáját. És a legjobb eset, akkor új projektek alapján meglévők. Vagy fut a szerelvény másik projekt függően egy másik összeállításban. Minden projekt - ez dliiinyuyuyuschy beállítások listája: egy verziókövető rendszer beállításait utáni építmények lépéseket.
A TeamCity egyre erősebb. Szervezett projektek fa, a teljes öröklési számos paraméter és konfigurálása teljes szakaszok. Beállítások verziókezelő rendszerek és épít konfigurációk - külön. Egy szerelvény konfiguráció tökéletesen összegyűjti minden ágát forráskód megfigyelés alatt. Ami igazán rohadt kényelmes. Adjon meg egy standart módon építeni a projekt, amely meghatározza ág gyűjteni, és kérjük, hogy a legújabb verzióra, és a leletek érdekesek minden ága.

Sami szerelvény konfigurációk alapján készített sablonokat. Ismét a teljes örökséget. Meg lehet leírni a közgyűlés, egy csomó lehetőség azokon a helyeken, ahol lehet valamit változtatni. A helyettesítő paraméterek általában bárhol, akár a szkripteket. És akkor, sablon alapján, hogy hozzon létre a már adott építmények konfigurációt. TeamCity és ügyelnek arra, hogy az összes ilyen paramétert meghatároztunk. És ha valamit meg kell változtatni a sablont, ez hatással lesz az összes létrehozott egy sablont szerelvény. Mondom, a teljes örökséget.
Jenkins lehet tekinteni, mint a távoli parancs végrehajtását rendszer. Valójában a szerver csak fut a parancs ssh építeni szerek. Nos, akkor szivattyúzás leletek, vizsgálati eredmények, stb Nincs speciális szoftver, kivéve az ssh-szerverrel, hogy a szer nem szükséges.
TeamCity van elrendezve bonyolultabb. A szerver itt is egy Java Web alkalmazás. De vannak még teljes értékű szerekkel, mint démonok / szolgáltatás, hogy meg kell telepíteni és konfigurálni egy kicsit. Néha ez teszi az életet nehéz szempontjából semmilyen tűzfal és routing.
Szigorúan véve, TeamCity nem csinál semmit, hogy nem lehetett volna Jenkins. De TeamCity egyszerűbb beállítani a fordítás, könnyebb létrehozni hasonló szerelvények tisztábban lássuk, mi történik, ők élvezet használni. Sokkal könnyebb és sokkal élvezetesebb.