Útmutató: Hogyan tartsuk naprakészen a dependency-ket a fejlesztés fokozott biztonsága és hatékonysága érdekében

Ismerd meg, milyen fontos a dependency-k naprakészen tartása a biztonságos és hatékony fejlesztési folyamat érdekében...

Úgy érzed, hogy a projekted dependeny-jeinek karbantartása időigényes? Több mint tíz backend szolgáltatás és néhány front-end alkalmazás könnyen elérhet valamit, amit el akarsz kerülni. Gondolom, már ismerős az automatizált eszközök, mint például a Dependabot és a Renovate, hiszen ezek kulcsfontosságúak egy egészséges projekt szempontjából.

A mi kontextusunk

A CommIT Smart-nál ügyfeleink számára piacképes alkalmazás szolgáltatásokat nyújtunk. Partnereink infrastruktúrájának, backend szolgáltatásainak és frontend alkalmazásainak naprakésszé tételéhez ezt az automatizált megoldást biztosítjuk.

Milyen eszközöket és programozási nyelveket használunk?

  • GitLab, GitLab CI

  • GoLang, Java, React, Angular, React-native, Terraform, Docker, Kubernetes, Helm

  • Renovate

Hogyan konfiguráltuk a Renovate-et?

Minden, amit csinálunk, a GitLab Folyamatos Integráció automatizálásával történik. Rendkívül kényelmes volt a pipeline beállítása a Renovate használatával.

Először létre kell hoznia a saját tárolóját. Adja hozzá az alábbi tartalmat a gitlab-ci.yml-hez:

include:

- project: 'renovate-bot/renovate-runner'

file: '/templates/renovate.gitlab-ci.yml'

Egy előre meghatározott renovate.gitlab-ci.yml fájlt használ a renovate-bot/renovate-runner GitLab projektből. A renovate.gitlab-ci.yml fájl tartalmazza azokat a szakaszokat, amelyek új verziókat keresnek a projektjeiben.

A projektjeinek bevonásához definiálnia kell egy CI/CD változót, amit RENOVATE_EXTRA_FLAGS-nek hívnak. Navigáljon a Gitlab tárhelyre, nyissa meg a Beállítások > CI/CD > Változók menüpontot. Adjon hozzá egy új változót.

Itt így adtuk hozzá a jelzőt: RENOVATE_EXTRA_FLAGS=--autodiscover=true --autodiscover-filter=/commitsmart/.*/

Github.com token a kiadási jegyzetekhez (opcionális) Ahogy a renovate dokumentációja írja:

Ha nem github.com platformon fut, fontos, hogy egy környezeti változót – GITHUB_COM_TOKEN – is konfiguráljon, amely tartalmaz egy személyes hozzáférési tokent a github.com-hoz. Ez a fiók valójában bármely GitHub fiók lehet, és csak olvasási hozzáférést igényel. A kiadási jegyzetek lekérésére használják a tárolókhoz, hogy növeljék az óránkénti API limitet. Ha szeretné, ugyanazt a hoszt szabályaként is konfigurálhatja.

Létrehoztuk a személyes hozzáférési tokent, és hozzáadtunk egy új GITHUB_COM_TOKEN változót az általunk létrehozott renovate runner tárolóba.

GitLab CI Ütemező

Az egyetlen dolog, amit még konfigurálnunk kell, az a CI Ütemező. Navigáljon a Gitlab tárhelyre, nyissa meg a CI/CD > Ütemezések menüpontot. Hozzon létre egy új ütemezőt az Ön által választott paraméterekkel. Az ütemezőt ilyen mintával hoztuk létre: 0 * * * * . Minden órában fut, ami elég gyakori ahhoz, hogy a projektjeink frissek maradjanak.

Végül a runner sikeresen konfigurálva lett. Ahhoz, hogy a renovate tudja, mi lenne az egyes projektjei célja, szüksége lesz, hogy létrehozzák a projekt-szintű konfigurációt.

Renovate konfiguráció hozzáadása az alkalmazás tárolójához

Egy GoLang-alapú tárolót választottam. A Go projektek go.mod & go.sum fájlokat tartalmaznak. A go.mod tartalmazza a függőségeket és azok verzióit, a go.sum pedig a konkrét modul verziók tartalmának várt kriptográfiai ellenőrző összegeit. Ha egy verziót frissít, futtatnia kell a go mod tidy parancsot is. Ez frissíteni fogja a go.sum fájlt. A Renovate nem fogja ezt automatikusan futtatni, de megoldást kínál erre.

