Satis létre saját adattár zeneszerző
phpcomposersatisrepository
Mindannyian szeretjük Composer. Ez jelentősen megváltoztatta az épület PHP alapuló alkalmazások kicsi, újrahasznosítható alkatrészeket, de ez új problémákat teremt, különösen, ha egy ponton a kudarc. A Satis. tudjuk, hogy a folyamat erőteljesebb számítások és hozzáadunk redundancia minden hibalehetőséget (Packagist és GitHub). Lássuk, hogyan működik.
Hogy a zeneszerző?
Az alábbi ábra azt mutatja, hogyan Composer segítségével Packagist központi adattár:
Ha megadjuk, hogy szeretnénk használni egy másik tároló, akkor Composer az alapértelmezett lerakat: Packagist. Zeneszerző kéri Packagist információkat minden csomag szükséges composer.json fájlt. valamint a függőségek szükséges ezeket a csomagokat.
Amikor Composer megkapja mindazokat az információkat, hogy lehetővé teszi a függőség gráf segítségével SAT megoldó, és létrehoz egy fájlt composer.lock egyedi csomagokat kell telepíteni annak érdekében, hogy eleget tesznek kért composer.json fájlt. Végül Zeneszerző tölti ezeket a csomagokat a különböző forrásokból: GitHub, Bitbucket, körte vagy GIT / SVN / Mercurial-adattárban.
Ez az architektúra számos problémát vet fel: mi történne, ha Packagist esik? Ez nem fog működni. Zeneszerző nem tudja megoldani a függőség gráf. Amellett, hogy ez a probléma, mi történik, ha a szükséges csomagok kerülnek GitHub'e, és jelenleg nem működik? Ez nem fog működni. Csomagok nem lesznek betöltve, ez hatással lesz a design és a számításokat.
Hogyan tudjuk minimalizálni az összes ezeket a problémákat? A tartalékolás. Mi is létrehozhatunk saját adattár segítségével Satis. Használata az adattár helyett (vagy a mellett) Packagist. Az alábbi ábra azt mutatja, ugyanazt az ábrát, de a speciális tárolási:
Most, zeneszerző kér információt a szükséges csomagokat a mi személyes boltozat és vonzó lesz Packagist csak akkor, ha a adattár nem rendelkezik ezzel az információval. Mi lehet még letiltani Packagist és testre szabjuk adattár, hogy minden csomag függőségeket töltik bele. Ezen felül, a boltban lehet letölteni csomagok és jár, mint egy fordított proxy szerver. Így már nem vagyunk függ GitHub'a letölthető csomagok.
Mi lehet állítani Satis segítségével Zeneszerző:
adattár konfigurációs fájl
Képzeljük el, hogy mi vagyunk a társaság több fejlesztők és a projektek csupán két telek: Symfony HttpFoundation komponenst és Twig. Azt akarják, hogy személyes adattár az összes változatának (kivéve változata fejlesztés) két csomag, és nem kellene támaszkodni GitHub:
Fájlformátum meglehetősen egyszerű, de lássuk, mit jelentenek az egyes mezők:
- „Név”. áruház nevét.
- "Homepage". URL az adattár.
- „Telepítési forrás”. Ez tartalmaz egy listát adattárak, hogy szeretnénk, hogy tükrözze.
- "Kötelező-all". töltse le az összes csomagot, nem csak azokat, amelyek fel vannak címkézve.
- „Kötelező-függőségek”. Ha az érték „igaz”, Satis automatikusan feloldja, majd hozzáadja a függőségek, így Composer'u nem kell használni Packagist.
- "Archive". „Tar” fájlok lesznek tárolva a „dist” könyvtárat és akkor nem kell, hogy töltse le a „dev” csomagokat.
Majd azt mondjuk, Satis létre adattár:
Végül közzétesszük adattár PHP-shnogo integrált szerver (valódi tároló használata ajánlott Apache vagy Nginx):
Az adattár Composer
Ha a tároló szerzett, az utolsó lépés, amit meg kell mondani Composer'u hogy szeretnénk használni. Ezt meg lehet tenni úgy, hogy a következő sorokat composer.json a projekt fájlt.
Ezt követően, ha fut zeneszerző telepíteni fogják használni üzletünkben:
Ezen kívül láthatjuk a lekérdezéseket csinálni Composer, hogy egy első tároló (packages.json beleértve /include/all$e0f2af5bfe26328fcc97241cbd95de682f4fbfaa.json.) És akkor maga a csomagolás: