Dagger: futtasd a CI-t a gépeden - forradalmat csinál a Docker alapítója?

Címkék

Az elmúlt évek egyik legnagyobb kihívása a platformok és környezetek közötti könnyű átjárás biztosítása volt, melyet végül a konténerekkel a Docker forradalmasított a szoftverdisztribúció területén. De mi a helyzet a fejlesztés többi részével?

Mire a kész szoftver eljut a konténerig, annak több teszt és build fázison kell átmennie különböző környezetekben (fejlesztő gépe, CI, stb). Erre próbál hordozható megoldást nyújtani a Docker alapítójának, Solomon Hykes-nak a legújabb projektje, a Dagger.

Alig két hónapja lett bejelentve, és egyből ki is jött a béta verzió. Ígéretekből nincs hiány: platformfüggetlen környezet, fejlesztői és CI környezetek egyesítése, egyszerűbb konfigurációk, előre beépített komponensek és több újrafelhasználható művelet, deklaratív nyelvezet, és így tovább. Sági-Kazár Márk (Cisco) a HWSW free! meetup-sorozat CI/CD állomásán elhangzott és alább megtekinthető előadásában megvizsgálta, mi is látszik ebből eddig.

Érdekel a téma? Gyere el a HWSW 2022. június 15-én kezdődő, 8 alkalmas, 24 órás, a modern CI/CD alapjait bemutató online képzésére. A tanfolyam órái utólag felvételről bármikor visszanézhetők.

Hozzászólások

Az utolsó dolgok egyike, amit szeretnék, hogy a CI ismét a saját gépemen fusson.

köszi, jó helyen van a buildszerveren, áldassék aki feltalta!

Szerkesztve: 2022. 06. 05., v – 13:51

Éppen új CI/CD megoldást keresünk, sub.

Szerkesztve: 2022. 06. 07., k – 09:37

A CI/CD build része nagyon buta kell legyen a véleményem szerint. Azt amit csinál, azt a fejlesztő is végre tudja hajtani, legfeljebb bizonyos API kulcsai/jelszavai nincsenek meg hozzá.

Eleve fusson a build konténerben - mert így a Containerfile leírja, hogy miként kell felépíteni a build környezetét, milyen függőségei vannak, reprodukálható.

Másrészt a build gyakorlatilag legyen egy parancsos. Futtasson le mindent, amit kell, teszteket, statikus kódellenőrzést, stb.

Én nem örülnék neki, hogy ha már ma sem tudnám a CI/CD-t reprodukálni saját gépen. Meg tudom tenni, nem kell hozzá külön tooling, meg világmegváltás.

Mi ezt már így csináljuk pár éve. DDEV  - https://ddev.readthedocs.io/en/stable/ - fut a fejlesztők gépén és akármilyen CI van az ügyfélnél, Travis, CircleCI, Azure akármi, DDEV-en belül fut a teszt és az menedzseli a deployt. Így a CI környezeteken felül egy homogén rétegünk van. Van overhead-je, vesztünk a tesztek futtatásának sebességéből, de összességében úgy fest, hogy bőven megéri, nincs olyan, hogy no vajon miért csak a CI-on fail-el a teszt vagy a deploy.