Hozzon létre egy új fájlt a projektje gyökerében renovate.json néven. Az alábbi konfigurációval rendelkezünk az egyik legegyszerűbb Go projekthez:

{

"extends": ["config:base"],

"labels": ["renovate", "dependencies"],

"postUpdateOptions": ["gomodTidy", "gomodUpdateImportPaths"],

"assigneesFromCodeOwners": true,

"packageRules": [

{

"matchUpdateTypes": ["minor", "patch", "pin", "digest"],

"automerge": true

}

]

}

Mindenekelőtt a config:base-et fogja használni az alapértelmezett konfiguráció kiterjesztéséhez. A labels azt mondja a renovate-nek, hogy adjon hozzá renovate & dependencies címkéket az általa létrehozott MRs-hez. A postUpdateOptions végtelen funkciót biztosít mindenféle projekthez, itt megadhatjuk a gomodTidy & gomodUpdateImportPaths hozzáadását. Ezek frissítik a függőségeket, ahogy szeretnénk. Az MRs létrehozása után a Renovate azokat a kód tulajdonosoknak rendeli. Ehhez elolvassa a CODEOWNERS fájlt (ez azt jelenti, hogy először hozzá kell adnia egy codeowners fájlt).

A trükkös rész a packageRules. Az eredeti cél az volt, hogy csökkentsük az új verziók keresésére, MRs frissítésére, áttekintésére és egyesítésére fordított időt. Ez a kódrészlet ebben is segít. Ennek köszönhetően, a Renovate automatikusan egyesíti azokat az MRs-eket, amelyek kisebb frissítésekről, hibajavításokról, PIN-kódokról vagy szövegrészletekről szólnak. A lépések a következők:

  • Renovate első futás megkezdése

  • Renovate új verziókat ellenőriz & MRs-eket hoz létre

  • Rendelje hozzá egy kód tulajdonoshoz

  • Renovate első futása befejeződik

  • Közben az MR pipeline sikeres

  • Renovate második futás megkezdése

  • Renovate ellenőrzi az előzőleg megnyitott MRs-eket

  • Ha auto-merge engedélyezve van, egyesíti az MR-t

  • Renovate új verziókat ellenőriz & MRs-eket hoz létre

Milyen az MR megjelenése?

Van egy kiadási megjegyzés az aktualizált csomagról. Miben különbözik az új verzió a régitől? A fájl ott van. Az automatikus egyesítés engedélyezve van? Ezt is ott találhatja. Ugye menő?

Összefoglalás

  • Új tároló létrehozása

  • Gitlab-ci.yml hozzáadása a renovate-bot sablonjának beillesztésével

  • CI/CD változók hozzáadása

  • CI/CD ütemező hozzáadása

  • Renovate konfiguráció hozzáadása alkalmazás projektekhez

Szerző: Csaba Ujvári

Egyéb cikkek

2024. szept. 20.

Érzelmi Intelligencia az IT Projektmenedzsmentben

Az érzelmi intelligencia kulcsfontosságú az IT projektmenedzsmentben. Segíti a vezetőket abban, hogy jól irányítsák a csapatokat, és erősebb kapcsolatokat építsenek ki.

2024. okt. 20.

A kiváló vezetők előre mérlegelnek, nem csak reagálnak

Kész vagy a vezetői képességeid fejlesztésére? Fedezd fel, hogyan segíthet, ha nem csak reagálsz a kihívásokra, hanem előre is mérlegeled azokat.

2024. aug. 30.

Hogyan forradalmasítják a StemX szerkesztőink a jegyeladást

Fedezd fel, hogyan forradalmasítják a StemX szerkesztők a jegyeladást innovatív tervezőeszközeikkel!

AI becslés

Engedd meg, hogy szakértelmünkkel tökéletes megoldást nyújtsunk projektjeidhez!

Szeretnél pontos projektbecsléseket? AI-alapú alkalmazásunk segít okosabb tervezésben. Lépj kapcsolatba velünk még ma, és személyre szabott árajánlatot adunk üzleti igényeidnek megfelelően — gyorsan, megbízhatóan és céljaiddal összhangban.

