Context-Aware GitOps

Laen...
Pisipilt

Kuupäev

Ajakirja pealkiri

Ajakirja ISSN

Köite pealkiri

Kirjastaja

Tartu Ülikool

Abstrakt

GitOps is a process that allows for declarative management of infrastructure objects by using Git as the source of truth, GitOps is built on top of DevOps principles which emphasize automation, collaboration, and continuous delivery - Current GitOps tools lack contextual awareness: treating all Git changes as equally significant, triggering deployments for syntactic changes and not understanding dependencies between infrastructure objects, resulting in sequential rather than parallel execution of changes. This thesis proposes a context-aware approach to GitOps that utilizes incremental Abstract Syntax Tree (AST) analysis using the Tree-sitter library. After analyzing the changes, it generates parallel execution plans. A prototype is implemented to demonstrate the feasibility of the approach.
GitOps on protsess, mis võimaldab infrastruktuuriobjektide deklaratiivset haldamist, kasutades Git-i kui ainsat tõeallikat. GitOps põhineb DevOpsi põhimõtetel, mis rõhutavad automatiseerimist, koostööd ja pidevat tarnet. Praegustel GitOpsi tööriistadel puudub aga kontekstitundlikkus – kõik Git-i muudatused käsitletakse võrdselt olulistena, mistõttu käivitatakse juurutused ka süntaktiliste muudatuste korral ega mõisteta infrastruktuuriobjektide vahelisi sõltuvusi. See viib muudatuste järjestikulise, mitte paralleelse täitmiseni. Käesolev lõputöö pakub välja kontekstitundliku lähenemisviisi GitOpsile, kasutades inkrementaalset abstraktse süntaksipuu (AST) analüüsi Tree-sitter teegi abil. Muudatusi analüüsides loob süsteem paralleelsed täitmisplaanid. Prototüüp on rakendatud, et demonstreerida selle lähenemise teostatavust.

Kirjeldus

Märksõnad

GitOps, ArgoCD, Tree-sitter, Incremental analysis, arvutusmeetodid, süsteemid, juhtimine

Viide