Egyéb cikkek

2024. szept. 20.

Érzelmi Intelligencia az IT Projektmenedzsmentben

Az érzelmi intelligencia kulcsfontosságú az IT projektmenedzsmentben. Segíti a vezetőket abban, hogy jól irányítsák a csapatokat, és erősebb kapcsolatokat építsenek ki.

2024. okt. 20.

A kiváló vezetők előre mérlegelnek, nem csak reagálnak

Kész vagy a vezetői képességeid fejlesztésére? Fedezd fel, hogyan segíthet, ha nem csak reagálsz a kihívásokra, hanem előre is mérlegeled azokat.

2024. aug. 30.

Hogyan forradalmasítják a StemX szerkesztőink a jegyeladást

Fedezd fel, hogyan forradalmasítják a StemX szerkesztők a jegyeladást innovatív tervezőeszközeikkel!

AI becslés

Engedd meg, hogy szakértelmünkkel tökéletes megoldást nyújtsunk projektjeidhez!

Szeretnél pontos projektbecsléseket? AI-alapú alkalmazásunk segít okosabb tervezésben. Lépj kapcsolatba velünk még ma, és személyre szabott árajánlatot adunk üzleti igényeidnek megfelelően — gyorsan, megbízhatóan és céljaiddal összhangban.

Egyéb cikkek

2024. szept. 20.

Érzelmi Intelligencia az IT Projektmenedzsmentben

Az érzelmi intelligencia kulcsfontosságú az IT projektmenedzsmentben. Segíti a vezetőket abban, hogy jól irányítsák a csapatokat, és erősebb kapcsolatokat építsenek ki.

2024. okt. 20.

A kiváló vezetők előre mérlegelnek, nem csak reagálnak

Kész vagy a vezetői képességeid fejlesztésére? Fedezd fel, hogyan segíthet, ha nem csak reagálsz a kihívásokra, hanem előre is mérlegeled azokat.

2024. aug. 30.

Hogyan forradalmasítják a StemX szerkesztőink a jegyeladást

Fedezd fel, hogyan forradalmasítják a StemX szerkesztők a jegyeladást innovatív tervezőeszközeikkel!

2024. jún. 20.

Keresési lekérdezés érvényesítése a React Router 6-tal és Yup-pal, valamint Typescript-tel

Érvényesíted a keresési lekérdezéseket a frontend appodban? A válasz „néha”, de ha a keresési lekérdezésre az alkalmazás bemeneteként gondolsz, meg fog változni a véleményed.

2024. jan. 28.

Hogyan válasszunk a monolit kód és a mikroszolgáltatások között

Fejtsd meg a mikroszolgáltatások kontra monolitikus kód kérdését: Válassz okosan egy zökkenőmentes fejlesztési út érdekében.

2024. jan. 28.

Weboldal vagy Webalkalmazás: Melyikre Van Szükséged?

Fejtsd meg a mikroszolgáltatások kontra monolitikus kód kérdését: Válassz okosan egy zökkenőmentes fejlesztési út érdekében.

2022. szept. 14.

No Code Pro / Kontra

A kód nélküli megoldások szokatlan, forradalmi felfedezést és változásokat hoztak a technológiai szférában – különösen a programozás terén.

2022. aug. 14.

Íme néhány ok, amiért érdemes szoftvermérnökké válni

Igen, a szoftverfejlesztés jó szakma szinte bármilyen szempont alapján, beleértve a fizetést, az álláslehetőségek számát és az általános munkával való elégedettséget is...

2022. júl. 14.

Útmutató a Távmunkához a Tengerparton: Legjobb Tippek

Egy kis tervezésbe fektetett erőfeszítés kellemesebbé teszi az egész utazásodat. Ha önállóan vágsz neki az útnak, tervezz olyan útvonalat, ami figyelembe veszi az elérhetőségeket.

2022. jún. 14.

11 alapvető készség, amelyekre szükséged van ahhoz, hogy szoftverfejlesztővé válj 2022-ben

Főbb készségek, amelyeket a programozóknak és szoftverfejlesztőknek meg kell tanulniuk 2022-ben. Mi tesz kiemelkedővé egy programozót?

2023. aug. 16.

Hogyan valósítsuk meg a kérés érvényesítést az OAPI-Codegen és Go segítségével a stabil fejlesztés érdekében

Számos projektünk megköveteli a back-end és a front-end munkát is. Ha egy ügyfél RESTful API-kat szeretne tőlünk, akkor az OpenAPI 3 specifikációval kezdjük.

2023. aug. 31.

A legjobb módszer a szerver nélküli számítástechnika optimalizálására

Fedezd fel a Cloud Run legújabb funkcióit a zökkenőmentes telepítés és skálázás érdekében...

2023. nov. 16.

Fedezze fel, hogyan védheti meg weboldaladat a reCAPTCHA v3 és a Cloud Armor

Ismerd meg a fejlett botvédelmi stratégiákat reCAPTCHA v3 és Cloud Armor használatával. Védd meg webhelyét a CommIT Smart átfogó útmutatójával...

2023. okt. 12.

Hogyan automatizáljuk könnyedén az SSL telepítést Lego és Kubernetes segítségével

Automatizáld az SSL tanúsítványok kezelését zökkenőmentesen a Lego és a Kubernetes segítségével. Ismerd meg a hatékony telepítési gyakorlatokat…

AI becslés

Engedd meg, hogy szakértelmünkkel tökéletes megoldást nyújtsunk projektjeidhez!

Szeretnél pontos projektbecsléseket? AI-alapú alkalmazásunk segít okosabb tervezésben. Lépj kapcsolatba velünk még ma, és személyre szabott árajánlatot adunk üzleti igényeidnek megfelelően — gyorsan, megbízhatóan és céljaiddal összhangban.

Egyéb cikkek

2024. szept. 20.

Érzelmi Intelligencia az IT Projektmenedzsmentben

Az érzelmi intelligencia kulcsfontosságú az IT projektmenedzsmentben. Segíti a vezetőket abban, hogy jól irányítsák a csapatokat, és erősebb kapcsolatokat építsenek ki.

2024. okt. 20.

A kiváló vezetők előre mérlegelnek, nem csak reagálnak

Kész vagy a vezetői képességeid fejlesztésére? Fedezd fel, hogyan segíthet, ha nem csak reagálsz a kihívásokra, hanem előre is mérlegeled azokat.

2024. aug. 30.

Hogyan forradalmasítják a StemX szerkesztőink a jegyeladást

Fedezd fel, hogyan forradalmasítják a StemX szerkesztők a jegyeladást innovatív tervezőeszközeikkel!

AI becslés

Engedd meg, hogy szakértelmünkkel tökéletes megoldást nyújtsunk projektjeidhez!

Szeretnél pontos projektbecsléseket? AI-alapú alkalmazásunk segít okosabb tervezésben. Lépj kapcsolatba velünk még ma, és személyre szabott árajánlatot adunk üzleti igényeidnek megfelelően — gyorsan, megbízhatóan és céljaiddal összhangban.

Egyéb cikkek

2024. szept. 20.

Érzelmi Intelligencia az IT Projektmenedzsmentben

Az érzelmi intelligencia kulcsfontosságú az IT projektmenedzsmentben. Segíti a vezetőket abban, hogy jól irányítsák a csapatokat, és erősebb kapcsolatokat építsenek ki.

2024. okt. 20.

A kiváló vezetők előre mérlegelnek, nem csak reagálnak

Kész vagy a vezetői képességeid fejlesztésére? Fedezd fel, hogyan segíthet, ha nem csak reagálsz a kihívásokra, hanem előre is mérlegeled azokat.

2024. aug. 30.

Hogyan forradalmasítják a StemX szerkesztőink a jegyeladást

Fedezd fel, hogyan forradalmasítják a StemX szerkesztők a jegyeladást innovatív tervezőeszközeikkel!

AI becslés

Engedd meg, hogy szakértelmünkkel tökéletes megoldást nyújtsunk projektjeidhez!

Szeretnél pontos projektbecsléseket? AI-alapú alkalmazásunk segít okosabb tervezésben. Lépj kapcsolatba velünk még ma, és személyre szabott árajánlatot adunk üzleti igényeidnek megfelelően — gyorsan, megbízhatóan és céljaiddal összhangban.

Lépj kapcsolatba velünk

Lépj kapcsolatba velünk!

Kérdésed van, vagy szeretnél többet megtudni arról, hogy mivel foglalkozunk a CommIT Smartnál? Szeretnénk veled beszélni! Akár kíváncsi vagy a munkánkra, akár csak beszélgetni szeretnél, ne habozz felkeresni. Csapatunk itt készen áll, hogy felvegye veled a kapcsolatot!

Lépj kapcsolatba velünk

Lépj kapcsolatba velünk!

Kérdésed van, vagy szeretnél többet megtudni arról, hogy mivel foglalkozunk a CommIT Smartnál? Szeretnénk veled beszélni! Akár kíváncsi vagy a munkánkra, akár csak beszélgetni szeretnél, ne habozz felkeresni. Csapatunk itt készen áll, hogy felvegye veled a kapcsolatot!

Lépj kapcsolatba velünk

Lépj kapcsolatba velünk!

Kérdésed van, vagy szeretnél többet megtudni arról, hogy mivel foglalkozunk a CommIT Smartnál? Szeretnénk veled beszélni! Akár kíváncsi vagy a munkánkra, akár csak beszélgetni szeretnél, ne habozz felkeresni. Csapatunk itt készen áll, hogy felvegye veled a kapcsolatot!

Lépj kapcsolatba velünk

Lépj kapcsolatba velünk!

Kérdésed van, vagy szeretnél többet megtudni arról, hogy mivel foglalkozunk a CommIT Smartnál? Szeretnénk veled beszélni! Akár kíváncsi vagy a munkánkra, akár csak beszélgetni szeretnél, ne habozz felkeresni. Csapatunk itt készen áll, hogy felvegye veled a kapcsolatot!

Lépj kapcsolatba velünk

Lépj kapcsolatba velünk!

Kérdésed van, vagy szeretnél többet megtudni arról, hogy mivel foglalkozunk a CommIT Smartnál? Szeretnénk veled beszélni! Akár kíváncsi vagy a munkánkra, akár csak beszélgetni szeretnél, ne habozz felkeresni. Csapatunk itt készen áll, hogy felvegye veled a kapcsolatot!

Szenvedélyünk az innováció: a legújabb webtechnológiák, blokklánc és digitális megoldások fejlesztésében mindig kreatív megközelítést alkalmazunk.

A D&B tanúsítványt kizárólag kiváló hitelképességű vállalkozások kapják meg. A tanúsítvány megléte garantálja, hogy cégünkkel üzleti kapcsolatot létesíteni alacsony pénzügyi kockázattal jár.

© 2024 Commitsmart Kft. Minden jog fenntartva.

Szenvedélyünk az innováció: a legújabb webtechnológiák, blokklánc és digitális megoldások fejlesztésében mindig kreatív megközelítést alkalmazunk.

A D&B tanúsítványt kizárólag kiváló hitelképességű vállalkozások kapják meg. A tanúsítvány megléte garantálja, hogy cégünkkel üzleti kapcsolatot létesíteni alacsony pénzügyi kockázattal jár.

© 2024 Commitsmart Kft. Minden jog fenntartva.

Szenvedélyünk az innováció: a legújabb webtechnológiák, blokklánc és digitális megoldások fejlesztésében mindig kreatív megközelítést alkalmazunk.

A D&B tanúsítványt kizárólag kiváló hitelképességű vállalkozások kapják meg. A tanúsítvány megléte garantálja, hogy cégünkkel üzleti kapcsolatot létesíteni alacsony pénzügyi kockázattal jár.

© 2024 Commitsmart Kft. Minden jog fenntartva.

Szenvedélyünk az innováció: a legújabb webtechnológiák, blokklánc és digitális megoldások fejlesztésében mindig kreatív megközelítést alkalmazunk.

A D&B tanúsítványt kizárólag kiváló hitelképességű vállalkozások kapják meg. A tanúsítvány megléte garantálja, hogy cégünkkel üzleti kapcsolatot létesíteni alacsony pénzügyi kockázattal jár.

© 2024 Commitsmart Kft. Minden jog fenntartva.

Szenvedélyünk az innováció: a legújabb webtechnológiák, blokklánc és digitális megoldások fejlesztésében mindig kreatív megközelítést alkalmazunk.

A D&B tanúsítványt kizárólag kiváló hitelképességű vállalkozások kapják meg. A tanúsítvány megléte garantálja, hogy cégünkkel üzleti kapcsolatot létesíteni alacsony pénzügyi kockázattal jár.

© 2024 Commitsmart Kft. Minden jog fenntartva.